2 # last update: 2005-01-07
3 # Zoran 'jelly' Dzelajlija <jelly@srce.hr>
4 # Ivan 'ico' Rako <irako@srce.hr>
5 version="%PKG_VERSION%"
7 # restart upgrade under script for logging purposes
8 if [ "$1" == "--no-script" ]; then
9 # restore umask to default
13 elif [ -x /usr/bin/script ]; then
16 chmod og= /var/log/carnet-upgrade.* 2>/dev/null
18 # restart through script
19 exec /usr/bin/script -a -t -f -c "$0 --no-script $@" \
20 /var/log/carnet-upgrade.typescript 2>>/var/log/carnet-upgrade.timing
27 #ROOT=/home/jelly/work/src/carnet-upgrade
28 # make apt simulate-only for debug
34 cnup="/usr/share/carnet-upgrade"
36 . ${ROOT}${cnup}/data.sh
37 . ${ROOT}${cnup}/messages.sh
38 . ${ROOT}${cnup}/functions.sh
40 log "carnet-upgrade v$version starting"
42 main_queuetab="${cnup}/actions/main.queue"
43 post_upgrade_queuetab="/var/lib/carnet-upgrade/post_upgrade.queue"
45 # logika kako slijedi:
46 # imamo popis testova i akcija koje ce se izvrsiti svakog testa
47 # ("queuetab" datoteka)
49 # akcije se izvrsavaju redoslijedom iz popisa
51 # neke akcije imaju dio koji se izvrsava prije i dio koji se izvrsava nakon
52 # upgradea, svaka takva akcija dodaje svoj post-upgrade dio akcije u
53 # zasebni red akcija, i onda se to izvrsava nakon upgradea na isti nacin
54 # kao glavni red akcija.
56 # queuetab file format:
59 # eg. "pkg xinetd-cn lt 2:0 do_xinetd" means:
60 # if there is a version of xinetd-cn lower than 2:0 installed,
61 # invoke do_xinetd function
63 # pkg tests if a package is installed, optional arguments like
64 # dpkg --compare-versions
66 # Sanitize environment
70 PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/share/carnet-upgrade/scripts
71 unset LC_CTYPE LC_COLLATE LC_TIME LC_NUMERIC || true
75 queuetab="$main_queuetab"
77 elif [ -f "${cnup}/actions/$1.queue" ]; then
78 queuetab="${cnup}/actions/$1.queue"
81 elif [ -f "$1" ]; then
85 elif [ "x$1" = "x-h" -o "x$1" = "x--help" ]; then
90 echo "Nepoznati argumenti: $*" 1>&2
95 # need this to get custom msg_finished for "sarge" run
99 run_actions "$queuename" "$queuetab"