Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package xkeyboard-config for openSUSE:Factory checked in at 2025-07-22 12:54:11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xkeyboard-config (Old) and /work/SRC/openSUSE:Factory/.xkeyboard-config.new.8875 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xkeyboard-config" Tue Jul 22 12:54:11 2025 rev:110 rq:1294803 version:2.45 Changes: -------- --- /work/SRC/openSUSE:Factory/xkeyboard-config/xkeyboard-config.changes 2025-07-17 17:18:25.150888083 +0200 +++ /work/SRC/openSUSE:Factory/.xkeyboard-config.new.8875/xkeyboard-config.changes 2025-07-22 12:54:28.129477541 +0200 @@ -1,0 +2,6 @@ +Mon Jul 21 11:26:10 UTC 2025 - Stefan Dirsch <sndir...@suse.com> + +- make %pretrans lua script more robust to avoid endless loops + during package installation (boo#1246768) + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xkeyboard-config.spec ++++++ --- /var/tmp/diff_new_pack.DZEikE/_old 2025-07-22 12:54:28.617497862 +0200 +++ /var/tmp/diff_new_pack.DZEikE/_new 2025-07-22 12:54:28.621498029 +0200 @@ -76,21 +76,19 @@ # migration to 2.45 (boo#1246516) %pretrans -p <lua> --- https://fedoraproject.org/wiki/Packaging:Directory_Replacement#Replacing_a_symlink_with_a_directory_or_a_directory_with_any_type_of_file --- Define the path to directory being replaced below. --- DO NOT add a trailing slash at the end. -path = "%{_datadir}/X11/xkb" -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 +local path = "%{_datadir}/X11/xkb" +local stat = posix.stat(path) + +if stat and stat.type == "directory" then + local target = path .. ".rpmmoved" + local suffix = 0 + + while posix.stat(target) do suffix = suffix + 1 - status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix) - end - os.rename(path, path .. ".rpmmoved") + target = path .. ".rpmmoved." .. suffix end + + os.rename(path, target) end %post