From: Didier Raboud Date: Wed, 12 Aug 2015 13:06:14 +0000 (+0200) Subject: Drop all the LSB compatibility packages besides lsb-release and lsb-base X-Git-Tag: archive/raspbian/10.2018112800+rpi1^2~43 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=1b5a2c1f19e2450d96976d42970f990d28f5d960;p=lsb.git Drop all the LSB compatibility packages besides lsb-release and lsb-base - Drop packages-availability checking in lsb-release - Truncate README.Debian to a minimum - Document this in lsb-base.NEWS This was discussed on the debian-lsb and debian-devel lists in the following thread: https://lists.debian.org/4526217.myWFlvm1rM@gyllingar In particular, the following was the plan: https://lists.debian.org/4682310.7LIWdV4Lar@gyllingar --- diff --git a/debian/README.Debian b/debian/README.Debian index 8690a37..4c62d5a 100644 --- a/debian/README.Debian +++ b/debian/README.Debian @@ -1,49 +1,12 @@ 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. @@ -53,145 +16,3 @@ 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 , Sun, 2 Mar 2008 02:20:47 -0600 - - LocalWords: LSB diff --git a/debian/TODO b/debian/TODO deleted file mode 100644 index e22f632..0000000 --- a/debian/TODO +++ /dev/null @@ -1,6 +0,0 @@ -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. diff --git a/debian/control b/debian/control index a2b137c..e7e4813 100644 --- a/debian/control +++ b/debian/control @@ -15,298 +15,13 @@ Homepage: http://www.linuxfoundation.org/collaborate/workgroups/lsb 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. @@ -337,31 +52,3 @@ Description: Linux Standard Base version reporting utility 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. diff --git a/debian/lsb-base.NEWS b/debian/lsb-base.NEWS index 476ddc6..2018b0d 100644 --- a/debian/lsb-base.NEWS +++ b/debian/lsb-base.NEWS @@ -1,3 +1,11 @@ +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 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 "[....] " diff --git a/debian/lsb-core.config b/debian/lsb-core.config deleted file mode 100755 index 88952b5..0000000 --- a/debian/lsb-core.config +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -set -e - -. /usr/share/debconf/confmodule - -if [ ! -e /etc/shadow ]; then - db_input medium lsb/shadowconfig || true -fi -db_go - -#DEBHELPER# diff --git a/debian/lsb-core.dirs b/debian/lsb-core.dirs deleted file mode 100644 index d3d8c10..0000000 --- a/debian/lsb-core.dirs +++ /dev/null @@ -1,3 +0,0 @@ -usr/lib/lsb -var/lib/lsb -etc/profile.d diff --git a/debian/lsb-core.examples b/debian/lsb-core.examples deleted file mode 100644 index 3ef7215..0000000 --- a/debian/lsb-core.examples +++ /dev/null @@ -1 +0,0 @@ -test/init-skeleton diff --git a/debian/lsb-core.install b/debian/lsb-core.install deleted file mode 100644 index eaee1e9..0000000 --- a/debian/lsb-core.install +++ /dev/null @@ -1,4 +0,0 @@ -initdutils.py /usr/lib/lsb -install_initd /usr/lib/lsb -remove_initd /usr/lib/lsb -lsbinstall /usr/lib/lsb diff --git a/debian/lsb-core.lintian-overrides b/debian/lsb-core.lintian-overrides deleted file mode 100644 index 64b2b9f..0000000 --- a/debian/lsb-core.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# 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 diff --git a/debian/lsb-core.manpages b/debian/lsb-core.manpages deleted file mode 100644 index 44c423d..0000000 --- a/debian/lsb-core.manpages +++ /dev/null @@ -1 +0,0 @@ -lsb.8 diff --git a/debian/lsb-core.postinst b/debian/lsb-core.postinst deleted file mode 100755 index 435d1e0..0000000 --- a/debian/lsb-core.postinst +++ /dev/null @@ -1,71 +0,0 @@ -#!/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# diff --git a/debian/lsb-core.prerm b/debian/lsb-core.prerm deleted file mode 100644 index 8b1f535..0000000 --- a/debian/lsb-core.prerm +++ /dev/null @@ -1,47 +0,0 @@ -#!/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# diff --git a/debian/lsb-core.templates b/debian/lsb-core.templates deleted file mode 100644 index 47b8c0f..0000000 --- a/debian/lsb-core.templates +++ /dev/null @@ -1,25 +0,0 @@ -# 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). diff --git a/debian/lsb-cxx.lintian-overrides b/debian/lsb-cxx.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb-cxx.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/debian/lsb-desktop.NEWS b/debian/lsb-desktop.NEWS deleted file mode 100644 index 3d12331..0000000 --- a/debian/lsb-desktop.NEWS +++ /dev/null @@ -1,15 +0,0 @@ -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 Sun, 10 Jun 2012 23:18:07 +0200 diff --git a/debian/lsb-desktop.README.Debian b/debian/lsb-desktop.README.Debian deleted file mode 100644 index 575e16e..0000000 --- a/debian/lsb-desktop.README.Debian +++ /dev/null @@ -1,19 +0,0 @@ -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   Mon, 28 May 2012 11:31:12 +0200 diff --git a/debian/lsb-desktop.lintian-overrides b/debian/lsb-desktop.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb-desktop.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/debian/lsb-graphics.lintian-overrides b/debian/lsb-graphics.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb-graphics.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/debian/lsb-invalid-mta.install b/debian/lsb-invalid-mta.install deleted file mode 100644 index 68ee82e..0000000 --- a/debian/lsb-invalid-mta.install +++ /dev/null @@ -1 +0,0 @@ -sendmail /usr/sbin/ diff --git a/debian/lsb-invalid-mta.links b/debian/lsb-invalid-mta.links deleted file mode 100644 index 4d0e823..0000000 --- a/debian/lsb-invalid-mta.links +++ /dev/null @@ -1 +0,0 @@ -usr/sbin/sendmail usr/lib/sendmail diff --git a/debian/lsb-invalid-mta.lintian-overrides b/debian/lsb-invalid-mta.lintian-overrides deleted file mode 100644 index bd1b7cd..0000000 --- a/debian/lsb-invalid-mta.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# Dummy sendmail needs no manpage -binary-without-manpage usr/sbin/sendmail diff --git a/debian/lsb-languages.lintian-overrides b/debian/lsb-languages.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb-languages.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/debian/lsb-multimedia.lintian-overrides b/debian/lsb-multimedia.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb-multimedia.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/debian/lsb-printing.lintian-overrides b/debian/lsb-printing.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb-printing.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/debian/lsb-security.lintian-overrides b/debian/lsb-security.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb-security.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/debian/lsb.lintian-overrides b/debian/lsb.lintian-overrides deleted file mode 100644 index 2e9065b..0000000 --- a/debian/lsb.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# LSB packages are empty on purpose -empty-binary-package diff --git a/lsb_release.py b/lsb_release.py index 85d374f..ce5c93d 100644 --- a/lsb_release.py +++ b/lsb_release.py @@ -61,11 +61,6 @@ def lookup_codename(release, unknown=None): 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[a-z0-9]+)-(?P[^ ]+)(?: \(= (?P[0-9.]+)\))?') - def valid_lsb_versions(version, module): # If a module is ever released that only appears in >= version, deal # with that here @@ -127,44 +122,7 @@ except NameError: # 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'} diff --git a/test/test_lsb_release.py b/test/test_lsb_release.py index 94c8dbb..10b969a 100644 --- a/test/test_lsb_release.py +++ b/test/test_lsb_release.py @@ -91,13 +91,6 @@ class TestLSBRelease(unittest.TestCase): 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())