Bug #16011

Get ready for removing tails-installer from Debian

Added by Anonymous 2018-09-28 13:08:32 . Updated 2019-02-03 13:47:14 .

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

50%

Feature Branch:
installer:tails/16011-deprecate-outside-of-tails
Type of work:
Code
Blueprint:

Starter:
Affected tool:
Deliverable for:
316

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?).


Files


Subtasks


Related issues

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

History

#1 Updated by Anonymous 2018-09-28 13:10:08

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

#2 Updated by Anonymous 2018-09-28 13:35:37

Milestone 5

#3 Updated by intrigeri 2018-10-11 08:37:06

  • 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 Anonymous 2018-10-16 12:16:02

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

#5 Updated by intrigeri 2018-10-16 12:18:14

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

#6 Updated by intrigeri 2018-12-01 09:58:28

  • Status changed from Confirmed to In Progress
  • Assignee deleted (intrigeri)
  • 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 Bug #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 Bug #16012 and mine here.

#7 Updated by intrigeri 2018-12-01 11:11:49

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

#8 Updated by intrigeri 2018-12-01 11:14:10

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

#9 Updated by intrigeri 2018-12-01 11:20:53

  • QA Check changed from Info Needed to Ready for QA

intrigeri wrote:
> # 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 2018-12-04 11:10:13

  • 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 2018-12-05 09:47:47

  • Assignee deleted (intrigeri)
  • QA Check changed from Pass to Ready for QA

(As per Bug #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 Anonymous 2018-12-13 16:30:39

@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 Anonymous 2018-12-13 16:34:32

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

#14 Updated by intrigeri 2018-12-16 11:43:07

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

#15 Updated by Anonymous 2018-12-20 12:08:56

  • Assignee set 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 2018-12-21 07:45:31

  • QA Check deleted (Pass)

#17 Updated by intrigeri 2019-01-02 08:49:23

  • Assignee deleted (intrigeri)
  • Priority changed from Normal to Elevated
  • % Done changed from 0 to 30

intrigeri wrote:
> # 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
> # 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:

> # 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 :)

> # on January 29 or 30, once Tails 3.12 is out [u]:
> ## upload the new package that ships the flag file to Debian sid and Ubuntu PPA
> ## 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 Bug #16012 :)

#18 Updated by Anonymous 2019-01-08 10:53:01

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 Anonymous 2019-01-08 20:56:08

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 Anonymous 2019-01-08 21:05:06

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 Anonymous 2019-01-09 15:43:11

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 Anonymous 2019-01-10 14:25:49

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 Anonymous 2019-01-13 11:34:29

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 Anonymous 2019-01-13 11:35:51

  • Assignee set 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 2019-01-13 12:16:08

  • Assignee deleted (intrigeri)

> 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 (Bug #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 2019-01-13 12:16:20

> 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 Anonymous 2019-01-13 13:19:06

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 (Bug #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 Anonymous 2019-01-29 13:07:50

  • 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 2019-01-29 14:45:13

> 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 Anonymous 2019-01-29 16:23:13

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 Anonymous 2019-01-29 17:35:39

arrived in unstable, and ubuntu. but not backports.

#32 Updated by intrigeri 2019-01-29 18:24:17

> 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 2019-01-30 11:59:27

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

#34 Updated by Anonymous 2019-02-03 13:47:14

  • 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 2019-02-21 12:43:34

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