Project

General

Profile

Bug #16603

Bug #14754: Partially applied incremental upgrades cause all kinds of trouble

Buggy and confusing UI in the "Upgrading the system" dialog

Added by xin 8 months ago. Updated 2 months ago.

Status:
Confirmed
Priority:
Elevated
Assignee:
-
Category:
-
Target version:
-
Start date:
03/21/2019
Due date:
% Done:

0%

Feature Branch:
Type of work:
Code
Blueprint:
Starter:
Affected tool:
Upgrader

Description

I encounter a problem in the Upgrader with the message:
"Upgrading the system
Your Tails device is being upgraded...
For security reasons, the networking is now disabled.
[static progression bar all in blue]
[validation button]"

- If I validate, the window disappear and I have no feedback until the upgrade is complete.

- The progression bar doesn't work.

3.12.png View (17.2 KB) intrigeri, 03/23/2019 08:35 AM

3.12.1.png View (16.8 KB) intrigeri, 03/23/2019 08:57 AM


Related issues

Blocks Tails - Feature #16209: Core work: Foundations Team Confirmed

History

#1 Updated by intrigeri 8 months ago

  • Parent task set to #14754

#2 Updated by intrigeri 8 months ago

I've tested this while upgrading from 3.12, 3.12.1 and 3.13 to 3.13.1 (following the instructions we have in our manual test suite, i.e. run tails-upgrade-frontend-wrapper manually from a Terminal): the progress bar does pulsate and the "OK" button is disabled (I can't click it). But I can press "Esc", which closes this dialog and results in the confusing UX you've described. Note that in this test environment (libvirt, KVM, virtio GPU with 3d acceleration enabled) the download progress bar works fine. Same when I do the same test in a session started in French (3.13→3.13.1).

Then I've retried something that should be closer to what you did, i.e. letting the Upgrader start by itself, without following our manual test suite instructions:

  • Upgrading from 3.12.1 to 3.13, in a session started in French, on a ThinkPad X200:
    • The download progress bar remains stuck at 0% during the whole download; it might be caused by a graphics driver problem which made GNOME disable animations
    • I reproduce exactly what you've reported: the progress bar in the dialog you're referring to does not pulsate and I see a "Valider" button that looks enabled.
  • Upgrading from 3.12.1 to 3.13, in a session started in French, in the same libvirt+KVM VM as above:
    • The download progress bar works as expected.
    • I reproduce exactly what you've reported: the progress bar in the dialog you're referring to does not pulsate and I see a "Valider" button that looks enabled.

It seems that the language of the session does not impact results, but how one starts the Upgrader does.

So I've retried 3.13→3.13.1 in the same VM as above, manually editing /etc/os-release but then starting the Upgrader with systemctl --user restart tails-upgrade-frontend.service, i.e. just like it would in a normal system. Turns out the download progress bar is stuck to 0%, the progress bar you were talking about does not pulsate, and the "OK" button is enabled.

So, first of all I've updated our manual test suite so we can see the problem when we're following its instructions; when I work on this code I follow these instructions so it should help me notice such bugs. Our automated test suite still does things in the old way and thus still hides problems, but well.

FTR, the last time we directly updated this code was in 3.11 (#15282), when we made the dialog we're discussing here display again, while it had not been there at all for a couple years due to a bug.

Next step: find out what differs between the runtime environments of running tails-upgrade-frontend-wrapper by hand vs. systemctl --user restart tails-upgrade-frontend.service.

#3 Updated by intrigeri 8 months ago

Next step: find out what differs between the runtime environments of running tails-upgrade-frontend-wrapper by hand vs. systemctl --user restart tails-upgrade-frontend.service.

Turns out they almost don't differ wrt. environment variables (which suggests that config/chroot_local-includes/usr/local/lib/start-systemd-desktop-target is useless: even variables we explicitly filter out there end up in the environment of systemd --user).

I see no other obvious explanation so this will need more thinking/research/tests. Not sure I can do that during the 3.14 dev cycle.

#4 Updated by intrigeri 8 months ago

  • Status changed from In Progress to Confirmed

#5 Updated by intrigeri 7 months ago

  • Subject changed from Problem with a message in the Upgrader to Buggy and confusing UI in the "Upgrading the system" dialog

#6 Updated by intrigeri 7 months ago

  • Target version changed from Tails_3.14 to Tails_3.15

I'll prioritize this depending on #14754#note-60: if #14754 still causes too much trouble, I'll put and and this very ticket on the FT's plate.

#7 Updated by intrigeri 5 months ago

#8 Updated by intrigeri 5 months ago

intrigeri wrote:

I'll prioritize this depending on #14754#note-60: if #14754 still causes too much trouble, I'll put and and this very ticket on the FT's plate.

I'll stop waiting for Help Desk on this one and will assume this is the main remaining cause for #14754.

#9 Updated by intrigeri 5 months ago

  • Target version changed from Tails_3.15 to Tails_3.16

#10 Updated by intrigeri 3 months ago

  • Target version changed from Tails_3.16 to Tails_3.17

#11 Updated by intrigeri 3 months ago

intrigeri wrote:

  • Upgrading from 3.12.1 to 3.13, in a session started in French, in the same libvirt+KVM VM as above:
    • The download progress bar works as expected.
    • I reproduce exactly what you've reported: the progress bar in the dialog you're referring to does not pulsate and I see a "Valider" button that looks enabled.

Same in English while upgrading from 4.0~beta1 to 4.0~beta2.

#12 Updated by intrigeri 2 months ago

  • Target version changed from Tails_3.17 to Tails_4.0

#13 Updated by intrigeri 2 months ago

  • Assignee deleted (intrigeri)
  • Priority changed from Normal to Elevated
  • Target version deleted (Tails_4.0)

The next step documented in #16603#note-2 can be done by any FT member. I doubt I'll have time to work on this for 4.0.

Also available in: Atom PDF