postoji, izvrsi sed program <sed> nad tim datotekama. Najcesce se
koristi za zamjenu stare vrijednosti postavke novom.
+cp_echo [-mailonly|-m] <string>
+
+cp_mail [-q] <package> <version>
+
+ U kombinaciji, ove funkcije sluze za slanje poruka na stdout _i_ na
+ mail rootu. Koristiti za informacije koje svakako treba dostaviti
+ sistemcu (passwordi, nekompatibilne izmjene u konfiguraciji
+ kriticnih servisa), cak i ako ne cita dokumentaciju niti prati
+ poruke kod upgradea. :->
+
+ cp_echo se koristi umjesto echo. Uz -m salje poruku samo na mail.
+ cp_mail se poziva na kraju (postinsta), kad posalje mail. Bez
+ -q opcije cp_mail ce ispisati obavijest o slanju tog maila.
+
+ Ove dvije funkcije koriste globalnu varijablu CP_NOTICE u koju se
+ spremaju poruke za mail.
Funkcije cije ime pocinje sa cp_get_ pohranjuju rezultat u varijabli $RET,
a one s prefiksom cp_check_ kao rezultat vracaju exit status. U pozivnoj
-skripti se mogu definirati sljedece varijable koje utjecu na rad pomocnih
-funkcija:
+skripti se mogu definirati sljedece varijable koje utjecu na rad svih
+pomocnih funkcija:
$CP_SCRIPT_DEBUG
done
return $ret
}
+
+# by jelly, Sun, 20 Mar 2005 20:12:19 +0100
+cp_echo () {
+ [ "$CP_SCRIPT_DEBUG" ] && set -vx
+ if [ "x$1" = "x-mailonly" -o "x$1" = "x-m" ]; then
+ shift
+ else
+ echo "$*"
+ fi
+ CP_NOTICE="$CP_NOTICE$1"
+ if [ `echo -n "$*" | wc -l` -eq 0 ]; then
+ CP_NOTICE="$CP_NOTICE
+"
+ fi
+}
+
+# by jelly, Sun, 20 Mar 2005 20:12:19 +0100
+cp_mail () {
+ [ "$CP_SCRIPT_DEBUG" ] && set -vx
+ local pkg version quiet
+ if [ "x$1" = "x-q" ]; then
+ quiet=1
+ shift
+ fi
+ [ -n "$1" ] && pkg="$1" # barf if no package
+ [ -n "$2" ] && version=" $2" || true
+ if [ "$(echo $CP_NOTICE|wc -w)" -gt 0 ]; then
+ [ -n "$quiet" ] || echo "Mailing upgrade output to root."
+ CP_NOTICE="From: $pkg postinst script <root>
+To: root
+Subject: $pkg$version package install log
+Date: $(/bin/date +'%a, %d %b %Y %H:%M:%S %z')
+
+Hello!
+
+The $pkg package has been successfully installed on your computer.
+For your convenience, a partial output of the last $pkg installation
+is included below.
+
+----------
+$CP_NOTICE
+----------"
+
+ echo "$CP_NOTICE" | /usr/sbin/sendmail -t &
+ sleep 1
+ fi
+}