lsb for Debian
--------------
-This package provides the Linux Standard Base on Debian systems. The
-LSB is a specification for allowing the same binary package to be used
-on multiple distributions.
+This package used to provide the Linux Standard Base on Debian systems.
+The LSB is a specification for allowing the same binary package to be used
+on multiple distributions.
-INSTALLING LSB PACKAGES
-
-The "alien" package supports LSB packages on Debian. For example, to
-install an LSB package "lsb-mozilla-1.2-1_i386.rpm", type (as root):
-
-alien -i lsb-mozilla-1.2-1_i386.rpm
-
-Ideally, the package should be converted to a Debian package and then
-installed by dpkg. If this fails, there may be a problem with either
-the lsb package (most likely) or alien (less likely), and you should
-contact the vendor of the lsb package to resolve the problem.
-
-PACKAGE LAYOUT
-
-The LSB implementation in Debian is currently divided into eight
-packages:
-
-* The "lsb-core" package depends on the Debian packages that are
- required to comply with the LSB-Core 4.1 specification. It also
- includes some subroutines that are used by LSB-compliant applications
- when they are being installed or removed.
-
-* The "lsb-graphics" package depends on the X11 libraries required for
- the LSB-Graphics 4.1 specification.
-
-* The "lsb-cxx" package depends on libstdc++6, required for the
- LSB-CXX (LSB-C++) 4.1 specification.
-
-* The "lsb-desktop" package depends on the Gtk+ and Qt libraries required
- for the LSB-Desktop 4.1 specification.
-
-* The "lsb-languages" package depends on Python 2.4 and Perl 5.8.8 or later.
-
-* The "lsb-multimedia" package depends on libasound2.
-
-* The "lsb-printing" package depends on the CUPS libraries (libcups2
- and libcupsimage2), foomatic-filters, and Ghostscript.
-
-* The "lsb" package depends on all of the above packages.
+Since version 4.1+Debian14+UNRELEASED, this package stopped providing the compatibility
+LSB packages and only provides two otherwise important packages:
* The "lsb-base" package includes a number of functions used by init.d
scripts in some LSB packages.
* The "lsb-release" package includes the lsb_release command, which provides
information about the installed LSB modules and the underlying distribution.
-
-The LSB module packages are architecture-specific because of
-differences in the requirements of the LSB on various binary
-architectures. In particular, each package provides
-lsb-{module}-noarch and lsb-{module}-{arch} virtual packages.
-
-IMPLEMENTATION ISSUES
-
-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 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:
-
-- depending upon packages that implement OS services required by the
- LSB, including libraries and programs.
-
-- including the correct symlink to the dynamic linker.
-
-- providing the LSB init script functionality. Some of the LSB init
- functionality cannot be implemented without cooperation from other
- packages or changes in policy for sarge+1; however, the remainder is
- provided here.
-
-The intent of this package is to provide a best current practice way
-of installing LSB packages on Debian using the Intel and PowerPC
-32-bit architectures with the Linux kernel ("ia32" and "ppc32"). Its
-presence does not imply that I or the Debian project believe that
-Debian fully complies with the Linux Standard Base, and should not be
-construed as a statement that Debian is LSB-compliant.
-
-The specification is available at http://www.linuxbase.org/spec/
-
-DEVIATIONS FROM LSB
-
-The package and its dependencies implement all of LSB on Debian, with
-these exceptions:
-
-- LSB 3.2 doesn't fully specify what the init_functions should do. I
- have chosen to implement them in a way that is consistent with
- Debian current practice, using the start-stop-daemon utility and the
- echo command. For sarge+1, I expect a nicer init logging facility
- that could be used.
-
-- LSB specifies no way for a binary to request that a pid file be
- created for it, and the spec is ambiguous about whether start_daemon
- should create the pid file, therefore I assume the binary will
- produce its own /var/run/basename.pid file.
-
-- Debian only implements certain features of adduser if shadow
- passwords are enabled. The lsb package will prompt the user to
- enable shadow passwords if they appear to be disabled; however, it
- does not force this choice on the administrator. Administrators who
- disable shadow passwords may find that some LSB applications fail to
- operate correctly as a result.
-
- (We do not consider this a bug in the package.)
-
-- The LSB specifies that several X libraries must be available on the
- system, but does not specify the presence of either an X server or
- any X clients. However, many LSB packages may expect these things
- to be present, despite their absence from the spec.
-
- Similarly, the printing specification requires the CUPS libraries
- but no CUPS binaries; hence, printing may be impossible unless you
- actually install the cupsys package.
-
- (This may be a deficiency in the spec. However, we comply as-written.)
-
-- The LSB specifies that cron scripts can be placed in cron.daily and
- other directories; however, Debian's run-parts appears to ignore
- these scripts if they contain a dot in their names. (See #118646)
- You can work around this problem by editing /etc/crontab and
- specifying the --lsbsysinit option; it is hoped that eventually
- Debian will include this option by default.
-
- (This is a known deficiency in debianutils, and is required for
- backwards compatibility with expected behavior on earlier systems.)
-
-- /etc/profile.d scripts aren't executed on shell startup by default
- on Debian systems (see Debian Policy section 9.9 for an explanation).
- LSB 3.2 is ambiguous on this requirement; /bin/sh is *not* required
- to execute these scripts, according to its description, but the
- lsbinstall documentation says that it is.
-
- Debian policy forbids the use of /etc/profile.d by Debian packages,
- so it is unlikely this will change (as it might be seen as
- encouragement for Debian developers to do use it.)
-
-There may be other deviations from the spec; they are bugs in this
-package and should be reported as such using Debian's bug tracking
-system: see reportbug(1) or your favorite bug reporting tool. (The
-aforementioned deviations are generally bugs in the package that
-cannot be easily fixed, or are bugs in the specification itself that
-we hope to resolve in the near future.)
-
-For more discussion of these deviations, see:
-
-http://lists.debian.org/lsb-spec/2001/lsb-spec-200107/msg00002.html
- (a discussion of deficiencies in LSB 1.0, mostly resolved)
-
-DESIGN DECISIONS
-
-- I implemented the LSB init dependencies based on Debian policy's
- update-rc.d support. A registry of package-provided facilities and
- their start and stop priorities is retained in
- /var/lib/lsb/facilities. Priorities are assigned to the system
- facilities as found on my sid systems as of today; perhaps system
- facilities should be registered by the appropriate packages, and not
- managed by the lsb package, but that is a sarge+1 policy decision.
-
-- As of 1.3-1, a second registry of init script dependencies is
- retained in /var/lib/lsb/depends. This is used to ensure that an
- LSB package will not be removed if it provides an LSB facility that is
- used by another LSB package. (If you rely on this functionality and
- are upgrading from the 1.2 series, you will need to manually reinstall
- all of your LSB packages.)
-
-- As of 3.0-2, a third registry of files installed by lsbinstall is
- retained in /var/lib/lsb/lsbinstall. Unlike the other two registries,
- it is not designed to be human-readable.
-
-- The facility handling scripts are written in Python. I am not
- particularly attached to them being written in Python, but at the
- same time I do not forsee rewriting them in $language_of_choice.
-
-COMPLIANCE TESTING
-
-I have been unable to locate any LSB package that tests the init
-script functionality of the spec. I am therefore unable to say
-whether this package actually works as advertised. I would appreciate
-any reports of its success or failure.
-
-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>, Sun, 2 Mar 2008 02:20:47 -0600
-
- LocalWords: LSB
+++ /dev/null
-A quickie TODO list for lsb*:
-
-* Finish lsbinstall
-* Move dynamic linker symlinks from postinst into package itself. (?)
-* Only build lsb-* for LSB architectures in Debian.
-* Make lsb stuff available in a Python package.
Vcs-Git: git://anonscm.debian.org/collab-maint/lsb.git
Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/lsb.git
-Package: lsb-core
-Architecture: any
-Depends: lsb-release (>= ${source:Version}),
- ${glibc},
- libz1,
- libncurses5,
- libpam0g,
- lsb-invalid-mta (>= ${source:Version}) | mail-transport-agent,
- at,
- bc,
- binutils,
- bsdmainutils,
- bsdutils,
- cpio,
- cron | cron-daemon,
- ed,
- file,
- libc6-dev | libc-dev,
- locales,
- cups-bsd | lpr,
- lprng | cups-client,
- m4,
- mailutils | mailx,
- make,
- man-db,
- mawk | gawk,
- ncurses-term,
- passwd,
- patch,
- pax,
- procps,
- psmisc,
- rsync,
- alien (>= 8.36),
- ${python3:Depends},
- ${misc:Depends},
- ${depends},
- lsb-base (>= ${source:Version}),
- lsb-security (>= ${source:Version}),
- time
-Provides: lsb-core-noarch, ${provides}
-Description: Linux Standard Base 4.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
- depend upon.
- .
- This package provides an implementation of the core of version 4.1 of
- the Linux Standard Base for Debian on the Intel x86, Intel ia64
- (Itanium), IBM S390, and PowerPC 32-bit architectures with the Linux
- kernel. Future revisions of the specification and this package may
- support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
-Package: lsb-graphics
-Architecture: any
-Depends: lsb-core (>= ${source:Version}),
- libgl1-mesa-glx | libgl1,
- libglu1-mesa | libglu1,
- libx11-6 | xlibs,
- ${misc:Depends}
-Provides: lsb-graphics-noarch, ${provides}
-Description: Linux Standard Base 4.1 graphics support package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of version 4.1 of the Linux
- Standard Base graphics specification for Debian on the Intel x86,
- Intel ia64 (Itanium), IBM S390, and PowerPC 32-bit architectures with
- the Linux kernel. Future revisions of the specification and this
- package may support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
-Package: lsb-cxx
-Architecture: any
-Depends: lsb-core (>= ${source:Version}),
- libstdc++6,
- ${misc:Depends}
-Provides: lsb-cxx-noarch,
- ${provides}
-Description: Linux Standard Base 4.1 C++ support package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of version 4.1 of the Linux
- Standard Base C++ (CXX) specification for Debian on the Intel x86,
- Intel ia64 (Itanium), IBM S390, and PowerPC 32-bit architectures with
- the Linux kernel. Future revisions of the specification and this
- package may support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
-Package: lsb-desktop
-Architecture: any
-Depends: lsb-graphics (>= ${source:Version}),
- lsb-multimedia (>= ${source:Version}),
- fontconfig (>= 2.6.0),
- libfontconfig1 (>= 2.6.0),
- libpng12-0,
- libjpeg62-turbo,
- libglib2.0-0 (>= 2.12.13),
- libatk1.0-0 (>= 1.10.3),
- libpango1.0-0 (>= 1.10.4),
- libgtk2.0-0 (>= 2.10.14),
- libcairo2 (>= 1.2.0),
- libqtcore4,
- libqtgui4,
- libqt4-xml,
- libqt4-opengl,
- libqt4-sql,
- libqt4-svg,
- libqt4-network,
- libqt4-sql-sqlite,
- libxml2,
- libfreetype6,
- libxrender1,
- libxtst6,
- libxft2,
- xdg-utils,
- libnss3,
- ${misc:Depends}
-# libqt4-sql-sqlite is Not strictly needed by LSB, but the tests want a valid database handler
-Recommends: libqt3-mt (>= 3:3.3.6)
-Provides: lsb-desktop-noarch, lsb-qt4, lsb-qt4-noarch, ${provides}
-Description: Linux Standard Base 4.1 Desktop support package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of version 4.1 of the Linux
- Standard Base Desktop specification for Debian on the Intel x86,
- Intel ia64 (Itanium), IBM S390, and PowerPC 32-bit architectures with
- the Linux kernel. Future revisions of the specification and this
- package may support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies with the Linux
- Standard Base, and should not be construed as a statement that Debian
- is LSB-compliant.
-
-Package: lsb-languages
-Architecture: any
-Depends: lsb-core (>= ${source:Version}),
- python (>= 2.4),
- perl (>= 5.8.8),
- perl (<< 6),
-# Already deprecated in LSB4.1, but still required.
- libpod-plainer-perl,
- ${misc:Depends}
-Provides: lsb-languages-noarch, ${provides}
-Description: Linux Standard Base 4.1 Runtime Languages package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of version 4.1 of the Linux
- Standard Base Languages specification for Debian on the Intel x86,
- Intel ia64 (Itanium), IBM S390, and PowerPC 32-bit architectures with
- the Linux kernel. Future revisions of the specification and this
- package may support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
-Package: lsb-multimedia
-Architecture: any
-Depends: lsb-core (>= ${source:Version}),
- libasound2,
- ${misc:Depends}
-Provides: lsb-multimedia-noarch,
- ${provides}
-Description: Linux Standard Base 4.1 Multimedia package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of version 4.1 of the Linux
- Standard Base Multimedia specification for Debian on the Intel x86,
- Intel ia64 (Itanium), IBM S390, and PowerPC 32-bit architectures with
- the Linux kernel. Future revisions of the specification and this
- package may support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
-Package: lsb-printing
-Architecture: any
-Depends: lsb-core (>= ${source:Version}),
- libcups2,
- libcupsimage2,
- foomatic-filters,
- ghostscript,
- cups-filters (>= 1.0.36) | ghostscript-cups,
- ${misc:Depends}
-Provides: lsb-printing-noarch, ${provides}
-Description: Linux Standard Base 4.1 Printing package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of version 4.1 of the Linux
- Standard Base Printing specification for Debian on the Intel x86,
- Intel ia64 (Itanium), IBM S390, and PowerPC 32-bit architectures with
- the Linux kernel. Future revisions of the specification and this
- package may support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
-Package: lsb-security
-Architecture: any
-Depends: libnss3,
- libnspr4,
- ${misc:Depends}
-Recommends: lsb-core (>= ${source:Version}),
-Provides: lsb-security-noarch,
- ${provides}
-Description: Linux Standard Base 4.1 Security package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of version 4.1 of the Linux
- Standard Base Security specification for Debian on the Intel x86,
- Intel ia64 (Itanium), IBM S390, and PowerPC 32-bit architectures with
- the Linux kernel. Future revisions of the specification and this
- package may support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
-Package: lsb
-Architecture: all
-Depends: lsb-core (>= ${source:Version}),
- lsb-graphics (>= ${source:Version}),
- lsb-cxx (>= ${source:Version}),
- lsb-desktop (>= ${source:Version}),
- lsb-printing (>= ${source:Version}),
- lsb-languages (>= ${source:Version}),
- ${misc:Depends}
-Description: Linux Standard Base 4.1 support package
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package provides an implementation of all modules of version 4.1
- of the Linux Standard Base for Debian on the Intel x86, Intel ia64
- (Itanium), IBM S390, and PowerPC 32-bit architectures with the Linux
- kernel. Future revisions of the specification and this package may
- support the LSB on additional architectures and kernels.
- .
- The intent of this package is to provide a best current practice way
- of installing and running LSB packages on Debian GNU/Linux. Its
- presence does not imply that Debian fully complies
- with the Linux Standard Base, and should not be construed as a
- statement that Debian is LSB-compliant.
-
Package: lsb-base
Architecture: all
Multi-Arch: foreign
Depends: ${misc:Depends}
Pre-Depends: ${misc:Pre-Depends}
Priority: required
-Description: Linux Standard Base 4.1 init script functionality
+Description: Linux Standard Base init script functionality
The Linux Standard Base (http://www.linuxbase.org/) is a standard
core system that third-party applications written for Linux can
depend upon.
While it is intended for use by LSB packages, this command may also
be useful for programmatically distinguishing between a pure Debian
installation and derived distributions.
-
-Package: lsb-invalid-mta
-Architecture: all
-Depends: ${misc:Depends}
-Suggests: lsb
-Provides: mail-transport-agent
-Conflicts: mail-transport-agent
-Description: Linux Standard Base sendmail dummy
- The Linux Standard Base (http://www.linuxbase.org/) is a standard
- core system that third-party applications written for Linux can
- depend upon.
- .
- This package contains nothing else than a fake /usr/sbin/sendmail
- command to fulfill the LSB's requirement of providing this command without
- requiring an MTA to get installed, which once introduces a daemon which
- can cause security problems and second, users get asked questions about
- how they want their MTA configured when in reality they simply wanted to
- install a desktop application or a printer driver, but the dependency on
- LSB compliance pulls in an MTA with the installation.
- .
- The LSB requirement on /usr/sbin/sendmail comes from old times where Linux
- and Unix machines had all fixed IPs and did server tasks in data centers.
- Today's typical desktop Linux machines do not do local e-mail any more as
- users use external e-mail services.
- .
- The /usr/sbin/sendmail always exits with exit status -1 (255) and sends a
- warning message to stderr, so that if a program actually tries to send e-mail
- via the sendmail command the user gets note.
+lsb (4.1+Debian14+) UNRELEASED; urgency=medium
+
+ This update drops all lsb-* compatibility packages, and is therefore an
+ abandon of the pursuit of LSB compatibility for Debian. Only lsb-release and
+ lsb-base are kept as they continue to be used throughout the archive.
+
+ -- Didier Raboud <odyx@debian.org> Wed, 12 Aug 2015 15:08:27 +0200
+
lsb (4.1+Debian1) unstable; urgency=low
This version implements a new "Fancy output" in the form of "[....] "
+++ /dev/null
-#!/bin/sh
-
-set -e
-
-. /usr/share/debconf/confmodule
-
-if [ ! -e /etc/shadow ]; then
- db_input medium lsb/shadowconfig || true
-fi
-db_go
-
-#DEBHELPER#
+++ /dev/null
-usr/lib/lsb
-var/lib/lsb
-etc/profile.d
+++ /dev/null
-test/init-skeleton
+++ /dev/null
-initdutils.py /usr/lib/lsb
-install_initd /usr/lib/lsb
-remove_initd /usr/lib/lsb
-lsbinstall /usr/lib/lsb
+++ /dev/null
-# The purpose of LSB is to ensure that those packages are present. Being explicit cannot hurt.
-depends-on-essential-package-without-using-version depends: bsdutils
+++ /dev/null
-#!/bin/sh
-
-set -e
-
-setup_ldso_symlink () {
- ARCH=$DPKG_MAINTSCRIPT_ARCH
- if [ -z "$ARCH" ]; then
- ARCH=$(dpkg --print-architecture)
- fi
- case "$ARCH" in
- 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
- ;;
- powerpc)
- ln -sf ld.so.1 /lib/ld-lsb-ppc32.so.1
- ln -sf ld.so.1 /lib/ld-lsb-ppc32.so.2
- ln -sf ld.so.1 /lib/ld-lsb-ppc32.so.3
- ;;
- i386)
- ln -sf ld-linux.so.2 /lib/ld-lsb.so.1
- ln -sf ld-linux.so.2 /lib/ld-lsb.so.2
- ln -sf ld-linux.so.2 /lib/ld-lsb.so.3
- ;;
- amd64)
- ln -sf ld-linux.so.2 /lib/ld-lsb.so.1
- ln -sf ld-linux.so.2 /lib/ld-lsb.so.2
- ln -sf ld-linux.so.2 /lib/ld-lsb.so.3
- ln -sf ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.2
- ln -sf ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.3
- ;;
- ia64)
- ln -sf ld-linux-ia64.so.2 /lib/ld-lsb-ia64.so.1
- ln -sf ld-linux-ia64.so.2 /lib/ld-lsb-ia64.so.2
- ln -sf ld-linux-ia64.so.2 /lib/ld-lsb-ia64.so.3
- ;;
- *)
- echo "ld-lsb-*.so.1 symlink for $ARCH is unknown!"
- ;;
- esac
-}
-
-PATH=/sbin:/usr/sbin:$PATH
-export PATH
-
-. /usr/share/debconf/confmodule
-
-case "$1" in
- configure)
- if [ ! -e /etc/shadow ]; then
- db_get lsb/shadowconfig
- if [ "$RET" = "true" ]; then
- shadowconfig on >&2 || true
- fi
- fi
- if dpkg --compare-versions "$2" lt "3.2+Debian30" ; then
- [ -L /lib/ld-lsb-x86-64.so.2 ] && rm /lib/ld-lsb-x86-64.so.2 || true
- [ -L /lib/ld-lsb-x86-64.so.3 ] && rm /lib/ld-lsb-x86-64.so.3 || true
- fi
- setup_ldso_symlink
- ;;
- abort-upgrade|abort-remove|abort-deconfigure)
- ;;
- *)
- echo "postinst called with unknown argument \`$1'" >&2
- exit 1
- ;;
-esac
-
-#DEBHELPER#
+++ /dev/null
-#!/bin/sh
-
-set -e
-
-remove_ldso_symlink () {
- ARCH=$DPKG_MAINTSCRIPT_ARCH
- if [ -z "$ARCH" ]; then
- ARCH=$(dpkg --print-architecture)
- fi
- case "$ARCH" in
- s390|ia64|ppc64|sparc|sparc64|alpha|hppa|m68k|mipsel)
- rm -f /lib/ld-lsb-$ARCH.so.[123]
- ;;
- powerpc)
- rm -f /lib/ld-lsb-ppc32.so.[123]
- ;;
- i386)
- rm -f /lib/ld-lsb.so.[123]
- ;;
- amd64)
- rm -f /lib/ld-lsb.so.[123] /lib64/ld-lsb-x86-64.so.[23]
- ;;
- *)
- echo "ld-lsb-*.so.1 symlink for $ARCH is unknown; not removed."
- ;;
- esac
-}
-
-PATH=/sbin:/usr/sbin:$PATH
-export PATH
-
-case "$1" in
- remove)
- remove_ldso_symlink
- rm -f /var/lib/lsb/facilities
- rm -f /var/lib/lsb/depends
- ;;
- failed-upgrade|upgrade|deconfigure)
- ;;
- *)
- echo "prerm called with unknown argument \`$1'" >&2
- exit 1
- ;;
-esac
-
-
-#DEBHELPER#
+++ /dev/null
-# These templates have been reviewed by the debian-l10n-english
-# team
-#
-# If modifications/additions/rewording are needed, please ask
-# for an advice to debian-l10n-english@lists.debian.org
-#
-# Even minor modifications require translation updates and such
-# changes should be coordinated with translators and reviewers.
-
-Template: lsb/shadowconfig
-Type: boolean
-Default: true
-_Description: Enable shadow passwords?
- The Linux Standard Base requires that certain features of adduser(8)
- be available to conforming applications (such as password
- aging). These features are only provided when shadow passwords are
- enabled, while this system has them disabled.
- .
- Most LSB applications will work fine with either setting, but complete
- conformance requires shadow passwords to be enabled.
- .
- 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
- check passwords against /etc/passwd).
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
+++ /dev/null
-lsb (4.1+Debian7) unstable; urgency=low
-
- From its 4.1+Debian7 version on, lsb-desktop doesn't depend on Qt3 anymore.
- This is an explicit and Debian-specific derogation from the LSB 4.1
- specification.
-
- Qt3 is superseded by Qt4 since 2005 and has been considered "end of life"
- since July 2007 by their upstream developers (Trolltech, then Nokia). Its
- support is also marked deprecated in the LSB specification since its 3.2
- version (Jan 2008). As such, it is going to be removed from Debian soon.
-
- Please refer to /usr/share/doc/lsb-desktop/README.Debian for instructions to
- install Qt3 from unsupported sources.
-
- -- Didier Raboud <odyx@debian.org> Sun, 10 Jun 2012 23:18:07 +0200
+++ /dev/null
-LSB-DESKTOP AND QT3
-
-From its 4.1+Debian7 version, lsb-desktop doesn't depend on Qt3
-anymore. This is an explicit and Debian-specific derogation from the LSB
-4.1 specification needed because Qt3 is going to be removed from Debian.
-
-In case it might still be needed, Qt3 can be installed on Debian from
-the Debian Archive Snapshot service:
-
- http://snapshot.debian.org/
-
-The instructions to get past packages installed on Debian are available
-from its homepage.
-
-The full list of past Qt3 versions is available from:
-
- http://snapshot.debian.org/package/qt-x11-free/
-
- -- Didier Raboud <odyx@debian.org> Mon, 28 May 2012 11:31:12 +0200
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
+++ /dev/null
-sendmail /usr/sbin/
+++ /dev/null
-usr/sbin/sendmail usr/lib/sendmail
+++ /dev/null
-# Dummy sendmail needs no manpage
-binary-without-manpage usr/sbin/sendmail
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
+++ /dev/null
-# LSB packages are empty on purpose
-empty-binary-package
shortrelease = '%s' % m.group(1)
return RELEASE_CODENAME_LOOKUP.get(shortrelease, unknown)
-# LSB compliance packages... may grow eventually
-PACKAGES = 'lsb-core lsb-cxx lsb-graphics lsb-desktop lsb-languages lsb-multimedia lsb-printing lsb-security'
-
-modnamere = re.compile(r'lsb-(?P<module>[a-z0-9]+)-(?P<arch>[^ ]+)(?: \(= (?P<version>[0-9.]+)\))?')
-
def valid_lsb_versions(version, module):
# If a module is ever released that only appears in >= version, deal
# with that here
# This is Debian-specific at present
def check_modules_installed():
- # Find which LSB modules are installed on this system
- C_env = os.environ.copy(); C_env['LC_ALL'] = 'C'
- output = subprocess.Popen(['dpkg-query','-f',"${Version} ${Provides}\n",'-W'] + PACKAGES.split(),
- env=C_env,
- stdout=subprocess.PIPE,
- stderr=subprocess.PIPE,
- close_fds=True).communicate()[0].decode('utf-8')
-
- if not output:
- return []
-
- modules = set()
- for line in output.split(os.linesep):
- if not line:
- break
- version, provides = line.split(' ', 1)
- # Debian package versions can be 3.2-$REV, 3.2+$REV or 3.2~$REV.
- version = re.split('[-+~]', version, 1)[0]
- for pkg in provides.split(','):
- mob = modnamere.search(pkg)
- if not mob:
- continue
-
- mgroups = mob.groupdict()
- # If no versioned provides...
- if mgroups.get('version'):
- module = '%(module)s-%(version)s-%(arch)s' % mgroups
- modules.add(module)
- else:
- module = mgroups['module']
- for v in valid_lsb_versions(version, module):
- mgroups['version'] = v
- module = '%(module)s-%(version)s-%(arch)s' % mgroups
- modules.add(module)
-
- modules = list(modules)
- modules.sort()
- return modules
+ return []
longnames = {'v' : 'version', 'o': 'origin', 'a': 'suite',
'c' : 'component', 'l': 'label'}
self.assertEqual(lr.check_modules_installed(),[])
os.environ.pop('TEST_DPKG_QUERY_NONE')
- # Test with all packages available.
- supposed_output = [pkg[4::] + '-9.8-TESTarch' for pkg in lr.PACKAGES.split(' ')]
- supposed_output += [pkg[4::] + '-9.8-noarch' for pkg in lr.PACKAGES.split(' ')]
- supposed_output.sort()
- os.environ['TEST_DPKG_QUERY_ALL'] = '1'
- self.assertEqual(sorted(lr.check_modules_installed()),supposed_output)
-
def test_parse_policy_line(self):
release_line = ''
shortnames = list(lr.longnames.keys())