Project

General

Profile

Bug #16011

Feature #15292: Distribute a USB image

Get ready for removing tails-installer from Debian

Added by u 12 months ago. Updated 8 months ago.

Status:
Resolved
Priority:
Elevated
Assignee:
Category:
-
Target version:
Start date:
09/28/2018
Due date:
% Done:

50%

Estimated time:
3.00 h
Feature Branch:
installer:tails/16011-deprecate-outside-of-tails
Type of work:
Code
Blueprint:
Starter:
Affected tool:

Description

When running outside of Tails, instead the GUI, display a dialog that points to the up-to-date installation instructions. If relevant, add a dependency on the package that includes the now-recommended software (GNOME Disks?).

Screenshot from 2018-12-01 12-09-25.png View (34 KB) intrigeri, 12/01/2018 11:11 AM


Related issues

Related to Tails - Bug #16470: Some users are wiping up their persistence because of misunderstanding of new USB image Resolved 02/15/2019
Blocks Tails - Bug #16012: Ensure Tails installer is removed from Debian & Ubuntu by the end of 2019 Confirmed 09/28/2018

History

#1 Updated by u 12 months ago

  • Blocks Bug #16012: Ensure Tails installer is removed from Debian & Ubuntu by the end of 2019 added

#2 Updated by u 12 months ago

Milestone 5

#3 Updated by intrigeri 11 months ago

  • Target version changed from Tails_3.10.1 to Tails_3.11

(I've not scheduled when I'll work on it yet, but it's clear it won't be in the next 10 days.)

#4 Updated by u 11 months ago

  • Target version changed from Tails_3.11 to Tails_3.12

#5 Updated by intrigeri 11 months ago

  • Target version changed from Tails_3.12 to Tails_3.11

#6 Updated by intrigeri 10 months ago

  • Status changed from Confirmed to In Progress
  • Assignee changed from intrigeri to u
  • QA Check set to Info Needed

Tails Installer in Debian (sid, testing, stretch-backports) & Ubuntu will need to switch to this new behaviour as soon as the updated installation doc is published, i.e. basically on the day when Tails 3.12 is released or very shortly after that: otherwise, there's a big risk of user confusion (e.g. download a USB image and try to install/upgrade with Tails Installer). But we can't have new code migrate that fast to Debian testing → stretch-backports so here's a plan that mitigates the problem — except for Debian testing — and minimizes the amount of work that needs to be done under tight time constraints:

  1. now [intrigeri]: implement the new desired "when not running in Tails, point to the installation/upgrade doc and don't offer any other functionality" behaviour, but make it conditional to the existence of a flag file
  2. by the end of the year [intrigeri]: get this new code into a new release of Tails Installer
  3. by the end of the year [u]: upload to Debian sid and Ubuntu PPA, wait for migration to Debian testing, upload to stretch-backports
  4. by mid-January [intrigeri]: prepare a new version of the package that ships the aforementioned flag file
  5. in time for the Tails 3.12 freeze [intrigeri]: optionally upload that package to our custom APT repo but nowhere else and get it included in 3.12 (that's not strictly needed but is closer to our usual workflow and perhaps less confusing)
  6. on January 29 or 30, once Tails 3.12 is out [u]:
    1. upload the new package that ships the flag file to Debian sid and Ubuntu PPA
    2. upload a ~bpo9+2 package to stretch-backports, that changes nothing compared to the previous ~bpo9+1 except shipping the flag file; note that this package is still based on what's currently in Debian testing, and not on what was just uploaded to Debian sid
  7. late February [u]: get Tails Installer removed from testing via a RC bug that'll trigger the auto-removal process at some point during the Buster freeze; don't do that earlier because we might need to get some follow-up fixes into stretch-backports if we messed it up, and we can't do that anymore once the package is removed from testing
  8. see you on #16012 for the next steps

Dear u, I'll get started on the implementation now but could you please check this plan? It might be buggy or conflict with other plans of yours. Once we agree on a plan I'll encode your bits on the description of #16012 and mine here.

#7 Updated by intrigeri 10 months ago

sajolida, here's what my branch makes the UI look like when running outside of Tails. What do you think?

#8 Updated by intrigeri 10 months ago

  • Feature Branch set to installer:feature/16011-deprecate-outside-of-tails

#9 Updated by intrigeri 10 months ago

  • QA Check changed from Info Needed to Ready for QA

intrigeri wrote:

  1. now [intrigeri]: implement the new desired "when not running in Tails, point to the installation/upgrade doc and don't offer any other functionality" behaviour, but make it conditional to the existence of a flag file

Done! The flag file is /etc/tails-installer/deprecated-outside-of-Tails. Please review (u: code; sajolida: UI) and merge into the master branch if happy.

#10 Updated by sajolida 10 months ago

  • Assignee changed from sajolida to intrigeri
  • QA Check changed from Ready for QA to Pass

Looks great!

I also like your plan for release.

I think the issue of people trying to install USB images with an outdated Tails Installer right after 3.12 will still be loud on our help desk but I'm fine with leaving it this way.

#11 Updated by intrigeri 10 months ago

  • Assignee changed from intrigeri to u
  • QA Check changed from Pass to Ready for QA

(As per #16011#note-6.)

I think the issue of people trying to install USB images with an outdated Tails Installer right after 3.12 will still be loud on our help desk but I'm fine with leaving it this way.

Yep. I can't think of any way to solve this problem, except by uploading to Debian & Ubuntu in advance a version of Tails Installer that will switch behavior on the planned release day (depending on the system clock), which feels a tad risky.

#12 Updated by u 9 months ago

@intrigeri: thank you for coming up with this plan. I'm fine doing it like this and have scheduled relevant bits to my personal agenda.

Next steps for me on this ticket: review code in installer:feature/16011-deprecate-outside-of-tails
@intrigeri: once I've reviewed this, I let you prepare the tails-installer release.

#13 Updated by u 9 months ago

Code looks good to me. I still want to test it before merging it.

#14 Updated by intrigeri 9 months ago

  • Target version changed from Tails_3.11 to Tails_3.12

#15 Updated by u 9 months ago

  • Assignee changed from u to intrigeri
  • QA Check changed from Ready for QA to Pass

I've tested the code and it works: please release this new version of the installer in Tails, then I can release it in Debian.

#16 Updated by intrigeri 9 months ago

  • QA Check deleted (Pass)

#17 Updated by intrigeri 9 months ago

  • Assignee changed from intrigeri to u
  • Priority changed from Normal to Elevated
  • % Done changed from 0 to 30

intrigeri wrote:

  1. now [intrigeri]: implement the new desired "when not running in Tails, point to the installation/upgrade doc and don't offer any other functionality" behaviour, but make it conditional to the existence of a flag file
  2. by the end of the year [intrigeri]: get this new code into a new release of Tails Installer

Done: 5.0.13, uploaded to our devel APT suite, pushed to the tails/master packaging branch.

by mid-January [intrigeri]: prepare a new version of the package that ships the aforementioned flag file

Done in the tails/16011-deprecate-outside-of-tails branch.

All the next steps are yours:

  1. by the end of the year [u]: upload to Debian sid and Ubuntu PPA, wait for migration to Debian testing, upload to stretch-backports

FTR that's the version of the package that does not ship the flag file yet (this was supposed to be done before I prepared the version that ships the flag file but I've prepared that bit in advance so you don't have to wait for me anymore on this ticket :)

  1. on January 29 or 30, once Tails 3.12 is out [u]:
    1. upload the new package that ships the flag file to Debian sid and Ubuntu PPA
    2. upload a ~bpo9+2 package to stretch-backports, that changes nothing compared to the previous ~bpo9+1 except shipping the flag file; note that this package is still based on what's currently in Debian testing, and not on what was just uploaded to Debian sid

+ I'm bumping priority just like you did on #16012 :)

#18 Updated by u 8 months ago

I have uploaded the package to Debian sid and Ubuntu PPA 6 days ago. However, there seems to be a regression reported by piuparts:


  Failed to scan devices: No such file or directory
  dpkg: error processing package udisks2 (--configure):
   installed udisks2 package post-installation script subprocess returned error exit status 1
  dpkg: dependency problems prevent configuration of tails-installer:
   tails-installer depends on udisks2; however:
    Package udisks2 is not configured yet.

  dpkg: error processing package tails-installer (--configure):
   dependency problems - leaving unconfigured

  Errors were encountered while processing:
   udisks2
   tails-installer
  E: Sub-process /usr/bin/dpkg returned an error code (1)


This currently prevents tails-installer to migrate to testing, hence delays the upload to backports that I initially planned to do this week.

I'm not yet sure how to solve this issue. Will look into it tomorrow.

#19 Updated by u 8 months ago

Ok, that's apparently due to a change in udisks2: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=917633 I'll try to follow up.

#20 Updated by u 8 months ago

u wrote:

Ok, that's apparently due to a change in udisks2: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=917633 I'll try to follow up. And upstream has merged a fix: https://github.com/systemd/systemd/pull/11346. Now we have to see when this is uploaded to Debian.

#21 Updated by u 8 months ago

This bug has been reassigned to systemd, and has been solved. I'll keep an eye on it to upload tails-installer to backports and upload a deprecation version before the freeze.

#22 Updated by u 8 months ago

systemd new version has been uploaded this morning. No idea how long it will take to actually get onto Debian's official machines where the migration is currently prevented. I'm keeping an eye on it.

#23 Updated by u 8 months ago

Ok, on Friday I asked piuparts admins to reschedule tails-installer for migration after updating their system. They did, and tails-installer could finally migrate. Uploaded backport yesterday.

#24 Updated by u 8 months ago

  • Assignee changed from u to intrigeri
  • % Done changed from 30 to 50

Next step is yours, intrigeri:

  • by mid-January [intrigeri]: prepare a new version of the package that ships the aforementioned flag file
  • in time for the Tails 3.12 freeze [intrigeri]: optionally upload that package to our custom APT repo but nowhere else and get it included in 3.12 (that's not strictly needed but is closer to our usual workflow and perhaps less confusing)

#25 Updated by intrigeri 8 months ago

  • Assignee changed from intrigeri to u

Next step is yours, intrigeri:

  • by mid-January [intrigeri]: prepare a new version of the package that ships the aforementioned flag file

I did it already: on Jan 2 I did everything I had to do so you don't have to wait for me anymore on this ticket (#16011#note-17) :)

  • in time for the Tails 3.12 freeze [intrigeri]: optionally upload that package to our custom APT repo but nowhere else and get it included in 3.12 (that's not strictly needed but is closer to our usual workflow and perhaps less confusing)

Given it's not strictly needed, won't affect users regardless of what we do, and I'm having a hard time doing my other work that needs to go into 3.12, I'll skip this one.

#26 Updated by intrigeri 8 months ago

Ok, on Friday I asked piuparts admins to reschedule tails-installer for migration after updating their system. They did, and tails-installer could finally migrate. Uploaded backport yesterday.

Woohoo! \o/

#27 Updated by u 8 months ago

intrigeri wrote:

Next step is yours, intrigeri:

  • by mid-January [intrigeri]: prepare a new version of the package that ships the aforementioned flag file

I did it already: on Jan 2 I did everything I had to do so you don't have to wait for me anymore on this ticket (#16011#note-17) :)

Ok, right! I thought there was still something needed, like an official release.

  • in time for the Tails 3.12 freeze [intrigeri]: optionally upload that package to our custom APT repo but nowhere else and get it included in 3.12 (that's not strictly needed but is closer to our usual workflow and perhaps less confusing)

Given it's not strictly needed, won't affect users regardless of what we do, and I'm having a hard time doing my other work that needs to go into 3.12, I'll skip this one.

Ok! Fine with me. Next steps are mine then, on Jan 29th.

#28 Updated by u 8 months ago

  • Feature Branch changed from installer:feature/16011-deprecate-outside-of-tails to installer:tails/16011-deprecate-outside-of-tails

Now i know why I could not find that commit..

#29 Updated by intrigeri 8 months ago

Now i know why I could not find that commit..

Indeed, I've prepared several branches for the several steps of this work, and I failed to write them all down in the Redmine metadata, relying on my comments only :/

#30 Updated by u 8 months ago

intrigeri wrote:

Now i know why I could not find that commit..

Indeed, I've prepared several branches for the several steps of this work, and I failed to write them all down in the Redmine metadata, relying on my comments only :/

No problem!

I've prepared the packages, tested locally, and started to upload them to sid, stretch-backports, and ubuntu, as release should happen sort of now.

#31 Updated by u 8 months ago

arrived in unstable, and ubuntu. but not backports.

#32 Updated by intrigeri 8 months ago

I've prepared the packages, tested locally, and started to upload them to sid, stretch-backports, and ubuntu, as release should happen sort of now.

Woohoo! \o/

#33 Updated by anonym 8 months ago

  • Target version changed from Tails_3.12 to Tails_3.13

#34 Updated by u 8 months ago

  • Status changed from In Progress to Resolved

For a reason I did not understand and did not want to spend time on investigating deeper, the stretch-backport upload had been rejected. Hence, I've rebuilt tails-installer again, this time based on the debian/sid branch after all and uploaded it today.

#35 Updated by sajolida 7 months ago

  • Related to Bug #16470: Some users are wiping up their persistence because of misunderstanding of new USB image added

Also available in: Atom PDF