Jolla1 bricked by update to 3.3.0.16 (Rokua)

Trying to update my Jolla1 to 3.3.0.16 (Roka) failed. When I boot it now, it shows the jolla logo and then turns black. I can ssh to the J1 via USB but not via wifi. The device cannot connect to the internet:

root@Sailfish:~> route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.2.0     *               255.255.255.0   U     0      0        0 rndis0
root@Sailfish:~> ifconfig 
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:44 errors:0 dropped:0 overruns:0 frame:0
          TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:2728 (2.6 KiB)  TX bytes:2728 (2.6 KiB)

rndis0    Link encap:Ethernet  HWaddr 26:E9:11:6E:CC:63  
          inet addr:192.168.2.15  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::24e9:11ff:fe6e:cc63/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2567 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2719 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:176424 (172.2 KiB)  TX bytes:758538 (740.7 KiB)

wlan0     Link encap:Ethernet  HWaddr 50:56:A8:01:89:43  
          UP BROADCAST MULTICAST DYNAMIC  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

root@Sailfish:~> ping blog.jolla.com
ping: bad address 'blog.jolla.com'

There are no accounts configured:

root@Sailfish:~> ag-tool list-accounts
No accounts configured

Updating the system from command line doesn’t work:

root@Sailfish:~> pkcon refresh
Refreshing cache
Starting
Refreshing software list
Finished
Fatal error: Download (curl) error for 'https://releases.jolla.com/jolla-apps/3.3.0.16/armv7hl/repodata/repomd.xml':
Error code: Connection failed
Error message: Could not resolve host: releases.jolla.com

root@Sailfish:~> version --dup
REFRESHING CACHE AND DOWNLOADING PACKAGES
Refreshing: 0%
Error: Download (curl) error for 'https://releases.jolla.com/jolla-apps/3.3.0.16/armv7hl/repodata/repomd.xml':
Error code: Connection failed
Error message: Could not resolve host: releases.jolla.com

Finished transaction (status=2, runtime=192204ms)
UPGRADE NOT COMPLETE - Retry 1 of 9
[...]

/var/log/systemupdate.log looks like the update process has been interrupted:

Apr 28 20:41:15 Sailfish sailfish-upgrade-ui[664]: Package: nemo-qml-plugin-configuration-qt5;0.2.3-1.4.1.jolla;armv7hl;jolla, Configuration plugin for Nemo Mobile
Apr 28 20:41:15 Sailfish [RPM][4318]: Transaction ID 5ea878cb started
Apr 28 20:41:15 Sailfish [RPM][4318]: erase nemo-qml-plugin-configuration-qt5-0.2.2-1.2.17.jolla.armv7hl: success
Apr 28 20:41:15 Sailfish [RPM][4318]: install nemo-qml-plugin-configuration-qt5-0.2.3-1.4.1.jolla.armv7hl: success
Apr 28 20:41:15 Sailfish [RPM][4318]: erase nemo-qml-plugin-configuration-qt5-0.2.2-1.2.17.jolla.armv7hl: success
Apr 28 20:41:16 Sailfish [RPM][4318]: install nemo-qml-plugin-configuration-qt5-0.2.3-1.4.1.jolla.armv7hl: success
Apr 28 20:41:16 Sailfish [RPM][4318]: Transaction ID 5ea878cb finished: 0
Apr 28 20:41:16 Sailfish packagekitd[707]: Install progress update: 515 of 845
Apr 28 20:41:16 Sailfish sailfish-upgrade-ui[664]: Package: nemo-qml-plugin-alarms-qt5;0.3.9-1.7.1.jolla;armv7hl;jolla, Alarms plugin for Nemo Mobile
^@^@^@^@^@^@^@^@^@ [ lots of these... deleted ] ^@^@^@^@^@^@^@^@tion ID 5ea878cf finished: 0
Apr 28 20:41:19 Sailfish packagekitd[707]: Install progress update: 519 of 845
Apr 28 20:41:20 Sailfish sailfish-upgrade-ui[664]: Package: libqtwebkit5;5.6.2+git10-1.7.1.jolla;armv7hl;jolla, Web content engine library for Qt - core runtime files
Apr 28 20:41:20 Sailfish [RPM][4344]: Transaction ID 5ea878d0 started
Apr 28 20:41:20 Sailfish [RPM][4344]: erase libqtwebkit5-5.6.2+git9-1.7.1.jolla.armv7hl: success

journalctl shows dependency errors:

Nov 01 00:22:50 Sailfish lipstick[1229]: [C] unknown:0 - Failed to create display (No such file or directory)
Nov 01 00:22:50 Sailfish systemd[1017]: lipstick.service: Main process exited, code=exited, status=1/FAILURE
Nov 01 00:22:50 Sailfish systemd[1017]: Failed to start The lipstick UI.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for Application launch booster for Sailfish Browser.
Nov 01 00:22:50 Sailfish systemd[1017]: booster-browser.service: Job booster-browser.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for The Maliit server.
Nov 01 00:22:50 Sailfish systemd[1017]: maliit-server.service: Job maliit-server.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for Application launch booster for Silica on QtQuick2.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for simkit agent.
Nov 01 00:22:50 Sailfish systemd[1017]: simkit-agent.service: Job simkit-agent.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for Voicecall ui prestart.
Nov 01 00:22:50 Sailfish systemd[1017]: voicecall-ui-prestart.service: Job voicecall-ui-prestart.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for The lipstick security prompt UI.
Nov 01 00:22:50 Sailfish su[1126]: pam_unix(su-l:session): session closed for user nemo
Nov 01 00:22:50 Sailfish systemd[1017]: lipstick-security-ui.service: Job lipstick-security-ui.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for Run first time usage demo to user.
Nov 01 00:22:50 Sailfish systemd[1017]: jolla-startupwizard.service: Job jolla-startupwizard.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: booster-silica-qt5.service: Job booster-silica-qt5.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: Dependency failed for Jolla sign-on UI daemon.
Nov 01 00:22:50 Sailfish systemd[1017]: jolla-signon-ui.service: Job jolla-signon-ui.service/start failed with result 'dependency'.
Nov 01 00:22:50 Sailfish systemd[1017]: lipstick.service: Unit entered failed state.
Nov 01 00:22:50 Sailfish systemd[1017]: lipstick.service: Failed with result 'exit-code'.

Is there a way to resume the update progress?
Your help is appreciated!

1 Like

In theory you can configure the computer you connect from as a router and connect to he internet that way.

Then you can continue the update.

Something like this happen to me too. But it wasn’t update, AFAIK, because it happen all by itself overnight. I don’t agree with the term bricked, since you ssh to it. I had the Jolla logo and when a spinner should show up, the screen remained black, backlight was on.
I had to edit resolv.conf to point to my DNS forwarder, and configure the PC for packet forwarding.
Managed to recover a few things, but the display didn’t come back, gave up, factory reset, seems ok since then.

1 Like

Did you make a factory reset from the PC via SSH? How did you do this?

There were 2 phases, 1) trying to fix, 2) factory reset. Trying to fix was via ssh over USB using a PC. Factory reset is via telnet, USB, but the interface on the PC was different. Standard procedure described here: https://jolla.zendesk.com/hc/en-us/articles/204709607-Jolla-Phone-How-do-I-use-the-Recovery-Mode-
(BTW, Slackware)

Ok, I set up my linux box for masquerading:
iptables -t nat -A POSTROUTING -o enp0s25 -j MASQUERADE

Then I added a default route for on the Jolla1:
route add default gw 192.168.2.5

and copied the content of /et/resolv.conf from my linux box to the Jolla1. Now I can ssh from my Jolla1 to my linux box. DNS and ping work:

root@Sailfish:~> ping forum.sailfishos.org
PING forum.sailfishos.org (157.230.16.168): 56 data bytes
64 bytes from 157.230.16.168: seq=0 ttl=51 time=16.725 ms

pkcon refresh now works:

root@Sailfish:~> pkcon refresh
Refreshing cache                                                                                                                                                                                
Waiting in queue                                                                                                                                                                                
Starting                                                                                                                                                                                        
Refreshing software list                                                                                                                                                                       
Finished      

pkcon update doesn’t really work:

 root@Sailfish:~> pkcon update
Getting updates                                                                                                                                                                                
Finished                                                                                                                                                                                       
Refreshing software list                                                                                                                                                                        
Testing changes                                                                                                                                                                                 
Finished                                                                                                                 [                                                            ] (0%)  
The following packages have to be installed:
 droid-tools-0.0.4-1.3.1.jolla.armv7hl  Some tools from android
 sbj-policy-settings-0.12.14-1.12.20.jolla.armv7hl      Policy settings for sbj hw
The following packages have to be obsoleted:
 ohm-configs-default-1.2.4-1.7.1.jolla.armv7hl  Common configuration files for ohm
Proceed with changes? [N/y] y

                                                                                                                                                                                               
Testing changes                                                                                                                                                                                
Updating packages                                                                                                                                                                               
Starting                                                                                                                                                                                        
Downloading packages                                                                                                                                                                           
Finished                                                                                                                                                                                       
Fatal error: Installation aborted by user

When I try ‘version --dup’ I can see the refreshing itself seems to work (percentage is counting up), but afterwards if fails (I didn’t abort the first try!):

root@Sailfish:~> version --dup
REFRESHING CACHE AND DOWNLOADING PACKAGES
Downloading: 0%
Error: Installation aborted by user
Finished transaction (status=2, runtime=316555ms)
UPGRADE NOT COMPLETE - Retry 1 of 9
Waiting 1 seconds before retry.
REFRESHING CACHE AND DOWNLOADING PACKAGES
Refreshing: 0%^C

What can I do to resume the update process?

I had problems with the “disk”, which I couldn’t identify. “btrfs allocation” was failing. "
Fatal error: Installation aborted by user" seemed to me like disk write failures. I gave up then and did a factory reset. There are elaborated procedures for fixing btrfs, but I didn’t want that route…

While the available disk space looks good:

root@Sailfish:~> df -h
Filesystem                Size      Used Available Use% Mounted on
rootfs                   13.7G      6.8G      6.1G  53% /
/dev/mmcblk0p28          13.7G      6.8G      6.1G  53% /
devtmpfs                403.1M         0    403.1M   0% /dev
tmpfs                   404.6M      4.0K    404.6M   0% /dev/shm
tmpfs                   404.6M      4.8M    399.8M   1% /run
tmpfs                   404.6M         0    404.6M   0% /sys/fs/cgroup
tmpfs                   404.6M         0    404.6M   0% /tmp
/dev/mmcblk0p9           47.2M      7.9M     39.3M  17% /var/systemlog
/dev/mmcblk0p28          13.7G      6.8G      6.1G  53% /home
/dev/mmcblk0p18          64.0M     44.3M     19.6M  69% /firmware
tmpfs                    80.9M         0     80.9M   0% /run/user/100000

btrfs state doesn’t look good at all:

root@Sailfish:~> btrfs fi show
ERROR: unable get label Inappropriate ioctl for device
Label: 'sailfish'  uuid: 4b9a7c4f-83c2-49be-b2b7-6fe67cc12eae
        Total devices 1 FS bytes used 6.65GiB
        devid    1 size 13.75GiB used 13.75GiB path /dev/mmcblk0p28

Btrfs v3.16
root@Sailfish:~> btrfs-balancer allocation
Failed to get allocation.
root@Sailfish:~> btrfs-balancer balance
Failed to get allocation.

Is there a way to fix this?

I created a separate post: Btrfs corrupted on Jolla1

Sorry, no idea. Maybe check that: https://together.jolla.com/question/185240/btrfs-problem-home-dir-gone/ for some pointers…