├── .gitignore ├── INSTALL ├── README.md ├── compile-order ├── dbus ├── 00-start-message-bus.sh ├── dbus.SlackBuild ├── dbus.info ├── doinst.sh ├── rc.messagebus └── slack-desc ├── lxml ├── README ├── lxml.SlackBuild ├── lxml.info └── slack-desc ├── openssh ├── doinst.sh ├── openssh.SlackBuild ├── openssh.info ├── openssh.tcp_wrappers.diff ├── rc.sshd ├── slack-desc ├── sshd-keygen.service ├── sshd.pam ├── sshd.service ├── sshd.socket ├── sshd@.service └── sshd_config-pam.diff ├── polkit ├── 10-org.freedesktop.NetworkManager.rules ├── 20-plugdev-group-mount-override.rules ├── doinst.sh ├── dont-set-wheel-group-as-admin.diff ├── polkit.SlackBuild ├── polkit.info └── slack-desc ├── procps-ng ├── apply-patches.sh ├── doinst.sh ├── procps-ng.SlackBuild ├── procps-ng.info ├── procps-ng.pgrep.CMDSTRSIZE.diff └── slack-desc ├── service-files └── slim.service ├── settings.sh ├── systemd-service-files ├── doinst.sh ├── slack-desc ├── systemd-service-files.SlackBuild ├── systemd-service-files.info └── systemd │ ├── httpd.service │ ├── mariadb.service │ ├── ntpd.service │ ├── php-fpm.service │ ├── sendmail.service │ └── update-gdk-pixbuf-loaders.service ├── systemd ├── .gitignore ├── config │ ├── modprobe.d │ │ ├── 8139cp.conf │ │ ├── README │ │ ├── bcm43xx.conf │ │ ├── cups-blacklist-usblp.conf │ │ ├── eepro100.conf │ │ ├── eth1394.conf │ │ ├── evbug.conf │ │ ├── framebuffers.conf │ │ ├── hostap.conf │ │ ├── hw_random.conf │ │ ├── isapnp.conf │ │ ├── isdn.conf │ │ ├── oss.conf │ │ ├── pcspkr.conf │ │ ├── psmouse.conf │ │ ├── scsi-sata-controllers.conf │ │ ├── sound-modems.conf │ │ ├── tulip.conf │ │ ├── usb-controller.conf │ │ ├── via-ircc.conf │ │ └── watchdog.conf │ ├── rc.d │ │ ├── rc.Msystemd.new │ │ ├── rc.local_shutdown.new │ │ └── rc.udev.new │ ├── resolv.conf.eth0 │ ├── rules.d │ │ ├── 40-slackware.rules │ │ ├── 59-non-libata-devices.rules │ │ └── 65-permissions.rules │ ├── scripts │ │ └── 20-eth-dhcp.network │ ├── services │ │ ├── display-manager.service │ │ ├── slackware-lvm-init.service │ │ ├── slackware-motd.service │ │ ├── var-lock.mount │ │ └── var-run.mount │ ├── slack-scripts │ │ ├── slackware-lvm-init │ │ └── slackware-motd │ └── udev.conf ├── doinst.sh ├── patches │ ├── 60-cdrom_id.rules.diff │ └── Don-t-enable-audit-by-default.patch ├── slack-desc ├── systemd.SlackBuild └── systemd.info ├── util-linux ├── ddate.1 ├── ddate.c ├── doinst.sh ├── pam.d-su │ ├── su │ └── su-l ├── pam.d │ ├── chfn │ ├── chsh │ ├── login │ ├── runuser │ └── runuser-l ├── patches │ ├── adjtimex_1.29-2.2.diff │ ├── bsdstrings-util-linux_overflow.diff │ ├── setserial-rc.serial.diff │ ├── setserial-undef_TIOCGHAYESESP.diff │ ├── util-linux-ng.fdisk-no-solaris.diff │ ├── util-linux.do.not.list.ram.devices.diff │ └── ziptool-fix_build.patch ├── scsi_ioctl.h ├── slack-desc ├── su.default ├── util-linux.SlackBuild └── util-linux.info └── valgrind ├── README ├── slack-desc ├── valgrind.SlackBuild └── valgrind.info /.gitignore: -------------------------------------------------------------------------------- 1 | *.t?z 2 | *.tar 3 | *.[bgx]z* 4 | .*.sw[op] 5 | -------------------------------------------------------------------------------- /INSTALL: -------------------------------------------------------------------------------- 1 | # Revision 14.2 - pre-beta (19 nov 2015) 2 | # 3 | # The below instructions are recommended by the devs to 4 | # build gnome with systemd from source on Slackware 5 | # 6 | # 1. Install bash-completion from extra 7 | # 8 | # root@:~# slackpkg install bash-completion 9 | # 10 | # 2. Now we can actually start with compiling the packages for pam and systemd. 11 | # There are 2 options. 12 | # Option 1.- Compile package by package in the order of compile-order document 13 | # Option 2.- use Dlackware build software to compile them autmatically. 14 | # 15 | # you will need to compile the following groups: 16 | # 17 | # - Systemd 18 | # - Rebuilds 19 | # - gnome-systemd 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | systemd 2 | ======= 3 | 4 | systemd for Slackware 5 | 6 | These slackbuilds are provided to compile systemd on top of Stock Slackware. 7 | You would need the PAM set before starting with this 8 | 9 | in use with the dlackware Installer: it will download, compile, install the packages from that list 10 | 11 | I would like to thank the following persons for the information needed for the slackbuilds. 12 | Patrick Volkerding, Alien_bob, rworkman, Vincent Batts, Niels Horn, Sbo and https://github.com/PhantomX 13 | -------------------------------------------------------------------------------- /compile-order: -------------------------------------------------------------------------------- 1 | ### [systemd-min] begin 2 | valgrind 3 | lxml 4 | #### If you are updating you can use just systemd here - filename issue check for md5sum 5 | eudev%systemd 6 | #systemd 7 | dbus 8 | util-linux 9 | openssh 10 | procps-ng 11 | polkit 12 | systemd-service-files 13 | # !reboot 14 | -------------------------------------------------------------------------------- /dbus/00-start-message-bus.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # launches a session dbus instance 4 | if [ -z "$DBUS_SESSION_BUS_ADDRESS" ] && type dbus-launch >/dev/null; then 5 | eval $(dbus-launch --sh-syntax --exit-with-session) 6 | fi 7 | -------------------------------------------------------------------------------- /dbus/dbus.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Copyright 2007-2010 Robby Workman, Northport, Alabama, USA 4 | # Copyright 2007-2018 Patrick Volkerding, Sebeka, MN, USA 5 | # Copyright 2013 Bart van der Hall, Istanbul, TR 6 | # Copyright 2020 Eugene Wissner, Dachau, Germany 7 | # All rights reserved. 8 | # 9 | # Redistribution and use of this script, with or without modification, is 10 | # permitted provided that the following conditions are met: 11 | # 12 | # 1. Redistributions of this script must retain the above copyright 13 | # notice, this list of conditions and the following disclaimer. 14 | # 15 | # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 16 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 17 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 18 | # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 20 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 21 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 22 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 23 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 24 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | 26 | PKGNAM=dbus 27 | VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 28 | BUILD=${BUILD:-2} 29 | TAG=${TAG:-_dlack} 30 | 31 | # Automatically determine the architecture we're building on: 32 | if [ -z "$ARCH" ]; then 33 | case "$( uname -m )" in 34 | i?86) export ARCH=i586 ;; 35 | arm*) export ARCH=arm ;; 36 | # Unless $ARCH is already set, use uname -m for all other archs: 37 | *) export ARCH=$( uname -m ) ;; 38 | esac 39 | fi 40 | 41 | CWD=$(pwd) 42 | TMP=${TMP:-/tmp/dlackware} 43 | PKG=$TMP/package-$PKGNAM 44 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 45 | 46 | if [ "$ARCH" = "i586" ]; then 47 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 48 | LIBDIRSUFFIX="" 49 | elif [ "$ARCH" = "s390" ]; then 50 | SLKCFLAGS="-O2" 51 | LIBDIRSUFFIX="" 52 | elif [ "$ARCH" = "x86_64" ]; then 53 | SLKCFLAGS="-O2 -fPIC" 54 | LIBDIRSUFFIX="64" 55 | else 56 | SLKCFLAGS="-O2" 57 | LIBDIRSUFFIX="" 58 | fi 59 | 60 | set -e # Exit on most errors 61 | 62 | rm -rf $PKG 63 | mkdir -p $TMP $PKG 64 | cd $TMP 65 | rm -rf $PKGNAM-$VERSION 66 | tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* 67 | cd $PKGNAM-$VERSION 68 | chown -R root:root . 69 | find . \ 70 | \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ 71 | -exec chmod 755 {} \; -o \ 72 | \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ 73 | -exec chmod 644 {} \; 74 | 75 | CFLAGS="$SLKCFLAGS" \ 76 | CXXFLAGS="$SLKCFLAGS" \ 77 | ./configure \ 78 | --prefix=/usr \ 79 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 80 | --sysconfdir=/etc \ 81 | --localstatedir=/var \ 82 | --runstatedir=/run \ 83 | --mandir=/usr/man \ 84 | --infodir=/usr/info \ 85 | --docdir=/usr/doc/$PKGNAM-$VERSION \ 86 | --disable-doxygen-docs \ 87 | --enable-shared=yes \ 88 | --enable-static=no \ 89 | --enable-inotify \ 90 | --enable-x11-autolaunch \ 91 | --with-system-pid-file=/run/dbus/dbus.pid \ 92 | --with-system-socket=/run/dbus/system_bus_socket \ 93 | --with-console-auth-dir=/run/console \ 94 | --enable-systemd \ 95 | --enable-user-session \ 96 | --with-systemdsystemunitdir=/lib/systemd/system \ 97 | --build=$ARCH-slackware-linux 98 | 99 | make 100 | make install DESTDIR=$PKG 101 | 102 | find $PKG | xargs file | grep -e "executable" -e "shared object" \ 103 | | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null 104 | 105 | # Compress and link manpages, if any: 106 | find $PKG/usr/man -type f -exec gzip -9 {} \; 107 | for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done 108 | 109 | # Install a custom init script for dbus - the included one is not good for us 110 | mkdir -p $PKG/etc/rc.d/ 111 | cat $CWD/rc.messagebus > $PKG/etc/rc.d/rc.messagebus.new 112 | chmod 0755 $PKG/etc/rc.d/rc.messagebus.new 113 | 114 | # Fix some directory ownership 115 | chown messagebus $PKG/var/lib/dbus 116 | 117 | mkdir -p ${PKG}/etc/X11/xinit/xinitrc.d 118 | install -pm0755 ${CWD}/00-start-message-bus.sh \ 119 | ${PKG}/etc/X11/xinit/xinitrc.d/00-start-message-bus.sh 120 | 121 | # Add documentation 122 | mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION 123 | cp -a \ 124 | AUTHORS COPYING* INSTALL NEWS README* doc/*.{txt,html,dtd} \ 125 | $PKG/usr/doc/$PKGNAM-$VERSION 126 | find $PKG/usr/doc/$PKGNAM-$VERSION -type f -exec chmod 0644 {} \; 127 | 128 | mkdir -p $PKG/install 129 | cat $CWD/slack-desc > $PKG/install/slack-desc 130 | cat $CWD/doinst.sh > $PKG/install/doinst.sh 131 | 132 | cd $PKG 133 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz 134 | -------------------------------------------------------------------------------- /dbus/dbus.info: -------------------------------------------------------------------------------- 1 | PKGNAM="dbus" 2 | VERSION="1.12.20" 3 | HOMEPAGE="https://www.freedesktop.org/wiki/Software/dbus/" 4 | DOWNLOAD="https://dbus.freedesktop.org/releases/dbus/dbus-1.12.20.tar.gz" 5 | MD5SUM="dfe8a71f412e0b53be26ed4fbfdc91c4" 6 | -------------------------------------------------------------------------------- /dbus/doinst.sh: -------------------------------------------------------------------------------- 1 | config() { 2 | NEW="$1" 3 | OLD="$(dirname $NEW)/$(basename $NEW .new)" 4 | # If there's no config file by that name, mv it over: 5 | if [ ! -r $OLD ]; then 6 | mv $NEW $OLD 7 | elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then 8 | # toss the redundant copy 9 | rm $NEW 10 | fi 11 | # Otherwise, we leave the .new copy for the admin to consider... 12 | } 13 | 14 | # Keep same perms on rc.messagebus.new: 15 | if [ -e etc/rc.d/rc.messagebus ]; then 16 | cp -a etc/rc.d/rc.messagebus etc/rc.d/rc.messagebus.new.incoming 17 | cat etc/rc.d/rc.messagebus.new > etc/rc.d/rc.messagebus.new.incoming 18 | mv etc/rc.d/rc.messagebus.new.incoming etc/rc.d/rc.messagebus.new 19 | fi 20 | 21 | #config etc/rc.d/rc.messagebus.new 22 | # No, just install the thing. Leaving it as .new will only lead to problems. 23 | if [ -r etc/rc.d/rc.messagebus.new ]; then 24 | mv etc/rc.d/rc.messagebus.new etc/rc.d/rc.messagebus 25 | fi 26 | 27 | if [ -x bin/systemctl ] ; then 28 | chroot . /bin/systemctl --system daemon-reload >/dev/null 2>&1 29 | fi 30 | -------------------------------------------------------------------------------- /dbus/rc.messagebus: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # messagebus: The D-BUS systemwide message bus 4 | # 5 | # description: This is a daemon which broadcasts notifications of system events \ 6 | # and other messages. See http://www.freedesktop.org/software/dbus/ 7 | # 8 | # processname: dbus-daemon 9 | 10 | # This is a modified version of the rc.messagebus script distributed with the 11 | # dbus sources. Thanks to Don Tanner of the GWare Project 12 | # for most of the work involved --Robby Workman 13 | 14 | 15 | PIDFILE=/var/run/dbus/dbus.pid 16 | 17 | start() { 18 | mkdir -p $(dirname $PIDFILE) 19 | if ! ps -u messagebus -c | grep -wq dbus-daemon; then 20 | rm -f $(dirname $PIDFILE)/* 21 | if [ -x /usr/bin/dbus-uuidgen -a -x /usr/bin/dbus-daemon ] ; then 22 | echo "Starting system message bus: /usr/bin/dbus-uuidgen --ensure ; /usr/bin/dbus-daemon --system" 23 | /usr/bin/dbus-uuidgen --ensure 24 | /usr/bin/dbus-daemon --system 1> /dev/null 25 | fi 26 | fi 27 | } 28 | 29 | stop() { 30 | if [ -e "$PIDFILE" ]; then 31 | echo "Stopping system message bus..." 32 | pid=$(cat $PIDFILE) 33 | kill $pid 1> /dev/null 2> /dev/null 34 | # Just in case: 35 | killall dbus-daemon 1> /dev/null 2> /dev/null 36 | rm -f $PIDFILE 37 | fi 38 | } 39 | 40 | reload() { 41 | echo "Reloading system message bus configuration..." 42 | if [ -e "$PIDFILE" ]; then 43 | pid=$(cat $PIDFILE) 44 | kill -HUP $pid 45 | else 46 | killall -HUP dbus-daemon 47 | fi 48 | } 49 | 50 | status() { 51 | if ps -u messagebus -c | grep -wq dbus-daemon; then 52 | echo "System dbus-daemon is running." 53 | else 54 | echo "System dbus-daemon is stopped." 55 | fi 56 | } 57 | 58 | # See how we were called. 59 | case "$1" in 60 | start) 61 | start 62 | ;; 63 | stop) 64 | stop 65 | ;; 66 | restart) 67 | stop 68 | start 69 | echo "You may need to restart your Window Manager to reconnect to the system dbus." 70 | ;; 71 | reload) 72 | reload 73 | ;; 74 | status) 75 | status 76 | ;; 77 | *) 78 | echo $"Usage: $0 {start|stop|restart|reload|status}" 79 | ;; 80 | esac 81 | 82 | -------------------------------------------------------------------------------- /dbus/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. Line 3 | # up the first '|' above the ':' following the base package name, and the '|' 4 | # on the right side marks the last column you can put a character in. You must 5 | # make exactly 11 lines for the formatting to be correct. It's also 6 | # customary to leave one space after the ':'. 7 | |-----handy-ruler------------------------------------------------------| 8 | dbus: dbus (D-Bus message bus system) 9 | dbus: 10 | dbus: D-Bus supplies both a system daemon (for events such as "new hardware 11 | dbus: device added" or "printer queue changed") and a per user login 12 | dbus: session daemon (for general IPC needs among user applications). 13 | dbus: Also, the message bus is built on top of a general one-to-one message 14 | dbus: passing framework, which can be used by any two apps to communicate 15 | dbus: directly (without going through the message bus daemon). 16 | dbus: 17 | dbus: 18 | dbus: 19 | -------------------------------------------------------------------------------- /lxml/README: -------------------------------------------------------------------------------- 1 | lxml is a Pythonic binding for the libxml2 and libxslt libraries. 2 | It is unique in that it combines the speed and feature completeness 3 | of these libraries with the simplicity of a native Python API. 4 | 5 | Cython, python3 and pysetuptools are optional build dependencies. 6 | cssselect and html5lib are optional runtime dependencies. 7 | -------------------------------------------------------------------------------- /lxml/lxml.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Slackware build script for lxml 4 | 5 | # Copyright 2009-2014 Larry Hajali 6 | # Copyright 2020 Eugene Wissner, Dachau, Germany 7 | # All rights reserved. 8 | # 9 | # Redistribution and use of this script, with or without modification, is 10 | # permitted provided that the following conditions are met: 11 | # 12 | # 1. Redistributions of this script must retain the above copyright 13 | # notice, this list of conditions and the following disclaimer. 14 | # 15 | # THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED 16 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 17 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 18 | # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 20 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 21 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 22 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 23 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 24 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | 26 | PKGNAM=lxml 27 | VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 28 | BUILD=${BUILD:-1} 29 | TAG=${TAG:-_dlack} 30 | 31 | if [ -z "$ARCH" ]; then 32 | case "$( uname -m )" in 33 | i?86) ARCH=i586 ;; 34 | arm*) ARCH=arm ;; 35 | *) ARCH=$( uname -m ) ;; 36 | esac 37 | fi 38 | 39 | CWD=$(pwd) 40 | TMP=${TMP:-/tmp/dlackware} 41 | PKG=$TMP/package-$PKGNAM 42 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 43 | 44 | if [ "$ARCH" = "i586" ]; then 45 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 46 | elif [ "$ARCH" = "i686" ]; then 47 | SLKCFLAGS="-O2 -march=i686 -mtune=i686" 48 | elif [ "$ARCH" = "x86_64" ]; then 49 | SLKCFLAGS="-O2 -fPIC" 50 | else 51 | SLKCFLAGS="-O2" 52 | fi 53 | 54 | set -e 55 | 56 | rm -rf $PKG 57 | mkdir -p $TMP $PKG $OUTPUT 58 | cd $TMP 59 | rm -rf $PKGNAM-$VERSION 60 | tar xvf $CWD/$PKGNAM-$VERSION.tar.gz 61 | cd $PKGNAM-$VERSION 62 | chown -R root:root . 63 | 64 | find -L . \ 65 | \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ 66 | -o -perm 511 \) -exec chmod 755 {} \; -o \ 67 | \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ 68 | -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; 69 | 70 | python3 setup.py build --with-unicode-strings 71 | python3 setup.py install --skip-build --root=$PKG 72 | 73 | find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ 74 | | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true 75 | 76 | mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION 77 | cp -a *.txt PKG-INFO doc/licenses/* doc/FAQ.txt $PKG/usr/doc/$PKGNAM-$VERSION 78 | cat $CWD/$PKGNAM.SlackBuild > $PKG/usr/doc/$PKGNAM-$VERSION/$PKGNAM.SlackBuild 79 | 80 | mkdir -p $PKG/install 81 | cat $CWD/slack-desc > $PKG/install/slack-desc 82 | 83 | cd $PKG 84 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} 85 | -------------------------------------------------------------------------------- /lxml/lxml.info: -------------------------------------------------------------------------------- 1 | PKGNAM="lxml" 2 | VERSION="4.5.0" 3 | HOMEPAGE="https://lxml.de/" 4 | DOWNLOAD="https://files.pythonhosted.org/packages/source/l/lxml/lxml-4.5.0.tar.gz" 5 | MD5SUM="f088e452ed45b030b6f84269f1e84d11" 6 | -------------------------------------------------------------------------------- /lxml/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. 3 | # Line up the first '|' above the ':' following the base package name, and 4 | # the '|' on the right side marks the last column you can put a character in. 5 | # You must make exactly 11 lines for the formatting to be correct. It's also 6 | # customary to leave one space after the ':' except on otherwise blank lines. 7 | 8 | |-----handy-ruler------------------------------------------------------| 9 | lxml: lxml (Python bindings for libxml2 and libxslt) 10 | lxml: 11 | lxml: lxml is a Pythonic binding for the libxml2 and libxslt libraries. It 12 | lxml: is unique in that it combines the speed and feature completeness of 13 | lxml: these libraries with the simplicity of a native Python API. 14 | lxml: 15 | lxml: Homepage: http://codespeak.net/lxml/ 16 | lxml: 17 | lxml: 18 | lxml: 19 | lxml: 20 | -------------------------------------------------------------------------------- /openssh/doinst.sh: -------------------------------------------------------------------------------- 1 | config() { 2 | NEW="$1" 3 | OLD="`dirname $NEW`/`basename $NEW .new`" 4 | # If there's no config file by that name, mv it over: 5 | if [ ! -r $OLD ]; then 6 | mv $NEW $OLD 7 | elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy 8 | rm $NEW 9 | fi 10 | # Otherwise, we leave the .new copy for the admin to consider... 11 | } 12 | preserve_perms() { 13 | NEW="$1" 14 | OLD="$(dirname ${NEW})/$(basename ${NEW} .new)" 15 | if [ -e ${OLD} ]; then 16 | cp -a ${OLD} ${NEW}.incoming 17 | cat ${NEW} > ${NEW}.incoming 18 | touch -r ${NEW} ${NEW}.incoming 19 | mv ${NEW}.incoming ${NEW} 20 | fi 21 | config ${NEW} 22 | } 23 | 24 | if [ -r etc/pam.d/sshd.new ]; then 25 | config etc/pam.d/sshd.new 26 | fi 27 | config etc/default/sshd.new 28 | config etc/ssh/ssh_config.new 29 | config etc/ssh/sshd_config.new 30 | preserve_perms etc/rc.d/rc.sshd.new 31 | if [ -e etc/rc.d/rc.sshd.new ]; then 32 | mv etc/rc.d/rc.sshd.new etc/rc.d/rc.sshd 33 | fi 34 | 35 | # If the sshd user/group/shadow don't exist, add them: 36 | 37 | if ! grep -q "^sshd:" etc/passwd ; then 38 | echo "sshd:x:33:33:sshd:/:" >> etc/passwd 39 | fi 40 | 41 | if ! grep -q "^sshd:" etc/group ; then 42 | echo "sshd::33:sshd" >> etc/group 43 | fi 44 | 45 | if ! grep -q "^sshd:" etc/shadow ; then 46 | echo "sshd:*:9797:0:::::" >> etc/shadow 47 | fi 48 | 49 | # Add a btmp file to store login failure if one doesn't exist: 50 | if [ ! -r var/log/btmp ]; then 51 | ( cd var/log ; umask 077 ; touch btmp ) 52 | fi 53 | 54 | if [ -x bin/systemctl ]; then 55 | chroot . /bin/systemctl --system daemon-reload >/dev/null 2>&1 56 | # Enable sshd in systemd 57 | chroot . /bin/systemctl enable sshd.socket 58 | chroot . /bin/systemctl start sshd.socket 59 | fi 60 | -------------------------------------------------------------------------------- /openssh/openssh.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Copyright 2000 BSDi, Inc. Concord, CA, USA 4 | # Copyright 2001, 2002, 2003, 2004 Slackware Linux, Inc. Concord, CA, USA 5 | # Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2018 Patrick J. Volkerding, Sebeka, MN, USA 6 | # Copyright 2013 Bart van der Hall, Istanbul, TR 7 | # Copyright 2018-2019 Eugene Wissner, Dachau, Germany 8 | # All rights reserved. 9 | # 10 | # Redistribution and use of this script, with or without modification, is 11 | # permitted provided that the following conditions are met: 12 | # 13 | # 1. Redistributions of this script must retain the above copyright 14 | # notice, this list of conditions and the following disclaimer. 15 | # 16 | # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 17 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 18 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 19 | # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 20 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 21 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 22 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 23 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 24 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 25 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 | 27 | PKGNAM=openssh 28 | VERSION=${VERSION:-$(echo openssh-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 29 | BUILD=${BUILD:-1} 30 | TAG=${TAG:-_dlack} 31 | 32 | CWD=$(pwd) 33 | TMP=${TMP:-/tmp/dlackware} 34 | PKG=$TMP/package-$PKGNAM 35 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 36 | 37 | # Automatically determine the architecture we're building on: 38 | if [ -z "$ARCH" ]; then 39 | case "$( uname -m )" in 40 | i?86) export ARCH=i586 ;; 41 | arm*) export ARCH=arm ;; 42 | *) export ARCH=$( uname -m ) ;; 43 | esac 44 | fi 45 | 46 | if [ "$ARCH" = "i586" ]; then 47 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 48 | LIBDIRSUFFIX="" 49 | elif [ "$ARCH" = "s390" ]; then 50 | SLKCFLAGS="-O2" 51 | LIBDIRSUFFIX="" 52 | elif [ "$ARCH" = "x86_64" ]; then 53 | SLKCFLAGS="-O2 -fPIC" 54 | LIBDIRSUFFIX="64" 55 | elif [ "$ARCH" = "arm" ]; then 56 | SLKCFLAGS="-O2 -march=armv4 -mtune=xscale" 57 | LIBDIRSUFFIX="" 58 | elif [ "$ARCH" = "armel" ]; then 59 | SLKCFLAGS="-O2 -march=armv4t" 60 | LIBDIRSUFFIX="" 61 | else 62 | SLKCFLAGS="-O2" 63 | LIBDIRSUFFIX="" 64 | fi 65 | 66 | # Clean target location: 67 | rm -rf $PKG 68 | mkdir -p $TMP $PKG $OUTPUT 69 | 70 | # Prepare the framework and extract the package: 71 | cd $TMP 72 | rm -rf $PKG openssh-$VERSION 73 | tar xvf $CWD/openssh-$VERSION.tar.gz || tar xvf $CWD/openssh-$VERSION.tar.?z* || exit 1 74 | cd openssh-$VERSION || exit 1 75 | chown -R root:root . 76 | 77 | # Restore support for tcpwrappers: 78 | cat $CWD/openssh.tcp_wrappers.diff | patch -p1 --verbose || exit 1 79 | 80 | # Choose correct options depending on whether PAM is installed: 81 | if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then 82 | PAM_OPTIONS="--with-pam --with-kerberos5" 83 | unset SHADOW_OPTIONS 84 | # Enable PAM in sshd_config: 85 | cat $CWD/sshd_config-pam.diff | patch -p1 --verbose || exit 1 86 | else 87 | unset PAM_OPTIONS 88 | SHADOW_OPTIONS="--without-pam" 89 | fi 90 | 91 | autoreconf -vif 92 | 93 | # Compile package: 94 | CFLAGS="$SLKCFLAGS" \ 95 | ./configure \ 96 | --prefix=/usr \ 97 | --mandir=/usr/man \ 98 | --sysconfdir=/etc/ssh \ 99 | $PAM_OPTIONS \ 100 | $SHADOW_OPTIONS \ 101 | --with-libedit \ 102 | --with-md5-passwords \ 103 | --with-tcp-wrappers \ 104 | --with-default-path=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin \ 105 | --with-privsep-path=/var/empty \ 106 | --with-privsep-user=sshd \ 107 | --with-pid-dir=/run \ 108 | --build=$ARCH-slackware-linux 109 | 110 | make $NUMJOBS || make || exit 1 111 | 112 | # Install the package: 113 | make install DESTDIR=$PKG 114 | 115 | find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ 116 | | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null 117 | 118 | # Compress and if needed symlink the man pages: 119 | if [ -d $PKG/usr/man ]; then 120 | ( cd $PKG/usr/man 121 | for manpagedir in $(find . -type d -name "man*") ; do 122 | ( cd $manpagedir 123 | for eachpage in $( find . -type l -maxdepth 1) ; do 124 | ln -s $( readlink $eachpage ).gz $eachpage.gz 125 | rm $eachpage 126 | done 127 | gzip -9 *.? 128 | ) 129 | done 130 | ) 131 | fi 132 | 133 | # Install directory used with PrivilegeSeparation option: 134 | mkdir -p $PKG/var/empty 135 | chmod 755 $PKG/var/empty 136 | 137 | # Install defaults file 138 | mkdir -p $PKG/etc/default 139 | cat $CWD/sshd.default > $PKG/etc/default/sshd.new 140 | 141 | # Install docs: 142 | mkdir -p $PKG/usr/doc/openssh-$VERSION 143 | cp -a \ 144 | CREDITS ChangeLog INSTALL LICENCE OVERVIEW \ 145 | README README.privsep TODO \ 146 | $PKG/usr/doc/openssh-$VERSION 147 | chmod 644 $PKG/usr/doc/openssh-$VERSION/* 148 | 149 | # If there's a ChangeLog, installing at least part of the recent history 150 | # is useful, but don't let it get totally out of control: 151 | if [ -r ChangeLog ]; then 152 | DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION) 153 | cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog 154 | touch -r ChangeLog $DOCSDIR/ChangeLog 155 | fi 156 | 157 | # Install also 'ssh-copy-id' and its manpage from contrib: 158 | ( cd contrib 159 | cp -a ssh-copy-id $PKG/usr/bin/ssh-copy-id 160 | chmod 755 $PKG/usr/bin/ssh-copy-id 161 | cat ssh-copy-id.1 | gzip -9c > $PKG/usr/man/man1/ssh-copy-id.1.gz 162 | ) 163 | 164 | ( cd $PKG 165 | 166 | # Ditch the new host keys, since these have to be uniquely prepared on each machine: 167 | rm -f etc/ssh/ssh_host_dsa_key 168 | rm -f etc/ssh/ssh_host_dsa_key.pub 169 | rm -f etc/ssh/ssh_host_rsa_key 170 | rm -f etc/ssh/ssh_host_rsa_key.pub 171 | rm -f etc/ssh/ssh_host_key 172 | rm -f etc/ssh/ssh_host_key.pub 173 | 174 | # Set up the config script installation: 175 | mv etc/ssh/ssh_config etc/ssh/ssh_config.new 176 | mv etc/ssh/sshd_config etc/ssh/sshd_config.new 177 | 178 | # Add the init script: 179 | mkdir -p etc/rc.d 180 | cat $CWD/rc.sshd > etc/rc.d/rc.sshd.new 181 | chmod 755 etc/rc.d/rc.sshd.new 182 | 183 | if [ ! -z "$PAM_OPTIONS" ]; then 184 | # Add the pam stuff: 185 | mkdir -p etc/pam.d 186 | cat $CWD/sshd.pam > etc/pam.d/sshd.new 187 | chmod 0644 /etc/pam.d/sshd.new 188 | fi 189 | 190 | # Add the systemd unit files: 191 | mkdir -p lib/systemd/system 192 | 193 | cat $CWD/sshd.service > lib/systemd/system/sshd.service 194 | chmod 644 lib/systemd/system/sshd.service 195 | 196 | cat $CWD/sshd-keygen.service > lib/systemd/system/sshd-keygen.service 197 | chmod 644 lib/systemd/system/sshd-keygen.service 198 | 199 | cat $CWD/sshd@.service > lib/systemd/system/sshd@.service 200 | chmod 644 lib/systemd/system/sshd@.service 201 | 202 | cat $CWD/sshd.socket > lib/systemd/system/sshd.socket 203 | chmod 644 lib/systemd/system/sshd.socket 204 | 205 | # Copy runtime installation files: 206 | mkdir -p install 207 | cat $CWD/doinst.sh > install/doinst.sh 208 | cat $CWD/slack-desc > install/slack-desc 209 | ) 210 | 211 | # Create the package itself: 212 | cd $PKG 213 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz 214 | -------------------------------------------------------------------------------- /openssh/openssh.info: -------------------------------------------------------------------------------- 1 | PKGNAM="openssh" 2 | VERSION="8.3p1" 3 | HOMEPAGE="https://www.openssh.com/" 4 | DOWNLOAD="https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.3p1.tar.gz" 5 | MD5SUM="68d7527bf2672153ca47402f6489a1af" 6 | -------------------------------------------------------------------------------- /openssh/openssh.tcp_wrappers.diff: -------------------------------------------------------------------------------- 1 | --- ./configure.ac.orig 2020-02-13 18:40:54.000000000 -0600 2 | +++ ./configure.ac 2020-02-14 19:28:45.566081482 -0600 3 | @@ -1532,6 +1532,62 @@ 4 | AC_MSG_RESULT([no]) 5 | fi 6 | 7 | +# Check whether user wants TCP wrappers support 8 | +TCPW_MSG="no" 9 | +AC_ARG_WITH([tcp-wrappers], 10 | + [ --with-tcp-wrappers[[=PATH]] Enable tcpwrappers support (optionally in PATH)], 11 | + [ 12 | + if test "x$withval" != "xno" ; then 13 | + saved_LIBS="$LIBS" 14 | + saved_LDFLAGS="$LDFLAGS" 15 | + saved_CPPFLAGS="$CPPFLAGS" 16 | + if test -n "${withval}" && \ 17 | + test "x${withval}" != "xyes"; then 18 | + if test -d "${withval}/lib"; then 19 | + if test -n "${need_dash_r}"; then 20 | + LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}" 21 | + else 22 | + LDFLAGS="-L${withval}/lib ${LDFLAGS}" 23 | + fi 24 | + else 25 | + if test -n "${need_dash_r}"; then 26 | + LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}" 27 | + else 28 | + LDFLAGS="-L${withval} ${LDFLAGS}" 29 | + fi 30 | + fi 31 | + if test -d "${withval}/include"; then 32 | + CPPFLAGS="-I${withval}/include ${CPPFLAGS}" 33 | + else 34 | + CPPFLAGS="-I${withval} ${CPPFLAGS}" 35 | + fi 36 | + fi 37 | + LIBS="-lwrap -lnsl $LIBS" 38 | + AC_MSG_CHECKING([for libwrap]) 39 | + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ 40 | +#include 41 | +#include 42 | +#include 43 | +#include 44 | +int deny_severity = 0, allow_severity = 0; 45 | + ]], [[ 46 | + hosts_access(0); 47 | + ]])], [ 48 | + AC_MSG_RESULT([yes]) 49 | + AC_DEFINE([LIBWRAP], [1], 50 | + [Define if you want 51 | + TCP Wrappers support]) 52 | + SSHDLIBS="$SSHDLIBS -lwrap -lnsl" 53 | + TCPW_MSG="yes" 54 | + ], [ 55 | + AC_MSG_ERROR([*** libwrap missing]) 56 | + 57 | + ]) 58 | + LIBS="$saved_LIBS" 59 | + fi 60 | + ] 61 | +) 62 | + 63 | # Check whether user wants to use ldns 64 | LDNS_MSG="no" 65 | AC_ARG_WITH(ldns, 66 | @@ -5389,6 +5445,7 @@ 67 | echo " OSF SIA support: $SIA_MSG" 68 | echo " KerberosV support: $KRB5_MSG" 69 | echo " SELinux support: $SELINUX_MSG" 70 | +echo " TCP Wrappers support: $TCPW_MSG" 71 | echo " MD5 password support: $MD5_MSG" 72 | echo " libedit support: $LIBEDIT_MSG" 73 | echo " libldns support: $LDNS_MSG" 74 | --- ./sshd.c.orig 2020-02-13 18:40:54.000000000 -0600 75 | +++ ./sshd.c 2020-02-14 19:30:12.694084273 -0600 76 | @@ -124,6 +124,13 @@ 77 | #include "ssherr.h" 78 | #include "sk-api.h" 79 | 80 | +#ifdef LIBWRAP 81 | +#include 82 | +#include 83 | +int allow_severity; 84 | +int deny_severity; 85 | +#endif /* LIBWRAP */ 86 | + 87 | /* Re-exec fds */ 88 | #define REEXEC_DEVCRYPTO_RESERVED_FD (STDERR_FILENO + 1) 89 | #define REEXEC_STARTUP_PIPE_FD (STDERR_FILENO + 2) 90 | @@ -2107,6 +2114,26 @@ 91 | the_active_state = ssh; 92 | ssh_packet_set_server(ssh); 93 | 94 | +/* Moved LIBWRAP check here */ 95 | +#ifdef LIBWRAP 96 | + allow_severity = options.log_facility|LOG_INFO; 97 | + deny_severity = options.log_facility|LOG_WARNING; 98 | + /* Check whether logins are denied from this host. */ 99 | + if (ssh_packet_connection_is_on_socket(ssh)) { /* This check must be after ssh_packet_set_connection() */ 100 | + struct request_info req; 101 | + 102 | + request_init(&req, RQ_DAEMON, __progname, RQ_FILE, sock_in, 0); 103 | + fromhost(&req); 104 | + 105 | + if (!hosts_access(&req)) { 106 | + debug("Connection refused by tcp wrapper"); 107 | + refuse(&req); 108 | + /* NOTREACHED */ 109 | + fatal("libwrap refuse returns"); 110 | + } 111 | + } 112 | +#endif /* LIBWRAP */ 113 | + 114 | check_ip_options(ssh); 115 | 116 | /* Prepare the channels layer */ 117 | --- ./sshd.8.orig 2020-02-13 18:40:54.000000000 -0600 118 | +++ ./sshd.8 2020-02-14 19:28:45.574081482 -0600 119 | @@ -893,6 +893,12 @@ 120 | This file should be writable only by the user, and need not be 121 | readable by anyone else. 122 | .Pp 123 | +.It Pa /etc/hosts.allow 124 | +.It Pa /etc/hosts.deny 125 | +Access controls that should be enforced by tcp-wrappers are defined here. 126 | +Further details are described in 127 | +.Xr hosts_access 5 . 128 | +.Pp 129 | .It Pa /etc/hosts.equiv 130 | This file is for host-based authentication (see 131 | .Xr ssh 1 ) . 132 | @@ -995,6 +1001,7 @@ 133 | .Xr ssh-keygen 1 , 134 | .Xr ssh-keyscan 1 , 135 | .Xr chroot 2 , 136 | +.Xr hosts_access 5 , 137 | .Xr login.conf 5 , 138 | .Xr moduli 5 , 139 | .Xr sshd_config 5 , 140 | -------------------------------------------------------------------------------- /openssh/rc.sshd: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Start/stop/restart the secure shell server: 3 | 4 | # Source options 5 | if [ -r /etc/default/sshd ]; then 6 | . /etc/default/sshd 7 | fi 8 | 9 | sshd_start() { 10 | # Create host keys if needed. 11 | if [ ! -f /etc/ssh/ssh_host_dsa_key ]; then 12 | /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N '' 13 | fi 14 | if [ ! -f /etc/ssh/ssh_host_rsa_key ]; then 15 | /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' 16 | fi 17 | if [ ! -f /etc/ssh/ssh_host_ecdsa_key ]; then 18 | /usr/bin/ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N '' 19 | fi 20 | if [ ! -f /etc/ssh/ssh_host_ed25519_key ]; then 21 | /usr/bin/ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N '' 22 | fi 23 | # Catch any new host key types not yet created above: 24 | /usr/bin/ssh-keygen -A 25 | # Start the sshd daemon: 26 | /usr/sbin/sshd $SSHD_OPTS 27 | } 28 | 29 | sshd_stop() { 30 | killall sshd 31 | } 32 | 33 | sshd_restart() { 34 | if [ -r /var/run/sshd.pid ]; then 35 | echo "WARNING: killing listener process only. To kill every sshd process, you must" 36 | echo " use 'rc.sshd stop'. 'rc.sshd restart' kills only the parent sshd to" 37 | echo " allow an admin logged in through sshd to use 'rc.sshd restart' without" 38 | echo " being cut off. If sshd has been upgraded, new connections will now" 39 | echo " use the new version, which should be a safe enough approach." 40 | kill `cat /var/run/sshd.pid` 41 | else 42 | echo "WARNING: There does not appear to be a parent instance of sshd running." 43 | echo " If you really want to kill all running instances of sshd (including" 44 | echo " any sessions currently in use), run '/etc/rc.d/rc.sshd stop' instead." 45 | exit 1 46 | fi 47 | sleep 1 48 | sshd_start 49 | } 50 | 51 | case "$1" in 52 | 'start') 53 | sshd_start 54 | ;; 55 | 'stop') 56 | sshd_stop 57 | ;; 58 | 'restart') 59 | sshd_restart 60 | ;; 61 | *) 62 | echo "usage $0 start|stop|restart" 63 | esac 64 | 65 | -------------------------------------------------------------------------------- /openssh/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. Line 3 | # up the first '|' above the ':' following the base package name, and the '|' on 4 | # the right side marks the last column you can put a character in. You must make 5 | # exactly 11 lines for the formatting to be correct. It's also customary to 6 | # leave one space after the ':'. 7 | 8 | |-----handy-ruler------------------------------------------------------| 9 | openssh: openssh (Secure Shell daemon and clients) 10 | openssh: 11 | openssh: ssh (Secure Shell) is a program for logging into a remote machine and 12 | openssh: for executing commands on a remote machine. It is intended to replace 13 | openssh: rlogin and rsh, and provide secure encrypted communications between 14 | openssh: two untrusted hosts over an insecure network. sshd (SSH Daemon) is 15 | openssh: the daemon program for ssh. OpenSSH is based on the last free version 16 | openssh: of Tatu Ylonen's SSH, further enhanced and cleaned up by Aaron 17 | openssh: Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt, and 18 | openssh: Dug Song. It has a homepage at http://www.openssh.com/ 19 | openssh: 20 | -------------------------------------------------------------------------------- /openssh/sshd-keygen.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=SSH Key Generation 3 | ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key 4 | ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key.pub 5 | ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key 6 | ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key.pub 7 | ConditionPathExists=|!/etc/ssh/ssh_host_ed25519_key 8 | ConditionPathExists=|!/etc/ssh/ssh_host_ed25519_key.pub 9 | ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key 10 | ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key.pub 11 | 12 | [Service] 13 | ExecStart=/usr/bin/ssh-keygen -A 14 | Type=oneshot 15 | RemainAfterExit=yes 16 | -------------------------------------------------------------------------------- /openssh/sshd.pam: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | # pam_securetty.so is commented out since sshd already does a good job of 3 | # protecting itself. You may uncomment it if you like, but then you may 4 | # need to add additional consoles to /etc/securetty if you want to allow 5 | # root logins on them, such as: ssh, pts/0, :0, etc 6 | #auth required pam_securetty.so 7 | # When using pam_faillock, print a message to the user if the account is 8 | # locked. This lets the user know what is going on, but it also potentially 9 | # gives additional information to attackers: 10 | #auth requisite pam_faillock.so preauth 11 | auth include system-auth 12 | # To set a limit on failed authentications, the pam_faillock module 13 | # can be enabled. See pam_faillock(8) for more information. 14 | #auth [default=die] pam_faillock.so authfail 15 | #auth sufficient pam_faillock.so authsucc 16 | auth include postlogin 17 | account required pam_nologin.so 18 | account include system-auth 19 | password include system-auth 20 | session include system-auth 21 | session include postlogin 22 | session required pam_loginuid.so 23 | -------------------------------------------------------------------------------- /openssh/sshd.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=OpenSSH server daemon 3 | Documentation=man:sshd(8) man:sshd_config(5) 4 | After=network.target sshd-keygen.service auditd.service 5 | Wants=sshd-keygen.service 6 | 7 | [Service] 8 | EnvironmentFile=/etc/default/sshd 9 | ExecStart=/usr/sbin/sshd -D $OPTIONS 10 | ExecReload=/bin/kill -HUP $MAINPID 11 | KillMode=process 12 | Restart=on-failure 13 | RestartSec=42s 14 | 15 | [Install] 16 | WantedBy=multi-user.target 17 | -------------------------------------------------------------------------------- /openssh/sshd.socket: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=OpenSSH Server Socket 3 | Conflicts=sshd.service 4 | 5 | [Socket] 6 | ListenStream=22 7 | Accept=yes 8 | 9 | [Install] 10 | WantedBy=sockets.target 11 | -------------------------------------------------------------------------------- /openssh/sshd@.service: -------------------------------------------------------------------------------- 1 | # SSH Service file 2 | 3 | [Unit] 4 | Description=SSH Per-Connection Server 5 | 6 | [Service] 7 | EnvironmentFile=/etc/default/sshd 8 | ExecStart=-/usr/sbin/sshd -i 9 | StandardInput=socket 10 | -------------------------------------------------------------------------------- /openssh/sshd_config-pam.diff: -------------------------------------------------------------------------------- 1 | diff -Nur openssh-6.6p1.orig/sshd_config openssh-6.6p1/sshd_config 2 | --- openssh-6.6p1.orig/sshd_config 2014-01-12 02:20:47.000000000 -0600 3 | +++ openssh-6.6p1/sshd_config 2014-07-26 17:28:35.993833123 -0500 4 | @@ -94,7 +94,7 @@ 5 | # If you just want the PAM account and session checks to run without 6 | # PAM authentication, then enable this but set PasswordAuthentication 7 | # and ChallengeResponseAuthentication to 'no'. 8 | -#UsePAM no 9 | +UsePAM yes 10 | 11 | #AllowAgentForwarding yes 12 | #AllowTcpForwarding yes 13 | -------------------------------------------------------------------------------- /polkit/10-org.freedesktop.NetworkManager.rules: -------------------------------------------------------------------------------- 1 | polkit.addRule(function(action, subject) { 2 | if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && 3 | subject.isInGroup("netdev")) { 4 | return polkit.Result.YES; 5 | } 6 | }); 7 | -------------------------------------------------------------------------------- /polkit/20-plugdev-group-mount-override.rules: -------------------------------------------------------------------------------- 1 | /* http://udisks.freedesktop.org/docs/latest/udisks-polkit-actions.html */ 2 | 3 | polkit.addRule(function(action, subject) { 4 | if (action.id == "org.freedesktop.udisks2.filesystem-mount" && 5 | subject.isInGroup("plugdev")) { 6 | return polkit.Result.YES; 7 | } 8 | }); 9 | 10 | polkit.addRule(function(action, subject) { 11 | if (action.id == "org.freedesktop.udisks2.eject-media" && 12 | subject.isInGroup("plugdev")) { 13 | return polkit.Result.YES; 14 | } 15 | }); 16 | -------------------------------------------------------------------------------- /polkit/doinst.sh: -------------------------------------------------------------------------------- 1 | config() { 2 | NEW="$1" 3 | OLD="$(dirname $NEW)/$(basename $NEW .new)" 4 | # If there's no config file by that name, mv it over: 5 | if [ ! -r $OLD ]; then 6 | mv $NEW $OLD 7 | elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy 8 | rm $NEW 9 | fi 10 | # Otherwise, we leave the .new copy for the admin to consider... 11 | } 12 | config etc/polkit-1/rules.d/20-plugdev-group-mount-override.rules.new 13 | config etc/polkit-1/rules.d/10-org.freedesktop.NetworkManager.rules.new 14 | 15 | # Make sure the polkitd user and group exist: 16 | if ! grep -q "^polkitd:" etc/passwd ; then 17 | echo "polkitd:x:87:87:PolicyKit daemon owner:/var/lib/polkit:/bin/false" >> etc/passwd 18 | fi 19 | if ! grep -q "^polkitd:" etc/group ; then 20 | echo "polkitd:x:87:" >> etc/group 21 | fi 22 | 23 | # Remove obsolete rules: 24 | rm -f etc/polkit-1/localauthority/50-local.d/*.pkla{,.new} 25 | rm -f etc/polkit-1/rules.d/*.pkla{,.new} 26 | 27 | # Remove obsolete directory: 28 | rmdir etc/polkit-1/localauthority/50-local.d 2> /dev/null 29 | rmdir etc/polkit-1/localauthority 2> /dev/null 30 | 31 | -------------------------------------------------------------------------------- /polkit/dont-set-wheel-group-as-admin.diff: -------------------------------------------------------------------------------- 1 | diff -Nur polkit-0.112.orig/src/polkitbackend/50-default.rules polkit-0.112/src/polkitbackend/50-default.rules 2 | --- polkit-0.112.orig/src/polkitbackend/50-default.rules 2013-04-29 12:28:57.000000000 -0500 3 | +++ polkit-0.112/src/polkitbackend/50-default.rules 2015-01-01 23:32:40.154400050 -0600 4 | @@ -8,5 +8,5 @@ 5 | // about configuring polkit. 6 | 7 | polkit.addAdminRule(function(action, subject) { 8 | - return ["unix-group:wheel"]; 9 | + return ["unix-user:root"]; 10 | }); 11 | -------------------------------------------------------------------------------- /polkit/polkit.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Copyright 2009, 2011 Robby Workman, Northport, Alabama, USA 4 | # Copyright 2010 Eric Hameleers, Eindhoven, NL 5 | # Copyright 2009, 2010, 2011, 2012, 2013 Patrick J. Volkerding, Sebeka, MN, USA 6 | # Copyright 2013, 2014 Bart van der Hall, Istanbul, TR 7 | # All rights reserved. 8 | 9 | # Redistribution and use of this script, with or without modification, is 10 | # permitted provided that the following conditions are met: 11 | # 12 | # 1. Redistributions of this script must retain the above copyright 13 | # notice, this list of conditions and the following disclaimer. 14 | # 15 | # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED 16 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 17 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 18 | # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 20 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 21 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 22 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 23 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 24 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | 26 | PKGNAM=polkit 27 | VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 28 | BUILD=${BUILD:-1} 29 | TAG=${TAG:-_dlack} 30 | 31 | # Automatically determine the architecture we're building on: 32 | if [ -z "$ARCH" ]; then 33 | case "$( uname -m )" in 34 | i?86) export ARCH=i586 ;; 35 | arm*) export ARCH=arm ;; 36 | # Unless $ARCH is already set, use uname -m for all other archs: 37 | *) export ARCH=$( uname -m ) ;; 38 | esac 39 | fi 40 | 41 | CWD=$(pwd) 42 | TMP=${TMP:-/tmp/dlackware} 43 | PKG=$TMP/package-$PKGNAM 44 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 45 | 46 | if [ "$ARCH" = "i586" ]; then 47 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 48 | LIBDIRSUFFIX="" 49 | elif [ "$ARCH" = "s390" ]; then 50 | SLKCFLAGS="-O2" 51 | LIBDIRSUFFIX="" 52 | elif [ "$ARCH" = "x86_64" ]; then 53 | SLKCFLAGS="-O2 -fPIC" 54 | LIBDIRSUFFIX="64" 55 | else 56 | SLKCFLAGS="-O2" 57 | LIBDIRSUFFIX="" 58 | fi 59 | 60 | rm -rf $PKG 61 | mkdir -p $TMP $PKG 62 | cd $TMP 63 | rm -rf $PKGNAM-$VERSION 64 | tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1 65 | cd $PKGNAM-$VERSION || exit 1 66 | 67 | # Make sure ownerships and permissions are sane: 68 | chown -R root:root . 69 | find . \ 70 | \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ 71 | -exec chmod 755 {} \; -o \ 72 | \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ 73 | -exec chmod 644 {} \; 74 | 75 | cat $CWD/dont-set-wheel-group-as-admin.diff | patch -p1 || exit 1 76 | 77 | # If we get here and don't have a polkitd user/group, add one. 78 | # Otherwise a few directories in the package will have wrong permissions. 79 | if ! grep -q "^polkitd:" /etc/passwd ; then 80 | groupadd -fg 87 polkitd 81 | useradd -c "PolicyKit daemon owner" -d /var/lib/polkit -u 87 -g polkitd -s /bin/false polkitd 82 | fi 83 | 84 | CFLAGS="$SLKCFLAGS" \ 85 | CXXFLAGS="$SLKCFLAGS" \ 86 | ./configure \ 87 | --prefix=/usr \ 88 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 89 | --sysconfdir=/etc \ 90 | --localstatedir=/var \ 91 | --docdir=/usr/doc/$PKGNAM-$VERSION \ 92 | --enable-man-pages \ 93 | --enable-gtk-doc \ 94 | --mandir=/usr/man \ 95 | --disable-static \ 96 | --disable-samples \ 97 | --enable-introspection=yes \ 98 | --with-authfw=pam \ 99 | --enable-verbose-mode \ 100 | --with-os-type=Slackware \ 101 | --enable-systemd-login=yes \ 102 | --build=$ARCH-slackware-linux || exit 1 103 | 104 | # Build and install: 105 | make $NUMJOBS || make || exit 1 106 | make install DESTDIR=$PKG || exit 1 107 | 108 | # Create homedir for polkit. This is mentioned in /etc/passwd, but isn't 109 | # actually used for anything later. Perms don't matter. 110 | mkdir -p $PKG/var/lib/polkit 111 | 112 | # Add default policy files for udisks2 and NetworkManager events: 113 | cat $CWD/10-org.freedesktop.NetworkManager.rules > $PKG/etc/polkit-1/rules.d/10-org.freedesktop.NetworkManager.rules.new 114 | cat $CWD/20-plugdev-group-mount-override.rules > $PKG/etc/polkit-1/rules.d/20-plugdev-group-mount-override.rules.new 115 | 116 | # Make the PAM file .new: 117 | mv $PKG/etc/pam.d/polkit-1 $PKG/etc/pam.d/polkit-1.new 118 | 119 | # Strip binaries: 120 | find $PKG | xargs file | grep -e "executable" -e "shared object" \ 121 | | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null 122 | 123 | # Compress and link manpages, if any: 124 | if [ -d $PKG/usr/man ]; then 125 | ( cd $PKG/usr/man 126 | for manpagedir in $(find . -type d -name "man*") ; do 127 | ( cd $manpagedir 128 | for eachpage in $( find . -type l -maxdepth 1) ; do 129 | ln -s $( readlink $eachpage ).gz $eachpage.gz 130 | rm $eachpage 131 | done 132 | gzip -9 *.* 133 | ) 134 | done 135 | ) 136 | fi 137 | 138 | # Add a documentation directory: 139 | mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION 140 | cp -a \ 141 | AUTHORS COPYING HACKING INSTALL NEWS README \ 142 | $PKG/usr/doc/$PKGNAM-$VERSION 143 | ( cd $PKG/usr/doc/$PKGNAM-$VERSION; ln -s ../../share/gtk-doc/html/polkit-1 html ) 144 | 145 | # If there's a ChangeLog, installing at least part of the recent history 146 | # is useful, but don't let it get totally out of control: 147 | if [ -r ChangeLog ]; then 148 | DOCSDIR=$(echo $PKG/usr/doc/*-$VERSION) 149 | cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog 150 | touch -r ChangeLog $DOCSDIR/ChangeLog 151 | fi 152 | 153 | mkdir -p $PKG/install 154 | cat $CWD/doinst.sh > $PKG/install/doinst.sh 155 | cat $CWD/slack-desc > $PKG/install/slack-desc 156 | 157 | cd $PKG 158 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz 159 | -------------------------------------------------------------------------------- /polkit/polkit.info: -------------------------------------------------------------------------------- 1 | PKGNAM="polkit" 2 | VERSION="0.117" 3 | HOMEPAGE="http://www.freedesktop.org/wiki/Software/PolicyKit" 4 | DOWNLOAD="https://www.freedesktop.org/software/polkit/releases/polkit-0.117.tar.gz" 5 | MD5SUM="bef4987566059634857b9882b48360f8" 6 | -------------------------------------------------------------------------------- /polkit/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. Line 3 | # up the first '|' above the ':' following the base package name, and the '|' on 4 | # the right side marks the last column you can put a character in. You must make 5 | # exactly 11 lines for the formatting to be correct. It's also customary to 6 | # leave one space after the ':'. 7 | 8 | |-----handy-ruler-----------------------------------------------------| 9 | polkit: polkit (authentication framework) 10 | polkit: 11 | polkit: PolicyKit is an application-level toolkit for defining and handling 12 | polkit: the policy that allows unprivileged processes to speak to privileged 13 | polkit: processes. PolicyKit is specifically targeting applications in rich 14 | polkit: desktop environments on multi-user UNIX-like operating systems. 15 | polkit: 16 | polkit: 17 | polkit: 18 | polkit: Home: http://www.freedesktop.org/wiki/Software/PolicyKit 19 | polkit: 20 | 21 | -------------------------------------------------------------------------------- /procps-ng/apply-patches.sh: -------------------------------------------------------------------------------- 1 | 2 | set -e -o pipefail 3 | 4 | DLACK_PATCHDIR=${CWD}/patches 5 | 6 | # patch -p0 -E --backup --verbose -i ${SB_PATCHDIR}/${NAME}.patch 7 | # Display the location from which the user is logged in by default. 8 | # This is how previous versions of 'w' in Slackware have always 9 | # defaulted. 10 | patch -p1 -E --backup --verbose -i ${DLACK_PATCHDIR}/procps.w.showfrom.diff 11 | 12 | # Set to YES if autogen is needed 13 | DLACK_AUTOGEN=YES 14 | 15 | set +e +o pipefail 16 | -------------------------------------------------------------------------------- /procps-ng/doinst.sh: -------------------------------------------------------------------------------- 1 | config() { 2 | NEW="$1" 3 | OLD="$(dirname $NEW)/$(basename $NEW .new)" 4 | # If there's no config file by that name, mv it over: 5 | if [ ! -r $OLD ]; then 6 | mv $NEW $OLD 7 | elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then 8 | # toss the redundant copy 9 | rm $NEW 10 | fi 11 | # Otherwise, we leave the .new copy for the admin to consider... 12 | } 13 | ## List of conf files to check. The conf files in your package should end in .new 14 | 15 | config etc/sysctl.conf.new 16 | -------------------------------------------------------------------------------- /procps-ng/procps-ng.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Slackware build script for procps 4 | 5 | # Copyright 2005-2018 Patrick J. Volkerding, Sebeka, Minnesota, USA 6 | # Copyright 2019 Bart van der Hall, Almere, NL 7 | # All rights reserved. 8 | # 9 | # Redistribution and use of this script, with or without modification, is 10 | # permitted provided that the following conditions are met: 11 | # 12 | # 1. Redistributions of this script must retain the above copyright 13 | # notice, this list of conditions and the following disclaimer. 14 | # 15 | # THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED 16 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 17 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 18 | # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 19 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 20 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 21 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 22 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 23 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 24 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 | 26 | PKGNAM=procps-ng 27 | VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 28 | PSMISCVER=${PSMISCVER:-23.3} 29 | PROCINFONGVER=${PROCINFONGVER:-2.0.304} 30 | PROCINFOVER=${PROCINFOVER:-18} 31 | BUILD=${BUILD:-1} 32 | TAG=${TAG:-_dlack} 33 | 34 | NUMJOBS=${NUMJOBS:--j7} 35 | 36 | # Automatically determine the architecture we're building on: 37 | if [ -z "$ARCH" ]; then 38 | case "$( uname -m )" in 39 | i?86) export ARCH=i586 ;; 40 | arm*) export ARCH=arm ;; 41 | *) export ARCH=$( uname -m ) ;; 42 | esac 43 | fi 44 | 45 | CWD=$(pwd) 46 | TMP=${TMP:-/tmp/dlackware} 47 | PKG=$TMP/package-$PKGNAM 48 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 49 | 50 | if [ "$ARCH" = "i586" ]; then 51 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 52 | LIBDIRSUFFIX="" 53 | elif [ "$ARCH" = "i686" ]; then 54 | SLKCFLAGS="-O2 -march=i686 -mtune=i686" 55 | LIBDIRSUFFIX="" 56 | elif [ "$ARCH" = "x86_64" ]; then 57 | SLKCFLAGS="-O2 -fPIC" 58 | LIBDIRSUFFIX="64" 59 | else 60 | SLKCFLAGS="-O2" 61 | LIBDIRSUFFIX="" 62 | fi 63 | 64 | rm -rf $TMP 65 | mkdir -p $TMP $PKG $OUTPUT 66 | cd $TMP 67 | rm -rf $PKGNAM-$VERSION 68 | tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* || exit 1 69 | cd $PKGNAM-$VERSION || exit 1 70 | tar xvf $CWD/psmisc-$PSMISCVER.tar.xz || exit 1 71 | tar xvf $CWD/procinfo-ng-$PROCINFONGVER.tar.xz || exit 1 72 | tar xvf $CWD/procinfo-$PROCINFOVER.tar.xz || exit 1 73 | chown -R root:root . 74 | 75 | find -L . \ 76 | \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ 77 | -o -perm 511 \) -exec chmod 755 {} \; -o \ 78 | \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ 79 | -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; 80 | 81 | # Revert to hardcoded command string size from procps-ng-3.3.15, as the 82 | # newer stack-based allocation fails in some cases where ulimit is unlimited: 83 | cat $CWD/procps-ng.pgrep.CMDSTRSIZE.diff | patch -p1 --verbose || exit 1 84 | 85 | CFLAGS="$SLKCFLAGS" \ 86 | CXXFLAGS="$SLKCFLAGS" \ 87 | ./configure \ 88 | --prefix=/ \ 89 | --bindir=/bin \ 90 | --sbindir=/sbin \ 91 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 92 | --includedir=/usr/include \ 93 | --sysconfdir=/etc \ 94 | --localstatedir=/var \ 95 | --mandir=/usr/man \ 96 | --datarootdir=/usr/share \ 97 | --docdir=/usr/doc/${PKGNAM}-${VERSION} \ 98 | --enable-static=no \ 99 | --disable-silent-rules \ 100 | --disable-rpath \ 101 | --enable-watch8bit \ 102 | --enable-skill \ 103 | --enable-sigwinch \ 104 | --enable-w-from \ 105 | --disable-kill \ 106 | --with-systemd \ 107 | --disable-modern-top \ 108 | --build=$ARCH-slackware-linux || exit 1 109 | 110 | make $NUMJOBS || make || exit 1 111 | make install DESTDIR=${PKG} || exit 1 112 | 113 | # Move the shared library to $PKG/lib${LIBDIRSUFFIX}: 114 | mkdir -p $PKG/lib${LIBDIRSUFFIX} 115 | ( cd $PKG/usr/lib${LIBDIRSUFFIX} 116 | for file in lib*.so.?.* ; do 117 | mv $file ../../lib${LIBDIRSUFFIX} 118 | ln -sf ../../lib${LIBDIRSUFFIX}/$file . 119 | done 120 | cp -a lib*.so.? ../../lib${LIBDIRSUFFIX} 121 | ) 122 | 123 | # Remove .la file(s): 124 | rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la 125 | 126 | # It seems that upstream has shuffled the location of many tools with the 127 | # 3.3.11 release. To me, this just doesn't make sense to break any existing 128 | # scripts that might be using an absolute path, or to move tools that might 129 | # be needed before /usr is mounted into /usr. So, we will make sure that 130 | # everything is moved back to where the Slackware locations have always been. 131 | # These tools belong in /bin: 132 | mkdir -p $PKG/bin 133 | for file in free killall ps ; do 134 | find $PKG -name $file -exec mv "{}" $PKG/bin \; 135 | done 136 | # These tools belong in /sbin: 137 | mkdir -p $PKG/sbin 138 | for file in pidof sysctl ; do 139 | find $PKG -name $file -exec mv "{}" $PKG/sbin \; 140 | done 141 | mkdir -p $PKG/usr/bin 142 | # These tools belong in /usr/bin: 143 | for file in fuser lsdev peekfd pgrep pkill pmap procinfo prtstat pstree pwdx skill slabtop snice socklist tload top uptime vmstat w watch ; do 144 | find $PKG -name $file -exec mv "{}" $PKG/usr/bin \; 145 | done 146 | # These symlinks belong in /bin: 147 | rm -f $PKG/bin/pidof 148 | ln -sf /sbin/pidof $PKG/bin/pidof 149 | # These symlinks belong in /usr/bin: 150 | rm -f $PKG/usr/bin/free $PKG/usr/bin/pidof $PKG/usr/bin/ps 151 | ln -sf /bin/free $PKG/usr/bin/free 152 | ln -sf /sbin/pidof $PKG/usr/bin/pidof 153 | ln -sf /bin/ps $PKG/usr/bin/ps 154 | 155 | # Create /etc/sysctl.d: 156 | mkdir -p $PKG/etc/sysctl.d 157 | 158 | cd psmisc-$PSMISCVER || exit 1 159 | 160 | CFLAGS="$SLKCFLAGS" \ 161 | CXXFLAGS="$SLKCFLAGS" \ 162 | ./configure \ 163 | --prefix=/usr \ 164 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 165 | --sysconfdir=/etc \ 166 | --localstatedir=/var \ 167 | --mandir=/usr/man \ 168 | --docdir=/usr/doc/psmisc-$PSMISCVER \ 169 | --disable-silent-rules \ 170 | --disable-rpath \ 171 | --build=$ARCH-slackware-linux || exit 1 172 | 173 | make $NUMJOBS || exit 1 174 | make install DESTDIR=$PKG || exit 1 175 | 176 | # Move "killall" to the traditional location: 177 | mv $PKG/usr/bin/killall $PKG/bin 178 | ln -s /bin/killall $PKG/usr/bin/killall 179 | 180 | mkdir -p $PKG/usr/doc/psmisc-$PSMISCVER 181 | cp -a ChangeLog COPYING* NEWS README* $PKG/usr/doc/psmisc-$PSMISCVER 182 | 183 | # If there's a ChangeLog, installing at least part of the recent history 184 | # is useful, but don't let it get totally out of control: 185 | if [ -r ChangeLog ]; then 186 | DOCSDIR=$PKG/usr/doc/psmisc-$PSMISCVER 187 | cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog 188 | touch -r ChangeLog $DOCSDIR/ChangeLog 189 | fi 190 | 191 | cd ../procinfo-ng-$PROCINFONGVER || exit 1 192 | CFLAGS="$SLKCFLAGS" \ 193 | CXXFLAGS="$SLKCFLAGS" \ 194 | ./configure \ 195 | --prefix=/usr \ 196 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 197 | --sysconfdir=/etc \ 198 | --localstatedir=/var \ 199 | --mandir=/usr/man \ 200 | --docdir=/usr/doc/procinfo-ng-$PROCINFONGVER \ 201 | --enable-maintainer-mode \ 202 | --build=$ARCH-slackware-linux || exit 1 203 | 204 | make $NUMJOBS || exit 1 205 | make install DESTDIR=$PKG || exit 1 206 | 207 | mkdir -p $PKG/usr/doc/procinfo-ng-$PROCINFONGVER 208 | cp -a GPL-2.txt LGPL-2.1.txt LICENSE.txt COPYING* README* $PKG/usr/doc/procinfo-ng-$PROCINFONGVER 209 | 210 | # Now install a couple of scripts from the original procinfo package. 211 | cd ../procinfo-$PROCINFOVER || exit 1 212 | install -m 0755 lsdev.pl $PKG/usr/bin/lsdev 213 | install -m 0755 socklist.pl $PKG/usr/bin/socklist 214 | install -m 0644 lsdev.8 socklist.8 $PKG/usr/man/man8 215 | 216 | # Strip binaries: 217 | ( cd $PKG 218 | find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null 219 | find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null 220 | ) 221 | 222 | # Compress and link manpages, if any: 223 | if [ -d $PKG/usr/man ]; then 224 | ( cd $PKG/usr/man 225 | for manpagedir in $(find . -type d -name "man*") ; do 226 | ( cd $manpagedir 227 | for eachpage in $( find . -type l -maxdepth 1 | grep -v '\.gz$') ; do 228 | ln -s $( readlink $eachpage ).gz $eachpage.gz 229 | rm $eachpage 230 | done 231 | gzip -9 *.? 232 | ) 233 | done 234 | ) 235 | fi 236 | 237 | # Back to the procps-ng main source directory... 238 | cd .. 239 | 240 | mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION 241 | cp -a \ 242 | AUTHORS ChangeLog COPYING* NEWS \ 243 | $PKG/usr/doc/$PKGNAM-$VERSION 244 | 245 | mkdir -p $PKG/install 246 | cat $CWD/slack-desc > $PKG/install/slack-desc 247 | 248 | cd $PKG 249 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} 250 | -------------------------------------------------------------------------------- /procps-ng/procps-ng.info: -------------------------------------------------------------------------------- 1 | PKGNAM="procps-ng" 2 | VERSION="3.3.16" 3 | HOMEPAGE="https://sourceforge.net/projects/procps-ng/" 4 | DOWNLOAD="https://prdownloads.sourceforge.net/procps-ng/procps-ng-3.3.16.tar.xz \ 5 | https://mirrors.slackware.com/slackware/slackware-current/source/a/procps-ng/procinfo-18.tar.xz \ 6 | https://mirrors.slackware.com/slackware/slackware-current/source/a/procps-ng/procinfo-ng-2.0.304.tar.xz \ 7 | https://mirrors.slackware.com/slackware/slackware-current/source/a/procps-ng/psmisc-23.3.tar.xz" 8 | MD5SUM="e8dc8455e573bdc40b8381d572bbb89b \ 9 | 9c62b234519cd78169b8ac531ca6444b \ 10 | a174f43d2e747a53218ea1522f5943b4 \ 11 | 573bf80e6b0de86e7f307e310098cf86" 12 | -------------------------------------------------------------------------------- /procps-ng/procps-ng.pgrep.CMDSTRSIZE.diff: -------------------------------------------------------------------------------- 1 | --- ./pgrep.c.orig 2019-10-27 06:32:58.339230954 -0500 2 | +++ ./pgrep.c 2019-12-21 13:38:57.229656940 -0600 3 | @@ -42,6 +42,8 @@ 4 | #define EXIT_FATAL 3 5 | #define XALLOC_EXIT_CODE EXIT_FATAL 6 | 7 | +#define CMDSTRSIZE 4096 8 | + 9 | #include "c.h" 10 | #include "fileutils.h" 11 | #include "nsutils.h" 12 | @@ -497,7 +499,7 @@ 13 | regex_t *preg; 14 | pid_t myself = getpid(); 15 | struct el *list = NULL; 16 | - long cmdlen = sysconf(_SC_ARG_MAX) * sizeof(char); 17 | + long cmdlen = CMDSTRSIZE; 18 | char *cmdline = xmalloc(cmdlen); 19 | char *cmdsearch = xmalloc(cmdlen); 20 | char *cmdoutput = xmalloc(cmdlen); 21 | -------------------------------------------------------------------------------- /procps-ng/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. Line 3 | # up the first '|' above the ':' following the base package name, and the '|' 4 | # on the right side marks the last column you can put a character in. You must 5 | # make exactly 11 lines for the formatting to be correct. It's also 6 | # customary to leave one space after the ':'. 7 | 8 | |-----handy-ruler------------------------------------------------------| 9 | procps-ng: procps-ng (utilities for displaying process information) 10 | procps-ng: 11 | procps-ng: The procps package provides the classic set of utilities used to 12 | procps-ng: display information about the processes currently running on the 13 | procps-ng: machine. 14 | procps-ng: 15 | procps-ng: 16 | procps-ng: 17 | procps-ng: 18 | procps-ng: 19 | procps-ng: 20 | -------------------------------------------------------------------------------- /service-files/slim.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=SLiM Simple Login Manager 3 | After=systemd-user-sessions.service 4 | 5 | [Service] 6 | ExecStart=/usr/bin/slim -nodaemon 7 | 8 | [Install] 9 | Alias=display-manager.service 10 | -------------------------------------------------------------------------------- /settings.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # The following settings is for use if you build everything from source and is a required setting 4 | # SBO_SOURCE=${SBO_SOURCE:-YES} 5 | 6 | # Required: 7 | # 8 | # Make sure the /tmp directory is atleast 6GB 9 | # The below line needs to be replaced with a check and add or alter size 10 | # 11 | # /tmp is half your RAM 12 | 13 | echo 'tmpfs /tmp tmpfs nodev,nosuid,size=6G 0 0' >> /etc/fstab || exit 1 14 | 15 | # Optional: 16 | # 17 | # Allow root login on ssh 18 | 19 | echo 'ssh' >> /etc/securetty || exit 1 20 | 21 | -------------------------------------------------------------------------------- /systemd-service-files/doinst.sh: -------------------------------------------------------------------------------- 1 | systemctl enable update-gdk-pixbuf-loaders.service 2 | 3 | if [ -x bin/systemctl ] ; then 4 | /bin/systemctl --system daemon-reload >/dev/null 2>&1 5 | fi 6 | 7 | -------------------------------------------------------------------------------- /systemd-service-files/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. Line 3 | # up the first '|' above the ':' following the base package name, and the '|' 4 | # on the right side marks the last column you can put a character in. You must 5 | # make exactly 11 lines for the formatting to be correct. It's also 6 | # customary to leave one space after the ':'. 7 | 8 | |-----handy-ruler------------------------------------------------------| 9 | systemd-service-files: systemd-service-files (service files for systemd) 10 | systemd-service-files: 11 | systemd-service-files: A set of service files for systemd 12 | systemd-service-files: Instead of recompiling packages, we just deliver 13 | systemd-service-files: the service files 14 | systemd-service-files: 15 | systemd-service-files: 16 | systemd-service-files: 17 | systemd-service-files: 18 | systemd-service-files: 19 | systemd-service-files: 20 | -------------------------------------------------------------------------------- /systemd-service-files/systemd-service-files.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # Dlackware build system, inpsired by Dropline Build System 4 | # Copyright 2015 Eugene Wissner, Dachau, Germany 5 | # 6 | # This program is free software: you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License as published by 8 | # the Free Software Foundation, either version 3 of the License, or 9 | # (at your option) any later version. 10 | # 11 | # This program is distributed in the hope that it will be useful, 12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | # GNU General Public License for more details. 15 | # 16 | # You should have received a copy of the GNU General Public License 17 | # along with this program. If not, see . 18 | # 19 | 20 | PKGNAM=systemd-service-files 21 | VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 22 | BUILD=${BUILD:-1} 23 | TAG=${TAG:-_dlack} 24 | 25 | ARCH=noarch 26 | 27 | CWD=$(pwd) 28 | TMP=${TMP:-/tmp/dlackware} 29 | PKG=$TMP/package-$PKGNAM 30 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 31 | 32 | set -e # Exit on most errors 33 | 34 | rm -rf $PKG 35 | mkdir -p $PKG $TMP $OUTPUT \ 36 | $PKG/lib/systemd/system \ 37 | $PKG/usr/bin \ 38 | 39 | 40 | 41 | # install -m 0755 $CWD/bin/* $PKG/usr/bin/ 42 | 43 | install -m 0644 $CWD/systemd/* $PKG/lib/systemd/system/ 44 | 45 | mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION 46 | cat $CWD/$PKGNAM.SlackBuild > $PKG/usr/doc/$PKGNAM-$VERSION/$PKGNAM.SlackBuild 47 | 48 | mkdir -p $PKG/install 49 | cat $CWD/slack-desc > $PKG/install/slack-desc 50 | cat $CWD/doinst.sh > $PKG/install/doinst.sh 51 | 52 | cd $PKG 53 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz 54 | -------------------------------------------------------------------------------- /systemd-service-files/systemd-service-files.info: -------------------------------------------------------------------------------- 1 | PKGNAM="systemd-service-files" 2 | VERSION="3.34.1" 3 | HOMEPAGE="http://www.dlackware.com" 4 | DOWNLOAD="" 5 | MD5SUM="" 6 | -------------------------------------------------------------------------------- /systemd-service-files/systemd/httpd.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=The Apache HTTP Server 3 | After=network.target 4 | 5 | [Service] 6 | Type=forking 7 | EnvironmentFile=/usr/sbin/envvars 8 | PIDFile=/var/run/httpd.pid 9 | ExecStart=/usr/sbin/apachectl -k start 10 | ExecReload=/usr/sbin/apachectl -k graceful 11 | ExecStop=/usr/sbin/apachectl -k graceful-stop 12 | KillSignal=SIGCONT 13 | PrivateTmp=true 14 | 15 | [Install] 16 | WantedBy=multi-user.target 17 | -------------------------------------------------------------------------------- /systemd-service-files/systemd/mariadb.service: -------------------------------------------------------------------------------- 1 | # 2 | # /etc/systemd/system/mariadb.service 3 | # 4 | # This file is free software; you can redistribute it and/or modify it 5 | # under the terms of the GNU Lesser General Public License as published by 6 | # the Free Software Foundation; either version 2.1 of the License, or 7 | # (at your option) any later version. 8 | # 9 | # Thanks to: 10 | # Daniel Black 11 | # Erkan Yanar 12 | # David Strauss 13 | # and probably others 14 | 15 | [Unit] 16 | Description=MariaDB database server 17 | After=network.target 18 | After=syslog.target 19 | 20 | [Install] 21 | WantedBy=multi-user.target 22 | Alias=mysqld.service 23 | 24 | 25 | [Service] 26 | 27 | ############################################################################## 28 | ## Core requirements 29 | ## 30 | 31 | Type=simple 32 | 33 | # Setting this to true can break replication and the Type=notify settings 34 | # See also bind-address mysqld option. 35 | PrivateNetwork=false 36 | 37 | ############################################################################## 38 | ## Package maintainers 39 | ## 40 | 41 | User=mysql 42 | Group=mysql 43 | 44 | # To allow memlock to be used as non-root user if set in configuration 45 | CapabilityBoundingSet=CAP_IPC_LOCK 46 | 47 | # Prevent writes to /usr, /boot, and /etc 48 | ProtectSystem=full 49 | 50 | # Doesn't yet work properly with SELinux enabled 51 | # NoNewPrivileges=true 52 | 53 | PrivateDevices=true 54 | 55 | # Prevent accessing /home, /root and /run/user 56 | ProtectHome=true 57 | 58 | # Execute pre and post scripts as root, otherwise it does it as User= 59 | PermissionsStartOnly=true 60 | 61 | # Create the directory before start 62 | ExecStartPre=/bin/mkdir -p /var/run/mysql 63 | ExecStartPre=/bin/chown mysql /var/run/mysql 64 | 65 | PIDFile=/var/run/mysql/mysql.pid 66 | 67 | # Start main service 68 | # MYSQLD_OPTS here is for users to set in /etc/systemd/system/mariadb.service.d/MY_SPECIAL.conf 69 | # Use the [service] section and Environment="MYSQLD_OPTS=...". 70 | # This isn't a replacement for my.cnf. 71 | ExecStart=/usr/libexec/mysqld --datadir=/var/lib/mysql --pid-file=/var/run/mysql/mysql.pid $MYSQLD_OPTS 72 | 73 | KillMode=process 74 | KillSignal=SIGTERM 75 | 76 | # Don't want to see an automated SIGKILL ever 77 | SendSIGKILL=no 78 | 79 | # Restart crashed server only, on-failure would also restart, for example, when 80 | # my.cnf contains unknown option 81 | Restart=on-abort 82 | RestartSec=5s 83 | 84 | UMask=022 85 | 86 | ############################################################################## 87 | ## USERs can override 88 | ## 89 | ## 90 | ## by creating a file in /etc/systemd/system/mariadb.service.d/MY_SPECIAL.conf 91 | ## and adding/setting the following will override this file's settings. 92 | 93 | # Useful options not previously available in [mysqld_safe] 94 | 95 | # Kernels like killing mysqld when out of memory because its big. 96 | # Lets temper that preference a little. 97 | # OOMScoreAdjust=-600 98 | 99 | # Explicitly start with high IO priority 100 | # BlockIOWeight=1000 101 | 102 | # If you don't use the /tmp directory for SELECT ... OUTFILE and 103 | # LOAD DATA INFILE you can enable PrivateTmp=true for a little more security. 104 | PrivateTmp=false 105 | 106 | ## 107 | ## Options previously available to be set via [mysqld_safe] 108 | ## that now needs to be set by systemd config files as mysqld_safe 109 | ## isn't executed. 110 | ## 111 | 112 | # Number of files limit. previously [mysqld_safe] open-file-limit 113 | LimitNOFILE=16364 114 | 115 | # Maximium core size. previously [mysqld_safe] core-file-size 116 | # LimitCore= 117 | 118 | # Nice priority. previously [mysqld_safe] nice 119 | # Nice=-5 120 | 121 | # Timezone. previously [mysqld_safe] timezone 122 | # Environment="TZ=UTC" 123 | 124 | # Library substitutions. previously [mysqld_safe] malloc-lib with explict paths 125 | # (in LD_LIBRARY_PATH) and library name (in LD_PRELOAD). 126 | # Environment="LD_LIBRARY_PATH=/path1 /path2" "LD_PRELOAD= 127 | 128 | # Flush caches. previously [mysqld_safe] flush-caches=1 129 | # ExecStartPre=sync 130 | # ExecStartPre=sysctl -q -w vm.drop_caches=3 131 | 132 | # numa-interleave=1 equalivant 133 | # Change ExecStart=numactl --interleave=all /usr/sbin/mysqld...... 134 | 135 | # crash-script equalivent 136 | # FailureAction= 137 | -------------------------------------------------------------------------------- /systemd-service-files/systemd/ntpd.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Network Time Protocol daemon 3 | After=network.target nss-lookup.target 4 | Conflicts=systemd-timesyncd.service 5 | 6 | [Service] 7 | Type=forking 8 | PrivateTmp=true 9 | ExecStart=/usr/sbin/ntpd -g -u ntp:ntp 10 | 11 | [Install] 12 | WantedBy=multi-user.target 13 | -------------------------------------------------------------------------------- /systemd-service-files/systemd/php-fpm.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=The PHP FastCGI Process Manager 3 | After=network.target 4 | After=syslog.target 5 | 6 | [Service] 7 | Type=forking 8 | PIDFile=/var/run/php-fpm.pid 9 | ExecStart=/usr/sbin/php-fpm --fpm-config=/etc/php-fpm.conf 10 | ExecReload=/bin/kill -USR2 $MAINPID 11 | 12 | [Install] 13 | WantedBy=multi-user.target 14 | -------------------------------------------------------------------------------- /systemd-service-files/systemd/sendmail.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Sendmail Mail Transport Agent 3 | After=network.target 4 | Conflicts=postfix.service exim.service 5 | Wants=sm-client.service 6 | 7 | [Service] 8 | Type=forking 9 | PIDFile=/run/sendmail.pid 10 | EnvironmentFile=/etc/default/sendmail 11 | ExecStart=/usr/sbin/sendmail -bd $SENDMAIL_OPTS $SENDMAIL_OPTARG 12 | 13 | [Install] 14 | WantedBy=multi-user.target 15 | Also=sm-client.service 16 | -------------------------------------------------------------------------------- /systemd-service-files/systemd/update-gdk-pixbuf-loaders.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Run update-gdk-pixbuf-loaders 3 | Before=display-manager.service 4 | After=ldconfig.service gio-modules.service glib-compile-schemas.service 5 | 6 | [Service] 7 | Type=oneshot 8 | RemainAfterExit=no 9 | ExecStart=/usr/bin/update-gdk-pixbuf-loaders 10 | StandardOutput=null 11 | 12 | [Install] 13 | WantedBy=graphical.target 14 | -------------------------------------------------------------------------------- /systemd/.gitignore: -------------------------------------------------------------------------------- 1 | *.t?z 2 | *.[bgx]z* 3 | .*.sw[op] 4 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/8139cp.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Alternate 8139 driver. Some 8139 cards need this specific driver, though... 6 | blacklist 8139cp 7 | 8 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/README: -------------------------------------------------------------------------------- 1 | # /etc/modprobe.d/README 2 | # 3 | # The monolithic "blacklist" file (and others) that used to be here in this 4 | # directory have been split into several more fine-grained files and moved 5 | # to the /lib/modprobe.d/ directory. Any file in /lib/modprobe.d/ will be 6 | # overridden by an identically named file in this directory (/etc/modprobe.d/) 7 | # or /run/modprobe.d/ (but since /run is on a tmpfs, it's not persistent 8 | # across reboots, so you probably don't want to use it). 9 | # 10 | # See "man modprobe.d" for more information. 11 | # 12 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/bcm43xx.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Deprecated BCM4318 driver. 6 | blacklist bcm43xx 7 | 8 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/cups-blacklist-usblp.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Blacklist the (obsolete) usblp module. While the CUPS package has been 6 | # patched to handle if this module is loaded, there are some reports that 7 | # it doesn't always work. Anyway, there should be no need to have this 8 | # module loaded, so we'll blacklist it just in case. 9 | 10 | blacklist usblp 11 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/eepro100.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Alternate Intel EtherExpress Pro/100 support driver. List it 6 | # here so it won't conflict with an already-loaded e100 module. 7 | blacklist eepro100 8 | 9 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/eth1394.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Ethernet over IEEE1394 module. In too many cases this will load 6 | # when there's no eth1394 device present (just an IEEE1394 port) 7 | blacklist eth1394 8 | 9 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/evbug.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | #evbug is a debug tool and should be loaded explicitly 6 | blacklist evbug 7 | 8 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/framebuffers.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Hardware specific video framebuffer modules. If the user wants 6 | # these, they can load them manually or de-blacklist them. Having 7 | # them load automatically may lead to funny side effects with 8 | # certain revisions of video hardware. 9 | blacklist arcfb 10 | blacklist aty128fb 11 | blacklist atyfb 12 | blacklist cirrusfb 13 | blacklist clgenfb 14 | blacklist cyber2000fb 15 | blacklist fbcon-cfb2 16 | blacklist fbcon-cfb4 17 | blacklist fbcon-hga 18 | blacklist fbcon-mfb 19 | blacklist fbcon-vga-planes 20 | blacklist fbgen 21 | blacklist hgafb 22 | blacklist i2c-matroxfb 23 | blacklist i810fb 24 | blacklist intelfb 25 | blacklist kyrofb 26 | blacklist matroxfb_DAC1064 27 | blacklist matroxfb_Ti3026 28 | blacklist matroxfb_accel 29 | blacklist matroxfb_base 30 | blacklist matroxfb_crtc2 31 | blacklist matroxfb_g450 32 | blacklist matroxfb_maven 33 | blacklist matroxfb_misc 34 | blacklist neofb 35 | blacklist nvidiafb 36 | blacklist pm2fb 37 | blacklist pm3fb 38 | blacklist radeonfb 39 | blacklist rivafb 40 | blacklist savagefb 41 | blacklist sisfb 42 | blacklist sstfb 43 | blacklist tdfxfb 44 | blacklist tridentfb 45 | blacklist vga16fb 46 | blacklist viafb 47 | blacklist virgefb 48 | 49 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/hostap.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Modules used to run a wireless adapter as an access point. These 6 | # conflict with the normal driver for the device, and so should be 7 | # loaded manually. 8 | blacklist hostap_cs 9 | blacklist hostap_pci 10 | blacklist hostap_plx 11 | blacklist hostap 12 | 13 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/hw_random.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # This module has also been known to cause crashes with some hardware. 6 | blacklist hw_random 7 | 8 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/isapnp.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # These aliases are here because many PnP modules do not provide them. 6 | # 7 | # NOTE: Commented out due to noise pollution from udev. 8 | # In the unlikely event that your machine needs these aliases, copy this 9 | # file to /etc/modprobe.d/isapnp.conf and uncomment them there. 10 | 11 | #alias pnp:dPNP0400 parport_pc 12 | #alias pnp:dPNP0401 parport_pc 13 | #alias pnp:dPNP0510 irtty-sir 14 | #alias pnp:dPNP0511 irtty-sir 15 | #alias pnp:dPNP0700 floppy 16 | #alias pnp:dPNP0B00 rtc 17 | #alias acpi:PNP0B00: rtc-cmos 18 | #alias acpi:PNP0B01: rtc-cmos 19 | #alias acpi:PNP0B02: rtc-cmos 20 | #alias pnp:dPNPB02F analog 21 | #alias pnp:dPNP0F13 psmouse 22 | #alias pnp:dPNP0800 pcspkr 23 | #alias pnp:dPNP0303 atkbd 24 | 25 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/isdn.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # These two come from the hwdata project 6 | # Bug numbers are Fedora/RH specific 7 | 8 | # ISDN - see bugs 154799, 159068 9 | blacklist hisax 10 | blacklist hisax_fcpcipnp 11 | 12 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/oss.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # OSS (Open Sound System) modules. This is the old and deprecated Linux 6 | # sound system. If you want to use OSS, remove the alsa-driver package 7 | # and cut out (or comment out) this list. With these modules 8 | # blacklisted ALSA will load by default. 9 | blacklist ac97 10 | blacklist ac97_codec 11 | blacklist aci 12 | blacklist ad1816 13 | blacklist ad1848 14 | blacklist ad1889 15 | blacklist adlib_card 16 | blacklist aedsp16 17 | blacklist ali5455 18 | blacklist awe_wave 19 | blacklist btaudio 20 | blacklist cmpci 21 | blacklist cs4232 22 | blacklist cs4281 23 | blacklist cs46xx 24 | blacklist emu10k1 25 | blacklist es1370 26 | blacklist es1371 27 | blacklist esssolo1 28 | blacklist forte 29 | blacklist gus 30 | blacklist i810_audio 31 | blacklist kahlua 32 | blacklist mad16 33 | blacklist maestro 34 | blacklist maestro3 35 | blacklist maui 36 | blacklist mpu401 37 | blacklist msnd 38 | blacklist msnd_classic 39 | blacklist msnd_pinnacle 40 | blacklist nm256_audio 41 | blacklist opl3 42 | blacklist opl3sa 43 | blacklist opl3sa2 44 | blacklist pas2 45 | blacklist pss 46 | blacklist rme96xx 47 | blacklist sb 48 | blacklist sb_lib 49 | blacklist sgalaxy 50 | blacklist sonicvibes 51 | blacklist sound 52 | blacklist sscape 53 | blacklist trident 54 | blacklist trix 55 | blacklist uart401 56 | blacklist uart6850 57 | blacklist v_midi 58 | blacklist via82cxxx_audio 59 | blacklist wavefront 60 | blacklist ymfpci 61 | 62 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/pcspkr.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # PC Speaker support: 6 | # This one is loaded by /etc/rc.d/rc.modules. If you don't like 7 | # the beeps and buzz from speaker, edit /etc/rc.d/rc.modules. 8 | blacklist pcspkr 9 | 10 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/psmouse.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # PS/2 mouse support: 6 | # The default options when the psmouse module can cause problems with KVM 7 | # switches. If you experience this, you may want to uncomment the line 8 | # below to use a more basic mouse protocol with the psmouse module: 9 | #options psmouse proto=imps 10 | 11 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/scsi-sata-controllers.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # SCSI and SATA controller modules. Typically these are either 6 | # built into the kernel or loaded with an initrd already. 7 | blacklist 3w-xxxx 8 | blacklist 53c7,8xx 9 | blacklist AM53C974 10 | blacklist BusLogic 11 | blacklist NCR53c406a 12 | blacklist a100u2w 13 | blacklist advansys 14 | blacklist aha152x 15 | blacklist aha1542 16 | blacklist aha1740 17 | blacklist aic79xx 18 | blacklist aic7xxx 19 | blacklist aic7xxx_old 20 | blacklist aic94xx 21 | blacklist ata_piix 22 | blacklist atp870u 23 | blacklist cpqfc 24 | blacklist dc395x 25 | blacklist dmx3191d 26 | blacklist dpt_i2o 27 | blacklist dtc 28 | blacklist eata 29 | blacklist eata_dma 30 | blacklist eata_pio 31 | blacklist fdomain 32 | blacklist g_NCR5380 33 | blacklist g_NCR5380_mmio 34 | blacklist gdth 35 | blacklist ide-scsi 36 | blacklist imm 37 | blacklist in2000 38 | blacklist initio 39 | blacklist ipr 40 | blacklist ips 41 | blacklist libata 42 | blacklist megaraid 43 | blacklist ncr53c8xx 44 | blacklist nsp32 45 | blacklist osst 46 | blacklist pas16 47 | blacklist pci2000 48 | blacklist pci2220i 49 | blacklist ppa 50 | blacklist psi240i 51 | blacklist qla1280 52 | blacklist qla2100 53 | blacklist qla2200 54 | blacklist qla2300 55 | blacklist qla2322 56 | blacklist qla2xxx 57 | blacklist qla6312 58 | blacklist qla6322 59 | blacklist qlogicfas 60 | blacklist qlogicfas408 61 | blacklist qlogicfc 62 | blacklist qlogicisp 63 | blacklist seagate 64 | blacklist sim710 65 | blacklist sata_promise 66 | blacklist sata_sil 67 | blacklist sata_sis 68 | blacklist sata_svw 69 | blacklist sata_sx4 70 | blacklist sata_via 71 | blacklist sata_vsc 72 | blacklist scsi_debug 73 | blacklist scsi_transport_fc 74 | blacklist scsi_transport_spi 75 | blacklist sym53c416 76 | blacklist sym53c8xx 77 | blacklist sym53c8xx 78 | blacklist t128 79 | blacklist tmscsim 80 | blacklist u14-34f 81 | 82 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/sound-modems.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # ALSA modules to support sound modems. These should be loaded manually 6 | # if needed. For most people they just break sound support... 7 | blacklist snd-atiixp-modem 8 | blacklist snd-intel8x0m 9 | blacklist snd-via82xx-modem 10 | 11 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/tulip.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # tulip ... de4x5, xircom_tulip_cb, dmfe (...) handle same devices 6 | blacklist de4x5 7 | 8 | # At least 2.4.3 and later xircom_tulip doesn't have that conflict 9 | # xircom_tulip_cb 10 | blacklist dmfe 11 | 12 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/usb-controller.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # The EHCI driver should be loaded before the ones for low speed controllers 6 | # or some devices may be confused when they are disconnected and reconnected. 7 | softdep uhci-hcd pre: ehci-hcd 8 | softdep ohci-hcd pre: ehci-hcd 9 | 10 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/via-ircc.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # The kernel lists this as "experimental", but for now it's "broken" 6 | blacklist via-ircc 7 | 8 | -------------------------------------------------------------------------------- /systemd/config/modprobe.d/watchdog.conf: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Do not edit this file; instead, copy it to /etc/modprobe.d/ and edit that 3 | ############################################################################## 4 | 5 | # Blacklist all watchdog modules. Many motherboards hang with them, and 6 | # if you really need a watchdog, you probably know how to load the module 7 | blacklist acquirewdt 8 | blacklist advantechwdt 9 | blacklist alim1535_wdt 10 | blacklist alim7101_wdt 11 | blacklist cpu5wdt 12 | blacklist eurotechwdt 13 | blacklist hpwdt 14 | blacklist i6300esb 15 | blacklist i8xx_tco 16 | blacklist iTCO_vendor_support 17 | blacklist iTCO_wdt 18 | blacklist ib700wdt 19 | blacklist ibmasr 20 | blacklist it8712f_wdt 21 | blacklist machzwd 22 | blacklist mixcomwd 23 | blacklist pc87413_wdt 24 | blacklist pcwd 25 | blacklist pcwd_pci 26 | blacklist pcwd_usb 27 | blacklist sbc60xxwdt 28 | blacklist sbc7240_wdt 29 | blacklist sbc8360 30 | blacklist sbc_epx_c3 31 | blacklist sc1200wdt 32 | blacklist sc520_wdt 33 | blacklist scx200_wdt 34 | blacklist smsc37b787_wdt 35 | blacklist softdog 36 | blacklist w83627hf_wdt 37 | blacklist w83697hf_wdt 38 | blacklist w83877f_wdt 39 | blacklist w83977f_wdt 40 | blacklist wafer5823wdt 41 | blacklist wdt 42 | blacklist wdt_pci 43 | 44 | -------------------------------------------------------------------------------- /systemd/config/rc.d/rc.Msystemd.new: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # rc.M This file is executed by init(8) when the system is being 4 | # initialized for one of the "multi user" run levels (i.e. 5 | # levels 1 through 6). It usually does mounting of file 6 | # systems et al. 7 | # 8 | # Version: @(#)/etc/rc.d/rc.M 2.23 Wed Feb 26 19:20:58 PST 2003 9 | # 10 | # Author: Fred N. van Kempen, 11 | # Heavily modified by Patrick Volkerding 12 | # 13 | 14 | # Update all the shared library links: 15 | if [ -x /sbin/ldconfig ]; then 16 | echo "Updating shared library links: /sbin/ldconfig &" 17 | /sbin/ldconfig & 18 | fi 19 | 20 | # Initialize PCMCIA devices: 21 | # 22 | # NOTE: This used to be started near the top of rc.S so that PCMCIA devices 23 | # could be fsck'ed along with the other drives. This had some unfortunate 24 | # side effects, however, since root isn't yet read-write, and /var might not 25 | # even be mounted the .pid files can't be correctly written in /var/run and 26 | # the pcmcia system can't be correctly shut down. If you want some PCMCIA 27 | # partition to be mounted at boot (or when the card is inserted) then add 28 | # the appropriate lines to /etc/pcmcia/scsi.opts. 29 | # 30 | # Note that the stuff in /etc/pcmcia/ is only for 2.4.x kernels using 31 | # 16-bit PCMCIA cards (not 32-bit Cardbus cards!). For example, with a 32 | # wireless card you might need to set options in /etc/pcmcia OR in 33 | # /etc/rc.d/rc.wireless.conf, or even in /etc/rc.d/rc.inet1.conf (with 34 | # extra options if needed for the encryption key, ESSID, etc.) 35 | # 36 | # Hopefully this situation will be unified in the future, but for now 37 | # that's how it is... 38 | # 39 | if [ -x /etc/rc.d/rc.pcmcia ]; then 40 | . /etc/rc.d/rc.pcmcia start 41 | # The cards might need a little extra time here to initialize. 42 | sleep 5 43 | fi 44 | 45 | # Start the system logger. 46 | if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then 47 | . /etc/rc.d/rc.syslog start 48 | fi 49 | 50 | # Update the X font indexes: 51 | if [ -x /usr/bin/fc-cache ]; then 52 | echo "Updating X font indexes: /usr/bin/fc-cache -f &" 53 | /usr/bin/fc-cache -f & 54 | fi 55 | 56 | # Look for additional USB/SCSI/IEEE1394/etc devices on multiple LUNs: 57 | if [ -x /etc/rc.d/rc.scanluns ]; then 58 | . /etc/rc.d/rc.scanluns 59 | fi 60 | 61 | # Start networking daemons: 62 | if [ -x /etc/rc.d/rc.inet2 ]; then 63 | . /etc/rc.d/rc.inet2 64 | fi 65 | 66 | # Mount any additional filesystem types that haven't already been mounted: 67 | mount -a -v 2> /dev/null | grep -v "already mounted" 68 | 69 | # Start the Control Script for automounter: 70 | if [ -x /etc/rc.d/rc.autofs ]; then 71 | sh /etc/rc.d/rc.autofs start 72 | fi 73 | 74 | # Start the Network Time Protocol daemon: 75 | if [ -x /etc/rc.d/rc.ntpd ]; then 76 | sh /etc/rc.d/rc.ntpd start 77 | fi 78 | 79 | # Remove stale locks and junk files (must be done after mount -a!) 80 | /bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/core /core 2> /dev/null 81 | /bin/rm -rf /var/spool/cron/cron.?????? 2> /dev/null 82 | 83 | # Remove stale hunt sockets so the game can start. 84 | if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then 85 | echo "Removing your stale hunt sockets from /tmp." 86 | /bin/rm -f /tmp/hunt* 87 | fi 88 | 89 | # Ensure basic filesystem permissions sanity. 90 | chmod 755 / 2> /dev/null 91 | chmod 1777 /tmp /var/tmp 92 | 93 | # Update any existing icon cache files: 94 | if find /usr/share/icons 2> /dev/null | grep -q icon-theme.cache ; then 95 | for theme_dir in /usr/share/icons/* ; do 96 | if [ -r ${theme_dir}/icon-theme.cache ]; then 97 | echo "Updating icon-theme.cache in ${theme_dir}..." 98 | /usr/bin/gtk-update-icon-cache -t -f ${theme_dir} 1> /dev/null 2> /dev/null & 99 | fi 100 | done 101 | # This would be a large file and probably shouldn't be there. 102 | if [ -r /usr/share/icons/icon-theme.cache ]; then 103 | echo "Deleting icon-theme.cache in /usr/share/icons..." 104 | #/usr/bin/gtk-update-icon-cache -t -f /usr/share/icons 1> /dev/null 2> /dev/null & 105 | rm -f /usr/share/icons/icon-theme.cache 106 | fi 107 | fi 108 | 109 | # Update mime database: 110 | if [ -x /usr/bin/update-mime-database -a -d /usr/share/mime ]; then 111 | echo "Updating MIME database: /usr/bin/update-mime-database /usr/share/mime &" 112 | /usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null & 113 | fi 114 | 115 | # Start console-kit-daemon: 116 | if [ -x /etc/rc.d/rc.consolekit ]; then 117 | sh /etc/rc.d/rc.consolekit start 118 | fi 119 | 120 | # Start Bluetooth: 121 | if [ -x /etc/rc.d/rc.bluetooth ]; then 122 | sh /etc/rc.d/rc.bluetooth start 123 | fi 124 | 125 | # Start wicd or networkmanager: 126 | if [ -x /etc/rc.d/rc.wicd -a -x /usr/sbin/wicd ]; then 127 | sh /etc/rc.d/rc.wicd start 128 | elif [ -x /etc/rc.d/rc.networkmanager ]; then 129 | sh /etc/rc.d/rc.networkmanager start 130 | fi 131 | 132 | # These GTK+/pango files need to be kept up to date for 133 | # proper input method, pixbuf loaders, and font support. 134 | if [ -x /usr/bin/update-gtk-immodules ]; then 135 | /usr/bin/update-gtk-immodules --verbose 136 | fi 137 | if [ -x /usr/bin/update-gdk-pixbuf-loaders ]; then 138 | /usr/bin/update-gdk-pixbuf-loaders --verbose 139 | fi 140 | if [ -x /usr/bin/update-pango-querymodules ]; then 141 | /usr/bin/update-pango-querymodules --verbose 142 | fi 143 | if [ -x /usr/bin/glib-compile-schemas ]; then 144 | /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1 145 | fi 146 | 147 | # Start dnsmasq, a simple DHCP/DNS server: 148 | if [ -x /etc/rc.d/rc.dnsmasq ]; then 149 | /etc/rc.d/rc.dnsmasq start 150 | fi 151 | 152 | # Start snmpd: 153 | if [ -x /etc/rc.d/rc.snmpd ]; then 154 | /etc/rc.d/rc.snmpd start 155 | fi 156 | 157 | # Start the print spooling system. This will usually be LPRng (lpd) or CUPS. 158 | if [ -x /etc/rc.d/rc.cups ]; then 159 | # Start CUPS: 160 | /etc/rc.d/rc.cups start 161 | elif [ -x /etc/rc.d/rc.lprng ]; then 162 | # Start LPRng (lpd): 163 | . /etc/rc.d/rc.lprng start 164 | fi 165 | 166 | # Start netatalk. (a file/print server for Macs using Appletalk) 167 | if [ -x /etc/rc.d/rc.atalk ]; then 168 | /etc/rc.d/rc.atalk start 169 | fi 170 | 171 | # Start smartd, which monitors the status of S.M.A.R.T. compatible 172 | # hard drives and reports any problems. Note some devices (which aren't 173 | # smart, I guess ;) will hang if probed by smartd, so it's commented out 174 | # by default. 175 | #if [ -x /usr/sbin/smartd ]; then 176 | # /usr/sbin/smartd 177 | #fi 178 | 179 | # Monitor the UPS with genpowerd. 180 | # To use this, uncomment this section and edit your settings in 181 | # /etc/genpowerd.conf (serial device, UPS type, etc). For more information, 182 | # see "man genpowerd" or the extensive documentation in the 183 | # /usr/doc/genpower-*/ directory. 184 | # You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want 185 | # support for stopping the UPS's inverter after the machine halts. 186 | #if [ -x /sbin/genpowerd ]; then 187 | # echo "Starting genpowerd daemon..." 188 | # /sbin/genpowerd 189 | #fi 190 | 191 | # Turn on process accounting. To enable process accounting, make sure the 192 | # option for BSD process accounting is enabled in your kernel, and then 193 | # create the file /var/log/pacct (touch /var/log/pacct). By default, process 194 | # accounting is not enabled (since /var/log/pacct does not exist). This is 195 | # because the log file can get VERY large. 196 | if [ -x /sbin/accton -a -r /var/log/pacct ]; then 197 | chmod 640 /var/log/pacct 198 | /sbin/accton /var/log/pacct 199 | fi 200 | 201 | # Start crond (Dillon's crond): 202 | # If you want cron to actually log activity to /var/log/cron, then change 203 | # -l notice to -l info to increase the logging level. 204 | if [ -x /usr/sbin/crond ]; then 205 | /usr/sbin/crond -l notice 206 | fi 207 | 208 | # Start atd (manages jobs scheduled with 'at'): 209 | if [ -x /usr/sbin/atd ]; then 210 | /usr/sbin/atd -b 15 -l 1 211 | fi 212 | 213 | # Slackware-Mini-Quota-HOWTO: 214 | # To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to 215 | # the appropriate partitions as listed in /etc/fstab. Here's an example: 216 | # 217 | # /dev/hda2 /home ext3 defaults,usrquota 1 1 218 | # 219 | # You'll then need to setup initial quota files at the top of the partitions 220 | # to support quota, like this: 221 | # touch /home/aquota.user /home/aquota.group 222 | # chmod 600 /home/aquota.user /home/aquota.group 223 | # 224 | # Then, reboot to activate the system. 225 | # To edit user quotas, use 'edquota'. See 'man edquota'. Also, the 226 | # official Quota Mini-HOWTO has lots of useful information. That can be found 227 | # here: /usr/doc/Linux-HOWTOs/Quota 228 | 229 | # Check quotas and then turn quota system on: 230 | if grep -q quota /etc/fstab ; then 231 | for quotafs in $(awk '/quota/ {print $2}' /etc/fstab) ; do 232 | /bin/rm -f $quotafs/{a,}quota.{group,user}.new 233 | done 234 | if [ -x /sbin/quotacheck ]; then 235 | echo "Checking filesystem quotas: /sbin/quotacheck -avugm" 236 | /sbin/quotacheck -avugm 237 | fi 238 | if [ -x /sbin/quotaon ]; then 239 | echo "Activating filesystem quotas: /sbin/quotaon -avug" 240 | /sbin/quotaon -avug 241 | fi 242 | fi 243 | 244 | # Start the SASL authentication server. This provides SASL 245 | # authentication services for sendmail: 246 | if [ -x /etc/rc.d/rc.saslauthd ]; then 247 | . /etc/rc.d/rc.saslauthd start 248 | fi 249 | 250 | # Start the sendmail daemon: 251 | if [ -x /etc/rc.d/rc.sendmail ]; then 252 | . /etc/rc.d/rc.sendmail start 253 | fi 254 | 255 | # Load ALSA (sound) defaults: 256 | if [ -x /etc/rc.d/rc.alsa ]; then 257 | . /etc/rc.d/rc.alsa 258 | fi 259 | 260 | # Load a custom screen font if the user has an rc.font script. 261 | if [ -x /etc/rc.d/rc.font ]; then 262 | . /etc/rc.d/rc.font 263 | fi 264 | 265 | # Load a custom keymap if the user has an rc.keymap script. 266 | if [ -x /etc/rc.d/rc.keymap ]; then 267 | . /etc/rc.d/rc.keymap 268 | fi 269 | 270 | # Start the MySQL database: 271 | if [ -x /etc/rc.d/rc.mysqld ]; then 272 | . /etc/rc.d/rc.mysqld start 273 | fi 274 | 275 | # Start Apache web server: 276 | if [ -x /etc/rc.d/rc.httpd ]; then 277 | . /etc/rc.d/rc.httpd start 278 | fi 279 | 280 | # Start OpenLDAP: 281 | if [ -x /etc/rc.d/rc.openldap ]; then 282 | . /etc/rc.d/rc.openldap start 283 | fi 284 | 285 | # Start Samba (a file/print server for Win95/NT machines). 286 | # Samba can be started in /etc/inetd.conf instead. 287 | if [ -x /etc/rc.d/rc.samba ]; then 288 | . /etc/rc.d/rc.samba start 289 | fi 290 | 291 | # Start the GPM mouse server: 292 | if [ -x /etc/rc.d/rc.gpm ]; then 293 | . /etc/rc.d/rc.gpm start 294 | fi 295 | 296 | # All done. 297 | -------------------------------------------------------------------------------- /systemd/config/rc.d/rc.local_shutdown.new: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | exit 0 4 | -------------------------------------------------------------------------------- /systemd/config/rc.d/rc.udev.new: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # This is a script to initialize udev, which populates the /dev 3 | # directory with device nodes, scans for devices, loads the 4 | # appropriate kernel modules, and configures the devices. 5 | 6 | PATH="/sbin:/bin" 7 | OPT="" 8 | 9 | . /etc/udev/udev.conf 10 | 11 | # remove trailing slash from udev_root 12 | UDEV_ROOT=$(echo "${udev_root}" |sed 's/\/*$//') 13 | 14 | check_mounted() { 15 | grep -E -q "^[^[:space:]]+ $1 $2" /proc/mounts 16 | return $? 17 | } 18 | 19 | mount_devpts() { 20 | if ! check_mounted $UDEV_ROOT/pts devpts ; then 21 | mkdir $UDEV_ROOT/pts 2> /dev/null 22 | mount -n -o mode=0620,gid=5 -t devpts devpts $UDEV_ROOT/pts 23 | fi 24 | } 25 | 26 | case "$1" in 27 | start) 28 | 29 | # Sanity check #1, udev requires that the kernel support devtmpfs: 30 | if ! grep -wq devtmpfs /proc/filesystems ; then 31 | echo "Sorry, but you need devtmpfs support in the kernel to use udev." 32 | echo "Both of these options are needed: CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y" 33 | echo 34 | echo "FATAL: Refusing to run /etc/rc.d/rc.udev." 35 | sleep 10 36 | exit 1 37 | fi 38 | 39 | # Sanity check #2, udev requires that the kernel support tmpfs: 40 | if ! grep -wq tmpfs /proc/filesystems ; then 41 | echo "Sorry, but you need tmpfs support in the kernel to use udev." 42 | echo 43 | echo "FATAL: Refusing to run /etc/rc.d/rc.udev." 44 | exit 1 45 | fi 46 | 47 | # Sanity check #3, make sure that a 2.6.x kernel is new enough: 48 | if [ "$(uname -r | cut -f 1,2 -d .)" = "2.6" ]; then 49 | if [ "$(uname -r | cut -f 3 -d . | sed 's/[^[:digit:]].*//')" -lt "27" ]; then 50 | echo "Sorry, but you need a 2.6.27+ kernel to use udev." 51 | echo "Your kernel version is only $(uname -r)." 52 | echo 53 | echo "FATAL: Refusing to run /etc/rc.d/rc.udev." 54 | exit 1 55 | fi 56 | fi 57 | 58 | # Sanity check #4, make sure the udev package was not removed. If udevd 59 | # is not there, this will also shut off this script to prevent further 60 | # problems: 61 | if [ ! -x /sbin/udevd ]; then 62 | chmod 644 /etc/rc.d/rc.udev 63 | echo "No udevd daemon found." 64 | echo "Turning off udev: chmod 644 /etc/rc.d/rc.udev" 65 | echo "FATAL: Refusing to run /etc/rc.d/rc.udev." 66 | exit 1 67 | fi 68 | 69 | # Disable hotplug helper since udevd listens to netlink: 70 | if [ -e /proc/sys/kernel/hotplug ]; then 71 | echo "" > /proc/sys/kernel/hotplug 72 | fi 73 | 74 | if grep -qw devtmpfs /proc/filesystems ; then 75 | if ! check_mounted $UDEV_ROOT devtmpfs ; then 76 | # umount shm if needed 77 | check_mounted $UDEV_ROOT/shm tmpfs && umount -l $UDEV_ROOT/shm 78 | 79 | # Umount pts if needed, we will remount it later: 80 | check_mounted $UDEV_ROOT/pts devpts && umount -l $UDEV_ROOT/pts 81 | 82 | # Mount tmpfs on $UDEV_ROOT: 83 | mount -n -t devtmpfs devtmpfs $UDEV_ROOT 84 | fi 85 | else 86 | # Mount tmpfs on $UDEV_ROOT: 87 | if ! check_mounted $UDEV_ROOT tmpfs ; then 88 | # umount shm if needed 89 | check_mounted $UDEV_ROOT/shm tmpfs && umount -l $UDEV_ROOT/shm 90 | 91 | # Umount pts if needed, we will remount it later: 92 | check_mounted $UDEV_ROOT/pts devpts && umount -l $UDEV_ROOT/pts 93 | 94 | # Mount tmpfs on $UDEV_ROOT: 95 | # the -n is because we don't want $UDEV_ROOT umounted when 96 | # someone (rc.[06]) calls umount -a 97 | mount -n -o mode=0755 -t tmpfs tmpfs $UDEV_ROOT 98 | 99 | fi 100 | fi 101 | # Mount devpts 102 | mount_devpts 103 | 104 | # Start udevd. 105 | /sbin/udevd --daemon 2>/dev/null 106 | 107 | # If udevd was already running, then it will return !=0 exit code, 108 | # so we'll try to re-run failed events 109 | if [ $? != 0 ]; then 110 | OPT="--type=failed $OPT" 111 | ( cd /run/udev 112 | for TMPFILE in tmp-rules-*.rules ; do 113 | mv $TMPFILE /etc/udev/rules.d/${TMPFILE/tmp-rules--/} 2>/dev/null 114 | done 115 | ) 116 | else # udev is just now being started, so we'll do some initial setup: 117 | 118 | # Create rootdev rules 119 | DEVICENUMBER=$( /bin/stat -c %d / ) 120 | MAJORNUMBER=$(($DEVICENUMBER / 256)) 121 | MINORNUMBER=$(($DEVICENUMBER % 256)) 122 | 123 | echo 'ACTION!="remove", SUBSYSTEM=="block", ENV{MAJOR}=="'$MAJORNUMBER'", ENV{MINOR}=="'$MINORNUMBER'", SYMLINK+="root"' > /dev/.udev/rules.d/61-dev-root-link.rules 124 | 125 | # Set OPT="--action=add" to generate add events on coldplug 126 | OPT="--action=add" 127 | 128 | fi 129 | 130 | echo "Triggering udev events: /sbin/udevadm trigger $OPT" 131 | # Call udevadm trigger and udevadm settle to do the device configuration: 132 | /sbin/udevadm trigger $OPT && /sbin/udevadm settle --timeout=120 133 | 134 | ;; 135 | stop) 136 | echo "Stopping udevd is STRONGLY discouraged and not supported." 137 | echo "If you are sure you want to do this, use 'force-stop' instead." 138 | ;; 139 | force-stop) 140 | echo "Stopping udevd" 141 | if [ -e /proc/sys/kernel/hotplug ]; then 142 | echo /sbin/hotplug > /proc/sys/kernel/hotplug 143 | fi 144 | udevadm control --exit 145 | ;; 146 | restart) 147 | echo "Restarting udevd is STRONGLY discouraged and not supported." 148 | echo "If you are sure you want to do this, use 'force-restart' instead." 149 | ;; 150 | force-restart) 151 | echo "Restarting udevd" 152 | udevadm control --exit 153 | sleep 5 154 | udevd --daemon 155 | ;; 156 | reload) 157 | echo "Reloading udev rules" 158 | udevadm control --reload 159 | cp --preserve=all --recursive --update /lib/udev/devices/* $UDEV_ROOT 160 | ;; 161 | force-reload) 162 | echo "Updating all available device nodes in $UDEV_ROOT" 163 | udevadm control --reload 164 | rm -rf /run/udev $UDEV_ROOT/disk 165 | cp --preserve=all --recursive --update /lib/udev/devices/* $UDEV_ROOT 166 | ;; 167 | *) 168 | echo "Usage: $0 {start|stop|force-stop|restart|force-restart|reload|force-reload}" 169 | exit 1 170 | ;; 171 | esac 172 | -------------------------------------------------------------------------------- /systemd/config/resolv.conf.eth0: -------------------------------------------------------------------------------- 1 | nameserver 8.8.8.8 2 | nameserver 208.67.222.222 3 | -------------------------------------------------------------------------------- /systemd/config/rules.d/40-slackware.rules: -------------------------------------------------------------------------------- 1 | # /lib/udev/rules.d/40-slackware.rules 2 | # 3 | # Slackware custom udev rules 4 | # Also see the following Slackware-provided custom rules files: 5 | # 65-permissions.rules and 90-network.rules 6 | # 7 | # Any change in this file will be overwritten in upgrades. Put your 8 | # custom rules somewhere else (90-local.rules is a good idea). 9 | # 10 | # See the udev man page to know the parameters you can use in udev 11 | # rules. 12 | # 13 | 14 | # input devices 15 | KERNEL=="mice", SYMLINK+="mouse" 16 | 17 | # js? in /dev 18 | #KERNEL=="js[0-9]*", MODE="0644", SYMLINK+="%k" 19 | 20 | # old devfs path, removing this could break systems 21 | KERNEL=="md[0-9]*", SYMLINK+="md/%n" 22 | KERNEL=="loop[0-9]*", SYMLINK+="loop/%n" 23 | KERNEL=="ram[0-9]*", SYMLINK+="rd/%n" 24 | -------------------------------------------------------------------------------- /systemd/config/rules.d/59-non-libata-devices.rules: -------------------------------------------------------------------------------- 1 | # Support for the deprecated IDE devices has been removed from the 2 | # default set of rules shipped with udev, but some administrators 3 | # might want (or need) the old ata drivers and thus build a custom 4 | # kernel, so we'll carry these on our own for now... 5 | 6 | ############################################################################# 7 | 8 | # Old 50-udev-default.rules 9 | 10 | # floppy 11 | KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="floppy" 12 | 13 | # cdrom 14 | SUBSYSTEM=="block", KERNEL=="hd*", SUBSYSTEMS=="ide", ATTRS{media}=="cdrom", GROUP="cdrom" 15 | 16 | ############################################################################# 17 | 18 | # Old 60-persistent-storage.rules 19 | 20 | # never access non-cdrom removable ide devices, the drivers are causing event loops on open() 21 | KERNEL=="hd*[!0-9]", ATTR{removable}=="1", SUBSYSTEMS=="ide", ATTRS{media}=="disk|floppy", GOTO="old_persistent_storage_end" 22 | KERNEL=="hd*[0-9]", ATTRS{removable}=="1", GOTO="old_persistent_storage_end" 23 | 24 | # by-id (hardware serial number) 25 | KERNEL=="hd*[!0-9]", IMPORT{program}="ata_id --export $tempnode" 26 | KERNEL=="hd*[!0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_SERIAL}" 27 | KERNEL=="hd*[0-9]", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/ata-$env{ID_SERIAL}-part%n" 28 | 29 | LABEL="old_persistent_storage_end" 30 | 31 | ############################################################################# 32 | 33 | # Old ide stuff from our custom 65-permissions.rules 34 | 35 | # permissions for IDE floppy devices 36 | KERNEL=="hd*[!0-9]", SUBSYSTEMS=="ide", ATTRS{media}=="floppy", SYMLINK+="floppy floppy-%k" 37 | KERNEL=="hd*[0-9]", ATTRS{media}=="floppy", ATTRS{removable}=="1", SYMLINK+="floppy-%k" 38 | 39 | # put all removable devices in group "plugdev" 40 | KERNEL=="hd*[!0-9]", ATTR{removable}=="1", GROUP="plugdev" 41 | KERNEL=="hd*[0-9]", ATTRS{removable}=="1", GROUP="plugdev" 42 | 43 | ############################################################################# 44 | 45 | -------------------------------------------------------------------------------- /systemd/config/rules.d/65-permissions.rules: -------------------------------------------------------------------------------- 1 | # Slackware permission rules 2 | # 3 | # These rules are here instead of 40-slackware.rules because 4 | # many of them need to run after the block section in 5 | # 50-udev.default.rules 6 | # 7 | # Remember, in any upgrade, this file will be overwritten. 8 | # Put your custom rules somewhere else (90-local.rules is 9 | # a good idea). 10 | # 11 | 12 | # all disks with group disk 13 | KERNEL!="fd*", SUBSYSTEM=="block", GROUP="disk" 14 | 15 | # put all removable devices in group "plugdev" 16 | KERNEL=="sd*[!0-9]", ATTR{removable}=="1", GROUP="plugdev" 17 | KERNEL=="sd*[0-9]", ATTRS{removable}=="1", GROUP="plugdev" 18 | 19 | # Many hot-pluggable devices (ZIP, Jazz, LS-120, etc...) 20 | # need to be in plugdev, too. 21 | KERNEL=="diskonkey*", GROUP="plugdev" 22 | KERNEL=="jaz*", GROUP="plugdev" 23 | KERNEL=="pocketzip*", GROUP="plugdev" 24 | KERNEL=="zip*", GROUP="plugdev" 25 | KERNEL=="ls120", GROUP="plugdev" 26 | KERNEL=="microdrive*", GROUP="plugdev" 27 | 28 | # CD group and permissions 29 | ENV{ID_CDROM}=="?*", GROUP="cdrom", MODE="0660" 30 | KERNEL=="pktcdvd", GROUP="cdrom", MODE="0660" 31 | KERNEL=="pktcdvd[0-9]*", GROUP="cdrom", MODE="0660" 32 | # permissions for SCSI sg devices 33 | SUBSYSTEMS=="scsi", KERNEL=="s[gt][0-9]*", ATTRS{type}=="5", \ 34 | GROUP="cdrom", MODE="0660" 35 | 36 | # Make DRI video devices usable by anyone in group "video": 37 | KERNEL=="card[0-9]*",GROUP:="video" 38 | 39 | # Make the real time clock readable by all, and writable by root: 40 | KERNEL=="rtc|rtc0", MODE="0644" 41 | 42 | -------------------------------------------------------------------------------- /systemd/config/scripts/20-eth-dhcp.network: -------------------------------------------------------------------------------- 1 | [Match] 2 | Name=eth* 3 | 4 | [Network] 5 | DHCP=yes 6 | -------------------------------------------------------------------------------- /systemd/config/services/display-manager.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Display Manager 3 | After=syslog.target rc-local.service systemd-user-sessions.service dev-tty7.device 4 | Requires=dev-tty7.device 5 | ConditionFileIsExecutable=/etc/rc.d/rc.4 6 | 7 | [Service] 8 | ExecStart=/etc/rc.d/rc.4 9 | Restart=always 10 | RestartSec=0 11 | -------------------------------------------------------------------------------- /systemd/config/services/slackware-lvm-init.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Initialize storage subsystems (RAID, LVM, etc.) 3 | DefaultDependencies=no 4 | Conflicts=shutdown.target 5 | Before=cryptsetup.target local-fs.target shutdown.target 6 | 7 | [Service] 8 | ExecStart=/lib/systemd/slackware-lvm-init 9 | Type=oneshot 10 | TimeoutSec=0 11 | RemainAfterExit=yes 12 | -------------------------------------------------------------------------------- /systemd/config/services/slackware-motd.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Update the current kernel level in the /etc/motd 3 | Before=systemd-user-sessions.service 4 | After=syslog.target local-fs.target 5 | Wants=basic.target 6 | 7 | [Service] 8 | Type=simple 9 | RemainAfterExit=no 10 | ExecStart=/lib/systemd/slackware-motd 11 | -------------------------------------------------------------------------------- /systemd/config/services/var-lock.mount: -------------------------------------------------------------------------------- 1 | # This file is part of systemd. 2 | # 3 | # systemd is free software; you can redistribute it and/or modify it 4 | # under the terms of the GNU General Public License as published by 5 | # the Free Software Foundation; either version 2 of the License, or 6 | # (at your option) any later version. 7 | 8 | [Unit] 9 | Description=Lock Directory 10 | Before=local-fs.target 11 | # skip mounting if the directory does not exist or is a symlink 12 | ConditionPathIsDirectory=/var/lock 13 | ConditionPathIsSymbolicLink=!/var/lock 14 | 15 | [Mount] 16 | What=/run/lock 17 | Where=/var/lock 18 | Type=bind 19 | Options=bind 20 | -------------------------------------------------------------------------------- /systemd/config/services/var-run.mount: -------------------------------------------------------------------------------- 1 | # This file is part of systemd. 2 | # 3 | # systemd is free software; you can redistribute it and/or modify it 4 | # under the terms of the GNU General Public License as published by 5 | # the Free Software Foundation; either version 2 of the License, or 6 | # (at your option) any later version. 7 | 8 | [Unit] 9 | Description=Runtime Directory 10 | Before=local-fs.target 11 | # skip mounting if the directory does not exist or is a symlink 12 | ConditionPathIsDirectory=/var/run 13 | ConditionPathIsSymbolicLink=!/var/run 14 | 15 | [Mount] 16 | What=/run 17 | Where=/var/run 18 | Type=bind 19 | Options=bind 20 | -------------------------------------------------------------------------------- /systemd/config/slack-scripts/slackware-lvm-init: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Excerpt from /etc/rc.d/rc.S 4 | # Mostly written by: Patrick J. Volkerding, /dev/null 21 | if [ $? = 0 ]; then 22 | # Make volume groups available to the kernel. 23 | # This should also make logical volumes available. 24 | /sbin/vgchange -ay --ignorelockingfailure 25 | fi 26 | fi 27 | -------------------------------------------------------------------------------- /systemd/config/slack-scripts/slackware-motd: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Update the current kernel level in the /etc/motd (Message Of The Day) file, 4 | # if the first line of that file begins with the word 'Linux'. 5 | # You are free to modify the rest of the file as you see fit. 6 | if [ -x /bin/sed ]; then 7 | /bin/sed -i "{1s/^Linux.*/$(/bin/uname -sr)\./}" /etc/motd 8 | fi 9 | -------------------------------------------------------------------------------- /systemd/config/udev.conf: -------------------------------------------------------------------------------- 1 | # udev.conf 2 | # The main config file for udev 3 | # 4 | # This file can be used to override some of udev's default values for where it 5 | # looks for files, and where it places device nodes. 6 | 7 | # udev_root - where in the filesystem to place the device nodes 8 | udev_root="/dev/" 9 | 10 | # udev_log - The initial syslog(3) priority: "err", "info", "debug" or 11 | # its numerical equivalent. For runtime debugging, the daemons 12 | # internal state can be changed with: udevadm control log_priority= 13 | udev_log="err" 14 | -------------------------------------------------------------------------------- /systemd/doinst.sh: -------------------------------------------------------------------------------- 1 | # Figure out our root directory 2 | ROOTDIR=$(pwd) 3 | unset CHROOT 4 | if test "${ROOTDIR}" != "/"; then 5 | CHROOT="chroot ${ROOTDIR} " 6 | ROOTDIR="${ROOTDIR}/" 7 | fi 8 | config() { 9 | NEW="$1" 10 | OLD="$(dirname $NEW)/$(basename $NEW .new)" 11 | # If there's no config file by that name, mv it over: 12 | if [ ! -r $OLD ]; then 13 | mv $NEW $OLD 14 | elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then 15 | # toss the redundant copy 16 | rm $NEW 17 | fi 18 | # Otherwise, we leave the .new copy for the admin to consider... 19 | } 20 | 21 | # Keep same perms on rc.udev.new: 22 | if [ -r etc/rc.d/rc.udev -a -r etc/rc.d/rc.udev.new ]; then 23 | chmod --reference=etc/rc.d/rc.udev etc/rc.d/rc.udev.new 24 | fi 25 | 26 | ## List of conf files to check. The conf files in your package should end in .new 27 | config etc/locale.conf.new 28 | config etc/machine-id.new 29 | config etc/machine-info.new 30 | config etc/pam.d/systemd-user.new 31 | config etc/rc.d/rc.local_shutdown.new 32 | config etc/rc.d/rc.udev.new 33 | config etc/rc.d/rc.Msystemd.new 34 | config etc/systemd/journald.conf.new 35 | config etc/systemd/logind.conf.new 36 | config etc/systemd/resolved.conf.new 37 | config etc/systemd/system.conf.new 38 | config etc/systemd/timesyncd.conf.new 39 | config etc/systemd/user.conf.new 40 | config etc/vconsole.conf.new 41 | config var/lib/systemd/catalog/database.new 42 | 43 | rm -f etc/locale.conf.new 44 | rm -f etc/machine-id.new 45 | rm -f etc/machine-info.new 46 | rm -f etc/vconsole.conf.new 47 | rm -f var/lib/systemd/catalog/database.new 48 | 49 | function free_user_id { 50 | # Find a free user-ID >= 100 (should be < 1000 so it's not a normal user) 51 | local FREE_USER_ID=100 52 | while grep --quiet "^.*:.*:${FREE_USER_ID}:.*:.*:.*:" etc/passwd; do 53 | let FREE_USER_ID++ 54 | done 55 | echo ${FREE_USER_ID} 56 | } 57 | function free_group_id { 58 | # Find a free group-ID >= 120 (should be < 1000 so it's not a normal group) 59 | local FREE_GROUP_ID=100 60 | while grep --quiet "^.*:.*:${FREE_GROUP_ID}:" etc/group; do 61 | let FREE_GROUP_ID++ 62 | done 63 | echo ${FREE_GROUP_ID} 64 | } 65 | 66 | # Set up groups. 67 | if ! grep --quiet '^lock:' etc/group ;then 68 | ${CHROOT} /usr/sbin/groupadd \ 69 | -g $(free_group_id) \ 70 | lock 2> /dev/null 71 | fi 72 | if ! grep --quiet '^systemd-journal:' etc/group ;then 73 | ${CHROOT} /usr/sbin/groupadd \ 74 | -g $(free_group_id) \ 75 | systemd-journal 2> /dev/null 76 | fi 77 | if ! grep --quiet '^systemd-journal-gateway:' etc/group ;then 78 | ${CHROOT} /usr/sbin/groupadd \ 79 | -g $(free_group_id) \ 80 | systemd-journal-gateway 2> /dev/null 81 | fi 82 | if ! grep --quiet '^systemd-journal-remote:' etc/group ;then 83 | ${CHROOT} /usr/sbin/groupadd \ 84 | -g $(free_group_id) \ 85 | systemd-journal-remote 2> /dev/null 86 | fi 87 | if ! grep --quiet '^systemd-journal-upload:' etc/group ;then 88 | ${CHROOT} /usr/sbin/groupadd \ 89 | -g $(free_group_id) \ 90 | systemd-journal-upload 2> /dev/null 91 | fi 92 | 93 | if ! grep --quiet '^systemd-timesync:' etc/group ;then 94 | ${CHROOT} /usr/sbin/groupadd \ 95 | -g $(free_group_id) \ 96 | systemd-timesync 2> /dev/null 97 | fi 98 | 99 | if ! grep --quiet '^systemd-network:' etc/group ;then 100 | ${CHROOT} /usr/sbin/groupadd \ 101 | -g $(free_group_id) \ 102 | systemd-network 2> /dev/null 103 | fi 104 | 105 | if ! grep --quiet '^systemd-resolve:' etc/group ;then 106 | ${CHROOT} /usr/sbin/groupadd \ 107 | -g $(free_group_id) \ 108 | systemd-resolve 2> /dev/null 109 | fi 110 | 111 | if ! grep --quiet '^systemd-bus-proxy:' etc/group ;then 112 | ${CHROOT} /usr/sbin/groupadd \ 113 | -g $(free_group_id) \ 114 | systemd-bus-proxy 2> /dev/null 115 | fi 116 | 117 | if ! grep --quiet '^input:' etc/group ;then 118 | ${CHROOT} /usr/sbin/groupadd \ 119 | -g $(free_group_id) \ 120 | input 2> /dev/null 121 | fi 122 | 123 | # Set up user: add it if it doesn't exist, update it if it already does. 124 | if OLD_ENTRY=$(grep --max-count=1 '^systemd-journal-gateway:' etc/passwd) \ 125 | || OLD_ENTRY=$(grep --max-count=1 \ 126 | ':/var/log/journal:[a-z/]*$' etc/passwd) 127 | then 128 | # Modify existing user 129 | OLD_USER=$(echo ${OLD_ENTRY} | cut --fields=1 --delimiter=':') 130 | USER_ID=$(echo ${OLD_ENTRY} | cut --fields=3 --delimiter=':') 131 | test ${USER_ID} -ge 1000 && USER_ID=$(free_user_id) 132 | if test "${OLD_USER}" = "systemd-journal-gateway"; then 133 | echo -n "Updating unprivileged user " 1>&2 134 | else 135 | echo -ne "Changing unprivileged user \e[1m${OLD_USER}\e[0m to " 1>&2 136 | fi 137 | ${CHROOT} /usr/sbin/usermod \ 138 | -d '/var/log/journal' \ 139 | -u ${USER_ID} \ 140 | -s /bin/false \ 141 | -g systemd-journal-gateway \ 142 | ${OLD_USER} 143 | else 144 | # Add new user 145 | echo -n "Creating unprivileged user " 1>&2 146 | ${CHROOT} /usr/sbin/useradd \ 147 | -c 'Journal Gateway' \ 148 | -u $(free_user_id) \ 149 | -g systemd-journal-gateway \ 150 | -s /bin/false \ 151 | -d '/var/log/journal' \ 152 | systemd-journal-gateway 2> /dev/null 153 | fi 154 | 155 | # Set up user: add it if it doesn't exist, update it if it already does. 156 | if OLD_ENTRY=$(grep --max-count=1 '^systemd-journal-remote:' etc/passwd) \ 157 | || OLD_ENTRY=$(grep --max-count=1 \ 158 | ':/var/log/journal/remote:[a-z/]*$' etc/passwd) 159 | then 160 | # Modify existing user 161 | OLD_USER=$(echo ${OLD_ENTRY} | cut --fields=1 --delimiter=':') 162 | USER_ID=$(echo ${OLD_ENTRY} | cut --fields=3 --delimiter=':') 163 | test ${USER_ID} -ge 1000 && USER_ID=$(free_user_id) 164 | if test "${OLD_USER}" = "systemd-journal-remote"; then 165 | echo -n "Updating unprivileged user " 1>&2 166 | else 167 | echo -ne "Changing unprivileged user \e[1m${OLD_USER}\e[0m to " 1>&2 168 | fi 169 | ${CHROOT} /usr/sbin/usermod \ 170 | -d '/var/log/journal/remote' \ 171 | -u ${USER_ID} \ 172 | -s /bin/false \ 173 | -g systemd-journal-remote \ 174 | ${OLD_USER} 175 | else 176 | # Add new user 177 | echo -n "Creating unprivileged user " 1>&2 178 | ${CHROOT} /usr/sbin/useradd \ 179 | -c 'Journal Remote' \ 180 | -u $(free_user_id) \ 181 | -g systemd-journal-remote \ 182 | -s /bin/false \ 183 | -d '/var/log/journal/remote' \ 184 | systemd-journal-remote 2> /dev/null 185 | fi 186 | 187 | # Set up user: add it if it doesn't exist, update it if it already does. 188 | if OLD_ENTRY=$(grep --max-count=1 '^systemd-journal-upload:' etc/passwd) \ 189 | || OLD_ENTRY=$(grep --max-count=1 \ 190 | ':/var/log/journal/upload:[a-z/]*$' etc/passwd) 191 | then 192 | # Modify existing user 193 | OLD_USER=$(echo ${OLD_ENTRY} | cut --fields=1 --delimiter=':') 194 | USER_ID=$(echo ${OLD_ENTRY} | cut --fields=3 --delimiter=':') 195 | test ${USER_ID} -ge 1000 && USER_ID=$(free_user_id) 196 | if test "${OLD_USER}" = "systemd-journal-upload"; then 197 | echo -n "Updating unprivileged user " 1>&2 198 | else 199 | echo -ne "Changing unprivileged user \e[1m${OLD_USER}\e[0m to " 1>&2 200 | fi 201 | ${CHROOT} /usr/sbin/usermod \ 202 | -d '/var/log/journal/upload' \ 203 | -u ${USER_ID} \ 204 | -s /bin/false \ 205 | -g systemd-journal-upload \ 206 | ${OLD_USER} 207 | else 208 | # Add new user 209 | echo -n "Creating unprivileged user " 1>&2 210 | ${CHROOT} /usr/sbin/useradd \ 211 | -c 'Journal Upload' \ 212 | -u $(free_user_id) \ 213 | -g systemd-journal-upload \ 214 | -s /bin/false \ 215 | -d '/var/log/journal/upload' \ 216 | systemd-journal-upload 2> /dev/null 217 | fi 218 | 219 | if OLD_ENTRY=$(grep --max-count=1 '^systemd-timesync:' etc/passwd) 220 | then 221 | # Modify existing user 222 | OLD_USER=$(echo ${OLD_ENTRY} | cut --fields=1 --delimiter=':') 223 | USER_ID=$(echo ${OLD_ENTRY} | cut --fields=3 --delimiter=':') 224 | test ${USER_ID} -ge 1000 && USER_ID=$(free_user_id) 225 | if test "${OLD_USER}" = "systemd-timesync"; then 226 | echo -n "Updating unprivileged user " 1>&2 227 | else 228 | echo -ne "Changing unprivileged user \e[1m${OLD_USER}\e[0m to " 1>&2 229 | fi 230 | ${CHROOT} /usr/sbin/usermod \ 231 | -d '/var/lib/systemd' \ 232 | -u ${USER_ID} \ 233 | -s /bin/false \ 234 | -g systemd-timesync \ 235 | ${OLD_USER} 236 | else 237 | # Add new user 238 | echo -n "Creating unprivileged user " 1>&2 239 | ${CHROOT} /usr/sbin/useradd \ 240 | -c 'systemd Time Synchronization' \ 241 | -u $(free_user_id) \ 242 | -g systemd-timesync \ 243 | -s /bin/false \ 244 | -d '/var/lib/systemd' \ 245 | systemd-timesync 2> /dev/null 246 | fi 247 | 248 | if OLD_ENTRY=$(grep --max-count=1 '^systemd-network:' etc/passwd) 249 | then 250 | # Modify existing user 251 | OLD_USER=$(echo ${OLD_ENTRY} | cut --fields=1 --delimiter=':') 252 | USER_ID=$(echo ${OLD_ENTRY} | cut --fields=3 --delimiter=':') 253 | test ${USER_ID} -ge 1000 && USER_ID=$(free_user_id) 254 | if test "${OLD_USER}" = "systemd-network"; then 255 | echo -n "Updating unprivileged user " 1>&2 256 | else 257 | echo -ne "Changing unprivileged user \e[1m${OLD_USER}\e[0m to " 1>&2 258 | fi 259 | ${CHROOT} /usr/sbin/usermod \ 260 | -d '/var/lib/systemd' \ 261 | -u ${USER_ID} \ 262 | -s /bin/false \ 263 | -g systemd-network \ 264 | ${OLD_USER} 265 | else 266 | # Add new user 267 | echo -n "Creating unprivileged user " 1>&2 268 | ${CHROOT} /usr/sbin/useradd \ 269 | -c 'systemd Network Management' \ 270 | -u $(free_user_id) \ 271 | -g systemd-network \ 272 | -s /bin/false \ 273 | -d '/var/lib/systemd' \ 274 | systemd-network 2> /dev/null 275 | fi 276 | 277 | if OLD_ENTRY=$(grep --max-count=1 '^systemd-resolve:' etc/passwd) 278 | then 279 | # Modify existing user 280 | OLD_USER=$(echo ${OLD_ENTRY} | cut --fields=1 --delimiter=':') 281 | USER_ID=$(echo ${OLD_ENTRY} | cut --fields=3 --delimiter=':') 282 | test ${USER_ID} -ge 1000 && USER_ID=$(free_user_id) 283 | if test "${OLD_USER}" = "systemd-resolve"; then 284 | echo -n "Updating unprivileged user " 1>&2 285 | else 286 | echo -ne "Changing unprivileged user \e[1m${OLD_USER}\e[0m to " 1>&2 287 | fi 288 | ${CHROOT} /usr/sbin/usermod \ 289 | -d '/var/lib/systemd' \ 290 | -u ${USER_ID} \ 291 | -s /bin/false \ 292 | -g systemd-resolve \ 293 | ${OLD_USER} 294 | else 295 | # Add new user 296 | echo -n "Creating unprivileged user " 1>&2 297 | ${CHROOT} /usr/sbin/useradd \ 298 | -c 'systemd Resolver' \ 299 | -u $(free_user_id) \ 300 | -g systemd-resolve \ 301 | -s /bin/false \ 302 | -d '/var/lib/systemd' \ 303 | systemd-resolve 2> /dev/null 304 | fi 305 | 306 | if OLD_ENTRY=$(grep --max-count=1 '^systemd-bus-proxy:' etc/passwd) 307 | then 308 | # Modify existing user 309 | OLD_USER=$(echo ${OLD_ENTRY} | cut --fields=1 --delimiter=':') 310 | USER_ID=$(echo ${OLD_ENTRY} | cut --fields=3 --delimiter=':') 311 | test ${USER_ID} -ge 1000 && USER_ID=$(free_user_id) 312 | if test "${OLD_USER}" = "systemd-bus-proxy"; then 313 | echo -n "Updating unprivileged user " 1>&2 314 | else 315 | echo -ne "Changing unprivileged user \e[1m${OLD_USER}\e[0m to " 1>&2 316 | fi 317 | ${CHROOT} /usr/sbin/usermod \ 318 | -d '/var/lib/systemd' \ 319 | -u ${USER_ID} \ 320 | -s /bin/false \ 321 | -g systemd-bus-proxy \ 322 | ${OLD_USER} 323 | else 324 | # Add new user 325 | echo -n "Creating unprivileged user " 1>&2 326 | ${CHROOT} /usr/sbin/useradd \ 327 | -c 'systemd Bus Proxy' \ 328 | -u $(free_user_id) \ 329 | -g systemd-bus-proxy \ 330 | -s /bin/false \ 331 | -d '/var/lib/systemd' \ 332 | systemd-bus-proxy 2> /dev/null 333 | fi 334 | 335 | enableservice () { 336 | if ! ${CHROOT} /bin/systemctl is-enable "${1}" > /dev/null 2>&1 ;then 337 | ${CHROOT} /bin/systemctl enable "${1}" 2>&1 338 | fi 339 | } 340 | 341 | # Remove spurious /etc/fstab entries 342 | sed -i.systemd.bak -r '/^devpts\s+\/dev\/pts\s+devpts\s+defaults\s+/s/^/#/g; /^tmpfs\s+\/dev\/shm\s+tmpfs\s+defaults\s+/s/^/#/g; /^sysfs\s+\/sys\s+sysfs\s+defaults\s+/s/^/#/g; /^proc\s+\/proc\s+proc\s+defaults\s+/s/^/#/g' /etc/fstab >/dev/null 2>&1 || : 343 | 344 | if [ -r lib/systemd/systemd ]; then 345 | mv -f lib/systemd/systemd lib/systemd/systemd.old 346 | fi 347 | 348 | mv -f lib/systemd/systemd.new lib/systemd/systemd 349 | 350 | if [ -f lib/systemd/systemd.old ]; then 351 | rm -f lib/systemd/systemd.old 352 | fi 353 | 354 | enableservice getty@tty1.service || : 355 | enableservice remote-fs.target || : 356 | 357 | ${CHROOT} /bin/systemd-machine-id-setup > /dev/null 2>&1 || : 358 | ${CHROOT} /lib/systemd/systemd-random-seed save >/dev/null 2>&1 || : 359 | ${CHROOT} /bin/systemctl daemon-reexec > /dev/null 2>&1 || : 360 | sleep 1 361 | 362 | ${CHROOT} /bin/systemctl --system daemon-reload >/dev/null 2>&1 || : 363 | ${CHROOT} /sbin/udevadm hwdb --update >/dev/null 2>&1 || : 364 | ${CHROOT} /bin/journalctl --update-catalog >/dev/null 2>&1 || : 365 | ${CHROOT} /bin/systemd-tmpfiles --create >/dev/null 2>&1 || : 366 | 367 | if [ -f etc/nsswitch.conf ] ; then 368 | ${CHROOT} sed -i.bak -e ' 369 | /^hosts:/ !b 370 | /\/ b 371 | s/[[:blank:]]*$/ myhostname/ 372 | ' /etc/nsswitch.conf >/dev/null 2>&1 || : 373 | fi 374 | 375 | # Make sure new journal files will be owned by the "systemd-journal" group 376 | ${CHROOT} /bin/chgrp systemd-journal /run/log/journal/ >/dev/null 2>&1 || : 377 | ${CHROOT} /bin/chgrp systemd-journal /run/log/journal/$(cat /etc/machine-id) >/dev/null 2>&1 || : 378 | ${CHROOT} /bin/chgrp systemd-journal /var/log/journal/ >/dev/null 2>&1 || : 379 | ${CHROOT} /bin/chgrp systemd-journal /var/log/journal/$(cat /etc/machine-id) >/dev/null 2>&1 || : 380 | ${CHROOT} /bin/chmod g+s /var/log/journal/ >/dev/null 2>&1 || : 381 | ${CHROOT} /bin/chmod g+s /var/log/journal/$(cat /etc/machine-id) >/dev/null 2>&1 || : 382 | 383 | ${CHROOT} /usr/bin/setfacl -Rnm g:adm:rx,d:g:adm:rx /var/log/journal/ >/dev/null 2>&1 || : 384 | 385 | # Move old stuff around in /var/lib 386 | ${CHROOT} mv /var/lib/random-seed /var/lib/systemd/random-seed >/dev/null 2>&1 || : 387 | ${CHROOT} mv /var/lib/backlight /var/lib/systemd/backlight >/dev/null 2>&1 || : 388 | 389 | -------------------------------------------------------------------------------- /systemd/patches/60-cdrom_id.rules.diff: -------------------------------------------------------------------------------- 1 | --- a/rules.d/60-cdrom_id.rules 2020-03-06 13:38:52.000000000 +0100 2 | +++ b/rules.d/60-cdrom_id.rules 2020-03-14 19:19:30.604959511 +0100 3 | @@ -24,6 +24,24 @@ 4 | # stale mounts after ejecting 5 | ENV{DISK_MEDIA_CHANGE}=="?*", ENV{ID_CDROM_MEDIA}!="?*", ENV{SYSTEMD_READY}="0" 6 | 7 | -KERNEL=="sr0", SYMLINK+="cdrom", OPTIONS+="link_priority=-100" 8 | +# create default links to the first detected device 9 | +KERNEL=="sr0", ENV{ID_CDROM}=="1", SYMLINK+="cdrom", OPTIONS+="link_priority=-100" 10 | +KERNEL=="sr0", ENV{ID_CDROM_CD_R}=="1", SYMLINK+="cdr", OPTIONS+="link_priority=-100" 11 | +KERNEL=="sr0", ENV{ID_CDROM_CD_R}=="1", SYMLINK+="cdwriter", OPTIONS+="link_priority=-100" 12 | +KERNEL=="sr0", ENV{ID_CDROM_CD_RW}=="1", SYMLINK+="cdrw", OPTIONS+="link_priority=-100" 13 | +KERNEL=="sr0", ENV{ID_CDROM_DVD}=="1", SYMLINK+="dvd", OPTIONS+="link_priority=-100" 14 | +KERNEL=="sr0", ENV{ID_CDROM_DVD_R}=="1", SYMLINK+="dvdr", OPTIONS+="link_priority=-100" 15 | +KERNEL=="sr0", ENV{ID_CDROM_DVD_R}=="1", SYMLINK+="dvdwriter", OPTIONS+="link_priority=-100" 16 | +KERNEL=="sr0", ENV{ID_CDROM_DVD_RW}=="1", SYMLINK+="dvdrw", OPTIONS+="link_priority=-100" 17 | + 18 | +# create all other device links 19 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM}=="1", SYMLINK+="cdrom%n", OPTIONS+="link_priority=-100" 20 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM_CD_R}=="1", SYMLINK+="cdr%n", OPTIONS+="link_priority=-100" 21 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM_CD_R}=="1", SYMLINK+="cdwriter%n", OPTIONS+="link_priority=-100" 22 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM_CD_RW}=="1", SYMLINK+="cdrw%n", OPTIONS+="link_priority=-100" 23 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM_DVD}=="1", SYMLINK+="dvd%n", OPTIONS+="link_priority=-100" 24 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM_DVD_R}=="1", SYMLINK+="dvdr%n", OPTIONS+="link_priority=-100" 25 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM_DVD_R}=="1", SYMLINK+="dvdwriter%n", OPTIONS+="link_priority=-100" 26 | +KERNEL=="sr[0-9]*", ENV{ID_CDROM_DVD_RW}=="1", SYMLINK+="dvdrw%n", OPTIONS+="link_priority=-100" 27 | 28 | LABEL="cdrom_end" 29 | -------------------------------------------------------------------------------- /systemd/patches/Don-t-enable-audit-by-default.patch: -------------------------------------------------------------------------------- 1 | From: Martin Pitt 2 | Date: Sun, 28 Dec 2014 12:49:35 +0100 3 | Subject: Don't enable audit by default 4 | 5 | It causes flooding of dmesg and syslog, suppressing actually important 6 | messages. 7 | 8 | Don't enable it for now, until a better solution is found: 9 | http://lists.freedesktop.org/archives/systemd-devel/2014-December/026591.html 10 | 11 | Bug-Debian: https://bugs.debian.org/773528 12 | --- 13 | src/journal/journald-audit.c | 5 ----- 14 | 1 file changed, 5 deletions(-) 15 | 16 | diff --git a/src/journal/journald-audit.c b/src/journal/journald-audit.c 17 | index 0e739a2..0492c8f 100644 18 | --- a/src/journal/journald-audit.c 19 | +++ b/src/journal/journald-audit.c 20 | @@ -551,10 +551,5 @@ int server_open_audit(Server *s) { 21 | if (r < 0) 22 | return log_error_errno(r, "Failed to add audit fd to event loop: %m"); 23 | 24 | - /* We are listening now, try to enable audit */ 25 | - r = enable_audit(s->audit_fd, true); 26 | - if (r < 0) 27 | - log_warning_errno(r, "Failed to issue audit enable call: %m"); 28 | - 29 | return 0; 30 | } 31 | -------------------------------------------------------------------------------- /systemd/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. Line 3 | # up the first '|' above the ':' following the base package name, and the '|' 4 | # on the right side marks the last column you can put a character in. You must 5 | # make exactly 11 lines for the formatting to be correct. It's also 6 | # customary to leave one space after the ':'. 7 | 8 | |-----handy-ruler------------------------------------------------------| 9 | systemd: systemd (System and Session Manager) 10 | systemd: 11 | systemd: systemd is a system and service manager for Linux, compatible with 12 | systemd: SysV and LSB init scripts. systemd provides aggressive 13 | systemd: parallelization capabilities, uses socket and D-Bus activation for 14 | systemd: starting services, offers on-demand starting of daemons, keeps track 15 | systemd: of processes using Linux control groups, supports snapshotting and 16 | systemd: restoring of the system state, maintains mount and automount points 17 | systemd: and implements an elaborate transactional dependency-based 18 | systemd: service control logic 19 | systemd: 20 | -------------------------------------------------------------------------------- /systemd/systemd.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # Copyright 2013-2017 Bart van der Hall, Almere, NL 3 | # All rights reserved. 4 | # 5 | # Permission to use, copy, modify, and distribute this software for 6 | # any purpose with or without fee is hereby granted, provided that 7 | # the above copyright notice and this permission notice appear in all 8 | # copies. 9 | # 10 | # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 11 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 12 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 13 | # IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR 14 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 15 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 16 | # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 17 | # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 18 | # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 19 | # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 20 | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 21 | # SUCH DAMAGE. 22 | # ----------------------------------------------------------------------------- 23 | # 24 | # Slackware SlackBuild script for systemd 25 | # 26 | # http://www.freedesktop.org/wiki/Software/systemd 27 | # 28 | 29 | PKGNAM=systemd 30 | VERSION=${VERSION:-$(ls $PKGNAM-*.tar.?z | cut -d - -f 2 | rev | cut -f 3- -d . | rev)} 31 | BUILD=${BUILD:-1} 32 | TAG=${TAG:-_dlack} 33 | 34 | # Set YES to set systemd as default init 35 | SBO_INIT=${SBO_INIT:-YES} 36 | 37 | # If you have set NO for default init, you need to change your boot loader startup 38 | # Add the kernel parameter " init=/lib/systemd/systemd" 39 | 40 | if [ -z "$ARCH" ]; then 41 | case "$( uname -m )" in 42 | i?86) ARCH=i586 ;; 43 | arm*) ARCH=arm ;; 44 | *) ARCH=$( uname -m ) ;; 45 | esac 46 | fi 47 | 48 | NUMJOBS=${NUMJOBS:--j7} 49 | 50 | CWD=$(pwd) 51 | TMP=${TMP:-/tmp/dlackware} 52 | PKG=$TMP/package-$PKGNAM 53 | BUILDDIR=$TMP/$PKGNAM-$VERSION/build-$PKGNAM 54 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 55 | 56 | if [ "$ARCH" = "i586" ]; then 57 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 58 | LIBDIRSUFFIX="" 59 | elif [ "$ARCH" = "i686" ]; then 60 | SLKCFLAGS="-O2 -march=i686 -mtune=i686" 61 | LIBDIRSUFFIX="" 62 | elif [ "$ARCH" = "x86_64" ]; then 63 | SLKCFLAGS="-O2 -fPIC" 64 | LIBDIRSUFFIX="64" 65 | else 66 | SLKCFLAGS="-O2" 67 | LIBDIRSUFFIX="" 68 | fi 69 | 70 | set -e # Exit on most errors 71 | 72 | rm -rf $TMP 73 | mkdir -p $TMP $PKG $OUTPUT 74 | cd $TMP 75 | rm -rf $PKGNAM-$VERSION 76 | tar xvf $CWD/$PKGNAM-$VERSION.tar.?z* 77 | cd $PKGNAM-$VERSION 78 | 79 | chown -R root:root . 80 | find . \ 81 | \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ 82 | -exec chmod 755 {} \; -o \ 83 | \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ 84 | -exec chmod 644 {} \; 85 | 86 | patch -p1 --verbose -i $CWD/patches/60-cdrom_id.rules.diff 87 | patch -p1 --verbose -i $CWD/patches/Don-t-enable-audit-by-default.patch 88 | 89 | # Force file regeneration 90 | ( cd units 91 | for i in *.in ;do 92 | rm -fv ${i%.in} 93 | done 94 | ) 95 | 96 | find src/ -name '*-name.gperf' -print -delete 97 | find src/ \( -name '*-to-name.h' -o -name '*-from-name.h' \) -print -delete 98 | 99 | sed -i \ 100 | -e 's|@RC_LOCAL_SCRIPT_PATH_START@|/etc/rc.d/rc.local|g' \ 101 | -e 's|@RC_LOCAL_SCRIPT_PATH_STOP@|/etc/rc.d/rc.local_shutdown|g' \ 102 | -e '/^ConditionFileIsExecutable=/aConditionFileIsExecutable=/etc/rc.d/rc.local_shutdown' \ 103 | -e '/^After=/s|$| local-fs.target|g' \ 104 | -e '/^ExecStart/s| start||g' \ 105 | -e 's|^Type=.*$|ExecStop=/etc/rc.d/rc.local_shutdown|g' \ 106 | units/rc-local.service.in || exit 1 107 | 108 | sed -i -e '/^exec_prefix=/s|=.*$|=/|g' \ 109 | src/libudev/libudev.pc.in || exit 1 110 | 111 | sed -i -e '/udevadm/s|@rootbindir@|/sbin|g' \ 112 | src/login/71-seat.rules.in || exit 1 113 | 114 | # Slackware file is upper case 115 | sed -i -e 's|/etc/hostname|/etc/HOSTNAME|g' \ 116 | src/hostname/hostnamed.c src/core/hostname-setup.c \ 117 | man/{hostname,machine-info}.xml man/hostnamectl.xml || exit 1 118 | 119 | # This should be multilib aware... 120 | sed -i -e "/locale/s|/lib/|/lib${LIBDIRSUFFIX}/|g" \ 121 | src/locale/localectl.c || exit 1 122 | 123 | 124 | mkdir -p ${PKG}/lib/udev/rules.d 125 | mkdir -p ${PKG}/run 126 | 127 | find . -name "*.[1-8]" -exec touch '{}' ';' 128 | 129 | export PYTHON=python3 130 | 131 | mkdir -p build 132 | cd build 133 | 134 | meson --prefix=/usr \ 135 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 136 | --buildtype=release \ 137 | --sysconfdir=/etc \ 138 | --localstatedir=/var \ 139 | --infodir=/usr/info \ 140 | --mandir=/usr/man \ 141 | -Drootprefix=/ \ 142 | -Drootlibdir=/lib${LIBDIRSUFFIX} \ 143 | -Dlink-udev-shared=true \ 144 | -Dsysvinit-path=/etc/rc.d \ 145 | -Dsysvrcnd-path=/etc/rc.d \ 146 | -Drc-local=/etc/rc.d/rc.local \ 147 | -Dkmod=true \ 148 | -Dxkbcommon=true \ 149 | -Dblkid=true \ 150 | -Dima=true \ 151 | -Dselinux=false \ 152 | -Dapparmor=false \ 153 | -Dpolkit=true \ 154 | -Dxz=true \ 155 | -Dzlib=true \ 156 | -Dbzip2=true \ 157 | -Dpam=true \ 158 | -Dacl=true \ 159 | -Dgcrypt=true \ 160 | -Daudit=false \ 161 | -Delfutils=true \ 162 | -Dlibcryptsetup=true \ 163 | -Delfutils=true \ 164 | -Dgnutls=true \ 165 | -Dmicrohttpd=false \ 166 | -Dlibidn2=true \ 167 | -Dlibiptc=true \ 168 | -Dlibcurl=true \ 169 | -Dtpm=true \ 170 | -Defi=false \ 171 | -Dhwdb=true \ 172 | -Dsysusers=true \ 173 | -Ddefault-kill-user-processes=false \ 174 | -Dtests=unsafe \ 175 | -Dinstall-tests=true \ 176 | -Dtty-gid=5 \ 177 | -Dusers-gid=100 \ 178 | -Dnobody-user=nobody \ 179 | -Dnobody-group=nobody \ 180 | -Dsplit-usr=true \ 181 | -Dsplit-bin=true \ 182 | -Db_lto=true \ 183 | -Db_ndebug=false \ 184 | -Dman=true \ 185 | -Dsystem-uid-max=999 \ 186 | -Dsystem-gid-max=999 \ 187 | -Dnobody-user=systemd-nobody \ 188 | -Dnobody-group=systemd-nobody \ 189 | -Drpmmacrosdir=no \ 190 | -Dhalt-local=/etc/rc.d/rc.local_shutdown \ 191 | -Dtelinit-path=/sbin/telinit \ 192 | -Ddbuspolicydir=/usr/share/dbus-1/system.d \ 193 | -Ddbussessionservicedir=/usr/share/dbus-1/session.d \ 194 | -Ddbussystemservicedir=/usr/share/dbus-1/system-services \ 195 | -Dpkgconfigdatadir=/usr/lib${LIBDIRSUFFIX}/pkgconfig \ 196 | -Dpkgconfiglibdir=/usr/lib${LIBDIRSUFFIX}/pkgconfig \ 197 | -Dpamlibdir=/lib${LIBDIRSUFFIX}/security \ 198 | -Dpamconfdir=/etc/pam.d \ 199 | -Dpkgconfiglibdir=/usr/lib${LIBDIRSUFFIX}/pkgconfig || exit 1 200 | # --build=$ARCH-slackware-linux || exit 1 201 | 202 | ninja || exit 1 203 | DESTDIR=$PKG ninja install || exit 1 204 | 205 | cd .. 206 | 207 | rm -rf ${PKG}/etc/init.d 208 | rm -rf ${PKG}/etc/rc.d/init.d 209 | 210 | # Good to have on path 211 | mkdir -p ${PKG}/sbin 212 | ( cd ${PKG}/sbin 213 | ln -s ../lib/udev/scsi_id scsi_id || exit 1 214 | ln -s ../lib/systemd/systemd-udevd udevd || exit 1 215 | ) || exit 1 216 | 217 | mv ${PKG}/bin/udevadm ${PKG}/sbin/ || exit 1 218 | ln -s ../sbin/udevadm ${PKG}/bin/udevadm 219 | 220 | ln -s ../systemd/systemd-udevd ${PKG}/lib/udev/udevd || exit 1 221 | 222 | find $PKG | xargs file | grep -e "executable" -e "shared object" \ 223 | | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null 224 | 225 | ################################### systemd #################################### 226 | # rc.local and rc.local_shutdown 227 | ################################################################################ 228 | 229 | install -pm0644 units/rc-local.service.in \ 230 | ${PKG}/lib/systemd/system/rc-local.service || exit 1 231 | ln -s ../rc-local.service \ 232 | ${PKG}/lib/systemd/system/multi-user.target.wants/rc-local.service || exit 1 233 | 234 | install -pm0644 tmpfiles.d/legacy.conf ${PKG}/usr/lib/tmpfiles.d/ || exit 1 235 | 236 | mv ${PKG}/lib/systemd/systemd ${PKG}/lib/systemd/systemd.new || exit 1 237 | chmod 0755 ${PKG}/lib/systemd/systemd.new 238 | ln -sf ../lib/systemd/systemd ${PKG}/bin/systemd || exit 1 239 | 240 | install -pm0644 ${CWD}/config/services/var-lock.mount ${PKG}/lib/systemd/system/ || exit 1 241 | install -pm0644 ${CWD}/config/services/var-run.mount ${PKG}/lib/systemd/system/ || exit 1 242 | 243 | ln -sf ../var-lock.mount \ 244 | ${PKG}/lib/systemd/system/local-fs.target.wants/var-lock.mount || exit 1 245 | ln -sf ../var-run.mount \ 246 | ${PKG}/lib/systemd/system/local-fs.target.wants/var-run.mount || exit 1 247 | 248 | ln -sf ../lib/systemd/systemd ${PKG}/bin/systemd 249 | ln -sf ../../../dev/null ${PKG}/etc/udev/rules.d/80-net-setup-link.rules 250 | 251 | mv ${PKG}/etc/pam.d/systemd-user ${PKG}/etc/pam.d/systemd-user.new || exit 1 252 | 253 | #touch ${PKG}/etc/hostname.new 254 | touch ${PKG}/etc/vconsole.conf.new 255 | touch ${PKG}/etc/locale.conf.new 256 | touch ${PKG}/etc/machine-id.new 257 | touch ${PKG}/etc/machine-info.new 258 | 259 | mkdir -p ${PKG}/{etc,lib}/systemd/system-preset 260 | mkdir -p ${PKG}/{etc,lib}/systemd/user-preset 261 | mkdir -p ${PKG}/{etc,lib}/systemd/network 262 | 263 | # Make sure the shutdown/sleep drop-in dirs exist 264 | mkdir -p ${PKG}/lib/systemd/system-shutdown/ 265 | mkdir -p ${PKG}/lib/systemd/system-sleep/ 266 | 267 | # Make sure the NTP units dir exists 268 | mkdir -p ${PKG}/usr/lib/systemd/ntp-units.d/ 269 | 270 | # Make sure directories in /var exist 271 | mkdir -p ${PKG}/var/lib/systemd/coredump 272 | mkdir -p ${PKG}/var/lib/systemd/catalog 273 | mkdir -p ${PKG}/var/log 274 | mkdir -p ${PKG}/var/run 275 | mkdir -p ${PKG}/var/lib/systemd/backlight 276 | mkdir -p ${PKG}/var/lib/systemd/rfkill 277 | mkdir -p ${PKG}/var/lib/systemd/linger 278 | mkdir -p ${PKG}/var/lib/private 279 | mkdir -p ${PKG}/var/log/private 280 | mkdir -p ${PKG}/var/cache/private 281 | mkdir -p ${PKG}/var/lib/private/systemd/journal-upload 282 | mkdir -p ${PKG}/var/lib/systemd/timesync 283 | ln -s ../private/systemd/journal-upload ${PKG}/var/lib/systemd/journal-upload 284 | mkdir -p ${PKG}/var/log/journal 285 | touch ${PKG}/var/lib/systemd/random-seed.new 286 | touch ${PKG}/var/lib/systemd/timesync/clock.new 287 | touch ${PKG}/var/lib/private/systemd/journal-upload/state.new 288 | touch ${PKG}/var/lib/systemd/catalog/database.new 289 | touch ${PKG}/etc/udev/hwdb.bin 290 | 291 | # Make sure these directories are properly owned 292 | mkdir -p ${PKG}/lib/systemd/system/basic.target.wants 293 | mkdir -p ${PKG}/etc/systemd/system/basic.target.wants 294 | mkdir -p ${PKG}/lib/systemd/system/default.target.wants 295 | mkdir -p ${PKG}/etc/systemd/system/default.target.wants 296 | mkdir -p ${PKG}/lib/systemd/system/dbus.target.wants 297 | mkdir -p ${PKG}/etc/systemd/system/dbus.target.wants 298 | #mkdir -p ${PKG}/lib/systemd/system/graphical.target.wants 299 | mkdir -p ${PKG}/etc/systemd/system/graphical.target.wants 300 | #mkdir -p ${PKG}/lib/systemd/system/local-fs.target.wants 301 | mkdir -p ${PKG}/etc/systemd/system/local-fs.target.wants 302 | #mkdir -p ${PKG}/lib/systemd/system/multi-user.target.wants 303 | mkdir -p ${PKG}/etc/systemd/system/multi-user.target.wants 304 | #mkdir -p ${PKG}/lib/systemd/system/network.target.wants 305 | mkdir -p ${PKG}/etc/systemd/system/network.target.wants 306 | #mkdir -p ${PKG}/lib/systemd/system/shutdown.target.wants 307 | mkdir -p ${PKG}/lib/systemd/system/syslog.target.wants 308 | 309 | # Make sure the user generators dir exists too 310 | mkdir -p ${PKG}/lib/systemd/system-generators 311 | mkdir -p ${PKG}/lib/systemd/user-generators 312 | 313 | # Removing executable from config files 314 | chmod -x ${PKG}/lib/systemd/system/*.target 315 | chmod -x ${PKG}/usr/lib/systemd/user/*.target 316 | 317 | # Mask legacy stuff 318 | ln -sf rescue.service ${PKG}/lib/systemd/system/single.service 319 | 320 | for file in journald resolved timesyncd logind system user ;do 321 | mv ${PKG}/etc/systemd/${file}.conf ${PKG}/etc/systemd/${file}.conf.new || exit 1 322 | done 323 | 324 | echo 'd /run/console 755 root root' > ${PKG}/usr/lib/tmpfiles.d/console.conf || exit 1 325 | 326 | for file in ${CWD}/config/services/* ;do 327 | install -m0644 ${file} \ 328 | ${PKG}/lib/systemd/system/ || exit 1 329 | done 330 | 331 | ln -s ../../../../lib/systemd/system/slackware-motd.service \ 332 | ${PKG}/etc/systemd/system/slackware-motd.service || exit 1 333 | ln -s ../../../../lib/systemd/system/slackware-lvm-init.service \ 334 | ${PKG}/etc/systemd/system/local-fs.target.wants/slackware-lvm-init.service || exit 1 335 | ln -sf ../../../../lib/systemd/system/display-manager.service \ 336 | ${PKG}/etc/systemd/system/graphical.target.wants/display-manager.service || exit 1 337 | 338 | rm -f ${PKG}/usr/lib/sysctl.d/50-coredump.conf 339 | 340 | ################################ End of systemd ################################ 341 | 342 | ##################################### udev ##################################### 343 | 344 | mkdir -p ${PKG}/etc/udev/{keymaps,rules.d} \ 345 | ${PKG}/lib/firmware \ 346 | ${PKG}/lib/modprobe.d \ 347 | ${PKG}/etc/modprobe.d \ 348 | ${PKG}/etc/rc.d 349 | 350 | install -pm0644 ${CWD}/config/rc.d/rc.local_shutdown.new ${PKG}/etc/rc.d/rc.local_shutdown.new || exit 1 351 | chmod 0755 ${PKG}/etc/rc.d/rc.local_shutdown.new || exit 1 352 | 353 | rm -f ${PKG}/etc/udev/udev.conf 354 | install -m0644 ${CWD}/config/udev.conf ${PKG}/etc/udev/udev.conf || exit 1 355 | 356 | # Install a standard google dns resolv 357 | install -m0644 $CWD/config/resolv.conf.eth0 ${PKG}/etc/resolv.conf.eth0 || exit 1 358 | install -m0644 $CWD/config/resolv.conf.eth0 ${PKG}/etc/resolv.conf.head || exit 1 359 | 360 | # Copy Slackware custom rules 361 | install -m0644 ${CWD}/config/rules.d/* ${PKG}/lib/udev/rules.d/ || exit 1 362 | 363 | # Install helper script that people can turn on their rc.local script 364 | # This so that all enabled services are still starting 365 | install -m0755 ${CWD}/config/rc.d/rc.Msystemd.new ${PKG}/etc/rc.d/rc.Msystemd.new 366 | 367 | # This is for proving fallback if you do a dualboot 368 | install -m0755 ${CWD}/config/rc.d/rc.udev.new \ 369 | ${PKG}/etc/rc.d/rc.udev.new || exit 1 370 | for file in ${CWD}/config/modprobe.d/*.conf ;do 371 | install -m0644 ${file} \ 372 | ${PKG}/lib/modprobe.d/ || exit 1 373 | done 374 | 375 | install -pm0644 ${CWD}/config/modprobe.d/README ${PKG}/etc/modprobe.d/ || exit 1 376 | 377 | # Add some slack-scripts 378 | for file in ${CWD}/config/slack-scripts/* ; do 379 | install -m0755 ${file} ${PKG}/lib/systemd/ || exit 1 380 | done 381 | 382 | # Add various helper scripts: 383 | install -pm0644 ${CWD}/config/scripts/20-eth-dhcp.network ${PKG}/lib/systemd/network/ || exit 1 384 | 385 | chmod 755 ${PKG}/lib/udev/* 386 | 387 | 388 | ################################# End of udev ################################## 389 | 390 | # Add a documentation directory: 391 | mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION 392 | cp -a \ 393 | README NEWS TODO \ 394 | $PKG/usr/doc/$PKGNAM-$VERSION 395 | cat $CWD/$PKGNAM.SlackBuild > $PKG/usr/doc/$PKGNAM-$VERSION/$PKGNAM.SlackBuild 396 | 397 | # Compress and link manpages, if any: 398 | if [ -d ${PKG}/usr/share/man ]; then 399 | mv ${PKG}/usr/share/man ${PKG}/usr/man 400 | rmdir ${PKG}/usr/share 401 | fi 402 | if [ -d ${PKG}/usr/man ]; then 403 | ( cd ${PKG}/usr/man 404 | for manpagedir in $(find . -type d -name "man*") ; do 405 | ( cd ${manpagedir} 406 | for eachpage in $( find . -type l -maxdepth 1) ; do 407 | ln -s $( readlink ${eachpage} ).gz ${eachpage}.gz 408 | rm -f ${eachpage} 409 | done 410 | gzip -9 *.? 411 | # Prevent errors 412 | rm -f *.gz.gz 413 | ) 414 | done 415 | ) 416 | fi 417 | 418 | mkdir -p $PKG/install 419 | cat $CWD/slack-desc > $PKG/install/slack-desc 420 | cat $CWD/doinst.sh > $PKG/install/doinst.sh 421 | 422 | cd $PKG 423 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.txz 424 | -------------------------------------------------------------------------------- /systemd/systemd.info: -------------------------------------------------------------------------------- 1 | PKGNAM="systemd" 2 | VERSION="245" 3 | HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd/" 4 | DOWNLOAD="https://github.com/systemd/systemd/archive/v245/systemd-245.tar.gz" 5 | MD5SUM="04f02d9841ea5992a16f6b03c873da28" 6 | -------------------------------------------------------------------------------- /util-linux/ddate.1: -------------------------------------------------------------------------------- 1 | .\" All Rites Reversed. This file is in the PUBLIC DOMAIN. 2 | .\" Kallisti. 3 | .TH DDATE 1 "Bureaucracy 3161" "ddate" "Emperor Norton User Command" 4 | .SH NAME 5 | ddate \- convert Gregorian dates to Discordian dates 6 | .SH SYNOPSIS 7 | .B ddate 8 | .RI [ \fB+\fPformat] 9 | .RI [ date ] 10 | .SH DESCRIPTION 11 | .B ddate 12 | prints the date in Discordian date format. 13 | .PP 14 | If called with no arguments, 15 | .B ddate 16 | will get the current system date, convert this to the Discordian 17 | date format and print this on the standard output. Alternatively, a 18 | Gregorian date may be specified on the command line, in the form of a numerical 19 | day, month and year. 20 | .PP 21 | If a format string is specified, the Discordian date will be printed in 22 | a format specified by the string. This mechanism works similarly to the 23 | format string mechanism of 24 | .B date(1), 25 | only almost completely differently. The fields are: 26 | .IP %A 27 | Full name of the day of the week (i.e., Sweetmorn) 28 | .IP %a 29 | Abbreviated name of the day of the week (i.e., SM) 30 | .IP %B 31 | Full name of the season (i.e., Chaos) 32 | .IP %b 33 | Abbreviated name of the season (i.e., Chs) 34 | .IP %d 35 | Cardinal number of day in season (i.e., 23) 36 | .IP %e 37 | Ordinal number of day in season (i.e., 23rd) 38 | .IP %H 39 | Name of current Holyday, if any 40 | .IP %N 41 | Magic code to prevent rest of format from being printed unless today is 42 | a Holyday. 43 | .IP %n 44 | Newline 45 | .IP %t 46 | Tab 47 | .IP %X 48 | Number of days remaining until X-Day. (Not valid if the SubGenius options 49 | are not compiled in.) 50 | .IP %{ 51 | .IP %} 52 | Used to enclose the part of the string which is to be replaced with the 53 | words "St. Tib's Day" if the current day is St. Tib's Day. 54 | .IP %\. 55 | Try it and see. 56 | .bp 57 | .SH EXAMPLES 58 | .nf 59 | % ddate 60 | .br 61 | Sweetmorn, Bureaucracy 42, 3161 YOLD 62 | .PP 63 | % ddate +'Today is %{%A, the %e of %B%}, %Y. %N%nCelebrate %H' 64 | .br 65 | Today is Sweetmorn, the 42nd of Bureaucracy, 3161. 66 | .PP 67 | % ddate +"It's %{%A, the %e of %B%}, %Y. %N%nCelebrate %H" 26 9 1995 68 | .br 69 | It's Prickle-Prickle, the 50th of Bureaucracy, 3161. 70 | .br 71 | Celebrate Bureflux 72 | .PP 73 | % ddate +"Today's %{%A, the %e of %B%}, %Y. %N%nCelebrate %H" 29 2 1996 74 | .br 75 | Today's St. Tib's Day, 3162. 76 | .br 77 | 78 | .SH BUGS 79 | 80 | .B ddate(1) 81 | will produce undefined behavior if asked to produce the date for St. Tib's 82 | day and its format string does not contain the St. Tib's Day delimiters 83 | %{ and %}. 84 | 85 | .SH NOTE 86 | 87 | After `X-Day' passed without incident, the Church of the SubGenius 88 | declared that it had got the year upside down - X-Day is actually in 8661 AD 89 | rather than 1998 AD. Thus, the True X-Day is Cfn 40, 9827. 90 | 91 | .SH AUTHOR 92 | .nh 93 | Original program by Druel the Chaotic aka Jeremy Johnson (mpython@gnu.ai.mit.edu) 94 | .br 95 | Major rewrite by Lee H:. O:. Smith, KYTP, aka Andrew Bulhak (acb@dev.null.org) 96 | .br 97 | Gregorian B.C.E. dates fixed by Chaplain Nyan the Wiser, aka Dan Dart (ntw@dandart.co.uk) 98 | .br 99 | Five tons of flax. 100 | 101 | .SH DISTRIBUTION POLICY 102 | 103 | Public domain. All rites reversed. 104 | 105 | .SH SEE ALSO 106 | 107 | date(1), 108 | .br 109 | http://www.subgenius.com/ 110 | .br 111 | Malaclypse the Younger, 112 | .I "Principia Discordia, Or How I Found Goddess And What I Did To Her When I Found Her" 113 | 114 | .SH AVAILABILITY 115 | The ddate command is available from https://github.com/bo0ts/ddate. 116 | -------------------------------------------------------------------------------- /util-linux/ddate.c: -------------------------------------------------------------------------------- 1 | /* $ DVCS ID: $jer|,523/lhos,KYTP!41023161\b"?" <<= DO NOT DELETE! */ 2 | 3 | /* ddate.c .. converts boring normal dates to fun Discordian Date -><- 4 | written the 65th day of The Aftermath in the Year of Our Lady of 5 | Discord 3157 by Druel the Chaotic aka Jeremy Johnson aka 6 | mpython@gnu.ai.mit.edu 7 | 28 Sever St Apt #3 8 | Worcester MA 01609 9 | 10 | and I'm not responsible if this program messes anything up (except your 11 | mind, I'm responsible for that) 12 | 13 | (k) YOLD 3161 and all time before and after. 14 | Reprint, reuse, and recycle what you wish. 15 | This program is in the public domain. Distribute freely. Or not. 16 | 17 | Majorly hacked, extended and bogotified/debogotified on 18 | Sweetmorn, Bureaucracy 42, 3161 YOLD, by Lee H:. O:. Smith, KYTP, 19 | aka Andrew Bulhak, aka acb@dev.null.org 20 | 21 | Slightly hackled and crackled by a sweet firey stove on 22 | Boomtime, the 53rd day of Bureaucracy in the YOLD 3179, 23 | by Chaplain Nyan the Wiser, aka Dan Dart, aka ntw@dandart.co.uk 24 | 25 | and I'm not responsible if this program messes anything up (except your 26 | mind, I'm responsible for that) (and that goes for me as well --lhos) 27 | 28 | Version history: 29 | Bureflux 3161: First release of enhanced ddate with format strings 30 | 59 Bcy, 3161: PRAISE_BOB and KILL_BOB options split, other minor 31 | changes. 32 | 53 Bcy, 3179: Fixed gregorian date conversions less than YOLD 1167 33 | 34 | 1999-02-22 Arkadiusz Miskiewicz 35 | - added Native Language Support 36 | 37 | 2000-03-17 Burt Holzman 38 | - added range checks for dates 39 | 40 | 2014-06-07 William Woodruff 41 | - removed gettext dependent locale code 42 | 43 | 15th of Confusion, 3180: 44 | - call out adherents of the wrong fruit 45 | 46 | FIVE TONS OF FLAX 47 | */ 48 | 49 | /* configuration options VVVVV READ THIS!!! */ 50 | 51 | /* If you wish ddate(1) to print the date in the same format as Druel's 52 | * original ddate when called in immediate mode, define OLD_IMMEDIATE_FMT 53 | */ 54 | 55 | #define OLD_IMMEDIATE_FMT 56 | 57 | /* If you wish to use the US format for aneristic dates (m-d-y), as opposed to 58 | * the Commonwealth format, define US_FORMAT. 59 | */ 60 | 61 | /* #define US_FORMAT */ 62 | 63 | /* If you are ideologically, theologically or otherwise opposed to the 64 | * Church of the SubGenius and do not wish your copy of ddate(1) to contain 65 | * code for counting down to X-Day, undefine KILL_BOB */ 66 | 67 | #define KILL_BOB 13013 68 | 69 | /* If you wish ddate(1) to contain SubGenius slogans, define PRAISE_BOB */ 70 | 71 | /*#define PRAISE_BOB 13013*/ 72 | 73 | #include 74 | #include 75 | #include 76 | #include 77 | 78 | 79 | // work around includes and defines from formerly c.h 80 | #ifndef ARRAY_SIZE 81 | # define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) 82 | #endif 83 | 84 | /* &a[0] degrades to a pointer: a different type from an array */ 85 | # define __must_be_array(a) \ 86 | BUILD_BUG_ON_ZERO(__builtin_types_compatible_p(__typeof__(a), __typeof__(&a[0]))) 87 | 88 | #define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); })) 89 | 90 | /* work around hacks for standalone package */ 91 | #define PACKAGE "ddate" 92 | #define PACKAGE_STRING "Stand Alone" 93 | 94 | #ifndef __GNUC__ 95 | #define inline /* foo */ 96 | #endif 97 | 98 | #ifdef KILL_BOB 99 | int xday_countdown(int yday, int year); 100 | #endif 101 | 102 | 103 | /* string constants */ 104 | 105 | char *day_long[5] = { 106 | "Sweetmorn", "Boomtime", "Pungenday", "Prickle-Prickle", "Setting Orange" 107 | }; 108 | 109 | char *day_short[5] = {"SM","BT","PD","PP","SO"}; 110 | 111 | char *season_long[5] = { 112 | "Chaos", "Discord", "Confusion", "Bureaucracy", "The Aftermath" 113 | }; 114 | 115 | char *season_short[5] = {"Chs", "Dsc", "Cfn", "Bcy", "Afm"}; 116 | 117 | char *holyday[5][2] = { 118 | { "Mungday", "Chaoflux" }, 119 | { "Mojoday", "Discoflux" }, 120 | { "Syaday", "Confuflux" }, 121 | { "Zaraday", "Bureflux" }, 122 | { "Maladay", "Afflux" } 123 | }; 124 | 125 | struct disc_time { 126 | int season; /* 0-4 */ 127 | int day; /* 0-72 */ 128 | int yday; /* 0-365 */ 129 | int year; /* 3066- */ 130 | }; 131 | 132 | char *excl[] = { 133 | "Hail Eris!", "All Hail Discordia!", "Kallisti!", "Fnord.", "Or not.", 134 | "Wibble.", "Pzat!", "P'tang!", "Frink!", 135 | #ifdef PRAISE_BOB 136 | "Slack!", "Praise \"Bob\"!", "Or kill me.", 137 | #endif /* PRAISE_BOB */ 138 | /* randomness, from the Net and other places. Feel free to add (after 139 | checking with the relevant authorities, of course). */ 140 | "Grudnuk demand sustenance!", "Keep the Lasagna flying!", 141 | "You are what you see.", 142 | "Or is it?", "This statement is false.", 143 | "Lies and slander, sire!", "Hee hee hee!", 144 | #if defined(linux) || defined (__linux__) || defined (__linux) 145 | "Hail Eris, Hack Linux!", 146 | #elif defined(__APPLE__) 147 | "This Fruit is not the True Fruit of Discord.", 148 | #endif 149 | "" 150 | }; 151 | 152 | char default_fmt[] = "%{%A, %B %d%}, %Y YOLD"; 153 | char *default_immediate_fmt= 154 | #ifdef OLD_IMMEDIATE_FMT 155 | "Today is %{%A, the %e day of %B%} in the YOLD %Y%N%nCelebrate %H" 156 | #else 157 | default_fmt 158 | #endif 159 | ; 160 | 161 | #define DY(y) (y+1166) 162 | 163 | static inline char *ending(int i) { 164 | return i/10==1?"th":(i%10==1?"st":(i%10==2?"nd":(i%10==3?"rd":"th"))); 165 | } 166 | 167 | static inline int leapp(int i) { 168 | return (!(DY(i)%4))&&((DY(i)%100)||(!(DY(i)%400))); 169 | } 170 | 171 | /* select a random string */ 172 | static inline char *sel(char **strings, int num) { 173 | return(strings[random()%num]); 174 | } 175 | 176 | void print(struct disc_time,char **); /* old */ 177 | void format(char *buf, const char* fmt, struct disc_time dt); 178 | /* read a fortune file */ 179 | int load_fortunes(char *fn, char *delim, char** result); 180 | 181 | struct disc_time convert(int,int); 182 | struct disc_time makeday(int,int,int); 183 | 184 | int 185 | main (int argc, char *argv[]) { 186 | long t; 187 | struct tm *eris; 188 | int bob,raw; 189 | struct disc_time hastur; 190 | char schwa[23*17], *fnord=0; 191 | int pi; 192 | char *progname, *p; 193 | 194 | progname = argv[0]; 195 | if ((p = strrchr(progname, '/')) != NULL) 196 | progname = p+1; 197 | 198 | srandom(time(NULL)); 199 | /* do args here */ 200 | for(pi=1; pitm_yday; /* days since Jan 1. */ 236 | raw=eris->tm_year; /* years since 1980 */ 237 | hastur=convert(bob,raw); 238 | fnord=fnord?fnord:default_immediate_fmt; 239 | } 240 | format(schwa, fnord, hastur); 241 | printf("%s\n", schwa); 242 | 243 | return 0; 244 | } 245 | 246 | void format(char *buf, const char* fmt, struct disc_time dt) 247 | { 248 | int tib_start=-1, tib_end=0; 249 | int i, fmtlen=strlen(fmt); 250 | char *bufptr=buf; 251 | 252 | /* fprintf(stderr, "format(%p, \"%s\", dt)\n", buf, fmt);*/ 253 | 254 | /* first, find extents of St. Tib's Day area, if defined */ 255 | for(i=0; i0) tib_end=i+1; 263 | else tib_start=i; 264 | break; 265 | case '{': tib_start=i; break; 266 | case '}': tib_end=i+1; break; 267 | } 268 | } 269 | } 270 | 271 | /* now do the formatting */ 272 | buf[0]=0; 273 | 274 | for(i=0; i 12 || iyear == 0) { 329 | funkychickens.season = -1; 330 | return funkychickens; 331 | } 332 | if (iday < 1 || iday > cal[imonth-1]) { 333 | if (!(imonth == 2 && iday == 29 && iyear%4 == 0 && 334 | (iyear%100 != 0 || iyear%400 == 0))) { 335 | funkychickens.season = -1; 336 | return funkychickens; 337 | } 338 | } 339 | 340 | imonth--; 341 | /* note: gregorian year 0 doesn't exist so 342 | * add one if user specifies a year less than 0 */ 343 | funkychickens.year= iyear+1166 + ((0 > iyear)?1:0); 344 | while(imonth>0) { dayspast+=cal[--imonth]; } 345 | funkychickens.day=dayspast+iday-1; 346 | funkychickens.season=0; 347 | if((funkychickens.year%4)==2) { 348 | if (funkychickens.day==59 && iday==29) funkychickens.day=-1; 349 | } 350 | funkychickens.yday=funkychickens.day; 351 | /* note: EQUAL SIGN...hopefully that fixes it */ 352 | while(funkychickens.day>=73) { 353 | funkychickens.season++; 354 | funkychickens.day-=73; 355 | } 356 | return funkychickens; 357 | } 358 | 359 | struct disc_time convert(int nday, int nyear) 360 | { struct disc_time funkychickens; 361 | 362 | funkychickens.year = nyear+3066; 363 | funkychickens.day=nday; 364 | funkychickens.season=0; 365 | if ((funkychickens.year%4)==2) 366 | {if (funkychickens.day==59) 367 | funkychickens.day=-1; 368 | else if (funkychickens.day >59) 369 | funkychickens.day-=1; 370 | } 371 | funkychickens.yday=funkychickens.day; 372 | while (funkychickens.day>=73) 373 | { funkychickens.season++; 374 | funkychickens.day-=73; 375 | } 376 | return funkychickens; 377 | 378 | } 379 | 380 | #ifdef KILL_BOB 381 | 382 | /* Code for counting down to X-Day, X-Day being Cfn 40, 3164 383 | * 384 | * After `X-Day' passed without incident, the CoSG declared that it had 385 | * got the year upside down --- X-Day is actually in 8661 AD rather than 386 | * 1998 AD. 387 | * 388 | * Thus, the True X-Day is Cfn 40, 9827. 389 | * 390 | */ 391 | 392 | int xday_countdown(int yday, int year) { 393 | int r=(185-yday)+(((yday<59)&&(leapp(year)))?1:0); 394 | while(year<9827) r+=(leapp(++year)?366:365); 395 | while(year>9827) r-=(leapp(year--)?366:365); 396 | return r; 397 | } 398 | 399 | #endif 400 | -------------------------------------------------------------------------------- /util-linux/doinst.sh: -------------------------------------------------------------------------------- 1 | config() { 2 | NEW="$1" 3 | OLD="$(dirname $NEW)/$(basename $NEW .new)" 4 | # If there's no config file by that name, mv it over: 5 | if [ ! -r $OLD ]; then 6 | mv $NEW $OLD 7 | elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then 8 | # toss the redundant copy 9 | rm $NEW 10 | fi 11 | # Otherwise, we leave the .new copy for the admin to consider... 12 | } 13 | 14 | # Keep same perms on rc.serial.new: 15 | if [ -e etc/rc.d/rc.serial ]; then 16 | cp -a etc/rc.d/rc.serial etc/rc.d/rc.serial.new.incoming 17 | cat etc/rc.d/rc.serial.new > etc/rc.d/rc.serial.new.incoming 18 | mv etc/rc.d/rc.serial.new.incoming etc/rc.d/rc.serial.new 19 | fi 20 | 21 | config etc/rc.d/rc.serial.new 22 | config etc/rc.d/rc.setterm.new 23 | config etc/serial.conf.new 24 | 25 | for configfile in chfn.new chsh.new login.new runuser.new runuser-l.new su.new su-l.new ; do 26 | if [ -r etc/pam.d/$configfile ]; then 27 | config etc/pam.d/$configfile 28 | fi 29 | done 30 | 31 | if [ -r etc/default/su.new ]; then 32 | config etc/default/su.new 33 | fi 34 | -------------------------------------------------------------------------------- /util-linux/pam.d-su/su: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth sufficient pam_rootok.so 3 | # Uncomment the following line to implicitly trust users in the "wheel" group. 4 | #auth sufficient pam_wheel.so trust use_uid 5 | # Uncomment the following line to require a user to be in the "wheel" group. 6 | #auth required pam_wheel.so use_uid 7 | auth include system-auth 8 | account include system-auth 9 | password include system-auth 10 | session include system-auth 11 | session optional pam_xauth.so 12 | -------------------------------------------------------------------------------- /util-linux/pam.d-su/su-l: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth include su 3 | account include su 4 | password include su 5 | session optional pam_keyinit.so force revoke 6 | session include su 7 | -------------------------------------------------------------------------------- /util-linux/pam.d/chfn: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth sufficient pam_rootok.so 3 | auth include system-auth 4 | account include system-auth 5 | password include system-auth 6 | session include system-auth 7 | -------------------------------------------------------------------------------- /util-linux/pam.d/chsh: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth sufficient pam_rootok.so 3 | auth include system-auth 4 | account include system-auth 5 | password include system-auth 6 | session include system-auth 7 | -------------------------------------------------------------------------------- /util-linux/pam.d/login: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth required pam_securetty.so 3 | # To set a limit on failed authentications, the pam_tally2 module 4 | # can be enabled. See pam_tally2(8) for options. 5 | #auth required pam_tally2.so deny=4 unlock_time=1200 6 | auth include system-auth 7 | auth include postlogin 8 | account required pam_nologin.so 9 | account include system-auth 10 | password include system-auth 11 | session include system-auth 12 | session include postlogin 13 | session required pam_loginuid.so 14 | -------------------------------------------------------------------------------- /util-linux/pam.d/runuser: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth sufficient pam_rootok.so 3 | session optional pam_keyinit.so revoke 4 | session required pam_limits.so 5 | session required pam_unix.so 6 | -------------------------------------------------------------------------------- /util-linux/pam.d/runuser-l: -------------------------------------------------------------------------------- 1 | #%PAM-1.0 2 | auth include runuser 3 | session optional pam_keyinit.so force revoke 4 | -session optional pam_systemd.so 5 | session include runuser 6 | -------------------------------------------------------------------------------- /util-linux/patches/adjtimex_1.29-2.2.diff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dlackware/systemd/140122382ed77037ce993e6e1e1f0d502f8f2746/util-linux/patches/adjtimex_1.29-2.2.diff -------------------------------------------------------------------------------- /util-linux/patches/bsdstrings-util-linux_overflow.diff: -------------------------------------------------------------------------------- 1 | From db281fc97f1d665a61acabfd8d5933130996b29f Mon Sep 17 00:00:00 2001 2 | From: mancha 3 | Date: Wed, 29 Oct 2014 4 | Subject: Heap overflow 5 | 6 | Fix heap-buffer-overflow in strings.c as bundled by util-linux 7 | through version 2.9 and as shipped by Slackware Linux and 8 | Slackware derivatives. 9 | 10 | --- a/strings.c 11 | +++ b/strings.c 12 | @@ -124,7 +124,7 @@ main(argc, argv) 13 | if (minlen == -1) 14 | minlen = DEF_LEN; 15 | 16 | - if (!(bfr = malloc((u_int)minlen))) { 17 | + if (!(bfr = malloc((u_int)minlen + 1))) { 18 | (void)fprintf(stderr, "strings: %s\n", strerror(errno)); 19 | exit(1); 20 | } 21 | -------------------------------------------------------------------------------- /util-linux/patches/setserial-rc.serial.diff: -------------------------------------------------------------------------------- 1 | --- ./rc.serial.orig Thu Jan 27 07:47:30 2000 2 | +++ ./rc.serial Sun May 13 13:27:57 2001 3 | @@ -14,8 +14,6 @@ 4 | # XXXX For now, the autosave feature doesn't work if you are 5 | # using the multiport feature; it doesn't save the multiport configuration 6 | # (for now). Autosave also doesn't work for the hayes devices. 7 | -# Will fix later... 8 | -# 9 | # 10 | 11 | RCLOCKFILE=/var/lock/subsys/serial 12 | @@ -87,7 +85,7 @@ 13 | mv /etc/.serial.conf.new /etc/serial.conf 14 | echo "done." 15 | fi 16 | - if test -n $MODULE ; then 17 | + if test -n "$MODULE" ; then 18 | module=`grep $MODULE_REGEXP /proc/modules | awk '{print $1}'` 19 | if test -z "$module" ; then 20 | echo "The $DRIVER_NAME driver is not loaded." 21 | @@ -108,22 +106,22 @@ 22 | # If not stop, it must be a start.... 23 | # 24 | 25 | -if test -n $MODULE -a "$LOADED" != "yes" ; then 26 | - if insmod -fm $MODULE $DRIVER_ARG \ 27 | - > /tmp/$DRIVER.map 2> /tmp/$DRIVER.$$; then :; 28 | +if test -n "$MODULE" -a "$LOADED" != "yes" ; then 29 | + if insmod -f $MODULE $DRIVER_ARG ; then 30 | + true 31 | else 32 | echo "Couldn't load $DRIVER_NAME driver." 33 | - echo "See error logs in /tmp/$DRIVER.$$" 34 | exit 1 35 | fi 36 | - /bin/rm -f /tmp/$DRIVER.$$ 37 | fi 38 | 39 | if test -f /etc/serial.conf ; then 40 | if test -n ${SETSERIAL} ; then 41 | grep -v ^# < /etc/serial.conf | while read device args 42 | do 43 | - ${SETSERIAL} -z $device $args 44 | + if [ ! "$device" = "" -a ! "$args" = "" ]; then 45 | + ${SETSERIAL} -z $device $args 46 | + fi 47 | done 48 | fi 49 | else 50 | -------------------------------------------------------------------------------- /util-linux/patches/setserial-undef_TIOCGHAYESESP.diff: -------------------------------------------------------------------------------- 1 | diff -Nur setserial-2.17.orig/setserial.c setserial-2.17/setserial.c 2 | --- setserial-2.17.orig/setserial.c 2000-01-27 09:40:52.000000000 -0600 3 | +++ setserial-2.17/setserial.c 2010-03-29 23:05:27.093878048 -0500 4 | @@ -26,6 +26,9 @@ 5 | 6 | #include "version.h" 7 | 8 | +/* http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=f53a2ade0bb9f2a81f473e6469155172a96b7c38 */ 9 | +#undef TIOCGHAYESESP 10 | + 11 | static char version_str[] = "setserial version " SETSERIAL_VERSION ", " 12 | SETSERIAL_DATE; 13 | 14 | -------------------------------------------------------------------------------- /util-linux/patches/util-linux-ng.fdisk-no-solaris.diff: -------------------------------------------------------------------------------- 1 | --- util-linux-2.24-rc1/include/pt-mbr-partnames.h.orig 2013-10-01 16:48:08.930215049 -0300 2 | +++ util-linux-2.24-rc1/include/pt-mbr-partnames.h 2013-10-01 16:48:24.590914746 -0300 3 | @@ -49,7 +49,7 @@ 4 | {0x75, N_("PC/IX")}, 5 | {0x80, N_("Old Minix")}, /* Minix 1.4a and earlier */ 6 | {0x81, N_("Minix / old Linux")},/* Minix 1.4b and later */ 7 | - {0x82, N_("Linux swap / Solaris")}, 8 | + {0x82, N_("Linux swap")}, 9 | {0x83, N_("Linux")}, 10 | {0x84, N_("OS/2 hidden C: drive")}, 11 | {0x85, N_("Linux extended")}, 12 | -------------------------------------------------------------------------------- /util-linux/patches/util-linux.do.not.list.ram.devices.diff: -------------------------------------------------------------------------------- 1 | --- ./disk-utils/fdisk-list.c.orig 2018-09-20 07:38:55.845404951 -0500 2 | +++ ./disk-utils/fdisk-list.c 2019-01-02 15:53:21.256868721 -0600 3 | @@ -337,6 +337,10 @@ 4 | if (devno <= 0) 5 | continue; 6 | 7 | + /* Don't list /dev/ram* devices */ 8 | + if (strstr(line, "ram") && devno >= 256) 9 | + continue; 10 | + 11 | if (sysfs_devno_is_dm_private(devno, NULL) || 12 | sysfs_devno_is_wholedisk(devno) <= 0) 13 | continue; 14 | -------------------------------------------------------------------------------- /util-linux/patches/ziptool-fix_build.patch: -------------------------------------------------------------------------------- 1 | diff -Nur ziptool-1.4.0.orig/Makefile ziptool-1.4.0/Makefile 2 | --- ziptool-1.4.0.orig/Makefile 2002-08-23 17:13:48.000000000 -0500 3 | +++ ziptool-1.4.0/Makefile 2009-02-09 16:33:12.913637302 -0600 4 | @@ -5,10 +5,6 @@ 5 | # 6 | CFLAGS = -O2 -g -Wall 7 | 8 | -# Path to linux kernel sources. 9 | -# 10 | -LINUX_SRC_DIR = /usr/src/linux 11 | - 12 | # Installation directories 13 | # 14 | INSTALL_BIN_DIR = /usr/bin 15 | @@ -30,7 +26,7 @@ 16 | cd $(INSTALL_MAN_DIR)/man1; ln -sf ziptool.1.gz jaztool.1.gz 17 | 18 | ziptool: ziptool.c 19 | - cc $(CFLAGS) -I$(LINUX_SRC_DIR)/include -o ziptool ziptool.c 20 | + cc $(CFLAGS) -I. -o ziptool ziptool.c 21 | 22 | jaztool: ziptool.c 23 | - cc $(CFLAGS) -I$(LINUX_SRC_DIR)/include -o jaztool ziptool.c 24 | + cc $(CFLAGS) -I. -o jaztool ziptool.c 25 | -------------------------------------------------------------------------------- /util-linux/scsi_ioctl.h: -------------------------------------------------------------------------------- 1 | #ifndef _SCSI_IOCTL_H 2 | #define _SCSI_IOCTL_H 3 | 4 | #define SCSI_IOCTL_SEND_COMMAND 1 5 | #define SCSI_IOCTL_TEST_UNIT_READY 2 6 | #define SCSI_IOCTL_BENCHMARK_COMMAND 3 7 | #define SCSI_IOCTL_SYNC 4 /* Request synchronous parameters */ 8 | #define SCSI_IOCTL_START_UNIT 5 9 | #define SCSI_IOCTL_STOP_UNIT 6 10 | /* The door lock/unlock constants are compatible with Sun constants for 11 | the cdrom */ 12 | #define SCSI_IOCTL_DOORLOCK 0x5380 /* lock the eject mechanism */ 13 | #define SCSI_IOCTL_DOORUNLOCK 0x5381 /* unlock the mechanism */ 14 | 15 | #define SCSI_REMOVAL_PREVENT 1 16 | #define SCSI_REMOVAL_ALLOW 0 17 | 18 | #ifdef __KERNEL__ 19 | 20 | struct scsi_device; 21 | 22 | /* 23 | * Structures used for scsi_ioctl et al. 24 | */ 25 | 26 | typedef struct scsi_ioctl_command { 27 | unsigned int inlen; 28 | unsigned int outlen; 29 | unsigned char data[0]; 30 | } Scsi_Ioctl_Command; 31 | 32 | typedef struct scsi_idlun { 33 | __u32 dev_id; 34 | __u32 host_unique_id; 35 | } Scsi_Idlun; 36 | 37 | /* Fibre Channel WWN, port_id struct */ 38 | typedef struct scsi_fctargaddress { 39 | __u32 host_port_id; 40 | unsigned char host_wwn[8]; // include NULL term. 41 | } Scsi_FCTargAddress; 42 | 43 | extern int scsi_ioctl(struct scsi_device *, int, void __user *); 44 | extern int scsi_nonblockable_ioctl(struct scsi_device *sdev, int cmd, 45 | void __user *arg, struct file *filp); 46 | 47 | #endif /* __KERNEL__ */ 48 | #endif /* _SCSI_IOCTL_H */ 49 | -------------------------------------------------------------------------------- /util-linux/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. Line 3 | # up the first '|' above the ':' following the base package name, and the '|' 4 | # on the right side marks the last column you can put a character in. You must 5 | # make exactly 11 lines for the formatting to be correct. It's also 6 | # customary to leave one space after the ':'. 7 | 8 | |-----handy-ruler------------------------------------------------| 9 | util-linux: util-linux (a huge collection of essential utilities) 10 | util-linux: 11 | util-linux: The util-linux package is a huge collection of random utilities 12 | util-linux: that are essential to run a Linux system. 13 | util-linux: 14 | util-linux: http://kernel.org/~kzak/util-linux/ 15 | util-linux: 16 | util-linux: 17 | util-linux: 18 | util-linux: 19 | util-linux: 20 | -------------------------------------------------------------------------------- /util-linux/su.default: -------------------------------------------------------------------------------- 1 | # Ensure that ENV_SUPATH from /etc/login.defs is used for the $PATH when 2 | # 'su' is used. Otherwise /sbin paths will be missing unless 'su -' is used. 3 | ALWAYS_SET_PATH yes 4 | -------------------------------------------------------------------------------- /util-linux/util-linux.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Copyright 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2017, 2018, 2020 Patrick J. Volkerding, Sebeka, MN, USA 4 | # All rights reserved. 5 | # 6 | # Redistribution and use of this script, with or without modification, is 7 | # permitted provided that the following conditions are met: 8 | # 9 | # 1. Redistributions of this script must retain the above copyright 10 | # notice, this list of conditions and the following disclaimer. 11 | # 12 | # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 13 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 14 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 15 | # EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 16 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 17 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 18 | # OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 19 | # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 20 | # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF 21 | # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 22 | 23 | # Slackware build script for util-linux 24 | 25 | PKGNAM=util-linux 26 | VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 27 | BUILD=${BUILD:-1} 28 | TAG=${TAG:-_dlack} 29 | 30 | ADJTIMEXVERS=1.29 31 | SETSERIALVERS=2.17 32 | ZIPTOOLVERS=1.4.0 33 | 34 | # Automatically determine the architecture we're building on: 35 | if [ -z "$ARCH" ]; then 36 | case "$( uname -m )" in 37 | i?86) export ARCH=i586 ;; 38 | arm*) export ARCH=arm ;; 39 | # Unless $ARCH is already set, use uname -m for all other archs: 40 | *) export ARCH=$( uname -m ) ;; 41 | esac 42 | fi 43 | 44 | if [ "$ARCH" = "i586" ]; then 45 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 46 | LIBDIRSUFFIX="" 47 | elif [ "$ARCH" = "s390" ]; then 48 | SLKCFLAGS="-O2" 49 | LIBDIRSUFFIX="" 50 | elif [ "$ARCH" = "x86_64" ]; then 51 | SLKCFLAGS="-O2 -fPIC" 52 | LIBDIRSUFFIX="64" 53 | else 54 | SLKCFLAGS="-O2" 55 | LIBDIRSUFFIX="" 56 | fi 57 | 58 | CWD=$(pwd) 59 | TMP=${TMP:-/tmp/dlackware} 60 | PKG=$TMP/package-$PKGNAM 61 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 62 | 63 | rm -rf $PKG 64 | mkdir -p $TMP $PKG $OUTPUT 65 | cd $TMP || exit 1 66 | rm -rf $PKGNAM-$VERSION 67 | tar xvf $CWD/util-linux-$VERSION.tar.xz || exit 1 68 | cd util-linux-$VERSION || exit 1 69 | chown -R root.root . 70 | find . \ 71 | \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ 72 | -exec chmod 755 {} \; -o \ 73 | \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ 74 | -exec chmod 644 {} \; 75 | 76 | # Choose correct options depending on whether PAM is installed: 77 | if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then 78 | LOGIN_OPTIONS="" 79 | # By default, don't use the util-linux version of /bin/su: 80 | SHIP_SU=${SHIP_SU:-NO} 81 | # Add /etc/pam.d config files: 82 | rm -rf $PKG/etc/pam.d 83 | mkdir -p $PKG/etc/pam.d 84 | for file in $CWD/pam.d/* ; do 85 | cp -a ${file} $PKG/etc/pam.d/ 86 | done 87 | if [ "$SHIP_SU" = "YES" ]; then 88 | # Add su default file to ensure using ENV_SUPATH with 'su': 89 | mkdir -p $PKG/etc/default 90 | cp -a $CWD/su.default $PKG/etc/default/su.new 91 | chown root:root $PKG/etc/default/su.new 92 | chmod 644 $PKG/etc/default/su.new 93 | # Add su /etc/pam.d files: 94 | cp -a $CWD/pam.d-su/* $PKG/etc/pam.d/ 95 | fi 96 | Ensure correct perms/ownership on files in /etc/pam.d/: 97 | chown root:root $PKG/etc/pam.d/* 98 | chmod 644 $PKG/etc/pam.d/* 99 | # Don't clobber existing config files: 100 | find $PKG/etc/pam.d -type f -exec mv {} {}.new \; 101 | else 102 | # Don't use the util-linux version of /bin/su. 103 | # It can't be built without PAM anyway. 104 | SHIP_SU=NO 105 | LOGIN_OPTIONS="--disable-login" 106 | fi 107 | 108 | # Don't clobber existing config files: 109 | find $PKG/etc/pam.d -type f -exec mv {} {}.new \; 110 | 111 | # Changing the fdisk -l output (this was done prior to util-linux-ng) broke 112 | # our installation scripts, so we have changed the name of partition type 113 | # 83 back to "Linux swap": 114 | patch -p1 --verbose -i $CWD/patches/util-linux-ng.fdisk-no-solaris.diff || exit 1 115 | 116 | # Revert to the behavior of earlier versions of fdisk which did not list the 117 | # /dev/ram* devices in 'fdisk -l' output: 118 | patch -p1 --verbose -i $CWD/patches/util-linux.do.not.list.ram.devices.diff || exit 1 119 | 120 | # This just call the configure script with $1 either being 2 for python2 121 | # or 3 for python3. 122 | # 123 | # The releasenotes say to use --runstatedir, but it doesn't work and the 124 | # configure script fails. So we'll leave things using localstatedir, but 125 | # check again later: 126 | # 127 | # --runstatedir=/run 128 | configure_with_python(){ 129 | ./configure \ 130 | --prefix=/usr \ 131 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 132 | --sysconfdir=/etc \ 133 | --localstatedir=/var \ 134 | --mandir=/usr/man \ 135 | --infodir=/usr/info \ 136 | --docdir=/usr/doc/util-linux-$VERSION \ 137 | --disable-static \ 138 | --enable-agetty \ 139 | --enable-kill \ 140 | --disable-last \ 141 | --enable-libmount-support-mtab \ 142 | --enable-line \ 143 | --enable-mesg \ 144 | --enable-partx \ 145 | --enable-pg \ 146 | --enable-raw \ 147 | --enable-rename \ 148 | --enable-schedutils \ 149 | $LOGIN_OPTIONS \ 150 | --enable-wall \ 151 | --enable-write \ 152 | --enable-use-tty-group \ 153 | --enable-libblkid \ 154 | --enable-libmount \ 155 | --enable-libuuid \ 156 | --with-python=$1 \ 157 | --with-systemdsystemunitdir=/lib/systemd/system \ 158 | --with-systemd \ 159 | --build=$ARCH-slackware-linux || exit 1 160 | } 161 | 162 | CFLAGS="$SLKCFLAGS" \ 163 | configure_with_python 2 || exit 1 164 | 165 | make $NUMJOBS || make || exit 1 166 | make install DESTDIR=$PKG || exit 1 167 | 168 | # These need to be setuid root to work properly (only built for PAM): 169 | if [ -r $PKG/usr/bin/chfn ]; then 170 | chmod 4711 $PKG/usr/bin/chfn 171 | fi 172 | if [ -r $PKG/usr/bin/chsh ]; then 173 | chmod 4711 $PKG/usr/bin/chsh 174 | fi 175 | 176 | # Build python3 bindings for libmount: 177 | make clean 178 | CFLAGS="$SLKCFLAGS" \ 179 | configure_with_python 3 || exit 1 180 | make \ 181 | install-pylibmountexecLTLIBRARIES \ 182 | install-pylibmountexecPYTHON \ 183 | DESTDIR=$PKG || exit 1 184 | 185 | # Remove all overlap with the shadow package, since --disable-login doesn't quite do that: 186 | rm $PKG/sbin/nologin $PKG/usr/man/man8/nologin.8 $PKG/sbin/sulogin $PKG/usr/man/man8/sulogin.8 187 | 188 | # If we aren't shipping su, remove the files: 189 | if [ "$SHIP_SU" = "NO" ]; then 190 | rm -f $PKG/bin/su 191 | rm -f $PKG/usr/man/man1/su.1 192 | rm -f $PKG/usr/share/bash-completion/completions/su 193 | fi 194 | 195 | # Move the libblkid, libfdisk, libmount, libsmartcols, and 196 | # libuuid libraries to /lib${LIBSUFFIX}: 197 | mkdir -p $PKG/lib${LIBDIRSUFFIX} 198 | ( cd $PKG/usr/lib${LIBDIRSUFFIX} 199 | mv libblkid.so.1* $PKG/lib${LIBDIRSUFFIX} 200 | mv libfdisk.so.1* $PKG/lib${LIBDIRSUFFIX} 201 | mv libmount.so.1* $PKG/lib${LIBDIRSUFFIX} 202 | mv libsmartcols.so.1* $PKG/lib${LIBDIRSUFFIX} 203 | mv libuuid.so.1* $PKG/lib${LIBDIRSUFFIX} 204 | rm -f libblkid.so libfdisk.so libmount.so libsmartcols.so libuuid.so 205 | ln -sf ../../lib${LIBDIRSUFFIX}/libblkid.so.1 libblkid.so 206 | ln -sf ../../lib${LIBDIRSUFFIX}/libfdisk.so.1 libfdisk.so 207 | ln -sf ../../lib${LIBDIRSUFFIX}/libmount.so.1 libmount.so 208 | ln -sf ../../lib${LIBDIRSUFFIX}/libsmartcols.so.1 libsmartcols.so 209 | ln -sf ../../lib${LIBDIRSUFFIX}/libuuid.so.1 libuuid.so 210 | ) 211 | 212 | mkdir -p $PKG/lib${LIBDIRSUFFIX} 213 | 214 | for libname in lib{blkid,mount,smartcols,uuid,fdisk} 215 | do 216 | mv $PKG/usr/lib${LIBDIRSUFFIX}/${libname}.so.1* $PKG/lib${LIBDIRSUFFIX} 217 | reldir=$(echo /usr/lib${LIBDIRSUFFIX} | sed 's,/$,,;s,/[^/]\+,../,g')lib${LIBDIRSUFFIX} 218 | oldlink=$(readlink ${PKG}/usr/lib${LIBDIRSUFFIX}/${libname}.so) 219 | ln -sf ${reldir}/$(basename ${oldlink}) ${PKG}/usr/lib${LIBDIRSUFFIX}/${libname}.so || exit 1 220 | done 221 | 222 | # Moving things around that have been in the same place 223 | # for 15 years is, IMHO, not a wise idea AT ALL. 224 | # If this had to be moved, some place out of /usr might 225 | # have shown a grain of insight... 226 | if [ -r $PKG/usr/sbin/fdformat ]; then 227 | mkdir -p $PKG/usr/bin 228 | mv $PKG/usr/sbin/fdformat $PKG/usr/bin/fdformat 229 | # Now since stuff will start looking in this new place, 230 | # we have no choice but to link these: 231 | ( cd $PKG/usr/sbin 232 | ln -sf ../bin/fdformat . 233 | ) 234 | fi 235 | 236 | # Add the rc.setterm init script to set default terminal attributes: 237 | mkdir -p $PKG/etc/rc.d 238 | cp -a $CWD/rc.setterm $PKG/etc/rc.d/rc.setterm.new 239 | chown root:root $PKG/etc/rc.d/rc.setterm.new 240 | chmod 755 $PKG/etc/rc.d/rc.setterm.new 241 | 242 | # ddate.{1,c} taken from https://github.com/bo0ts/ddate: 243 | cp -a $CWD/ddate.? . 244 | cc -O -o ddate ddate.c 245 | cp -a ddate $PKG/usr/bin 246 | cat ddate.1 > $PKG/usr/man/man1/ddate.1 247 | chown root:root $PKG/usr/bin/ddate 248 | 249 | # Build ziptool (install as jaztool to avoid conflict with libzip): 250 | cd $TMP || exit 1 251 | rm -rf ziptool-$ZIPTOOLVERS 252 | tar xvf $CWD/ziptool-$ZIPTOOLVERS.tar.xz || exit 1 253 | cd ziptool-$ZIPTOOLVERS || exit 1 254 | patch -p1 --verbose -i $CWD/patches/ziptool-fix_build.patch || exit 1 255 | mkdir scsi 256 | cat $CWD/scsi_ioctl.h > scsi/scsi_ioctl.h 257 | chown -R root:root . 258 | make || exit 1 259 | strip ziptool 260 | cat ziptool > $PKG/sbin/jaztool 261 | chmod 0755 $PKG/sbin/jaztool 262 | mkdir -p $PKG/usr/doc/ziptool-$ZIPTOOLVERS 263 | cp -a README $PKG/usr/doc/ziptool-$ZIPTOOLVERS 264 | chmod 644 $PKG/usr/doc/ziptool-$ZIPTOOLVERS/* 265 | cat ziptool.1.gz > $PKG/usr/man/man1/jaztool.1.gz 266 | 267 | # Build bsdstrings 268 | cd $TMP || exit 1 269 | rm -rf bsdstrings 270 | tar xvf $CWD/bsdstrings.tar.gz || exit 1 271 | cd bsdstrings || exit 1 272 | patch -p1 --verbose -i $CWD/patches/bsdstrings-util-linux_overflow.diff || exit 1 273 | make || exit 1 274 | strip strings 275 | cat strings > $PKG/usr/bin/strings-BSD 276 | chmod 0755 $PKG/usr/bin/strings-BSD 277 | cat strings.1 | gzip -9c > $PKG/usr/man/man1/strings-BSD.1.gz 278 | 279 | # Build adjtimex 280 | cd $TMP || exit 1 281 | rm -rf adjtimex-$ADJTIMEXVERS 282 | tar xvf $CWD/adjtimex_${ADJTIMEXVERS}.orig.tar.gz || exit 1 283 | cd adjtimex-$ADJTIMEXVERS || exit 1 284 | chown -R root:root . 285 | patch -p1 -i $CWD/patches/adjtimex_1.29-2.2.diff || exit 1 286 | CFLAGS=-O2 ./configure --prefix=/usr || exit 1 287 | make || exit 1 288 | strip adjtimex 289 | cat adjtimex > $PKG/sbin/adjtimex 290 | chmod 0755 $PKG/sbin/adjtimex 291 | cat adjtimex.8 | gzip -9c > $PKG/usr/man/man8/adjtimex.8.gz 292 | mkdir -p $PKG/usr/doc/adjtimex-$ADJTIMEXVERS 293 | cp -a COPYING COPYRIGHT README README.ru adjtimex.lsm \ 294 | $PKG/usr/doc/adjtimex-$ADJTIMEXVERS 295 | 296 | # Build setserial 297 | cd $TMP || exit 1 298 | rm -rf setserial-$SETSERIALVERS 299 | tar xvf $CWD/setserial-$SETSERIALVERS.tar.gz || exit 1 300 | cd setserial-$SETSERIALVERS || exit 1 301 | chown -R root:root . 302 | patch -E -p1 --verbose -i $CWD/patches/setserial-rc.serial.diff || exit 1 303 | patch -E -p1 --verbose -i $CWD/patches/setserial-undef_TIOCGHAYESESP.diff || exit 1 304 | # The original config.{guess,sub} do not work on x86_64 305 | cp -p /usr/share/libtool/config/config.{guess,sub} . 306 | ./configure --prefix=/usr || exit 1 307 | make || exit 1 308 | strip setserial 309 | cat setserial > $PKG/sbin/setserial 310 | chmod 0755 $PKG/sbin/setserial 311 | mkdir -p $PKG/etc/rc.d 312 | cat rc.serial > $PKG/etc/rc.d/rc.serial.new 313 | cat serial.conf > $PKG/etc/serial.conf.new 314 | cat setserial.8 | gzip -9c > $PKG/usr/man/man8/setserial.8.gz 315 | 316 | # These have always traditionally been available before /usr 317 | # might be mounted: 318 | ( cd $PKG/usr/bin 319 | mv getopt setterm $PKG/bin 320 | cd $PKG/usr/bin 321 | ln -s ../../bin/getopt . 322 | ln -s ../../bin/setterm . 323 | ) 324 | 325 | cd $TMP/util-linux-$VERSION # Go back home :) 326 | 327 | # Now let's add some important symlinks :) 328 | ( cd $PKG/sbin 329 | ln -s ../bin/mount . 330 | ln -s ../bin/umount . 331 | #ln -s ziptool jaztool 332 | ln -s hwclock clock 333 | cd $PKG/usr/sbin 334 | ln -s ../../sbin/cfdisk . 335 | ln -s ../../sbin/ctrlaltdel . 336 | ln -s ../../sbin/sfdisk . 337 | cd $PKG/usr/bin 338 | ln -s ../sbin/readprofile . 339 | # tunelp was removed by upstream: 340 | #ln -s ../sbin/tunelp . 341 | ln -s ../../bin/more . 342 | ln -s ../../sbin/raw . 343 | cd $PKG/usr/man/man1 344 | #ln -s ziptool.1 jaztool.1 345 | cd $PKG/usr/man/man8 346 | ln -s hwclock.8 clock.8 347 | ) 348 | 349 | mkdir -p $PKG/run/uuidd || exit 1 350 | 351 | find $PKG | xargs file | grep -e "executable" -e "shared object" \ 352 | | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null 353 | 354 | # Don't ship .la files: 355 | rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la 356 | 357 | # Compress and if needed symlink the man pages: 358 | if [ -d $PKG/usr/man ]; then 359 | ( cd $PKG/usr/man 360 | for manpagedir in $(find . -type d -name "man*") ; do 361 | ( cd $manpagedir 362 | for eachpage in $( find . -type l -maxdepth 1) ; do 363 | ln -s $( readlink $eachpage ).gz $eachpage.gz 364 | rm $eachpage 365 | done 366 | gzip -9 *.? 367 | ) 368 | done 369 | ) 370 | fi 371 | 372 | # Compress info page and remove dir file 373 | rm $PKG/usr/info/dir 374 | gzip -9 $PKG/usr/info/* 375 | 376 | mkdir -p $PKG/usr/doc/util-linux-$VERSION 377 | cp -a AUTHORS COPYING* DEPRECATED NEWS README* \ 378 | Documentation/v${VERSION}-ReleaseNotes \ 379 | Documentation/licenses/* Documentation/{TODO,*.txt} \ 380 | $PKG/usr/doc/util-linux-$VERSION 381 | 382 | mkdir $PKG/install 383 | cat $CWD/slack-desc > $PKG/install/slack-desc 384 | cat $CWD/doinst.sh > $PKG/install/doinst.sh 385 | 386 | cd $PKG 387 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} 388 | -------------------------------------------------------------------------------- /util-linux/util-linux.info: -------------------------------------------------------------------------------- 1 | PKGNAM="util-linux" 2 | VERSION="2.36" 3 | HOMEPAGE="http://kernel.org/~kzak/util-linux/" 4 | DOWNLOAD="https://www.kernel.org/pub/linux/utils/util-linux/v2.36/util-linux-2.36.tar.xz \ 5 | https://deb.debian.org/debian/pool/main/a/adjtimex/adjtimex_1.29.orig.tar.gz \ 6 | https://download.dlackware.com/slackware/slackware-current/source/a/util-linux/bsdstrings.tar.gz \ 7 | https://sourceforge.net/projects/setserial/files/setserial/2.17/setserial-2.17.tar.gz \ 8 | https://download.dlackware.com/slackware/slackware-current/source/a/util-linux/ziptool-1.4.0.tar.xz" 9 | MD5SUM="fe7c0f7e439f08970e462c9d44599903 \ 10 | 7ff7731baf829fdf6ad9af963a526cda \ 11 | fbb97d7b9b94ac8b3e5fb36dd794a28d \ 12 | c4867d72c41564318e0107745eb7a0f2 \ 13 | 8611d07c6f4544c630d64f5cc2d3f860" 14 | -------------------------------------------------------------------------------- /valgrind/README: -------------------------------------------------------------------------------- 1 | Valgrind is a framework for building dynamic analysis tools. There are 2 | Valgrind tools that can automatically detect many memory management 3 | and threading bugs, and profile your programs in detail. You can also 4 | use Valgrind to build new tools. 5 | 6 | The Valgrind distribution currently includes six production-quality 7 | tools: a memory error detector, two thread error detectors, a cache 8 | and branch-prediction profiler, a call-graph generating cache and 9 | branch-prediction profiler, and a heap profiler. It also includes 10 | three experimental tools: a heap/stack/global array overrun detector, 11 | a different kind of heap profiler, and a SimPoint basic block vector 12 | generator. It runs on the following platforms: x86/Linux, AMD64/Linux, 13 | PPC32/Linux, PPC64/Linux, ARM/Linux, x86/MacOSX and AMD64/MacOSX. 14 | -------------------------------------------------------------------------------- /valgrind/slack-desc: -------------------------------------------------------------------------------- 1 | # HOW TO EDIT THIS FILE: 2 | # The "handy ruler" below makes it easier to edit a package description. 3 | # Line up the first '|' above the ':' following the base package name, and 4 | # the '|' on the right side marks the last column you can put a character in. 5 | # You must make exactly 11 lines for the formatting to be correct. It's also 6 | # customary to leave one space after the ':' except on otherwise blank lines. 7 | 8 | |-----handy-ruler------------------------------------------------------| 9 | valgrind: valgrind (award-winning suite of tools for debugging) 10 | valgrind: 11 | valgrind: Valgrind is an award-winning suite of tools for debugging and 12 | valgrind: profiling Linux programs. With the tools that come with Valgrind, 13 | valgrind: you can automatically detect many memory management and threading 14 | valgrind: bugs, avoiding hours of frustrating bug-hunting, making your 15 | valgrind: programs more stable. You can also perform detailed profiling, 16 | valgrind: to speed up and reduce memory use of your programs. 17 | valgrind: 18 | valgrind: 19 | valgrind: 20 | -------------------------------------------------------------------------------- /valgrind/valgrind.SlackBuild: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Slackware build script for valgrind 4 | # Written by Kyle Guinn 5 | # Updated by Peter Wang 6 | # Updated by Willy Sudiarto Raharjo 7 | # 8 | # All rights reserved. 9 | # 10 | # Permission to use, copy, modify, and distribute this software for 11 | # any purpose with or without fee is hereby granted, provided that 12 | # the above copyright notice and this permission notice appear in all 13 | # copies. 14 | # 15 | # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 16 | # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 17 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18 | # IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR 19 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 20 | # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 21 | # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 22 | # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 23 | # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 24 | # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 25 | # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26 | # SUCH DAMAGE. 27 | # ----------------------------------------------------------------------------- 28 | 29 | PKGNAM=valgrind 30 | VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} 31 | BUILD=${BUILD:-1} 32 | TAG=${TAG:-_dlack} 33 | 34 | if [ -z "$ARCH" ]; then 35 | case "$( uname -m )" in 36 | i?86) ARCH=i586 ;; 37 | arm*) ARCH=arm ;; 38 | *) ARCH=$( uname -m ) ;; 39 | esac 40 | fi 41 | 42 | CWD=$(pwd) 43 | TMP=${TMP:-/tmp/dlackware} 44 | PKG=$TMP/package-$PKGNAM 45 | OUTPUT=${OUTPUT:-/var/cache/dlackware} 46 | 47 | if [ "$ARCH" = "i586" ]; then 48 | SLKCFLAGS="-O2 -march=i586 -mtune=i686" 49 | LIBDIRSUFFIX="" 50 | elif [ "$ARCH" = "i686" ]; then 51 | SLKCFLAGS="-O2 -march=i686 -mtune=i686" 52 | LIBDIRSUFFIX="" 53 | elif [ "$ARCH" = "x86_64" ]; then 54 | # The valgrind build system already passes -fpic 55 | # and forcing -fPIC results in a build failure. 56 | SLKCFLAGS="-O2" 57 | LIBDIRSUFFIX="64" 58 | else 59 | SLKCFLAGS="-O2" 60 | LIBDIRSUFFIX="" 61 | fi 62 | 63 | rm -rf $PKG 64 | mkdir -p $TMP $PKG $OUTPUT 65 | cd $TMP || exit 1 66 | rm -rf $PKGNAM-$VERSION 67 | tar xvf $CWD/$PKGNAM-$VERSION.tar.bz2 || exit 1 68 | cd $PKGNAM-$VERSION || exit 1 69 | chown -R root:root . 70 | find -L . \ 71 | \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ 72 | -o -perm 511 \) -exec chmod 755 {} \; -o \ 73 | \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ 74 | -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; 75 | 76 | CFLAGS="$SLKCFLAGS" \ 77 | CXXFLAGS="$SLKCFLAGS" \ 78 | ./configure \ 79 | --prefix=/usr \ 80 | --libdir=/usr/lib${LIBDIRSUFFIX} \ 81 | --sysconfdir=/etc \ 82 | --localstatedir=/var \ 83 | --mandir=/usr/man \ 84 | --docdir=/usr/doc/$PKGNAM-$VERSION \ 85 | --build=$ARCH-slackware-linux \ 86 | || exit 1 87 | 88 | make || exit 1 89 | make install DESTDIR=$PKG || exit 1 90 | 91 | # Do NOT strip the shared objects, as recommended by the developers. 92 | find $PKG -print0 | xargs -0 file | grep -e "executable" | grep ELF \ 93 | | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true 94 | 95 | find $PKG/usr/man -type f -exec gzip -9 {} \; 96 | for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done 97 | 98 | mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION 99 | cp -a AUTHORS COPYING* FAQ.txt NEWS README* \ 100 | $PKG/usr/doc/$PKGNAM-$VERSION 101 | mv $PKG/usr/share/doc/valgrind/html $PKG/usr/doc/$PKGNAM-$VERSION 102 | # The doc directory is the only thing in $PKG/usr/share, and the only things 103 | # left in it now are pdf and a ps doc files. They are large, so we won't keep 104 | # them around. If you still want them, uncomment the line below. 105 | # mv $PKG/usr/share/doc/valgrind/*.{ps,pdf} $PKG/usr/doc/$PRGNAM-$VERSION 106 | rm -rf $PKG/usr/share 107 | cat $CWD/$PKGNAM.SlackBuild > $PKG/usr/doc/$PKGNAM-$VERSION/$PKGNAM.SlackBuild 108 | 109 | mkdir -p $PKG/install 110 | cat $CWD/slack-desc > $PKG/install/slack-desc 111 | 112 | cd $PKG 113 | /sbin/makepkg -l y -c n $OUTPUT/$PKGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz} 114 | -------------------------------------------------------------------------------- /valgrind/valgrind.info: -------------------------------------------------------------------------------- 1 | PKGNAM="valgrind" 2 | VERSION="3.16.1" 3 | HOMEPAGE="http://www.valgrind.org/" 4 | DOWNLOAD="http://sourceware.org/pub/valgrind/valgrind-3.16.1.tar.bz2" 5 | MD5SUM="d1b153f1ab17cf1f311705e7a83ef589" 6 | --------------------------------------------------------------------------------