Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Template Distro EOL Notifications & Badges #6905

Closed
ninavizz opened this issue Sep 16, 2021 · 23 comments · Fixed by QubesOS/qubes-desktop-linux-manager#175
Closed

Template Distro EOL Notifications & Badges #6905

ninavizz opened this issue Sep 16, 2021 · 23 comments · Fixed by QubesOS/qubes-desktop-linux-manager#175
Assignees
Labels
C: manager/widget P: critical Priority: critical. Between "major" and "blocker" in severity. pr submitted A pull request has been submitted for this issue. r4.2-host-stable r4.2-vm-bookworm-stable r4.2-vm-bullseye-stable r4.2-vm-centos-stream8-stable r4.2-vm-fc37-stable r4.2-vm-fc38-stable r4.2-vm-fc39-stable T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality. ux User experience
Milestone

Comments

@ninavizz
Copy link
Member

ninavizz commented Sep 16, 2021

How to file a helpful issue

The problem you're addressing (if any)

Non-Linux-native users are not familiar with the concept of an OS/distro (or really, any software) "End-of-life'ing."

Mac and Windows OS and app software, just do updates very differently than Linux things. Even for Linux users, when one uses a system such as Qubes with so many distros on it, it can be hard to keep track of them all.

Because of the above, and because we have yet to build-out a more streamlined experience to manage updates, users do not know to migrate their app-vms from one template to another, or to delete the old templates.

Bigger-picture and longer-term, a more streamlined updater experience is a preferred solution—to handle all of this in a guided UI experience. Until then, a notification to let users know what's up, would be great.

The solution you'd like

  1. A simple notification to let a user know a distro they have in a template will soon EOL, with a link-out to docs to learn more. So: If I am a user with a FooBar-66 Template on my machine, I would receive a notification letting me know that FooBar-66 will soon be retired, and that I will need to 1A. Install newer FooBar Templates, and 2B. Delete older FooBar Templates.
  2. A little badge (let's say a skull, or something to reflect death or obsolescence) icon in Qubes Manager next to EOL'd templates, with a tool-tip saying "Hey, this is obsolete; re-template relevant app/service qubes, and delete this."
  3. An updated Updater experience, that does all of this automagically. This latter number being a far heavier lift, however, 1 and 2 as acceptance criteria for this Issue would help users a lot in the near-term, I suspect.

FooBar-66 will EOL in 90 days
Your Template FooBar-66 is used by 4 different qubes. It will no longer receive updates, starting Dec 16 2021. You will need to install a newer FooBar Template, and re-assign qubes built on FooBar-66, to remain secure and up to date. Learn More

  • Above message would show at the 90, 60, 30, 15, and 0 day marks
  • At the 30 day mark, FooBar-66 would receive a badge icon w/ pop-over text in Qube Manager
  • Linked-out article would explain the EOL concept in Linux, and steps users should take to reconcile.

The value to a user, and who that user might be

For many users, just being told they need to install new Templates and then re-link those to all the qubes using the soon-to-EOL template, and then can delete the EOL template, will be helpful.

For users who already know they need to do this, being reminded that they still have those Templates and need to take action, will be very helpful—both from a security perspective, and ta general-helpfulness perspective. ADHD users matter!

Speaking only for myself, as a user (that like other enterprise users) whose machine is configured by an IT manager in another location, they never see what the total-view of my system is. They had no idea I had 4 versions of FooBar on my machine, with only 2 of them in active use. I'm siked I get to delete the other two versions, but knowing about all of this would have been great.

Related Issues

#3430, #6023

@ninavizz ninavizz added T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality. ux User experience P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. labels Sep 16, 2021
@DemiMarie
Copy link

At least Fedora and Debian both support in-place upgrades, which might actually be a better alternative.

@ninavizz
Copy link
Member Author

ninavizz commented Sep 16, 2021

Users need to have one consistent system they can depend on for their "Qubes system" (which is many distros) is the thing. Also: Which is more time intensive to implement well within Qubes... a notifications/badge system, or an in-place upgrade system that would also require template renaming and possibly other manual tasks (presuming in-place upgrades would require both)?

I agree that "automate/streamline it all" to remove user burdens, is preferred. Until an ideal solution can be developed, though, a stopgap improvement to what exists today, feels important. Hence, this issue.

@andrewdavidwong
Copy link
Member

How is this not a duplicate of #3430?

Non-Linux-native users are not familiar with the concept of an OS/distro (or really, any software) "End-of-life'ing."

Mac and Windows OS and app software, just do updates very differently than Linux things.

Not really. Releases of those OSes also reach EOL. For example, the EOL of Windows 7 was a big deal, and it's still a major problem that so many systems continue to run it without any security updates.

@ninavizz
Copy link
Member Author

@andrewdavidwong I commented on #3430. This issue is specific to EOLs, that issue is for "any critical" thing. Each thing needs to be handled uniquely. I requested additional things

Yes, Mac and Windows do both eventually EOL; however, EOLs are faaar less frequent with those. I've casually observed among Linux users, EOL to be a commonly-known about concept. Whereas in Windows and Mac using friends/family "Oh, my thing is too old, lol" is the infrequent anecdote.

@SvenSemmler
Copy link

SvenSemmler commented Sep 16, 2021 via email

@ninavizz
Copy link
Member Author

@SvenSemmler SecureDrop uses Fedora and Ubuntu on its servers, and between SecureDrop and Qubes, both, over the past 3 years I've encountered "Uh oh, thing is EOL'd!" several times. Granted, both are unusually complex projects, and most of the anecdotal observations have been from developer users. Thx for the info above, it is actually very helpful to see! Yeah, project-based exposure bias, feeling seen. 🥇

If in fact this issue is likely a non-issue for a majority of users, I'd love to see it just "not done" and punted on, in favor of just waiting for the updating experience to be improved. On the surveys there's been a strong preference for Debian over Fedora, but also a strong preference for just using defaults.

In the 4.1 installer, if a user just totally doesn't care and wants to go with what Qubes recommends, what would the installer pick for the user @marmarta (only @'ing Marta to spare Marek the pings)?

Below is a screencap from the surveys.

Screen Shot 2021-09-16 at 4 53 38 PM

@SvenSemmler
Copy link

SvenSemmler commented Sep 17, 2021

Makes sense. With Debian templates I see (just normal) updates maybe once a week? Maybe sometimes even less frequent than that. While using Fedora templates it kind of felt like a daily thing. It would be great if R4.1 would default to Debian (I know @adw I advocate a personal preference ... but looking at the survey results I might just represent the majority). ;-)

@andrewdavidwong
Copy link
Member

EOLs happen all the time in Android, Windows, and iOS, which are some of the most commonly-used OSes in the world. Most users just don't know or don't care. You probably notice it more now that you work on SecureDrop and Qubes because these two projects actually understand and care about security. You were probably just oblivious to it before, like most of the rest of the world.

@andrewdavidwong
Copy link
Member

This issue is specific to EOLs, that issue is for "any critical" thing. Each thing needs to be handled uniquely.

Why? Still seems like a dupe to me. The other issue includes this.

@ninavizz
Copy link
Member Author

Why? Still seems like a dupe to me. The other issue includes this.

There could be one single issue created: "Make a reasonably Secure Operating System," and everything within Qubes OS would qualify as fitting that one issue. So then how would we track the thousands of details that go into building Qubes?

The other issue will entail multiple different solutions for each and every "critical thing" identified. One issue for multiple unique problems/solutions (that, yes, each funnel-up to "Better call-out critical things"), feels problematic. EOL stuff's solution is a notification and a badge—I doubt that will be an appropriate solution for all (or even any) of the other "critical things."

The initial task of identifying "critical things" apart from EOL stuff, also has yet to be tackled—and to me feels like a more appropriate narrowing of that issue, with individual issues opened from it to solve for each identified problem/solution.

It feels (to me, at least) like packing all those solutions into a single issue, is too much. This is one identified "critical thing" that has a specific solution identified for it. You're the PM, and Marek is the guy who oversees the people coding all the things, so it's your call—not mine. That was just my own thinking on it. Happy to defer to your judgement.

@mfc
Copy link
Member

mfc commented Nov 16, 2021

from my perspective having two separate issues makes sense, as tackling Template EOL issues may include aspects not part of system-wide critical notifications (#3430), tho it may also take advantage of such notifications. examples below.

I think tackling template EOL issues for the user should be seen as a high priority item as there is really no way for the user to navigate it successfully without external guidance (Qubes news, mailing list, documentation), and worse it is not explicitly clear to the user that they need to be seeking such guidance.

One strategy could be to incorporate an EOL warning into the Qubes Updater widget - red icon warning that the template (maybe italized, rather than normal or bold) is no longer receiving updates.

combined with adding some EOL information in the new Qubes Template Manager this would allow the user to become aware of a template's EOL and also install the newer template, all via GUI.

and separately, once critical notifications infrastructure exists, a (daily?) notification could also be pushed to the user.

@andrewdavidwong andrewdavidwong added P: major Priority: major. Between "default" and "critical" in severity. and removed P: default Priority: default. Default priority for new issues, to be replaced given sufficient information. labels Nov 16, 2021
marmarek added a commit to marmarek/qubes-core-admin that referenced this issue Feb 18, 2023
This is a hint for updater to notify about old templates (like imported
from older qubes version).

Related to QubesOS/qubes-issues#6905
@marmarta marmarta self-assigned this Jul 13, 2023
@andrewdavidwong andrewdavidwong removed this from the Release TBD milestone Aug 13, 2023
@andrewdavidwong andrewdavidwong added P: critical Priority: critical. Between "major" and "blocker" in severity. and removed P: major Priority: major. Between "default" and "critical" in severity. labels Oct 8, 2023
marmarta added a commit to marmarta/qubes-desktop-linux-manager that referenced this issue Oct 13, 2023
This is not perfect - just gives the user information, not
immediately actionable button - but should at least
help significantly.

fixes QubesOS/qubes-issues#6905
@qubesos-bot
Copy link

Automated announcement from builder-github

The component desktop-linux-manager (including package desktop-linux-manager) has been pushed to the r4.2 testing repository for the Fedora template.
To test this update, please install it with the following command:

sudo dnf update --enablerepo=qubes-vm-r4.2-current-testing

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component desktop-linux-manager (including package desktop-linux-manager) has been pushed to the r4.2 testing repository for the Fedora template.
To test this update, please install it with the following command:

sudo dnf update --enablerepo=qubes-vm-r4.2-current-testing

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component desktop-linux-manager (including package desktop-linux-manager) has been pushed to the r4.2 testing repository for the Fedora template.
To test this update, please install it with the following command:

sudo dnf update --enablerepo=qubes-vm-r4.2-current-testing

Changes included in this update

@andrewdavidwong andrewdavidwong added this to the Release 4.2 milestone Nov 22, 2023
@andrewdavidwong andrewdavidwong added the pr submitted A pull request has been submitted for this issue. label Nov 22, 2023
@qubesos-bot
Copy link

Automated announcement from builder-github

The package desktop-linux-manager has been pushed to the r4.2 stable repository for the CentOS centos-stream8 template.
To install this update, please use the standard update command:

sudo yum update

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The package desktop-linux-manager has been pushed to the r4.2 stable repository for the Debian template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The package desktop-linux-manager has been pushed to the r4.2 stable repository for the Debian template.
To install this update, please use the standard update command:

sudo apt-get update && sudo apt-get dist-upgrade

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component desktop-linux-manager (including package desktop-linux-manager) has been pushed to the r4.2 stable repository for the Fedora template.
To install this update, please use the standard update command:

sudo dnf update

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component desktop-linux-manager (including package desktop-linux-manager) has been pushed to the r4.2 stable repository for the Fedora template.
To install this update, please use the standard update command:

sudo dnf update

Changes included in this update

@qubesos-bot
Copy link

Automated announcement from builder-github

The component desktop-linux-manager (including package desktop-linux-manager) has been pushed to the r4.2 stable repository for the Fedora template.
To install this update, please use the standard update command:

sudo dnf update

Changes included in this update

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C: manager/widget P: critical Priority: critical. Between "major" and "blocker" in severity. pr submitted A pull request has been submitted for this issue. r4.2-host-stable r4.2-vm-bookworm-stable r4.2-vm-bullseye-stable r4.2-vm-centos-stream8-stable r4.2-vm-fc37-stable r4.2-vm-fc38-stable r4.2-vm-fc39-stable T: enhancement Type: enhancement. A new feature that does not yet exist or improvement of existing functionality. ux User experience
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants