PDA

View Full Version : Why do I have to run 'dnf update' twice?



rweed
25th December 2018, 12:40 PM
Hi,
It seems like every time I run 'dnf update' it says 'Nothing to do'. If I immediately run it again, it downloads the repo updates and does it's normal update thing.

Anyone else seeing this? I can't see how this is normal.
Regards

boycottsystemd
25th December 2018, 02:08 PM
Hi, I can confirm it on F28. Not in F29 so far.

keikari
25th December 2018, 03:51 PM
I've had same problem since updating to F29.

lsatenstein
26th December 2018, 02:10 AM
Then run dnf update --refresh

hieronymous
28th December 2018, 08:20 AM
This issue has also surfaced for me only since installing f29, as follows:

[xxxxxx@asus-f29 ~]$ sudo dnf -y upgrade
[sudo] password for xxxxxx:
Last metadata expiration check: 7:50:29 ago on Fri 28 Dec 2018 12:19:52 NZDT.
Dependencies resolved.
Nothing to do.
Complete!

Running the command again straightaway:

[xxxxxx@asus-f29 ~]$ sudo dnf -y upgrade
Fedora Modular 29 - x86_64 - Updates 2.2 kB/s | 4.0 kB 00:01
Fedora 29 - x86_64 - Updates 2.0 kB/s | 4.0 kB 00:02
Fedora 29 - x86_64 - Updates 1.5 MB/s | 18 MB 00:11
Dependencies resolved.
Nothing to do.
Complete!

The second run-through always differs by producing "Fedora Modular 29 etc" in the first line. It regularly (though not always) locates and upgrades files not identified by the first command.

Any thoughts?

keikari
28th December 2018, 09:12 AM
Then run dnf update --refresh

Yeah, it works like expected, but doesn't fix the problem.

MarcvdM
28th December 2018, 11:12 AM
as we have seen in other dnf threads - use "dnf upgrade" instead of "dnf update". update is deprecated.
I have never seen the issue described here. when dnf says "nothing to do" then normally there is nothing to do. I guess "--refresh" is the same as running "dnf clean all && dnf upgrade"

keikari
28th December 2018, 10:32 PM
as we have seen in other dnf threads - use "dnf upgrade" instead of "dnf update". update is deprecated.
I have never seen the issue described here. when dnf says "nothing to do" then normally there is nothing to do. I guess "--refresh" is the same as running "dnf clean all && dnf upgrade"

I believe "update" is just and alias kind of thing for "upgrade", they should behave exactly same way. (Actually I think that in Fedora 29, even "yum update" and "dnf upgrade" are exactly same thing.) But I will try going with "upgrade" instead of "update", maybe there is something weird going on.

hieronymous
28th December 2018, 11:39 PM
I am using "upgrade", here is a listing of "dnf upgrade" from today:

[xxxxxx@asus-f29 ~]$ sudo dnf -y upgrade
[sudo] password for xxxxxx:
Last metadata expiration check: 15:11:24 ago on Fri 28 Dec 2018 20:20:16 NZDT.
Dependencies resolved.
Nothing to do.
Complete!
[xxxxxx@asus-f29 ~]$ sudo dnf -y upgrade
Fedora Modular 29 - x86_64 - Updates 1.9 kB/s | 3.6 kB 00:01
Fedora 29 - x86_64 - Updates 20 kB/s | 45 kB 00:02
Fedora 29 - x86_64 - Updates 1.6 MB/s | 18 MB 00:11
Dependencies resolved.
================================================== ==============================
Package Arch Version Repository Size
================================================== ==============================
Upgrading:
breeze-icon-theme noarch 5.53.0-1.fc29 updates 4.5 M
kf5-attica x86_64 5.53.0-1.fc29 updates 187 k
kf5-filesystem x86_64 5.53.0-1.fc29 updates 11 k
kf5-kactivities x86_64 5.53.0-1.fc29 updates 133 k
kf5-karchive x86_64 5.53.0-1.fc29 updates 102 k
kf5-kauth x86_64 5.53.0-1.fc29 updates 130 k
kf5-kbookmarks x86_64 5.53.0-1.fc29 updates 162 k
kf5-kcmutils x86_64 5.53.0-1.fc29 updates 300 k
kf5-kcodecs x86_64 5.53.0-1.fc29 updates 158 k
kf5-kcompletion x86_64 5.53.0-1.fc29 updates 107 k
kf5-kconfig-core x86_64 5.53.0-1.fc29 updates 275 k
kf5-kconfig-gui x86_64 5.53.0-1.fc29 updates 46 k
kf5-kconfigwidgets x86_64 5.53.0-1.fc29 updates 374 k
kf5-kcoreaddons x86_64 5.53.0-1.fc29 updates 353 k
kf5-kcrash x86_64 5.53.0-1.fc29 updates 32 k
kf5-kdbusaddons x86_64 5.53.0-1.fc29 updates 66 k
kf5-kdeclarative x86_64 5.53.0-2.fc29 updates 250 k
kf5-kdesu x86_64 5.53.0-1.fc29 updates 88 k
kf5-kdoctools x86_64 5.53.0-1.fc29 updates 612 k
kf5-kfilemetadata x86_64 5.53.0-1.fc29 updates 177 k
kf5-kglobalaccel x86_64 5.53.0-1.fc29 updates 56 k
kf5-kglobalaccel-libs x86_64 5.53.0-1.fc29 updates 96 k
kf5-kguiaddons x86_64 5.53.0-1.fc29 updates 57 k
kf5-ki18n x86_64 5.53.0-1.fc29 updates 2.8 M
kf5-kiconthemes x86_64 5.53.0-1.fc29 updates 148 k
kf5-kinit x86_64 5.53.0-1.fc29 updates 165 k
kf5-kio-core x86_64 5.53.0-1.fc29 updates 600 k
kf5-kio-core-libs x86_64 5.53.0-1.fc29 updates 508 k
kf5-kio-doc noarch 5.53.0-1.fc29 updates 2.6 M
kf5-kio-file-widgets x86_64 5.53.0-1.fc29 updates 267 k
kf5-kio-ntlm x86_64 5.53.0-1.fc29 updates 20 k
kf5-kio-widgets x86_64 5.53.0-1.fc29 updates 240 k
kf5-kio-widgets-libs x86_64 5.53.0-1.fc29 updates 401 k
kf5-kitemviews x86_64 5.53.0-1.fc29 updates 113 k
kf5-kjobwidgets x86_64 5.53.0-1.fc29 updates 101 k
kf5-knewstuff x86_64 5.53.0-1.fc29 updates 689 k
kf5-knotifications x86_64 5.53.0-1.fc29 updates 154 k
kf5-knotifyconfig x86_64 5.53.0-1.fc29 updates 106 k
kf5-kpackage x86_64 5.53.0-1.fc29 updates 209 k
kf5-kpty x86_64 5.53.0-1.fc29 updates 69 k
kf5-kservice x86_64 5.53.0-1.fc29 updates 344 k
kf5-ktextwidgets x86_64 5.53.0-1.fc29 updates 293 k
kf5-kwallet x86_64 5.53.0-1.fc29 updates 362 k
kf5-kwallet-libs x86_64 5.53.0-1.fc29 updates 94 k
kf5-kwayland x86_64 5.53.0-2.fc29 updates 418 k
kf5-kwidgetsaddons x86_64 5.53.0-1.fc29 updates 1.5 M
kf5-kwindowsystem x86_64 5.53.0-1.fc29 updates 169 k
kf5-kxmlgui x86_64 5.53.0-2.fc29 updates 752 k
kf5-plasma x86_64 5.53.0-1.fc29 updates 4.4 M
kf5-solid x86_64 5.53.0-1.fc29 updates 367 k
kf5-sonnet-core x86_64 5.53.0-1.fc29 updates 162 k
kf5-sonnet-ui x86_64 5.53.0-1.fc29 updates 150 k
libxcrypt x86_64 4.4.2-3.fc29 updates 116 k
libxcrypt-devel x86_64 4.4.2-3.fc29 updates 32 k
zchunk-libs x86_64 1.0.0-1.fc29 updates 43 k

Transaction Summary
================================================== ==============================
Upgrade 55 Packages

This is what I have come to expect....

boycottsystemd
29th December 2018, 09:32 AM
this problem occurs when calling

dnf upgrade --refresh
or

dnf update --refresh

hieronymous
1st January 2019, 01:43 AM
Some info about Fedora Modular:

Fedora 28 unveiled the following changes:

A new, optional, software repository called “Modular,” also know as “AppStream,” allows users to upgrade individual packages apart from the rest of the system, at a faster pace than Fedora’s twice-per-year release cycle.

Fedora 29, released October 30, 2018, offers the following new features and changes:

All editions of Fedora now use the modular repository, previously only available for Fedora 28 Server. The modular repository allows users to selectively upgrade to newer versions of a specific package shipped with Fedora, and allows Fedora’s maintainers to provide newer versions of a system package without either forcing everyone to wait until the next major release or bulldozing existing user preferences regarding which version should be the default.

The above begs the question, "what repository is dnf using for the initial upgrade command, when the Modular repo isn't mentioned?"

jbuckley2004
1st January 2019, 02:17 AM
That's a good question, of which I've often wondered myself. I don't have an answer.

And what I'm going to say next is liable to get me into trouble here, and get me labelled as a language lawyer. And that is: the phrase "...begs the question" doesn't mean anything like "... demands the following question be asked" or "... leads me to the following question". The phrase "begs the question" actually means that a question has been asked that implies it's own answer. The classic example is, of course, the question "When did you stop beating your wife?"

I promise not to bring this up again in this forum, but this common misusage makes me grit my teeth!

lsatenstein
1st January 2019, 03:28 AM
I have a different idea about dnf running twice. This is my imaginative amateur detective working hard.

dnfdragora is typically run on first logging into the Fedora system or following a reboot/boot. When it has completed, a message about updates is announced and some data is written to the sql database that is shared between dnf and dnfdragora. I believe that dnf is waiting for that update signal from dnfdragora.

To prove my amateur detective work, if you run dnf almost immediately after the dnfdragora does it's thing, does dnf still take two runs to download the updates?

hieronymous
1st January 2019, 05:06 AM
“When I use a word,’ Humpty Dumpty said in rather a scornful tone, ‘it means just what I choose it to mean — neither more nor less.’

’The question is,’ said Alice, ‘whether you can make words mean so many different things.’

’The question is,’ said Humpty Dumpty, ‘which is to be master — that’s all.”

hieronymous
1st January 2019, 05:21 AM
I have a different idea about dnf running twice. This is my imaginative amateur detective working hard.

dnfdragora is typically run on first logging into the Fedora system or following a reboot/boot. When it has completed, a message about updates is announced and some data is written to the sql database that is shared between dnf and dnfdragora. I believe that dnf is waiting for that update signal from dnfdragora.

To prove my amateur detective work, if you run dnf almost immediately after the dnfdragora does it's thing, does dnf still take two runs to download the updates?

I have not seen this "two runs" behaviour before i.e. in f28, but until f29, use of the Modular repository was optional. In f29 it is now not so, but dnf is doing something else somewhere on the first pass, sometimes successfully.
As for dnfdragora, I presume I would have to go looking for a dragora updates message you suggest, as nothing is flagged on screen - where might I look?

lsatenstein
1st January 2019, 05:03 PM
dnfdragora (Gnome) if you look at the lists, one version creates the message that updates are available. You are given the option to install that version.
When that dnfdragora message appears, I run sudo dnf update/upgrade once and not have to do it twice.

bgstack15
4th January 2019, 04:59 PM
I will share my experience, if it aids you for reference.

I use fc28 primarily and secondarily. I have one vm running fc29 but didn't really like the xfce defaults (and frankly, even the Cinnamon 4.0 in fc28 is questionable, however that's probably not Fedora's fault). Anyway, I always remove dnfdragora\* and I have never had problems with having to run dnf twice.

tankist02
9th January 2019, 10:52 PM
I can confirm - the first thing after installing Fedora I do is to remove dnfdragora and then I have no problems with dnf.

nielslauritzen
19th January 2019, 05:31 AM
I see the same behavior only since f29 workstation not prior, (I boot my workstation into multi-user.target not graphical).
dnf -y update the first time says nothing needs updating and then dnf -y update the second time usually finds many updates to process if it has been a few weeks since last update.

If I do dnf -y update once in text mode, and then start the graphical desktop then some gnome package manager usually notifies me that there are updates to put on the boot loading queue
that will process upon the next reboot (if I so desire).

FYI I have dnf upgraded rather than fresh install, both from f27 to f28 and from f28 to f29.

lsatenstein
19th January 2019, 07:35 PM
GNOME dnfdragora update is typically run to tell you that you have updates. Then, when you go to the command line and run dnf update, it will run once.

But have you tried dnf update --refresh. That should have dnf run once each time.