Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package tik for openSUSE:Factory checked in at 2024-05-13 17:58:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/tik (Old) and /work/SRC/openSUSE:Factory/.tik.new.1880 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tik" Mon May 13 17:58:47 2024 rev:2 rq:1173698 version:0.9.2 Changes: -------- --- /work/SRC/openSUSE:Factory/tik/tik.changes 2024-05-11 18:24:23.481191290 +0200 +++ /work/SRC/openSUSE:Factory/.tik.new.1880/tik.changes 2024-05-13 17:59:14.800446975 +0200 @@ -1,0 +2,20 @@ +Mon May 13 14:39:07 UTC 2024 - rbr...@suse.com + +- Update to version 0.9.2: + * Consider AccountsService info as optional + * Support migrating existing user local & system time settings + +------------------------------------------------------------------- +Mon May 13 09:35:13 UTC 2024 - rbr...@suse.com + +- Update to version 0.9.1: + * module-mig: Legacy Aeon: look for a file that will actually be on legacy Aeon installs + +------------------------------------------------------------------- +Mon May 13 09:04:07 UTC 2024 - rbr...@suse.com + +- Update to version 0.9.0: + * Don't auto-close errors, gives the user time to debug + * Introduce prun-opt function, make all other prun calls mandatory to exit cleanly + +------------------------------------------------------------------- Old: ---- tik-0.2.2.tar.xz New: ---- tik-0.9.2.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ tik.spec ++++++ --- /var/tmp/diff_new_pack.MQ8DPb/_old 2024-05-13 17:59:15.352467115 +0200 +++ /var/tmp/diff_new_pack.MQ8DPb/_new 2024-05-13 17:59:15.352467115 +0200 @@ -17,24 +17,24 @@ Name: tik -Version: 0.2.2 +Version: 0.9.2 Release: 0 Summary: Transactional Installation Kit License: MIT URL: https://github.com/sysrich/tik Source: %{name}-%{version}.tar.xz BuildArch: noarch -Requires: tik-config -Requires: zenity -Requires: pkexec Requires: coreutils +Requires: dbus-1-tools +Requires: efibootmgr Requires: grep +Requires: pkexec +Requires: pv +Requires: tik-config Requires: util-linux Requires: util-linux-systemd Requires: xz -Requires: dbus-1-tools -Requires: pv -Requires: efibootmgr +Requires: zenity %description A toolkit for deploying Operating System images to UEFI hardware from a USB stick. ++++++ _service ++++++ --- /var/tmp/diff_new_pack.MQ8DPb/_old 2024-05-13 17:59:15.380468137 +0200 +++ /var/tmp/diff_new_pack.MQ8DPb/_new 2024-05-13 17:59:15.384468283 +0200 @@ -3,7 +3,7 @@ <service name="obs_scm" mode="localonly"> <param name="url">https://github.com/sysrich/tik.git</param> <param name="scm">git</param> - <param name="revision">v0.2.2</param> + <param name="revision">v0.9.2</param> <param name="versionformat">@PARENT_TAG@</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> ++++++ tik-0.2.2.tar.xz -> tik-0.9.2.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tik-0.2.2/usr/bin/tik new/tik-0.9.2/usr/bin/tik --- old/tik-0.2.2/usr/bin/tik 2024-05-08 13:58:41.000000000 +0200 +++ new/tik-0.9.2/usr/bin/tik 2024-05-13 16:37:45.000000000 +0200 @@ -42,7 +42,7 @@ zenity --timeout 5 --info --no-wrap --title="Installation Complete!" --text="${TIK_OS_NAME} has been installed.\n\n<b>System is rebooting</b>" systemctl reboot else - zenity --timeout 90 --error --no-wrap --title="Installation Failed" --text="Please file a bug report at <tt>${TIK_BUG_URL}</tt>\n\nPlease include the <tt>tik.log</tt> file\nIt can be found on the IGNITION partition on this USB Stick\n\n<b>System is shutting down</b>" + zenity --error --no-wrap --title="Installation Failed" --text="Please file a bug report at <tt>${TIK_BUG_URL}</tt>\n\nPlease include the <tt>tik.log</tt> file\nIt can be found on the IGNITION partition on this USB Stick\n\n<b>System is shutting down</b>" cp -a ${tik_log} /ignition systemctl poweroff fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tik-0.2.2/usr/lib/tik/lib/tik-functions new/tik-0.9.2/usr/lib/tik/lib/tik-functions --- old/tik-0.2.2/usr/lib/tik/lib/tik-functions 2024-05-08 13:58:41.000000000 +0200 +++ new/tik-0.9.2/usr/lib/tik/lib/tik-functions 2024-05-13 16:37:45.000000000 +0200 @@ -13,7 +13,7 @@ error() { echo "[${tik_module}][$(date +"%Y%m%d-%T")][ERROR] $*" 1>&2 - d --timeout 60 --error --text "$*" + d --error --text "$*" exit 1 } @@ -34,7 +34,8 @@ done } -prun() { +# variant of privileged run (prun) function that doesn't require the pkexec call to return 0 +prun-opt() { if [ "${debug}" == "1" ]; then log "[pkexec-noexec] $@" else @@ -45,6 +46,14 @@ fi } +# Most commonly used prun function, which requires the called command to work +prun() { + prun-opt "$@" + if [ "${retval}" != "0" ]; then + error "Command <tt>$@</tt> FAILED" + fi +} + get_persistent_device_from_unix_node() { local unix_device=$1 local schema=$2 @@ -244,7 +253,7 @@ log "[debug] Not setting EFI boot target" else # Cleanup any existing openSUSE boot entries - prun /usr/sbin/efibootmgr -B -L "openSUSE Boot Manager" + prun-opt /usr/sbin/efibootmgr -B -L "openSUSE Boot Manager" prun /usr/sbin/efibootmgr -O # Currently assuming Aeon-like partition layout and shim name. This function will need extra intelligence to probe partitions for other image layouts prun /usr/sbin/efibootmgr -c -L "openSUSE Boot Manager" -d ${TIK_INSTALL_DEVICE} -l "\EFI\systemd\shim.efi" -p 2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tik-0.2.2/usr/lib/tik/modules/post/20-mig new/tik-0.9.2/usr/lib/tik/modules/post/20-mig --- old/tik-0.2.2/usr/lib/tik/modules/post/20-mig 2024-05-08 13:58:41.000000000 +0200 +++ new/tik-0.9.2/usr/lib/tik/modules/post/20-mig 2024-05-13 16:37:45.000000000 +0200 @@ -19,7 +19,11 @@ prun /usr/bin/cat ${mig_dir}/passwd.out | prun tee -a ${mig_dir}/mnt/etc/passwd prun /usr/bin/cat ${mig_dir}/shadow.out | prun tee -a ${mig_dir}/mnt/etc/shadow prun /usr/bin/sed -i "/^wheel:/ s/$/$(head -n 1 ${mig_dir}/passwd.out | awk -F'[/:]' '{print $1}')/" ${mig_dir}/mnt/etc/group - prun /usr/bin/cp -a ${mig_dir}/system-connections/* ${mig_dir}/mnt/etc/NetworkManager/system-connections + # It's not guaranteed that the system will have existing network configs, localtime or AccountsService + prun-opt /usr/bin/cp -a ${mig_dir}/system-connections/* ${mig_dir}/mnt/etc/NetworkManager/system-connections + prun-opt /usr/bin/cp -a ${mig_dir}/localtime ${mig_dir}/mnt/etc/localtime + prun-opt /usr/bin/cp -a ${mig_dir}/users/* ${mig_dir}/mnt/var/lib/AccountsService/users + prun-opt /usr/bin/cp -a ${mig_dir}/icons/* ${mig_dir}/mnt/var/lib/AccountsService/icons prun /usr/bin/umount ${mig_dir}/mnt/etc prun /usr/bin/umount ${mig_dir}/mnt/var prun /usr/bin/umount ${mig_dir}/mnt diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tik-0.2.2/usr/lib/tik/modules/pre/20-mig new/tik-0.9.2/usr/lib/tik/modules/pre/20-mig --- old/tik-0.2.2/usr/lib/tik/modules/pre/20-mig 2024-05-08 13:58:41.000000000 +0200 +++ new/tik-0.9.2/usr/lib/tik/modules/pre/20-mig 2024-05-13 16:37:45.000000000 +0200 @@ -26,8 +26,9 @@ if [ -f ${mig_dir}/mnt/${filematch} ]; then probedpart=/dev/disk/by-id/${part} log "[probe_partitions] /dev/disk/by-id/${part} found" - if grep -q 'PRETTY_NAME="openSUSE MicroOS"' ${mig_dir}/mnt/${filematch} && [ -f ${mig_dir}/mnt/usr/share/doc/packages/patterns-microos/desktop-gnome.txt ]; then + if grep -q 'PRETTY_NAME="openSUSE MicroOS"' ${mig_dir}/mnt/${filematch} && [ -f ${mig_dir}/mnt/usr/bin/gnome-shell ]; then # Found legacy Aeon, activate easter egg + log "Legacy Aeon Install FOUND" legacy_aeon=1 fi continue @@ -35,7 +36,7 @@ continue fi done - prun /usr/bin/umount ${mig_dir}/mnt + prun-opt /usr/bin/umount ${mig_dir}/mnt prun /usr/bin/rmdir ${mig_dir}/mnt } @@ -49,10 +50,15 @@ migrate=1 log "backup skipped, migration will use existing backup" else - prun /usr/sbin/btrfs subvolume delete ${mig_dir}/${snap_dir} - prun /usr/bin/rm ${mig_dir}/*.out - prun /usr/bin/rm ${mig_dir}/system-connections/* - prun /usr/bin/rmdir ${mig_dir}/system-connections + prun-opt /usr/sbin/btrfs subvolume delete ${mig_dir}/${snap_dir} + prun-opt /usr/bin/rm ${mig_dir}/*.out + prun-opt /usr/bin/rm ${mig_dir}/system-connections/* + prun-opt /usr/bin/rmdir ${mig_dir}/system-connections + prun-opt /usr/bin/rm ${mig_dir}/users/* + prun-opt /usr/bin/rmdir ${mig_dir}/users + prun-opt /usr/bin/rm ${mig_dir}/icons/* + prun-opt /usr/bin/rmdir ${mig_dir}/icons + prun-opt /usr/bin/rm ${mig_dir}/localtime fi fi @@ -113,7 +119,11 @@ eval prun "$etcmntcmd" prun /usr/bin/awk -F'[/:]' '($3 >= 1000 && $3 != 65534)' ${mig_dir}/mnt/etc/passwd | prun tee ${mig_dir}/passwd.out prun /usr/bin/awk -F'[/:]' '{if ($3 >= 1000 && $3 != 65534) print $1}' ${mig_dir}/mnt/etc/passwd | prun /usr/bin/grep -f - ${mig_dir}/mnt/etc/shadow | prun tee ${mig_dir}/shadow.out - prun /usr/bin/cp -a ${mig_dir}/mnt/etc/NetworkManager/system-connections ${mig_dir}/system-connections + # It's not guaranteed that the system will have existing network configs, custom localtime or AccountsService + prun-opt /usr/bin/cp -a ${mig_dir}/mnt/etc/NetworkManager/system-connections ${mig_dir}/system-connections + prun-opt /usr/bin/cp -a ${mig_dir}/mnt/etc/localtime ${mig_dir}/localtime + prun-opt /usr/bin/cp -a ${mig_dir}/mnt/var/lib/AccountsService/users ${mig_dir}/users + prun-opt /usr/bin/cp -a ${mig_dir}/mnt/var/lib/AccountsService/icons ${mig_dir}/icons prun /usr/bin/umount ${mig_dir}/mnt/etc prun /usr/bin/umount ${mig_dir}/mnt/var prun /usr/bin/umount ${mig_dir}/mnt