Fedora version: 34
dnf upgrade every 2 to 3 weeks. But, occasionally I see Fedora doing an auto-upgrade.
Yesterday, when I shut down my laptop by clicking on ‘Power off’ button, I saw an upgrade happening just like you see in Windows. After the upgrade, OS was shutdown.
In what conditions, an upgrade like this would happen ?
By default gnome software is set to auto update.You can disable it in gnome software if it’s not what you want it to do.
Oh ok. I didn’t know. Thank You.
Does gnome software update kernel packages as well ?
As far as I know yes it will.I still use dnf upgrade instead but as far as I know it will keep the entire system up to date.
Yeh, gnome-software will update all rpms, and flatpaks also. For rpms, it just uses packagekit (which you can also use from the terminal using
pkcon). (you can update flatpaks on the terminal using
Also note that you can use
dnf to do the offline upgrade that gnome-software does:
sudo dnf offline-upgrade download
sudo dnf offline-upgrade reboot
By default, GNOME in Fedora Workstation downloads updates but does not apply them. You probably didn’t notice, but when these updates are pending, there is a checkbox in the power-off (or reboot) dialog with text like “Apply software updates?” (I forget the exact wording.) You can uncheck this (like, if you need your system to go off right now!). They’re not forced.
They are forced unless the user takes the time and notices that the box is already checked when they start the shutdown then unchecks the box before the final shutdown click.
I hated that scenario when it was introduced and do not ever allow it to function on my system.
Some users might approve. I don’t.
Really, the few times I’ve noticed it the box has been unchecked by default for me (but then I haven’t done this in a while so maybe something changed).
If you’re not using gnome-software, or are generally just using
dnf, you can just disable gnome-software’s automatic updates. On F35, this is what I have, for example:
I tend to update once at the end of a work week using
dnf offline-upgrade, so I keep all of this disabled. So, just tweak it as you want.
When first introduced that check box was already filled in at shutdown time. I have not used it for some time so I have not seen the checkbox recently, and I upgraded from 34 to 35 so things have not changed in my config recently.
If it has been changed to NOT be checked by default that is a good thing. I would hope so, but don’t know first hand.
I would have to do a new install before I could check out the default status and that is not presently in my plans.
The default is checked. I understand that you find it annoying, but “forced” seems like unnecessarily harsh language. From my point of view, we have a responsibility to get security updates to users and make sure they’re easy to apply even for people for whom dropping to a terminal is intimidating and who probably wouldn’t go out of their way otherwise to run some special command. Those people deserve a secure OS too.
“forced” seems appropriate to me since unless the user takes action to prevent it the updates get applied at shutdown. YES, the user can choose to not do the update but being forced to make that selection each time the machine is shutdown does FORCE the user to either accept the update or click the checkbox to not accept the update.
This is one example of moving toward the mindset for the user that “the system takes care of itself and security so I don’t have to pay attention to it.” It dumbs down the users need to pay attention.
While I agree that many users do not even consider the need to do updates, possibly related to microsoft taking all that control away from them, I feel that making that choice somewhat forced on those experienced users who seldom need reminders is counterproductive and at the least intrusive.
I would be happy with an additional popup window that asks if the user wants to apply updates with a yes & no choice (default to no, except possibly security updates default to yes), but am not happy with an already selected yes every time. Especially since that yes is almost hidden in the way it does not stand out in the popup.
We’re not getting anywhere here, and we’re now deviating from the topic
By default, updates are opt-in because of the reasons noted above. They are good reasons for the intended target audience (which is not limited to “power users” that will use dnf and other tools or take care of their packages themselves). For users that have not disabled updates in Gnome-software, it makes sense that if updates are downloaded, they get installed at the next earliest opportunity (otherwise they get outdated when checked next, and then a new set of packages will be downloaded again and so on).
For folks that don’t want this, just disable the automatic updates feature in Gnome software. (You can still manually check for updates in gnome-software if you want to.)
No decisions that the community makes will work for everyone, but the beauty of it is that you can tweak your system to suit your needs. So, let’s just do that and move on
I think its a valid discussion.
And inside the argument about being a safer choice for regular user-base , wouldnt it be better for the system to reminds the user that if he doesnt reboot the update proccess(that i think everybody agress is important) will not take place? I have friends that dont ever reboot the machine, so, technially they would never trigger an auto-update ?
windows does remind users that they need to reboot the machine so the updates are finished. The Gnome-Software does the same?
I have to agree with JV here. I was alarmed to read that this goes on in my e-mail digest.
I use Fedora on one of my computers, most of my other Linux boxes use Debian, which doesn’t seem to do auto upgrades, except once it did - for reasons I have never worked out - and it broke everything. I had to reinstall the O.S. from scratch. A system upgrade is a big deal, it often breaks things, in fact it does so almost every time. Which in a good scenario then takes hours or days of my time to fix, and in in a bad scenario, I’ve occasionally had to do a complete O.S. reinstall to get things working again (e.g. in one case an nVidia driver was incompatible with the new kernel, in another, ZFS wasn’t).
I’ve heard this argument that “the default can be whatever and you can always change the behaviour away from default if you want to” before, but in my view, it’s not a valid argument. The problem with this philosophy is that as new releases introduce ever more automatic default behaviours, a) you have to keep disabling more and more things, b) until you find out that there is a new automatic behaviour taking place by default so you can disable it, that thing automatically happens, even if you never want it to happen. This can cause security holes or privacy breaches. Examples are the past Ubuntu default to share user data with Ubuntu, Mac OS X’s default to start saving unsaved files to the cloud in one system upgrade, the new default to start indexing the entire hard drive and writing an index into a hidden directory in another upgrade (which has caused me data loss when the O.S. started writing on a partition I wanted to keep read only as it had some deleted files I wanted to recover), etc.
The computer should do what I tell it to do. It should not do what I don’t tell it to do. The default should be “do nothing”. It should not by default do what it wants because it knows best - better than me - what’s best for me.
Perhaps the right solution is to offer an option at system install time for any “automatic things” which are proposed to be enabled by default, e.g. the install script could offer a check box (which could be checked by default) which says “enable automatic system updates” but which can be checked off at install time. I believe every “automatic” behaviour which the system wants to enable should be made explicit to the user (even if that information is hidden in “advanced” install options).
I definitely don’t think overwhelming users with more checkboxes up front is a good approach. But, y’all: if you uncheck the install updates box… it’ll stay unchecked the next time.
I don’t think this is at all comparable to sharing user data or something like that.
However, we do have lots of services that do lots of things in the background. We have a service which syncs your clock, one cleans up temporary files, rotate logs, trim SSDs, … a bunch of other stuff. Making all of these things into tasks people need to manually do, or even just manually configure, would not really be very accessible to most people.
Now, is there room for a “does only what I have explicitly configured” variant of Fedora Linux, for people who prefer that sort of thing? Possibly? We have mechanisms (the Fedora Spins process) if there are folks who are interested in making it. Personally, I think the audience for people who actually want that is pretty small… but I could be wrong!
I’m afraid I don’t follow your analogies. Files put in /tmp are defined to be ephemeral, how the O.S. implements that behaviour is up to the O.S. The system provides a clock - ideally as accurate as possible - how it implements that is up to the O.S. Whether it uses NTP, another service, or just an accurate built-in clock, does not affect the user experience. All those are well defined and well understood behaviours. The fact that the system clears /tmp every once in a while does not mean the system is doing something without reference to me, it just means it is implementing the well-defined behaviour. No one is suggesting the computer should not be running tasks which automatically implement well-defined behaviours.
software upgrades are disruptive, they break things and they change the system’s behaviour. Therefore they also force the user to change his workflows, which isn’t something that most people want to be forced into, and is also something which negatively impacts user productivity.
Here are some things that have happened to me because of system upgrades:
- screen suddenly going blank because the video driver is incompatible with the new kernel
- computer not able to boot at all because the root filesystem is ZFS and ZFS & the new kernel don’t yet work together
- unable to send an encrypted e-mail because Thunderbird no longer supports Enigmail
- trying to send an encrypted e-mail but gnupg permanently deleted recipient’s keychain because the new version no longer likes those keys
Software updates should take place when the user has the time to fix anything that breaks during the upgrade - often that’s a lot of things. They shouldn’t take place at a time when the user is busy working. That’s even more true for non-technical users. What’s a non-technical user going to do if he fires up his computer and the screen is blank, or it won’t boot at all, because of an automatic software update? Only the user knows when the convenient time for the update is.
I agree about having a lot of checkboxes. However, this is about updates and throwing in a lot of added additional considerations is not part of that discussion.
Maybe the checkbox for installing updates stays unchecked now, but not nine months ago! When I first posted on this topic it showed as checked every time I went to shutdown. That is what prompted my outrage at the gall of fedora to assume I wanted to allow the system to make my updates for me (and forced me to say no every time I shutdown or rebooted).
If that has been fixed so that I only need to uncheck it once and it stays that way then it meets with my approval. The earlier actions did not.