slackware-current/source/a/etc/doinst.sh
Patrick J Volkerding 04696baa14 Mon Jun 18 06:19:23 UTC 2018
a/aaa_elflibs-15.0-x86_64-1.txz:  Upgraded.
  Upgraded to libelf-0.171.so, added libgdbm.so.6.0.0.
a/etc-15.0-x86_64-6.txz:  Rebuilt.
  Add $(uname -m) information to /etc/issue.new.
  Don't include /tmp directories - these are handled by aaa_base.
a/kernel-generic-4.14.50-x86_64-1.txz:  Upgraded.
a/kernel-huge-4.14.50-x86_64-1.txz:  Upgraded.
a/kernel-modules-4.14.50-x86_64-1.txz:  Upgraded.
ap/man-db-2.8.3-x86_64-3.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
ap/zsh-5.5.1-x86_64-2.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
d/clisp-2.49_20180423_d1310adc5-x86_64-1.txz:  Upgraded.
  Compiled against gdbm-1.15.
d/kernel-headers-4.14.50-x86-1.txz:  Upgraded.
d/perl-5.26.2-x86_64-5.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
d/python-2.7.15-x86_64-3.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
d/python3-3.6.5-x86_64-4.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
d/ruby-2.5.1-x86_64-4.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
k/kernel-source-4.14.50-noarch-1.txz:  Upgraded.
kde/kdelibs-4.14.38-x86_64-3.txz:  Rebuilt.
  Patched to build with OpenSSL-1.1.x. Thanks to nobodino.
l/gdbm-1.15-x86_64-1.txz:  Upgraded.
  Shared library .so-version bump.
n/cyrus-sasl-2.1.27_rc8-x86_64-1.txz:  Upgraded.
  Compiled against gdbm-1.15.
n/mutt-1.10.0-x86_64-2.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
n/php-7.2.6-x86_64-2.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
n/yptools-2.14-x86_64-11.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
xap/gnuchess-6.2.5-x86_64-3.txz:  Rebuilt.
  Recompiled against gdbm-1.15.
isolinux/initrd.img:  Rebuilt.
  Copy libefiboot to the installer (needed by efibootmgr).
  Compress the kernel modules with xz.
  Compress the initrd image with xz.
kernels/*:  Upgraded.
usb-and-pxe-installers/usbboot.img:  Rebuilt.
  Copy libefiboot to the installer (needed by efibootmgr).
  Compress the kernel modules with xz.
  Compress the initrd image with xz.
2018-06-18 10:35:08 +02:00

114 lines
3.4 KiB
Bash

#!/bin/sh
config() {
NEW="$1"
OLD="`dirname $NEW`/`basename $NEW .new`"
# If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
rm $NEW
fi
# Otherwise, we leave the .new copy for the admin to consider...
}
# First, make sure any new entries in passwd/shadow/group are added:
if [ -r etc/passwd -a -r etc/passwd.new ]; then
cat etc/passwd.new | while read line ; do
if ! grep -q "^$(echo $line | cut -f 1 -d :):" etc/passwd ; then
echo $line >> etc/passwd
fi
done
fi
if [ -r etc/shadow -a -r etc/shadow.new ]; then
cat etc/shadow.new | while read line ; do
if ! grep -q "^$(echo $line | cut -f 1 -d :):" etc/shadow ; then
echo $line >> etc/shadow
fi
done
fi
if [ -r etc/group -a -r etc/group.new ]; then
cat etc/group.new | while read line ; do
if ! grep -q "^$(echo $line | cut -f 1 -d :):" etc/group ; then
echo $line >> etc/group
fi
done
fi
config etc/mtab.new
config etc/motd.new
config etc/group.new
config etc/csh.login.new
config etc/ld.so.conf.new
config etc/profile.new
config etc/hosts.new
config etc/inputrc.new
config etc/shadow.new
config etc/passwd.new
config etc/printcap.new
config etc/networks.new
config etc/HOSTNAME.new
config etc/gshadow.new
config etc/issue.new
config etc/securetty.new
config etc/shells.new
config etc/services.new
config etc/issue.net.new
config etc/nsswitch.conf.new
config etc/profile.d/lang.csh.new
config etc/profile.d/lang.sh.new
config etc/profile.d/z-dot-in-non-root-path.csh.new
config etc/profile.d/z-dot-in-non-root-path.sh.new
config var/log/lastlog.new
config var/log/wtmp.new
config var/run/utmp.new
if [ -r etc/ld.so.conf.new -a -r etc/ld.so.conf ]; then
# Ensure that ld.so.conf contains the minimal set of paths:
cat etc/ld.so.conf | while read pathline ; do
if ! grep "^${pathline}$" etc/ld.so.conf.new 1> /dev/null 2> /dev/null ; then
echo "$pathline" >> etc/ld.so.conf.new
fi
done
cp etc/ld.so.conf.new etc/ld.so.conf
fi
# Clean up useless non-examples:
rm -f etc/mtab.new
rm -f etc/motd.new
rm -f etc/ld.so.conf.new
rm -f etc/hosts.new
#rm -f etc/shadow.new
rm -f etc/networks.new
rm -f etc/HOSTNAME.new
#rm -f etc/gshadow.new
rm -f etc/shells.new
rm -f etc/printcap.new
#rm -f etc/issue.new
rm -f etc/issue.net.new
#rm -f etc/profile.d/lang.csh.new
#rm -f etc/profile.d/lang.sh.new
rm -f var/run/utmp.new
rm -f var/log/lastlog.new
rm -f var/log/wtmp.new
# Make sure $HOME is correct for user sddm:
chroot . /usr/sbin/usermod -d /var/lib/sddm sddm > /dev/null 2> /dev/null
# Make sure that sddm is a member of group video:
chroot . /usr/sbin/usermod --groups video sddm > /dev/null 2> /dev/null
# Also ensure ownerships/perms:
chown root.utmp var/run/utmp var/log/wtmp
chmod 664 var/run/utmp var/log/wtmp
chown root.shadow etc/shadow etc/gshadow
chmod 640 etc/shadow etc/gshadow
# Match permissions on any leftover config z-dot-in-non-root-path scripts
# to prevent anyone who turned them on from accidentally losing that setting
# by moving the .new script into place:
if [ -r etc/profile.d/z-dot-in-non-root-path.csh.new ]; then
touch -r etc/profile.d/z-dot-in-non-root-path.csh etc/profile.d/z-dot-in-non-root-path.csh.new
fi
if [ -r etc/profile.d/z-dot-in-non-root-path.sh.new ]; then
touch -r etc/profile.d/z-dot-in-non-root-path.sh etc/profile.d/z-dot-in-non-root-path.sh.new
fi