Sfoglia il codice sorgente

Add cron.daily
* Patch from Michael Vogt to add an optional cron job which can run
apt-get update periodically

Matt Zimmerman 21 anni fa
parent
commit
0c1326826f
3 ha cambiato i file con 57 aggiunte e 1 eliminazioni
  1. 54 0
      debian/apt.cron.daily
  2. 2 0
      debian/changelog
  3. 1 1
      debian/rules

+ 54 - 0
debian/apt.cron.daily

@@ -0,0 +1,54 @@
+#!/bin/sh
+#
+# cron job for apt-get update
+#
+# Update-Package-Intervall is in days
+#
+STAMP=/var/lib/apt/update-stamp
+
+#set -e
+
+do_update()
+{
+    touch $STAMP.new
+    if apt-get update -qq; then
+	if [ -x /usr/bin/dbus-send ]; then
+	    dbus-send --system / app.apt.dbus.updated boolean:true
+	fi
+        mv $STAMP.new $STAMP
+    fi
+    rm -f $STAMP.new
+}
+
+UpdateInterval=0
+RES=`apt-config shell UpdateInterval APT::Periodic::Update-Package-Lists`
+eval $RES
+
+if [ $UpdateInterval -eq 0 ]; then
+    exit 0
+fi
+
+# laptop check, on_ac_power returns:
+#       0 (true)    System is on mains power
+#       1 (false)   System is not on mains power
+#       255 (false) Power status could not be determined
+# Desktop systems always return 255 it seems
+if [ -x /usr/bin/on_ac_power ]; then
+    /usr/bin/on_ac_power 
+    if [ $? -eq 1 ]; then
+	exit 0
+    fi
+fi
+
+if [ ! -f $STAMP ]; then
+    do_update
+    exit 0
+fi
+
+LastUpdate=`stat -c "%Y" $STAMP 2>/dev/null` 
+Now=`date +%s`
+
+NeedUpdate=$(($LastUpdate+$UpdateInterval*3600*24))
+if [ $NeedUpdate -le $Now ]; then
+    do_update
+fi

+ 2 - 0
debian/changelog

@@ -22,6 +22,8 @@ apt (0.5.28) unstable; urgency=low
     (Closes: #267266)
   * Set default Dpkg::MaxArgs to 1024, and Dpkg::MaxArgBytes to 32k.  Needed
     to work around ordering bugs when installing a large number of packages
+  * Patch from Michael Vogt to add an optional cron job which can run
+    apt-get update periodically
 
  -- 
 

+ 1 - 1
debian/rules

@@ -211,7 +211,7 @@ apt: build debian/shlibs.local
 
 	dh_installexamples -p$@ $(BLD)/docs/examples/*
 	dh_installman -p$@ 
-
+	dh_installcron -p$@
 	dh_installdocs -p$@
 	dh_installchangelogs -p$@
 	dh_strip -p$@