2 # Filename: hg-snapshot-script
3 # Purpose: automatically track changed files using mercurial
4 # Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
5 # Bug-Reports: see http://grml.org/bugs/
6 # License: This file is licensed under the GPL v2 or any later version.
7 ################################################################################
14 # cat > .hgignore << EOF
22 # # add other files if necessary, depends on your setup...
25 # cat >> /etc/apt/apt.conf << EOF
27 # Pre-Invoke {"cd /etc ; ./apt/hg-snapshot-script pre";};
28 # Post-Invoke {"cd /etc ; ./apt/hg-snapshot-script post";};
33 # hg ci -m "initial checkin"
35 # See http://michael-prokop.at/blog/2007/03/14/maintain-etc-with-mercurial-on-debian/
36 # for more details....
37 ################################################################################
41 caller=$(ps axww | mawk '/aptitude|apt-get/ {for (i=5; i<=NF ; i++) printf ("%s ",$i); printf ("\n") }' | head -1)
43 hg addremove 1>/dev/null
46 if [ -z "$STATUS" ] ; then
47 echo "hg-snapshot-script: nothing to be done"
51 echo "hg-snapshot-script: found changed files:"
53 hg ci -m "snapshot from $LOGNAME before: $caller"
56 echo "hg-snapshot-script: found changed files:"
58 hg ci -m "snapshot from $LOGNAME after: $caller"
61 echo "hg-snapshot-script: found changed files:"
63 hg ci -m "snapshot from $LOGNAME on $(date '+%Y-%m-%d - %H:%M:%S')"
68 ## END OF FILE #################################################################