This package attempts to implement the core LSB specification. Much
of the implementation is drawn on a talk by Wichert Akkerman
(http://www.liacs.nl/~wichert/talks/LSBDistro/html/) and Matt
-Taggart's discussion of LSB 1.0 and Debian. Matt's discussion is
-provided in the /usr/share/doc/lsb/html directory. Matt has also
-produced a slideshow on LSB in Debian, which can be found at:
+Taggart's discussion of LSB 1.0 and Debian. Matt has also produced a
+slideshow on LSB in Debian, which can be found at:
http://people.debian.org/~taggart/debconf2/
This package implements the LSB specification by:
An example init script that tests some of these features is provided
as /usr/share/doc/lsb/examples/init-skeleton.
- -- Chris Lawrence <lawrencc@debian.org>, Mon Jul 11 18:55:39 2005
+ -- Chris Lawrence <lawrencc@debian.org>, Mon Aug 8 15:47:37 2005
LocalWords: LSB
+lsb (3.0-3) unstable; urgency=low
+
+ * Upload to unstable, since glibc 2.3.5 is now in.
+ * lsb-base is now Priority: important.
+ * Fix $FANCYTTY tests in a more POSIXly-correct way. (Closes: #322022)
+ * Get rid of the html/* stuff and references to it in README.Debian.
+ (Closes: #321260)
+ * Maintainers who are using the lsb-base logging facilities should
+ *strongly* consider using log_daemon_msg() instead of log_start_msg();
+ the new log_daemon_msg() is designed to meet both Debian and Ubuntu
+ logging requirements. Customization should come in a subsequent 3.0-x
+ release.
+
+ -- Chris Lawrence <lawrencc@debian.org> Mon, 8 Aug 2005 15:58:45 -0500
+
lsb (3.0-2) experimental; urgency=low
* Uploaded to experimental since glibc 2.3.5 is not in sid yet.
Depends: sed, ncurses-bin
Replaces: lsb (<< 2.0-6)
Conflicts: lsb (<< 2.0-6)
+Priority: important
Description: Linux Standard Base 3.0 init script functionality
The Linux Standard Base (http://www.linuxbase.org/) is a standard
core system that third-party applications written for Linux can
+++ /dev/null
-Document: lsb
-Title: LSB as it Relates to Debian
-Author: Matt Taggart <taggart@debian.org>
-Abstract: This document compares the general Linux Standards Base written
- specification to Debian.
-Section: misc
-
-Format: HTML
-Index: /usr/share/doc/lsb-core/html/index.html
-Files: /usr/share/doc/lsb-core/html/*
+++ /dev/null
-This file provides a mapping from Debian packages needed by the LSB 1.0 spec
-to the requirements of the spec that they fulfill. Section of the spec is
-"Chapter 14 - Commands" unless otherwise noted.
-
-Last Updated: August 2, 2001
-
-Debian Package Parts of LSB 1.0
--------------- ----------------
-lsb-release lsb_release
-alien lsb package format (Ch. 13)
-at at,batch
-base-files FHS (Ch. 17)
-base-passwd defined users and groups (Ch. 16)
-bash sh,time, a posix shell for /bin/sh (Ch. 15)
-bc bc
-binutils ar,strip
-bsdmainutils col
-bsdutils renice
-cpio cpio
-cron crontab,cron (Ch. 18)
-debianutils mktemp
-diff cmp,diff
-dpkg md5sum
-exim sendmail
-file file
-fileutils chgrp,chmod,chown,cp,dd,df,du,install,ln,ls,mkdir,mv,rm,
- rmdir,sync,touch,find,xargs
-grep egrep,fgrep,grep
-gzip gunzip,gzip
-hostname hostname
-libc6 libc,libm,libpthread,libdl,libcrypt,librt(Ch. 10)
- libutil (Ch. 11)
- iconv,locale,localedef
-libc6-dev gencat,getconf
-libncurses5 libncurses (Ch. 11)
-locales libc,locale,localedef
-login newgrp,su
-lpr lpr
-m4 m4
-make make
-man-db man
-mawk awk
-mount mount,umount
-ncurses-base libncurses (Ch. 11)
-ncurses-bin libncurses (Ch. 11)
-ncurses-term libncurses (Ch. 11)
-passwd chfn,chsh,groupadd,groupdel,groupmod,passwd,useradd,userdel,
- usermod
-patch patch
-procps kill,ps
-psmisc fuser,killall
-rsync rsync
-sed sed
-shellutils basename,date,dirname,echo,env,expr,false,groups,id,logname,
- nice,nohup,pathchk,printf,pwd,sleep,stty,tee,test,true,tty,uname
-sysvinit init (Ch. 18), pidof
-tar tar
-textutils cat,cksum,comm,csplit,cut,expand,fold,head,join,nl,od,paste,pr,
- sort,split,sum,tail,tr,tsort,unexpand,uniq,wc
-util-linux ipcrm,ipcs,more
-xlibmesa3 libGL (Ch. 12)
-xlibs libX11,libXext,libSM,libICE,libXt (Ch. 12)
-zlib1g libz (Ch. 11)
+++ /dev/null
-This file provides a mapping from the LSB 1.0 spec to the corresponding packages
-in the Debian "unstable" release.
-
-Last Updated: July 16th, 2001
-
-Chapter 10
-----------
-Library Package
-------- -------
-libc libc6,locales
-libm libc6
-libpthread libc6
-libdl libc6
-libcrypt libc6
-librt libc6
-
-
-Chapter 11
-----------
-Library Package
-------- -------
-libz zlib1g
-libncurses libncurses5,ncurses-base,ncurses-bin,ncurses-term
-libutil libc6
-
-
-Chapter 12
-----------
-Library Package
-------- -------
-libX11 xlibs
-libXext xlibs
-libsm xlibs
-libice xlibs
-libXt xlibs
-libGL xlibmesa3
-
-
-Chapter 13
-----------
-Command Package
-------- -------
-rpm alien
-
-
-Chapter 14
-----------
-Command Package
-------- -------
-ar binutils
-at at
-awk mawk
-basename shellutils
-batch at
-bc bc
-cat textutils
-chfn passwd
-chgrp fileutils
-chmod fileutils
-chown fileutils
-chsh passwd
-cksum textutils
-cmp diff
-col bsdmainutils
-comm textutils
-cp fileutils
-cpio cpio
-crontab cron
-csplit textutils
-cut textutils
-date shellutils
-dd fileutils
-df fileutils
-diff diff
-dirname shellutils
-du fileutils
-echo shellutils
-egrep grep
-env shellutils
-expand textutils
-expr shellutils
-false shellutils
-fgrep grep
-file file
-find findutils
-fold textutils
-fuser psmisc
-gencat libc6-dev
-getconf libc6-dev
-grep grep
-groupadd passwd
-groupdel passwd
-groupmod passwd
-groups shellutils
-gunzip gzip
-gzip gzip
-head textutils
-hostname hostname
-iconv libc6
-id shellutils
-install fileutils
-ipcrm util-linux
-ipcs util-linux
-join textutils
-kill procps
-killall psmisc
-ln fileutils
-locale libc6,locales
-localedef libc6,locales
-logname shellutils
-lpr lpr
-ls fileutils
-lsb_release lsb-release
-m4 m4
-make make
-man man-db
-md5sum dpkg
-mkdir fileutils
-mkfifo fileutils
-mknod fileutils
-mktemp debianutils
-more util-linux
-mount mount
-mv fileutils
-newgrp login
-nice shellutils
-nl textutils
-nohup shellutils
-od textutils
-passwd passwd
-paste textutils
-patch patch
-pathchk shellutils
-pidof sysvinit
-pr textutils
-printf shellutils
-ps procps
-pwd shellutils
-renice bsdutils
-rm fileutils
-rmdir fileutils
-rsync rsync
-sed sed
-sendmail exim
-sh bash
-sleep shellutils
-sort textutils
-split textutils
-strip binutils
-stty shellutils
-su login
-sum textutils
-sync fileutils
-tail textutils
-tar tar
-tee shellutils
-test shellutils
-time bash
-touch fileutils
-tr textutils
-true shellutils
-tsort textutils
-tty shellutils
-umount mount
-uname shellutils
-unexpand textutils
-uniq textutils
-useradd passwd
-userdel passwd
-usermod passwd
-wc textutils
-xargs findutils
-
-
-Chapter 15 - Shell
-------------------
-posix bash
-
-
-Chapter 16 - users & groups
----------------------------
- base-passwd
-
-
-Chapter 17 - FHS
-----------------
- base-files
-
-
-Chapter 18
-----------
-cron cron
-init sysvinit
+++ /dev/null
-alien
-at
-base-files
-base-passwd
-bash
-bc
-binutils
-bsdmainutils
-bsdutils
-cpio
-cron
-debianutils
-diff
-dpkg
-exim
-file
-fileutils
-grep
-gzip
-hostname
-libc6
-libc6-dev
-libncurses5
-locales
-login
-lpr
-lsb-release
-m4
-make
-man-db
-mawk
-mount
-ncurses-base
-ncurses-bin
-ncurses-term
-passwd
-patch
-procps
-psmisc
-rsync
-sed
-shellutils
-sysvinit
-tar
-textutils
-util-linux
-xlibmesa3
-xlibs
-zlib1g
+++ /dev/null
-bzip2
-debconf-utils
-debhelper
-html2text
-libbz2-1.0
-libfreetype6
-librpm0
-rpm
-xfree86-common
+++ /dev/null
-at
-base-files
-base-passwd
-bash
-bc
-binutils
-bsdmainutils
-bsdutils
-cpio
-cron
-debianutils
-diff
-dpkg
-exim
-file
-fileutils
-grep
-gzip
-hostname
-libc6
-libc6-dev
-libncurses5
-locales
-login
-lpr
-m4
-make
-man-db
-mawk
-mount
-ncurses-base
-ncurses-bin
-ncurses-term
-passwd
-patch
-procps
-psmisc
-sed
-shellutils
-sysvinit
-tar
-textutils
-util-linux
-zlib1g
+++ /dev/null
-adduser
-apt
-apt-utils
-base-config
-biff
-bin86
-bison
-console-common
-console-data
-console-tools
-console-tools-libs
-cpp
-cpp-2.95
-cpp-3.0
-dc
-debconf
-dhcp-client
-doc-debian
-doc-linux-text
-dpkg-dev
-e2fsprogs
-ed
-fdflush
-fdutils
-findutils
-finger
-flex
-ftp
-g++
-g++-2.95
-gcc
-gcc-2.95
-gcc-3.0
-gcc-3.0-base
-gdb
-gettext-base
-gpm
-groff-base
-host
-iamerican
-ibritish
-ifupdown
-info
-ipchains
-ipmasqadm
-ispell
-klogd
-less
-libcap1
-libdb2
-libdb3
-libgcc1
-libgdbmg1
-libident
-libldap2
-liblockfile1
-libncurses4
-libnewt0
-libnss-db
-libpam-modules
-libpam-runtime
-libpam0g
-libpcre3
-libperl5.6
-libpng2
-libpopt0
-libreadline4
-libsasl-modules
-libsasl7
-libstdc++2.10-dev
-libstdc++2.10-glibc2.2
-libstdc++3
-libwrap0
-lilo
-logrotate
-lsof
-lynx
-mailx
-makedev
-manpages
-manpages-dev
-mbr
-mime-support
-modconf
-modutils
-mpack
-mtools
-mtr-tiny
-mutt
-nano
-net-tools
-netbase
-netkit-inetd
-netkit-ping
-nfs-common
-nfs-kernel-server
-nvi
-pciutils
-perl
-perl-base
-perl-modules
-pidentd
-portmap
-ppp
-pppoe
-procmail
-python-base
-python-newt
-rblcheck
-rcs
-reportbug
-setserial
-sharutils
-slang1
-strace
-sysklogd
-syslinux
-tasksel
-tcpd
-tcsh
-telnet
-texinfo
-time
-update
-util-linux-locales
-vacation
-wenglish
-whiptail
-whois
+++ /dev/null
-alien
-lsb-release
-rsync
-xlibmesa3
-xlibs
+++ /dev/null
-adduser
-apt
-apt-utils
-at
-base-config
-base-files
-base-passwd
-bash
-bc
-biff
-bin86
-binutils
-bison
-bsdmainutils
-bsdutils
-console-common
-console-data
-console-tools
-console-tools-libs
-cpio
-cpp
-cpp-2.95
-cpp-3.0
-cron
-dc
-debconf
-debianutils
-dhcp-client
-diff
-doc-debian
-doc-linux-text
-dpkg
-dpkg-dev
-e2fsprogs
-ed
-exim
-fdflush
-fdutils
-file
-fileutils
-findutils
-finger
-flex
-ftp
-g++
-g++-2.95
-gcc
-gcc-2.95
-gcc-3.0
-gcc-3.0-base
-gdb
-gettext-base
-gpm
-grep
-groff-base
-gzip
-host
-hostname
-iamerican
-ibritish
-ifupdown
-info
-ipchains
-ipmasqadm
-ispell
-klogd
-less
-libc6
-libc6-dev
-libcap1
-libdb2
-libdb3
-libgcc1
-libgdbmg1
-libident
-libldap2
-liblockfile1
-libncurses4
-libncurses5
-libnewt0
-libnss-db
-libpam-modules
-libpam-runtime
-libpam0g
-libpcre3
-libperl5.6
-libpng2
-libpopt0
-libreadline4
-libsasl-modules
-libsasl7
-libstdc++2.10-dev
-libstdc++2.10-glibc2.2
-libstdc++3
-libwrap0
-lilo
-locales
-login
-logrotate
-lpr
-lsof
-lynx
-m4
-mailx
-make
-makedev
-man-db
-manpages
-manpages-dev
-mawk
-mbr
-mime-support
-modconf
-modutils
-mount
-mpack
-mtools
-mtr-tiny
-mutt
-nano
-ncurses-base
-ncurses-bin
-ncurses-term
-net-tools
-netbase
-netkit-inetd
-netkit-ping
-nfs-common
-nfs-kernel-server
-nvi
-passwd
-patch
-pciutils
-perl
-perl-base
-perl-modules
-pidentd
-portmap
-ppp
-pppoe
-procmail
-procps
-psmisc
-python-base
-python-newt
-rblcheck
-rcs
-reportbug
-sed
-setserial
-sharutils
-shellutils
-slang1
-strace
-sysklogd
-syslinux
-sysvinit
-tar
-tasksel
-tcpd
-tcsh
-telnet
-texinfo
-textutils
-time
-update
-util-linux
-util-linux-locales
-vacation
-wenglish
-whiptail
-whois
-zlib1g
+++ /dev/null
-<HTML>
-<HEAD>
-<TITLE>LSB as it relates to Debian</TITLE>
-</HEAD>
-<BODY>
-<H2>LSB as it relates to Debian</H2>
-This document compares the <A HREF="http://www.linuxbase.org/spec/">LSB written specification</A> to Debian. This changes on a continual basis so check the date at the bottom for when this comparison was last updated. This is a work in progress. Please point out any errors you may find.<BR>
-<BR>
-<I>Package lists last updated using woody on 2001-09-13</I><BR>
-<H3>Required by the Specification</H3>
-First we review the spec and see what that means in terms of Debian packages.
-<UL>
-<LI>Mapping of <A HREF="LSBtoDEB">LSB to Debian packages</A>[1]<BR>
-<LI>Mapping of those <A HREF="DEBtoLSB">Debian packages back to the LSB</A>[2]<BR>
-<LI><A HREF="deblist">List</A>[3] of Debian packages required by LSB<BR>
-</UL>
-<H3>Creating a Debian system plus LSB</H3>
-Now that we know what packages the spec requires we
-<OL>
-<LI>Install a "base" Debian system(including everything "required" by Debian).<BR>
-This results in,
-<UL>
-<LI>the <A HREF="freshinstall">following</A>[4] packages on the system
-<LI><A HREF="fresh.common">these</A>[5] are in common with [3].
-<LI><A HREF="fresh.new">these</A>[6] are in the LSB but not on the system
-<LI><A HREF="fresh.extra">these</A>[7] are on the system but not in LSB
-</UL>
-<LI>Now install the packages from [3] that aren't already installed(which were identified above as [6])
-<LI>Allow all dependencies of those packages to be fulfilled<BR>
-This results in,
-<UL>
-<LI>the <A HREF="superset">following</A>[8] packages on the system
-<LI>the entire list([3]) of Debian packages required by LSB have been installed
-<LI><A HREF="super.extra">this</A>[9] is the list of packages on the system but not in LSB
-</UL>
-</OL>
-<H3>Observations</H3>
-<UL>
-<LI>List [8] is <A HREF="superset">The Debian LSB Sample Implementation</A>
-<LI>[7] is <A HREF="fresh.extra">the list of packages that Debian considers "Required, Important, and Standard" which are not in the LSB</A>. Some of these may deserve consideration for a future version of the LSB.
-<LI>[8] minus [4] yields <A HREF="needed">the packages needed in the Debian base install to make it more LSB compliant</A>[10]
-<LI>[9] minus [7] yields <A HREF="depends">the packages pulled in as dependencies as a result of adding [6] to the system</A>[11]
-</UL>
-<HR>
-Matt Taggart <A HREF="mailto:taggart@debian.org"><taggart@debian.org></A><BR>
-Last updated September 13, 2001</I>
-</BODY>
-</HTML>
+++ /dev/null
-alien
-bzip2
-debconf-utils
-debhelper
-html2text
-libbz2-1.0
-libfreetype6
-librpm0
-lsb-release
-rpm
-rsync
-xfree86-common
-xlibmesa3
-xlibs
+++ /dev/null
-adduser
-apt
-apt-utils
-base-config
-biff
-bin86
-bison
-bzip2
-console-common
-console-data
-console-tools
-console-tools-libs
-cpp
-cpp-2.95
-cpp-3.0
-dc
-debconf
-debconf-utils
-debhelper
-dhcp-client
-doc-debian
-doc-linux-text
-dpkg-dev
-e2fsprogs
-ed
-fdflush
-fdutils
-findutils
-finger
-flex
-ftp
-g++
-g++-2.95
-gcc
-gcc-2.95
-gcc-3.0
-gcc-3.0-base
-gdb
-gettext-base
-gpm
-groff-base
-host
-html2text
-iamerican
-ibritish
-ifupdown
-info
-ipchains
-ipmasqadm
-ispell
-klogd
-less
-libbz2-1.0
-libcap1
-libdb2
-libdb3
-libfreetype6
-libgcc1
-libgdbmg1
-libident
-libldap2
-liblockfile1
-libncurses4
-libnewt0
-libnss-db
-libpam-modules
-libpam-runtime
-libpam0g
-libpcre3
-libperl5.6
-libpng2
-libpopt0
-libreadline4
-librpm0
-libsasl-modules
-libsasl7
-libstdc++2.10-dev
-libstdc++2.10-glibc2.2
-libstdc++3
-libwrap0
-lilo
-logrotate
-lsof
-lynx
-mailx
-makedev
-manpages
-manpages-dev
-mbr
-mime-support
-modconf
-modutils
-mpack
-mtools
-mtr-tiny
-mutt
-nano
-net-tools
-netbase
-netkit-inetd
-netkit-ping
-nfs-common
-nfs-kernel-server
-nvi
-pciutils
-perl
-perl-base
-perl-modules
-pidentd
-portmap
-ppp
-pppoe
-procmail
-python-base
-python-newt
-rblcheck
-rcs
-reportbug
-rpm
-setserial
-sharutils
-slang1
-strace
-sysklogd
-syslinux
-tasksel
-tcpd
-tcsh
-telnet
-texinfo
-time
-update
-util-linux-locales
-vacation
-wenglish
-whiptail
-whois
-xfree86-common
+++ /dev/null
-adduser
-alien
-apt
-apt-utils
-at
-base-config
-base-files
-base-passwd
-bash
-bc
-biff
-bin86
-binutils
-bison
-bsdmainutils
-bsdutils
-bzip2
-console-common
-console-data
-console-tools
-console-tools-libs
-cpio
-cpp
-cpp-2.95
-cpp-3.0
-cron
-dc
-debconf
-debconf-utils
-debhelper
-debianutils
-dhcp-client
-diff
-doc-debian
-doc-linux-text
-dpkg
-dpkg-dev
-e2fsprogs
-ed
-exim
-fdflush
-fdutils
-file
-fileutils
-findutils
-finger
-flex
-ftp
-g++
-g++-2.95
-gcc
-gcc-2.95
-gcc-3.0
-gcc-3.0-base
-gdb
-gettext-base
-gpm
-grep
-groff-base
-gzip
-host
-hostname
-html2text
-iamerican
-ibritish
-ifupdown
-info
-ipchains
-ipmasqadm
-ispell
-klogd
-less
-libbz2-1.0
-libc6
-libc6-dev
-libcap1
-libdb2
-libdb3
-libfreetype6
-libgcc1
-libgdbmg1
-libident
-libldap2
-liblockfile1
-libncurses4
-libncurses5
-libnewt0
-libnss-db
-libpam-modules
-libpam-runtime
-libpam0g
-libpcre3
-libperl5.6
-libpng2
-libpopt0
-libreadline4
-librpm0
-libsasl-modules
-libsasl7
-libstdc++2.10-dev
-libstdc++2.10-glibc2.2
-libstdc++3
-libwrap0
-lilo
-locales
-login
-logrotate
-lpr
-lsb-release
-lsof
-lynx
-m4
-mailx
-make
-makedev
-man-db
-manpages
-manpages-dev
-mawk
-mbr
-mime-support
-modconf
-modutils
-mount
-mpack
-mtools
-mtr-tiny
-mutt
-nano
-ncurses-base
-ncurses-bin
-ncurses-term
-net-tools
-netbase
-netkit-inetd
-netkit-ping
-nfs-common
-nfs-kernel-server
-nvi
-passwd
-patch
-pciutils
-perl
-perl-base
-perl-modules
-pidentd
-portmap
-ppp
-pppoe
-procmail
-procps
-psmisc
-python-base
-python-newt
-rblcheck
-rcs
-reportbug
-rpm
-rsync
-sed
-setserial
-sharutils
-shellutils
-slang1
-strace
-sysklogd
-syslinux
-sysvinit
-tar
-tasksel
-tcpd
-tcsh
-telnet
-texinfo
-textutils
-time
-update
-util-linux
-util-linux-locales
-vacation
-wenglish
-whiptail
-whois
-xfree86-common
-xlibmesa3
-xlibs
-zlib1g
}
log_failure_msg () {
- if $FANCYTTY; then
+ if [ $FANCYTTY -eq 1 ]; then
RED=`$TPUT setaf 1`
NORMAL=`$TPUT op`
echo "$RED*$NORMAL $@"
}
log_warning_msg () {
- if $FANCYTTY; then
+ if [ $FANCYTTY -eq 1 ]; then
YELLOW=`$TPUT setaf 3`
NORMAL=`$TPUT op`
echo "$YELLOW*$NORMAL $@"
echo -n "$@"
}
+# Sample usage:
+# log_daemon_msg "Starting GNOME Login Manager" "gdm"
+#
+# On Debian, would output "Starting GNOME Login Manager: gdm"
+# On Ubuntu, would output " * Starting GNOME Login Manager..."
+#
+# If the second argument is omitted, logging suitable for use with
+# log_progress_msg() is used:
+#
+# log_daemon_msg "Starting remote filesystem services"
+#
+# On Debian, would output "Starting remote filesystem services:"
+# On Ubuntu, would output " * Starting remote filesystem services..."
+
+log_daemon_msg () {
+ if [ -z "$1" ]; then
+ return 1
+ fi
+
+ if [ -z "$2" ]; then
+ echo -n "$1:"
+ return
+ fi
+
+ echo -n "$1: $2"
+}
# #319739
#
# Per policy docs:
#
-# log_begin_msg "Starting remote file system services:"
+# log_daemon_msg "Starting remote file system services"
# log_progress_msg "nfsd"; start-stop-daemon --start --quiet nfsd
# log_progress_msg "mountd"; start-stop-daemon --start --quiet mountd
# log_progress_msg "ugidd"; start-stop-daemon --start --quiet ugidd
# You could also do something fancy with log_end_msg here based on the
# return values of start-stop-daemon; this is left as an exercise for
# the reader...
-
+#
+# On Ubuntu, one would expect log_progress_msg to be a no-op.
log_progress_msg () {
if [ -z "$1" ]; then
return 1
fi
- /bin/echo -n " $@"
+ echo -n " $@"
}
# Only do the fancy stuff if we have an appropriate terminal
# and if /usr is already mounted
- if $FANCYTTY; then
+ if [ $FANCYTTY -eq 1 ]; then
RED=`$TPUT setaf 1`
NORMAL=`$TPUT op`
if [ $1 -eq 0 ]; then
fi
return $1
}
-
#'init',
'profile',
'service',
- 'inet',
+ #'inet', # XXX - reenable when implemented
#'crontab',
#'man'
)