diff --git a/doc/tools/qubes-dom0-update.rst b/doc/tools/qubes-dom0-update.rst index dbb4720..1cb9839 100644 --- a/doc/tools/qubes-dom0-update.rst +++ b/doc/tools/qubes-dom0-update.rst @@ -10,7 +10,7 @@ qubes-dom0-update - update software in dom0 SYNOPSIS ======== -| qubes-dom0-update [--clean] [--check-only] [--gui] [] +| qubes-dom0-update [--clean] [--check-only] [--gui] [] [] OPTIONS ======= @@ -24,6 +24,10 @@ OPTIONS Download (and install if run by root) new packages in dom0 instead of updating +Besides above options, when no --gui or --check-only given, all other options +are passed to yum call. So for example --enablerepo/--disablerepo options works +as well. + AUTHORS ======= | Joanna Rutkowska diff --git a/dom0-updates/qubes-dom0-update b/dom0-updates/qubes-dom0-update index 125d61b..05e149c 100755 --- a/dom0-updates/qubes-dom0-update +++ b/dom0-updates/qubes-dom0-update @@ -27,12 +27,15 @@ GUI= CHECK_ONLY= ALL_OPTS=$* QVMRUN_OPTS= +CLEAN= # Filter out some yum options and collect packages list while [ $# -gt 0 ]; do case "$1" in --enablerepo=*|\ - --disablerepo=*|\ + --disablerepo=*) + ;; --clean) + CLEAN=1 ;; --gui) GUI=1 @@ -71,6 +74,10 @@ if [ "$CHECK_ONLY" == "1" ] && ! xl domid $UPDATEVM > /dev/null 2>&1; then exit 1 fi +if [ -n "$CLEAN" ]; then + rm -f /var/lib/qubes/updates/rpm/* +fi + # We should ensure the clocks in Dom0 and UpdateVM are in sync # becuase otherwise yum might complain about future timestamps qvm-sync-clock diff --git a/dom0-updates/qubes-dom0-updates.cron b/dom0-updates/qubes-dom0-updates.cron index 9f47753..cb6ed11 100755 --- a/dom0-updates/qubes-dom0-updates.cron +++ b/dom0-updates/qubes-dom0-updates.cron @@ -2,7 +2,6 @@ # Get normal user name LOCAL_USER=`users | sed -e 's/root *//' | cut -d' ' -f 1` -PIDFILE=/var/run/qubes/dom0-update-notification.pid NOTIFY_ICON=/usr/share/qubes/icons/dom0-update-avail.svg UPDATES_STAT_FILE=/var/lib/qubes/updates/dom0-updates-available UPDATES_DISABLE_FLAG=/var/lib/qubes/updates/disable-updates @@ -11,13 +10,6 @@ if [ -f "$UPDATES_DISABLE_FLAG" ]; then exit 0 fi -# Do not allow multiple instances -[ -r $PIDFILE ] && kill -0 `cat $PIDFILE` && exit 0 -# Teoretically the race can happen here, but this tool will be run once a few -# hours, so no real problem -echo $$ > $PIDFILE -trap "rm $PIDFILE" EXIT - # If no updates available - exit here qubes-dom0-update --check-only >/dev/null && exit RETCODE=$? @@ -36,12 +28,4 @@ fi touch $UPDATES_STAT_FILE # Notify about updates using system tray -su -c 'DISPLAY=:0 zenity --notification --window-icon=$NOTIFY_ICON --text="Qubes dom0 updates available."' $LOCAL_USER - -su -c 'DISPLAY=:0 zenity --question --title="Qubes Dom0 updates" \ - --text="There are updates for dom0 available, do you want to download them now?"' $LOCAL_USER || exit 0 - -su -c "DISPLAY=:0 qubes-dom0-update --gui" $LOCAL_USER - -# Check if user installed updates -yum -q check-updates && rm $UPDATES_STAT_FILE +su -c 'DISPLAY=:0 notify-send -t 0 "Qubes dom0 updates available."' $LOCAL_USER diff --git a/version b/version index b8061b5..a14da29 100644 --- a/version +++ b/version @@ -1 +1 @@ -2.0.15 +2.0.16