Re: [Fedora-packaging] Scriptlet to replace a directory can cause infinite loop in update
> Zbigniew Jędrzejewski-Szmek writes: > Let's take a step back. Does it make sense to implement complicated > and fragile scriptlets in packages? No, of course not. > Can we *please* get rid of this footgun that has been a continous > source of problems? The mantra on the packaging committee is that we work with the RPM we have, not the RPM we wish we had. This has been an issue in RPM since before Fedora existed and it's still there, so we have little choice but to adapt. Even if RPM does start handling this, the need to handle older releases won't go away for quite some time. It would be really nice if the scriptlet were at least put in a macro. That way there would be only one place needing modification to fix an issue like this, the macro would just be defined to %nil on releases where it is not needed, and it would be trivial to find packages that use it for testing and eventual cleanup. - J< -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Fedora eln compose report: 20250306.n.0 changes
OLD: Fedora-eln-20250305.n.0 NEW: Fedora-eln-20250306.n.0 = SUMMARY = Added images:0 Dropped images: 0 Added packages: 9 Dropped packages:3 Upgraded packages: 259 Downgraded packages: 2 Size of added packages: 227.54 MiB Size of dropped packages:172.50 KiB Size of upgraded packages: 3.98 GiB Size of downgraded packages: 1.36 MiB Size change of upgraded packages: -126.07 KiB Size change of downgraded packages: -113 B = ADDED IMAGES = = DROPPED IMAGES = = ADDED PACKAGES = Package: R-4.4.3-1.eln146 Summary: A language for data analysis and graphics RPMs:R-core libRmath Size:202.29 MiB Package: cantor-24.12.3-2.eln146 Summary: KDE Frontend to Mathematical Software RPMs:cantor cantor-libs Size:7.59 MiB Package: dSFMT-2.2.3-26.eln146 Summary: Double precision SIMD-oriented Fast Mersenne Twister RPMs:dSFMT Size:19.97 KiB Package: kaidan-0.11.0-3.eln146 Summary: A XMPP client based on KDE Framework RPMs:kaidan Size:4.44 MiB Package: libgit2_1.8-1.8.4-2.eln146 Summary: C implementation of the Git core methods as a library with a solid API RPMs:libgit2_1.8 Size:550.82 KiB Package: openlibm-0.7.5-11.eln146 Summary: High quality system independent, open source libm RPMs:openlibm Size:102.39 KiB Package: qxmpp-1.10.1-1.eln146 Summary: Cross-platform C++ XMPP client and server library RPMs:qxmpp-qt6 Size:4.20 MiB Package: suitesparse-7.10.0-1.eln146 Summary: A collection of sparse matrix libraries RPMs:suitesparse64_ Size:8.19 MiB Package: tre-0.8.0-47.20140228gitc2f5d13.eln146 Summary: POSIX compatible regexp library with approximate matching RPMs:tre tre-common Size:162.54 KiB = DROPPED PACKAGES = Package: perl-Convert-Base32-0.06-21.eln145 Summary: Encoding and decoding of base32 strings RPMs:perl-Convert-Base32 Size:12.89 KiB Package: perl-Crypt-URandom-0.53-1.eln146 Summary: Non-blocking randomness for Perl RPMs:perl-Crypt-URandom Size:124.26 KiB Package: perl-Net-IP-1.26-35.eln145 Summary: Perl module for manipulation of IPv4 and IPv6 addresses RPMs:perl-Net-IP Size:35.35 KiB = UPGRADED PACKAGES = Package: 389-ds-base-3.1.2-6.eln146 Old package: 389-ds-base-3.1.1-6.eln144 Summary: 389 Directory Server (base) RPMs: 389-ds-base 389-ds-base-bdb 389-ds-base-devel 389-ds-base-libs 389-ds-base-snmp python3-lib389 Size: 22.97 MiB Size change: 1.24 MiB Changelog: * Thu Jan 16 2025 Fedora Release Engineering - 3.1.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild * Mon Jan 20 2025 Fedora Release Engineering - 3.1.1-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild * Fri Jan 24 2025 Viktor Ashirov - 3.1.2-1 - Update to 3.1.2 * Sat Jan 25 2025 Viktor Ashirov - 3.1.2-2 - Replace python3-magic with python3-file-magic * Sat Feb 01 2025 Bj??rn Esser - 3.1.2-3 - Add explicit BR: libxcrypt-devel * Sat Feb 08 2025 Zbigniew J??drzejewski-Szmek - 3.1.2-4 - Drop call to %sysusers_create_compat * Fri Feb 14 2025 Viktor Ashirov - 3.1.2-5 - Update to 3.1.2-5 - Resolves: Issue 6489 - After log rotation refresh the FD pointer - Resolves: Issue 6554 - During import of entries without nsUniqueId, a supplier generates duplicate nsUniqueId (LMDB only) - Resolves: Issue 6555 - Potential crash when deleting a replicated backend * Wed Mar 05 2025 Yaakov Selkowitz - 3.1.2-6 - Fix build of bundled libdb with GCC 15 Package: akonadi-calendar-24.12.3-1.eln146 Old package: akonadi-calendar-24.12.2-2.eln146 Summary: The Akonadi Calendar Library RPMs: akonadi-calendar Size: 2.48 MiB Size change: -10.11 KiB Changelog: * Tue Mar 04 2025 Steve Cossette - 24.12.3-1 - 24.12.3 Package: akonadi-calendar-tools-24.12.3-1.eln146 Old package: akonadi-calendar-tools-24.12.2-2.eln146 Summary: Akonadi Calendar Tools RPMs: akonadi-calendar-tools Size: 1.48 MiB Size change: -1.27 KiB Changelog: * Tue Mar 04 2025 Steve Cossette - 24.12.3-1 - 24.12.3 Package: akonadi-contacts-24.12.3-1.eln146 Old package: akonadi-contacts-24.12.2-2.eln146 Summary: The Akonadi Contacts Library RPMs: akonadi-contacts Size: 1.86 MiB Size change: -7.58 KiB Changelog: * Tue Mar 04 2025 Steve Cossette - 24.12.3-1 - 24.12.3 Package: akonadi-import-wizard-24.12.3-1.eln146 Old package: akonadi-import-wizard-24.12.2-2.eln146 Summary: Akonadi Import Wizard RPMs: akonadi-import-wizard Size: 2.33 MiB Size change: -13.30 KiB Changelog: * Tue Mar 04 2025 Steve Cossette - 24.12.3-1 - 24.12.3 Package: akonadi-mime-24.12.3-1.eln146 Old package: akonadi-mime-24.12.2-2.eln146 Summary: The Akonadi Mime Library RPMs: akonadi-mime Size: 1.14 MiB Size change: -1.75 KiB Changelog: * Tue Mar 04 2025 Steve Cossette
Re: Donate 1 minute of your time to test upgrades from F41 to F42
Good evening! Aside from a handful of downgrades that already appear to be reported, my primary system didn't encounter any issues with the transaction. Transaction Summary: Installing:68 packages Upgrading: 4188 packages Replacing: 4205 packages Removing: 8 packages Downgrading: 10 packages Regards, Paul (Aggraxis) On Wed, Mar 5, 2025 at 4:24 AM Dan Čermák wrote: > Miroslav Suchý writes: > > > Do you want to make Fedora 42 better? Please spend 1 minute of your time > and try to run: > > > > dnf --releasever=42 --enablerepo=updates-testing --assumeno --best > distro-sync > > I got a new (= not yet reported) failure: > > Problem 1: installed package python3-qt5-webkit-5.15.10-11.fc41.x86_64 > requires python3-qt5(x86-64) = 5.15.10-11.fc41, but none of the providers > can be installed > - python3-qt5-5.15.10-11.fc41.x86_64 does not belong to a distupgrade > repository > - problem with installed package > -- > ___ > devel mailing list -- devel@lists.fedoraproject.org > To unsubscribe send an email to devel-le...@lists.fedoraproject.org > Fedora Code of Conduct: > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > List Archives: > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org > Do not reply to spam, report it: > https://pagure.io/fedora-infrastructure/new_issue > -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: Donate 1 minute of your time to test upgrades from F41 to F42
On Tue, Mar 04, 2025 at 11:24:53PM +0100, Charalampos Stratakis wrote: > On my x86_64: > > Problem 1: installed package libreoffice-writer2latex-1.0.2-39.fc38.x86_64 > requires osgi(javax.xml), but none of the providers can be installed https://src.fedoraproject.org/rpms/fedora-obsolete-packages/pull-request/106 -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: Donate 1 minute of your time to test upgrades from F41 to F42
On 05. 03. 25 9:22, Zbigniew Jędrzejewski-Szmek wrote: Hmm, this seems to be an unfinished retirement. We have https://src.fedoraproject.org/rpms/torque/ c/5f8d64fc9a899f4b94e63685a29f4cc95ef2f829 but the package is tagged into rawhide. But the package needs to be obsoleted anyway. I'll add it to the PR above. $ koji list-pkgs --show-blocked --tag f43 --quiet --package torque torque f43 spot [BLOCKED] $ koji list-pkgs --show-blocked --tag rawhide --quiet --package torque torque f43 spot [BLOCKED] $ koji list-pkgs --show-blocked --tag f42 --quiet --package torque torque f42 spot [BLOCKED] -- Miro Hrončok -- Phone: +420777974800 Fedora Matrix: mhroncok -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: Donate 1 minute of your time to test upgrades from F41 to F42
On Wed, Mar 05, 2025 at 09:56:43AM +0100, Miro Hrončok wrote: > On 05. 03. 25 9:22, Zbigniew Jędrzejewski-Szmek wrote: > > Hmm, this seems to be an unfinished retirement. We have > > https://src.fedoraproject.org/rpms/torque/ > > c/5f8d64fc9a899f4b94e63685a29f4cc95ef2f829 > > but the package is tagged into rawhide. > > > > But the package needs to be obsoleted anyway. I'll add it to the PR above. > > $ koji list-pkgs --show-blocked --tag f43 --quiet --package torque > torque f43 spot > [BLOCKED] > > $ koji list-pkgs --show-blocked --tag rawhide --quiet --package torque > torque f43 spot > [BLOCKED] > > $ koji list-pkgs --show-blocked --tag f42 --quiet --package torque > torque f42 spot > [BLOCKED] https://src.fedoraproject.org/rpms/torque shows torque-6.1.3-13.fc42 for F43. Maybe the error is somewhere else. Zbyszek -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Fedora 42 compose report: 20250305.n.0 changes
OLD: Fedora-42-20250304.n.0 NEW: Fedora-42-20250305.n.0 = SUMMARY = Added images:0 Dropped images: 1 Added packages: 0 Dropped packages:1 Upgraded packages: 0 Downgraded packages: 0 Size of added packages: 0 B Size of dropped packages:97.15 MiB Size of upgraded packages: 0 B Size of downgraded packages: 0 B Size change of upgraded packages: 0 B Size change of downgraded packages: 0 B = ADDED IMAGES = = DROPPED IMAGES = Image: i3 live aarch64 Path: Spins/aarch64/iso/Fedora-i3-Live-aarch64-42-20250304.n.0.iso = ADDED PACKAGES = = DROPPED PACKAGES = Package: pypy3.9-7.3.16-4.3.9.fc42 Summary: Python 3.9 implementation with a Just-In-Time compiler RPMs:pypy3.9 pypy3.9-devel pypy3.9-libs pypy3.9-test Size:97.15 MiB = UPGRADED PACKAGES = = DOWNGRADED PACKAGES = -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: Donate 1 minute of your time to test upgrades from F41 to F42
On Tue, Mar 04, 2025 at 03:47:30PM -, Artur Frenszek-Iwicki wrote: > Tested on three machines running Fedora 41; two of them were a-okay, one had > some errors: > > > Problem 1: installed package libreoffice-writer2latex-1.0.2-38.fc37.x86_64 > > requires osgi(javax.xml), but none of the providers can be installed https://src.fedoraproject.org/rpms/fedora-obsolete-packages/pull-request/106 > > Problem 3: installed package torque-libs-6.1.3-13.fc41.x86_64 requires > > libjsoncpp.so.25()(64bit), but none of the providers can be installed > > - cannot install both jsoncpp-1.9.6-1.fc42.x86_64 from updates-testing and > > jsoncpp-1.9.5-8.fc41.x86_64 from @System > > - cannot install both jsoncpp-1.9.6-1.fc42.x86_64 from updates-testing and > > jsoncpp-1.9.5-9.fc42.x86_64 from fedora > > - package cmake-3.31.6-2.fc42.x86_64 from updates-testing requires > > libjsoncpp.so.26()(64bit), but none of the providers can be installed > > - installed package torque-6.1.3-13.fc41.x86_64 requires > > libtorque.so.2()(64bit), but none of the providers can be installed > > - cannot install the best update candidate for package > > cmake-3.30.7-1.fc41.x86_64 > > - problem with installed package Hmm, this seems to be an unfinished retirement. We have https://src.fedoraproject.org/rpms/torque/c/5f8d64fc9a899f4b94e63685a29f4cc95ef2f829 but the package is tagged into rawhide. But the package needs to be obsoleted anyway. I'll add it to the PR above. Zbyszek -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: Donate 1 minute of your time to test upgrades from F41 to F42
Miroslav Suchý writes: > Do you want to make Fedora 42 better? Please spend 1 minute of your time and > try to run: > > dnf --releasever=42 --enablerepo=updates-testing --assumeno --best distro-sync I got a new (= not yet reported) failure: Problem 1: installed package python3-qt5-webkit-5.15.10-11.fc41.x86_64 requires python3-qt5(x86-64) = 5.15.10-11.fc41, but none of the providers can be installed - python3-qt5-5.15.10-11.fc41.x86_64 does not belong to a distupgrade repository - problem with installed package -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
CANCELLED - F42 Beta Go/No-Go Meeting, March 6
Hi all, Please be advised that due to a number of outstanding unresolved blockers[1] for F42 beta, we are cancelling this week's go/no-go meeting tomorrow, March 6. We will instead meet next Thursday, March 13 @ 1700 UTC in #fedora-meeting[2] to determine the status of Fedora Linux 42 Beta. The new target release date is Tuesday March 18 for F42 Beta. The release schedule[3] has been updated accordingly and an email reminder will be sent on Monday 10 March ahead of the Go/No-Go meeting. Kindest regards, Aoife [1] https://qa.fedoraproject.org/blockerbugs/milestone/42/beta/buglist [2] https://calendar.fedoraproject.org/Fedora%20release/2025/3/10/#m11003 [3] https://fedorapeople.org/groups/schedule/f-42/f-42-key-tasks.html -- Aoife Moloney Fedora Operations Architect Fedora Project Matrix: @amoloney:fedora.im IRC: amoloney -- ___ devel-announce mailing list -- devel-annou...@lists.fedoraproject.org To unsubscribe send an email to devel-announce-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel-annou...@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Scriptlet to replace a directory can cause infinite loop in update
Hi, recently we were faced with a bug that caused an infinite loop in a container. It was from a package (node.js) retaining a scriptlet to replace a directory as recommended in Fedora Guidelines [0]. There the errno and reason returned [1] is effectively ignored. Only whether the operation succeed is checked. There is no differentiation whether the rename failed because the directory exists which will correctly cause a rename with a numerical index appended to the directory name. Or if the rename failed due to any of the other reasons we might consider as a fail where jumping out of a scriptlet is preferable to even attempting a rename. The next numerical index is found with a trial-and-error that runs in a loop until some index succeeds in the rename, therein lies the potential for infinite loop. Conclusion, before I get to the long longer "why". I propose we change the form from: ~~~ path = "/path/to/dir" st = posix.stat(path) if st and st.type == "directory" then status = os.rename(path, path .. ".rpmmoved") if not status then suffix = 0 while not status do suffix = suffix + 1 status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix) end os.rename(path, path .. ".rpmmoved") end end ~~~ to something along the lines of: ~~~ path = "/path/to/dir" st = posix.stat(path) reason = nil if st and st.type == "directory" then status, reason, errno = os.rename(path, path .. ".rpmmoved") if not status and errno == 17 then suffix = 0 while not status and errno == 17 do suffix = suffix + 1 status, reason, errno = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix) if errno ~= 17 then print("Failed to rename a directory. " .. reason) break end end os.rename(path, path .. ".rpmmoved") else print("Failed to rename a directory. " .. reason) end end ~~~ Not the best I have ever written but it adds checks that it failed for an expected reason where we intend to continue. A bit of Lua & overlayFS background of why this is happening. The scriptlet uses `os.rename`, which maps quite closely, from what I can tell from the behavior, to the C function `rename`. OverlayFS does not like to rename directories from lower layers (which could be a layer created by let's say `RUN mkdir /opt/foo` directive in a Containerfile) to upper layers without some specific mount options, like `metacopy` or `redirect_dir` enabled that enables the rename operation to succeed [2]. If there is not metacopy or redirect_dir, the operation will fail with errno 18 EXDEV. From what I understand, when one `podman run`s a container, there is a new upper layer for separating what happens in the running container, giving the temporary nature to changes in a running container. Or this "new" layer atop lower layers can also be observed when attempting to build a container. So this is a concern for both the situation of container build and the situation of container running. In both of those cases, if we attempt to rename a directory with that call it will fail without the mentioned mount options. However thanks to the loop that ignores the exact errno and just blindly tries to find an index until the `os.rename` returns `true` instead of `nil`, we get into a situation where the scriptlet, on package upgrade, goes into an infinite loop. A simple reproducer for this issue: ~~~ podman run -it --rm quay.io/fedora/fedora:41 bash -c 'dnf install -y lua >/dev/null && lua -e "status, str, code = os.rename(\"/var/games\", \"/var/games.moved\"); print(status, str, code)"; cat /proc/mounts | grep overlay' ~~~ This will attempt the rename close to what we'd expect in a scriptlet, and print the reason and specific errno code. Additionally prints how the overlay is mounted, to inspect options. This operation will succeed if there is either `redirect_dir=on` or the `metacopy=on` present in the mount options on the last line printed from running the container. `/var/games` was chosen due to no particular reason other than the directory being present on lower layers and not strictly necessary for runtime, allowing for experimentation. Specifically with node.js, it happened simply because there was already an existing container, similar to quay.io/fedora/nodejs-22 and an attempt to update via build was made in style of: ~~~ FROM quay.io/fedora/nodejs-22 USER 0 RUN dnf update -y USER default ~~~ This was enough to trigger the problem. This is very similar to the reproducer: `os.rename` was called on an already existing directory. However the directory was in a lower layer, making the fail related to the errno 18 EXDEV instead of errno 17 EEXIST which we would regard as a valid errno where we can continue. Thoughts? Feedback? Regards, Jarek Prokop [0] https://docs.fedoraproject.org/en-US/packaging-guidelines/Directory_Replacement/#_scriptlet_to_replace_a_directory [1] https://www.lua.org/man
Re: force merging of the remaining pull requests for sysusers
I started testing the patches in MariaDB and MySQL. I merged PRs to other packages, but since MariaDB and MySQL share the same user and group config, I want to check if it works fine for them in various combinations. However I noticed a behavior that surprised me: When installing MariaDB on Fedora 42 or Rawhide, the current scriptlet (now, before the sysusers patch) does not guarantee the user / group ID number anymore. | # rpm -q --scripts mariadb-server | preinstall scriptlet (using /bin/sh): | /usr/sbin/groupadd -g 27 -o -r mysql >/dev/null 2>&1 || : | /usr/sbin/useradd -M -N -g mysql -o -r -d /var/lib/mysql -s /sbin/nologin \ | -c "MySQL Server" -u 27 mysql >/dev/null 2>&1 || : Results in: | Finished unknown scriptlet: mariadb-server-3:10.11.11-1.fc42.x86_64 | Scriptlet output: | Creating group 'mysql' with GID 990. | Creating user 'mysql' (MariaDB) with UID 990 and GID 990. And the UID/GID 27 will remain unused, free. While on Fedora 41 and older it guarantees the UID/GID 27. I checked the Fedora changes for F42 by title and the RPMSuportForSystemdSysusers in full, but none seem to mention this. Do you have any idea what causes it, whether it is an expected change in behavior or whether it is somehow related to your Change? Michal -- Michal Schorm Software Engineer Databases Team Red Hat -- On Mon, Mar 3, 2025 at 7:35 PM Emmanuel Seyman wrote: > > * Zbigniew Jędrzejewski-Szmek [03/03/2025 10:43] : > > > > https://src.fedoraproject.org/rpms/perl-Net-Statsd-Server/pull-request/1 > > Merged. > > Emmanuel > -- > ___ > devel mailing list -- devel@lists.fedoraproject.org > To unsubscribe send an email to devel-le...@lists.fedoraproject.org > Fedora Code of Conduct: > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines > List Archives: > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org > Do not reply to spam, report it: > https://pagure.io/fedora-infrastructure/new_issue -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
[Fedocal] Reminder meeting : ELN SIG
Dear all, You are kindly invited to the meeting: ELN SIG on 2025-03-06 from 15:00:00 to 16:00:00 US/Eastern At meet...@fedoraproject.org The meeting will be about: Source: https://calendar.fedoraproject.org//meeting/10979/ -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: [Fedora-packaging] Scriptlet to replace a directory can cause infinite loop in update
On Wed, Mar 05, 2025 at 10:47:36AM +0100, Jarek Prokop via packaging wrote: > Hi, > > recently we were faced with a bug that caused an infinite loop in a > container. It was from a package (node.js) retaining a scriptlet to replace > a directory as recommended in Fedora Guidelines [0]. > Thoughts? Feedback? Let's take a step back. Does it make sense to implement complicated and fragile scriptlets in packages? Or even: will packagers remember to check if the package update they are doing replaces directories by symlinks or vice versa and remember to add the complicated scriptlet? The answer to the second question is no: quite naturally we forget about this all the time, and only add the scriptlet when somebody reports an rpm transaction error. The answer to the first question is more subjective, but IMO, it's also "no". Can we *please* get rid of this footgun that has been a continous source of problems? We are making efforts to move away from scriptlets in packaging. With the ongoing sysusers change we managed to absorb a significant percentage of complex scriptlets into rpm. Let's do the same with the directory/symlink replacement scriptlets: let rpm do the rename to '.rpmmoved' if it detects a type mismatch. The end result will be _exactly_ the same as if we had the scriptlet in the package, but it'll only be implemented once. Zbyszek -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Fedora rawhide compose report: 20250305.n.0 changes
OLD: Fedora-Rawhide-20250304.n.0 NEW: Fedora-Rawhide-20250305.n.0 = SUMMARY = Added images:0 Dropped images: 0 Added packages: 6 Dropped packages:1 Upgraded packages: 104 Downgraded packages: 0 Size of added packages: 2.80 MiB Size of dropped packages:23.41 KiB Size of upgraded packages: 3.32 GiB Size of downgraded packages: 0 B Size change of upgraded packages: 21.37 MiB Size change of downgraded packages: 0 B = ADDED IMAGES = = DROPPED IMAGES = = ADDED PACKAGES = Package: python-toml-cli-0.7.0-1.fc43 Summary: Read and write keys/values to/from toml files RPMs:python3-toml-cli toml-cli Size:25.71 KiB Package: rust-audiopus_sys-0.2.2-1.fc43 Summary: FFI-Binding to Opus, dynamically or statically linked for Windows and UNIX RPMs:rust-audiopus_sys+default-devel rust-audiopus_sys+dynamic-devel rust-audiopus_sys+static-devel rust-audiopus_sys-devel Size:43.77 KiB Package: rust-ocb3-0.1.0-1.fc43 Summary: Pure Rust implementation of the Offset Codebook Mode v3 RPMs:rust-ocb3+alloc-devel rust-ocb3+arrayvec-devel rust-ocb3+default-devel rust-ocb3+getrandom-devel rust-ocb3+heapless-devel rust-ocb3+rand_core-devel rust-ocb3+std-devel rust-ocb3+stream-devel rust-ocb3+zeroize-devel rust-ocb3-devel Size:88.18 KiB Package: rust-sequoia-openpgp1-1.22.0-1.fc43 Summary: OpenPGP data types and associated machinery RPMs:rust-sequoia-openpgp1+__implicit-crypto-backend-for-tests-devel rust-sequoia-openpgp1+allow-experimental-crypto-devel rust-sequoia-openpgp1+allow-variable-time-crypto-devel rust-sequoia-openpgp1+compression-bzip2-devel rust-sequoia-openpgp1+compression-deflate-devel rust-sequoia-openpgp1+compression-devel rust-sequoia-openpgp1+crypto-nettle-devel rust-sequoia-openpgp1+crypto-openssl-devel rust-sequoia-openpgp1+crypto-rust-devel rust-sequoia-openpgp1+default-devel rust-sequoia-openpgp1-devel Size:2.39 MiB Package: rust-sspi-0.15.2-1.fc43 Summary: Rust implementation of the Security Support Provider Interface RPMs:rust-sspi+__install-crypto-provider-devel rust-sspi+__rustls-used-devel rust-sspi+default-devel rust-sspi+dns_resolver-devel rust-sspi+network_client-devel rust-sspi+ring-devel rust-sspi+tsssp-devel rust-sspi-devel Size:242.97 KiB Package: rust-target-triple-0.1.4-1.fc43 Summary: TARGET and HOST triples RPMs:rust-target-triple+default-devel rust-target-triple-devel Size:21.24 KiB = DROPPED PACKAGES = Package: python-nose-testconfig-0.10-35.fc42 Summary: Test configuration plugin for nosetests RPMs:python3-nose-testconfig Size:23.41 KiB = UPGRADED PACKAGES = Package: NetworkManager-1:1.53.1-1.fc43 Old package: NetworkManager-1:1.51.90-1.fc43 Summary: Network connection manager and user applications RPMs: NetworkManager NetworkManager-adsl NetworkManager-bluetooth NetworkManager-cloud-setup NetworkManager-config-connectivity-fedora NetworkManager-config-server NetworkManager-libnm NetworkManager-libnm-devel NetworkManager-ovs NetworkManager-ppp NetworkManager-team NetworkManager-tui NetworkManager-wifi NetworkManager-wwan Size: 25.83 MiB Size change: -68.74 KiB Changelog: * Tue Mar 04 2025 igo Huguet - 1:1.53.1-1 - Update to 1.53.1 release (development) Package: ProDy-2.4.1-12.fc43 Old package: ProDy-2.4.1-11.fc42 Summary: Application for protein structure, dynamics and sequence analysis RPMs: python3-ProDy Size: 54.66 MiB Size change: -201.07 KiB Changelog: * Tue Mar 04 2025 Antonio Trande - 2.4.1-12 - Remove deprecated dependency (rhbz#2349829) Package: android-tools-1:35.0.2-2.fc43 Old package: android-tools-1:35.0.1-4.fc42 Summary: Android platform tools(adb, fastboot) RPMs: android-tools Size: 3.87 MiB Size change: 125.11 KiB Changelog: * Tue Mar 04 2025 Ivan Afonichev - 1:35.0.2-2 - RPMAUTOSPEC: unresolvable merge Package: apache-commons-net-3.11.1-10.fc43 Old package: apache-commons-net-3.11.1-9.fc42 Summary: Internet protocol suite Java library RPMs: apache-commons-net Dropped RPMs: apache-commons-net-javadoc Size: 306.66 KiB Size change: -608.00 KiB Changelog: * Mon Mar 03 2025 Mikolaj Izdebski - 3.11.1-10 - Remove javadoc subpackage Package: apptainer-1.4.0~rc.2-1.fc43 Old package: apptainer-1.4.0~rc.1-1.fc42 Summary: Application and environment virtualization formerly known as Singularity RPMs: apptainer apptainer-suid Size: 148.19 MiB Size change: 3.00 MiB Changelog: * Tue Mar 04 2025 Dave Dykstra - 1.4.0~rc.2 - Update to upstream 1.4.0-rc.2 - Remove starter patch Package: autogen-5.18.16-29.fc43 Old package: autogen-5.18.16-22.fc41 Summary: Automated text file generator RPMs: autogen autogen-libopts autogen-libopts-devel Size: 3.02 MiB Size change: -2.32 KiB Changelog: * Wed Jul 17 2024 Miroslav Such
Re: force merging of the remaining pull requests for sysusers
On Wed, Mar 05, 2025 at 03:26:44PM +0100, Michal Schorm wrote: > I started testing the patches in MariaDB and MySQL. > I merged PRs to other packages, but since MariaDB and MySQL share the > same user and group config, I want to check if it works fine for them > in various combinations. > > However I noticed a behavior that surprised me: > When installing MariaDB on Fedora 42 or Rawhide, the current scriptlet > (now, before the sysusers patch) does not guarantee the user / group > ID number anymore. > > | # rpm -q --scripts mariadb-server > | preinstall scriptlet (using /bin/sh): > | /usr/sbin/groupadd -g 27 -o -r mysql >/dev/null 2>&1 || : > | /usr/sbin/useradd -M -N -g mysql -o -r -d /var/lib/mysql -s /sbin/nologin \ > | -c "MySQL Server" -u 27 mysql >/dev/null 2>&1 || : > > Results in: > | Finished unknown scriptlet: mariadb-server-3:10.11.11-1.fc42.x86_64 > | Scriptlet output: > | Creating group 'mysql' with GID 990. > | Creating user 'mysql' (MariaDB) with UID 990 and GID 990. > > And the UID/GID 27 will remain unused, free. > > While on Fedora 41 and older it guarantees the UID/GID 27. > > I checked the Fedora changes for F42 by title and the > RPMSuportForSystemdSysusers in full, but none seem to mention this. The output shown above is from sysusers. So it looks like there's a sysusers config for 'mysql'. Oh, there was a second sysusers file already provided by the package, just without the uid. I updated the PR. Zbyszek -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: Possible to use 'fedpkg mockbuild' with a side tag?
On Wed, Mar 05, 2025 13:16:04 -0800, Neal Gompa wrote: > On Wed, Mar 5, 2025 at 1:08 PM Michael Catanzaro > wrote: > > > > Hi, I am wondering if it is possible to use 'fedpkg mockbuild' to > > easily build for a side tag. > > > > I know that it's possible by using 'koji mock-config' and then 'fedpkg > > mockbuild --mock-config' but this is not easy since it requires > > creating a local mock configuration file. Would be nice if it were > > possible to do something like 'fedpkg mockbuild --target' which would > > function just like the --target argument in 'fedpkg build --target'. > > > > $ fedpkg mockbuild -- \ > --addrepo=https://kojipkgs.fedoraproject.org/repos//latest/$basearch/ This is super useful! I've opened a PR for it to be added to package maintainer docs here: https://pagure.io/fedora-docs/package-maintainer-docs/pull-request/177 -- Thanks, Regards, Ankur Sinha "FranciscoD" (He / Him / His) | https://fedoraproject.org/wiki/User:Ankursinha Time zone: Europe/London signature.asc Description: PGP signature -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Possible to use 'fedpkg mockbuild' with a side tag?
Hi, I am wondering if it is possible to use 'fedpkg mockbuild' to easily build for a side tag. I know that it's possible by using 'koji mock-config' and then 'fedpkg mockbuild --mock-config' but this is not easy since it requires creating a local mock configuration file. Would be nice if it were possible to do something like 'fedpkg mockbuild --target' which would function just like the --target argument in 'fedpkg build --target'. Michael -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Re: Possible to use 'fedpkg mockbuild' with a side tag?
On Wed, Mar 5, 2025 at 1:08 PM Michael Catanzaro wrote: > > Hi, I am wondering if it is possible to use 'fedpkg mockbuild' to > easily build for a side tag. > > I know that it's possible by using 'koji mock-config' and then 'fedpkg > mockbuild --mock-config' but this is not easy since it requires > creating a local mock configuration file. Would be nice if it were > possible to do something like 'fedpkg mockbuild --target' which would > function just like the --target argument in 'fedpkg build --target'. > $ fedpkg mockbuild -- \ --addrepo=https://kojipkgs.fedoraproject.org/repos//latest/$basearch/ -- 真実はいつも一つ!/ Always, there's only one truth! -- ___ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue