FS#71465 - [systemd] rc version-tag prevents systemd-boot update

Attached to Project: Arch Linux
Opened by Matthias Lisin (matthias.lisin) - Wednesday, 07 July 2021, 20:10 GMT
Last edited by Christian Hesse (eworm) - Thursday, 08 July 2021, 09:13 GMT
Task Type Bug Report
Category Packages: Testing
Status Closed
Assigned To Christian Hesse (eworm)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
version-tag for pre-releases is considered newer than the final release version.
Upstream uses tilde for pre-releases.

249~rc3 < 249 < 249rc3-2-arch

Order nicely visualised here:
https://github.com/systemd/systemd/blob/v249/src/fundamental/string-util-fundamental.c#L95

Steps to reproduce:
1. install systemd 249rc3-2-arch
2. run bootctl install/update
3. update to systemd 249-1
4. run bootctl update and see exit with the message:

Skipping "/efi/EFI/systemd/systemd-bootx64.efi", since a newer boot loader version exists already.
Skipping "/efi/EFI/BOOT/BOOTX64.EFI", since a newer boot loader version exists already.
This task depends upon

Closed by  Christian Hesse (eworm)
Thursday, 08 July 2021, 09:13 GMT
Reason for closing:  Implemented
Additional comments about closing:  in svn
Comment by Eli Schwartz (eschwartz) - Wednesday, 07 July 2021, 20:22 GMT
> Unlike rpmvercmp(), this distiguishes e.g. 123a and 123.a, and 123a is newer.

Interesting...

(Pacman uses the same version function as rpm.)

Yay for release candidates?
Comment by Eli Schwartz (eschwartz) - Wednesday, 07 July 2021, 20:26 GMT
Nothing to do at this point, really, since the rc is not packaged anymore.
Comment by Christian Hesse (eworm) - Wednesday, 07 July 2021, 20:37 GMT
Ugh... Well, too late to fix this for v249.

Perhaps we should try something like this for next release...
Comment by Eli Schwartz (eschwartz) - Wednesday, 07 July 2021, 20:55 GMT
Does the version comparison affect anything other than systemd-boot? (I assume it must have a force flag...)
Comment by Matthias Lisin (matthias.lisin) - Thursday, 08 July 2021, 06:53 GMT
Afaik, there is no force flag.

Doesn't look like it affects anything else. It'd be nice if a grep-ninja could second that, I'm know too little about the systemd codebase.
Comment by Christian Hesse (eworm) - Thursday, 08 July 2021, 09:13 GMT
Should be fixed in svn now for next release:
https://github.com/archlinux/svntogit-packages/commit/074009cd173459bbf1b367a88dfd2f404b766bff

There's nothing we can do for systemd 249-1, thought. Thus closing.

Loading...