A quickie TODO list for lsb*:
-* Make output format for logging functions configurable. (#321963)
* Finish lsbinstall
-* Move lsb-release into this package; rewrite. (#135832)
-* Move dynamic linker symlinks from postinst into package itself.
-* Support additional Debian architectures.
+* Move dynamic linker symlinks from postinst into package itself. (?)
* Only build lsb-* for LSB architectures in Debian.
+lsb (3.1-11) unstable; urgency=low
+
+ * Patch for other architectures from Martin Habets
+ <mhabets@mph.eclipse.co.uk> (closes: #375457)
+ * Stop using basename: patch from Tore Anderson <tore@debian.org>
+ (closes: #354028)
+ * Move return code evaluation out of if $specified block in killproc, so
+ that evaluation is dependant on whether or not process is running, not on
+ whether a pidfile was specified (closes: #379387)
+ * log_end_msg no longer returns non-zero. It's a log function, after all
+ (closes: #381687)
+ * log_use_fancy_output is now overridable by admin (closes: #374780)
+ * pidofproc actually checks if process is running (closes: #381684)
+ (probably closes: #167757)
+ * Use shell built-in getopts instead of /usr/bin/getopt (closes: #335216)
+ * Remove reference to /usr/share/doc/lsb-core/html/ (closes: #380045)
+ * Ru translation (thanks: Yuri Kozlov <kozlov.y@gmail.com>)
+ (closes: #380430)
+ * Above changes prepared by Stephen Gran <sgran@debian.org>.
+ * Update debian/TODO, which was a wee bit out of date.
+ * Accomplish Python policy transition. (Closes: #380858)
+
+ -- Chris Lawrence <lawrencc@debian.org> Sun, 6 Aug 2006 18:18:08 -0500
+
lsb (3.1-10) unstable; urgency=low
* Quote tests of $specified. (Closes: #370256)
Section: misc
Priority: extra
Maintainer: Chris Lawrence <lawrencc@debian.org>
-Build-Depends: debhelper (>= 4.1.13), po-debconf (>= 0.5.0), dpkg-dev (>= 1.10)
+Build-Depends: debhelper (>= 4.1.13), po-debconf (>= 0.5.0), dpkg-dev (>= 1.10), python-central (>= 0.5), python-all-dev
Standards-Version: 3.7.2
+XS-Python-Version: current
Package: lsb-core
Architecture: any
-Depends: lsb-release, ${glibc}, libz1, exim4 | mail-transport-agent, at, bc, binutils, bsdmainutils, bsdutils, cpio, cron, ed, file, libc6-dev | libc-dev, locales, lpr, lprng | cupsys-client, m4, mailx | mailutils, make, man-db, mawk | gawk, ncurses-term, passwd, patch, pax, procps, psmisc, rsync, alien (>= 8.36), python (>> 2.3), ${misc:Depends}, ${depends}, lsb-base
+Depends: lsb-release, ${glibc}, libz1, exim4 | mail-transport-agent, at, bc, binutils, bsdmainutils, bsdutils, cpio, cron, ed, file, libc6-dev | libc-dev, locales, lpr, lprng | cupsys-client, m4, mailx | mailutils, make, man-db, mawk | gawk, ncurses-term, passwd, patch, pax, procps, psmisc, rsync, alien (>= 8.36), ${python:Depends}, ${misc:Depends}, ${depends}, lsb-base
Provides: lsb-core-noarch, ${provides}
Conflicts: python (>> 2.5), lsb (<< 2.0-2)
Replaces: lsb (<< 2.0-2)
+XB-Python-Version: ${python:Versions}
Description: Linux Standard Base 3.1 core support package
The Linux Standard Base (http://www.linuxbase.org/) is a standard
core system that third-party applications written for Linux can
Package: lsb-release
Architecture: all
-Depends: python (>> 2.3), python (<< 2.5)
+Depends: ${python:Depends}
Recommends: lsb
+XB-Python-Version: ${python:Versions}
Description: Linux Standard Base version reporting utility
The Linux Standard Base (http://www.linuxbase.org/) is a standard
core system that third-party applications written for Linux can
/bin/sh, as init scripts sourcing this file may be running under any
Bourne-style shell permitted by Debian policy (i.e. not just bash).
+"Fancy output" can be overriden by setting FANCYTTY=0 in this file.
+
-- Chris Lawrence <lawrencc@debian.org>, Sat Sep 24 19:15:02 2005
--- /dev/null
+# translation of lsb_3.1-10_debconf_ru.po to Russian
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+# Yuri Kozlov <kozlov.y@gmail.com>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lsb_3.1-10\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-06-28 08:12-0600\n"
+"PO-Revision-Date: 2006-07-30 10:49+0300\n"
+"Last-Translator: Yuri Kozlov <kozlov.y@gmail.com>\n"
+"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.9.1\n"
+
+#. Type: boolean
+#. Description
+#: ../templates:4
+msgid "Should shadow passwords be enabled?"
+msgstr "Включить поддержку теневых паролей?"
+
+#. Type: boolean
+#. Description
+#: ../templates:4
+msgid ""
+"The Linux Standard Base requires that certain features of adduser(8) be "
+"available to conforming applications (such as password aging). Debian only "
+"provides these features when shadow passwords are enabled; however, your "
+"system currently has shadow passwords disabled."
+msgstr ""
+"По стандарту Linux Standard Base требуется, чтобы определённые возможности "
+"adduser(8) были доступны для соответствующих стандарту приложений (например, "
+"устаревание паролей). Debian предоставляет эти возможности только, если включён "
+"механизм теневых паролей; однако на данный момент в вашей системе теневые "
+"пароли выключены."
+
+#. Type: boolean
+#. Description
+#: ../templates:4
+#, no-c-format
+msgid ""
+"Most LSB applications will work fine with either setting, but 100% "
+"conformance requires shadow passwords to be enabled."
+msgstr ""
+"Большинство LSB приложений будут правильно работать при любой настройке, но "
+"для 100% соответствия требуется включить теневые пароли."
+
+#. Type: boolean
+#. Description
+#: ../templates:4
+msgid ""
+"Generally speaking, it is considered good practice to enable shadow "
+"passwords. However, there are some situations in which shadow passwords may "
+"not work properly (most notably, if non-root users need to authenticate "
+"passwords against /etc/passwd)."
+msgstr ""
+"Вообще, считается хорошей практикой использовать механизм теневых паролей. "
+"Однако, возможны ситуации, при которых теневые пароли могут работать неправильно "
+"(самая заметная, когда обычным пользователям требуется аутентификация паролей через "
+"/etc/passwd)."
+
+#. Type: boolean
+#. Description
+#: ../templates:4
+msgid ""
+"If you answer in the affirmative, the command 'shadowconfig on' will be run "
+"to enable shadow passwords."
+msgstr ""
+"Если вы ответите утвердительно, будет запущена команда 'shadowconfig on' "
+"для включения теневых паролей."
+
setup_ldso_symlink () {
ARCH=`dpkg --print-installation-architecture`
case "$ARCH" in
- s390|ppc64)
+ s390|ppc64|sparc|sparc64|alpha|hppa|m68k|mipsel)
ln -sf ld.so.1 /lib/ld-lsb-$ARCH.so.1
ln -sf ld.so.1 /lib/ld-lsb-$ARCH.so.2
ln -sf ld.so.1 /lib/ld-lsb-$ARCH.so.3
remove_ldso_symlink () {
ARCH=`dpkg --print-installation-architecture`
case "$ARCH" in
- s390|ia64|ppc64)
+ s390|ia64|ppc64|sparc|sparc64|alpha|hppa|m68k|mipsel)
rm -f /lib/ld-lsb-$ARCH.so.[123]
;;
powerpc)
# dh_makeshlibs
dh_installdeb -i
# dh_perl
+ dh_pycentral
+ dh_python
dh_shlibdeps -i
dh_gencontrol -i
dh_md5sums -i
start_daemon () {
local force nice pidfile exec i
- set -- `POSIXLY_CORRECT=1 getopt "fn:p:" $*`
force=0
nice=0
pidfile=/dev/null
- for i in $*; do
- case $i in
- -f) force=1; shift;;
- -n) nice=$2; shift 2;;
- -p) pidfile=$2; shift 2;;
- --) shift; break;;
+ while getopts fn:p: opt ; do
+ case "$opt" in
+ f) force=1; shift 1;;
+ n) nice="$OPTARG"; shift 2;;
+ p) pidfile="$OPTARG"; shift 2;;
esac
done
- exec=$1; shift
+ exec=$1; shift 1
+ if [ "$1" = '--' ] ; then shift 1; fi
if [ $force = 1 ]; then
- /sbin/start-stop-daemon --start --nicelevel $nice --quiet --startas $exec --pidfile /dev/null --oknodo -- $*
+ /sbin/start-stop-daemon --start --nicelevel $nice --quiet --startas $exec --pidfile /dev/null --oknodo -- "$@"
elif [ $pidfile ]; then
- /sbin/start-stop-daemon --start --nicelevel $nice --quiet --exec $exec --oknodo --pidfile "$pidfile" -- $*
+ /sbin/start-stop-daemon --start --nicelevel $nice --quiet --exec $exec --oknodo --pidfile "$pidfile" -- "$@"
else
- /sbin/start-stop-daemon --start --nicelevel $nice --quiet --exec $exec --oknodo -- $*
+ /sbin/start-stop-daemon --start --nicelevel $nice --quiet --exec $exec --oknodo -- "$@"
fi
}
pidofproc () {
local pidfile line i pids= status specified pid
- set -- `POSIXLY_CORRECT=1 getopt "p:" $*`
pidfile=
specified=
- for i in $*; do
- case $i in
- -p) pidfile=$2; specified=1; shift 2;;
- --) shift; break;;
+ while getopts p:- opt ; do
+ case $opt in
+ p) pidfile="$OPTARG"; specified=1; shift 2;;
esac
done
if [ -z "${pidfile:-}" ]; then
- pidfile=/var/run/$(basename "$1").pid
+ pidfile=/var/run/${1##*/}.pid
fi
if [ -f "$pidfile" ]; then
read pid < "$pidfile"
if [ -n "${pid:-}" ]; then
- echo "$pid"
- return 0
- else
- return 2 # program is dead and /var/run pid file exists
+ if $(kill -0 "${pid:-}"); then
+ echo "$pid"
+ return 0
+ else
+ return 1 # program is dead and /var/run pid file exists
+ fi
fi
- elif [ -x /bin/pidof -a ! "$specified" ]; then
+ fi
+ if [ -x /bin/pidof -a ! "$specified" ]; then
/bin/pidof -o %PPID $1
status="$?"
[ "$status" = 1 ] && return 3 # program is not running
return 0
- else
- return 4 # program or service is unknown
fi
+ return 4 # program or service is unknown
}
# start-stop-daemon uses the same algorithm as "pidofproc" above.
killproc () {
local pidfile sig status base i specified
- set -- `POSIXLY_CORRECT=1 getopt "p:" $*`
pidfile=
specified=
- for i in $*; do
+ while getopts p:- opt ; do
case $i in
- -p) pidfile=$2; specified=1; shift 2;;
- --) shift; break;;
+ p) pidfile="$OPTARG"; specified=1; shift 2;;
esac
done
- base=$(basename "$1")
+ base=${1##*/}
if [ ! $pidfile ]; then
pidfile=/var/run/$base.pid
fi
sig=$(echo $sig | sed -e 's/^SIG\(.*\)/\1/')
sig=${sig:-TERM}
/sbin/start-stop-daemon --stop --pidfile "$pidfile" --signal $sig --quiet --name "$base"
- status="$?"
- [ "$status" = 1 ] && return 3 # program is not running
- return 0
else
/sbin/start-stop-daemon --stop --pidfile "$pidfile" --retry 5 --quiet --oknodo --name "$base"
fi
+ status="$?"
+ [ "$status" = 1 ] && return 3 # program is not running
+ return 0
rm -f "$pidfile"
}
log_use_fancy_output () {
TPUT=/usr/bin/tput
EXPR=/usr/bin/expr
+ if FANCYTTY=0; then
+ false
+ fi
if [ "x$TERM" != "xdumb" ] && [ -x $TPUT ] && [ -x $EXPR ] && $TPUT hpa 60 >/dev/null 2>&1; then
FANCYTTY=1
true
echo " failed!"
fi
fi
- return $1
+ return 0
}
log_action_msg () {
more information on the standard, please see the LSB web site.
.SH SEE ALSO
.BR /usr/share/doc/lsb-core/README.Debian
-.BR /usr/share/doc/lsb-core/html/
.BR http://www.linuxbase.org/
.SH AUTHOR
This manual page was written by Chris Lawrence <lawrencc@debian.org>