slackware-current/source/installer/sources/initrd/usr/lib/setup/SeTDOS
Patrick J Volkerding 26046ef3bc Thu Nov 4 04:43:31 UTC 2021
a/kernel-firmware-20211102_c9e68c4-noarch-1.txz:  Upgraded.
a/kernel-generic-5.15.0-x86_64-1.txz:  Upgraded.
a/kernel-huge-5.15.0-x86_64-1.txz:  Upgraded.
a/kernel-modules-5.15.0-x86_64-1.txz:  Upgraded.
a/libblockdev-2.26-x86_64-3.txz:  Rebuilt.
a/libbytesize-2.6-x86_64-3.txz:  Rebuilt.
a/libpwquality-1.4.4-x86_64-6.txz:  Rebuilt.
a/util-linux-2.37.2-x86_64-6.txz:  Rebuilt.
a/volume_key-0.3.12-x86_64-5.txz:  Rebuilt.
ap/hplip-3.20.5-x86_64-6.txz:  Rebuilt.
ap/linuxdoc-tools-0.9.82-x86_64-3.txz:  Rebuilt.
ap/rpm-4.16.1.3-x86_64-3.txz:  Rebuilt.
ap/undervolt-20210815_e39aea1-x86_64-2.txz:  Rebuilt.
ap/vim-8.2.3570-x86_64-1.txz:  Upgraded.
d/Cython-0.29.24-x86_64-3.txz:  Rebuilt.
d/distcc-3.4-x86_64-3.txz:  Rebuilt.
d/gdb-11.1-x86_64-4.txz:  Rebuilt.
d/gyp-20210831_d6c5dd51-x86_64-2.txz:  Rebuilt.
d/kernel-headers-5.15.0-x86-1.txz:  Upgraded.
d/llvm-13.0.0-x86_64-2.txz:  Rebuilt.
d/mercurial-5.9.3-x86_64-2.txz:  Rebuilt.
d/meson-0.59.4-x86_64-1.txz:  Upgraded.
d/python-pip-21.3.1-x86_64-2.txz:  Rebuilt.
d/python-setuptools-57.5.0-x86_64-2.txz:  Rebuilt.
d/python3-3.9.7-x86_64-2.txz:  Rebuilt.
  Back to Python 3.9, which seems to be the best version to use at this time.
d/rust-1.56.1-x86_64-1.txz:  Upgraded.
d/scons-4.2.0-x86_64-2.txz:  Rebuilt.
d/vala-0.54.3-x86_64-1.txz:  Upgraded.
k/kernel-source-5.15.0-noarch-1.txz:  Upgraded.
  We'll be using 5.15.x in the 15.0 release, and it's working well here, so
  let's just start it right out in the main tree rather than in /testing.
  The primary differences with the previous (5.14.15) kernel:
  The default preemption mode is changed to "voluntary".
  Added CONFIG_CEC_GPIO=m (thanks to LuckyCyborg).
kde/calligra-3.2.1-x86_64-14.txz:  Rebuilt.
kde/cantor-21.08.2-x86_64-2.txz:  Rebuilt.
kde/kapidox-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kauth-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kcodecs-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kcompletion-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kconfig-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kconfigwidgets-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kcoreaddons-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kdbusaddons-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kfilemetadata-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kguiaddons-5.87.0-x86_64-2.txz:  Rebuilt.
kde/ki18n-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kig-21.08.2-x86_64-3.txz:  Rebuilt.
kde/kile-2.9.93-x86_64-14.txz:  Rebuilt.
kde/kitemmodels-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kitemviews-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kitinerary-21.08.2-x86_64-2.txz:  Rebuilt.
kde/kjobwidgets-5.87.0-x86_64-2.txz:  Rebuilt.
kde/kmymoney-5.1.2-x86_64-4.txz:  Rebuilt.
kde/krita-4.4.8-x86_64-6.txz:  Rebuilt.
kde/kwidgetsaddons-5.87.0-x86_64-2.txz:  Rebuilt.
kde/okular-21.08.2-x86_64-2.txz:  Rebuilt.
l/M2Crypto-0.38.0-x86_64-3.txz:  Rebuilt.
l/Mako-1.1.4-x86_64-5.txz:  Rebuilt.
l/PyQt5-5.15.2-x86_64-5.txz:  Rebuilt.
l/QScintilla-2.11.6-x86_64-5.txz:  Rebuilt.
l/boost-1.77.0-x86_64-3.txz:  Rebuilt.
l/brotli-1.0.9-x86_64-7.txz:  Rebuilt.
l/cfitsio-4.0.0-x86_64-1.txz:  Upgraded.
l/dbus-python-1.2.18-x86_64-3.txz:  Rebuilt.
l/gexiv2-0.14.0-x86_64-3.txz:  Rebuilt.
l/glade-3.38.2-x86_64-5.txz:  Rebuilt.
l/gobject-introspection-1.70.0-x86_64-3.txz:  Rebuilt.
l/gtk4-4.4.1-x86_64-1.txz:  Upgraded.
l/lensfun-0.3.95-x86_64-5.txz:  Rebuilt.
l/libcaca-0.99.beta19-x86_64-11.txz:  Rebuilt.
l/libcap-ng-0.8.2-x86_64-5.txz:  Rebuilt.
l/libimobiledevice-20200615_4791a82-x86_64-6.txz:  Rebuilt.
l/libproxy-0.4.17-x86_64-5.txz:  Rebuilt.
l/libwebp-1.2.1-x86_64-3.txz:  Rebuilt.
l/libxml2-2.9.12-x86_64-3.txz:  Rebuilt.
l/netpbm-10.96.02-x86_64-1.txz:  Upgraded.
l/newt-0.52.21-x86_64-7.txz:  Rebuilt.
l/openexr-2.5.7-x86_64-4.txz:  Rebuilt.
l/poppler-21.11.0-x86_64-1.txz:  Upgraded.
  Shared library .so-version bump.
l/pycairo-1.20.1-x86_64-3.txz:  Rebuilt.
l/pycups-2.0.1-x86_64-6.txz:  Rebuilt.
l/pycurl-7.44.1-x86_64-3.txz:  Rebuilt.
l/pygobject3-3.42.0-x86_64-3.txz:  Rebuilt.
l/pyparsing-2.4.7-x86_64-6.txz:  Rebuilt.
l/python-appdirs-1.4.4-x86_64-6.txz:  Rebuilt.
l/python-certifi-2021.10.8-x86_64-2.txz:  Rebuilt.
l/python-cffi-1.15.0-x86_64-2.txz:  Rebuilt.
l/python-chardet-4.0.0-x86_64-5.txz:  Rebuilt.
l/python-charset-normalizer-2.0.7-x86_64-2.txz:  Rebuilt.
l/python-distro-1.6.0-x86_64-2.txz:  Rebuilt.
l/python-dnspython-2.1.0-x86_64-3.txz:  Rebuilt.
l/python-docutils-0.18-x86_64-2.txz:  Rebuilt.
l/python-future-0.18.2-x86_64-7.txz:  Rebuilt.
l/python-idna-3.3-x86_64-2.txz:  Rebuilt.
l/python-markdown-3.3.4-x86_64-3.txz:  Rebuilt.
l/python-notify2-0.3.1-x86_64-10.txz:  Rebuilt.
l/python-packaging-21.2-x86_64-2.txz:  Rebuilt.
l/python-pillow-8.4.0-x86_64-2.txz:  Rebuilt.
l/python-ply-3.11-x86_64-8.txz:  Rebuilt.
l/python-pycparser-2.20-x86_64-3.txz:  Rebuilt.
l/python-pygments-2.10.0-x86_64-3.txz:  Rebuilt.
l/python-pysol_cards-0.12.0-x86_64-2.txz:  Rebuilt.
l/python-random2-1.0.1-x86_64-5.txz:  Rebuilt.
l/python-requests-2.26.0-x86_64-3.txz:  Rebuilt.
l/python-sane-2.9.1-x86_64-5.txz:  Rebuilt.
l/python-six-1.16.0-x86_64-3.txz:  Rebuilt.
l/python-urllib3-1.26.7-x86_64-3.txz:  Rebuilt.
l/sip-4.19.25-x86_64-5.txz:  Rebuilt.
l/speech-dispatcher-0.10.2-x86_64-5.txz:  Rebuilt.
l/system-config-printer-1.5.15-x86_64-5.txz:  Rebuilt.
l/talloc-2.3.3-x86_64-3.txz:  Rebuilt.
l/tdb-1.4.5-x86_64-3.txz:  Rebuilt.
l/tevent-0.11.0-x86_64-3.txz:  Rebuilt.
n/bind-9.16.22-x86_64-2.txz:  Rebuilt.
n/epic5-2.1.6-x86_64-3.txz:  Rebuilt.
n/fetchmail-6.4.23-x86_64-2.txz:  Rebuilt.
n/getmail-6.18.5-x86_64-2.txz:  Rebuilt.
n/gpgme-1.16.0-x86_64-3.txz:  Rebuilt.
n/iproute2-5.15.0-x86_64-1.txz:  Upgraded.
n/net-snmp-5.9.1-x86_64-3.txz:  Rebuilt.
n/nftables-1.0.0-x86_64-4.txz:  Rebuilt.
n/nss-pam-ldapd-0.9.11-x86_64-5.txz:  Rebuilt.
n/obexftp-0.24.2-x86_64-10.txz:  Rebuilt.
n/pssh-2.3.4-x86_64-6.txz:  Rebuilt.
n/samba-4.15.1-x86_64-2.txz:  Rebuilt.
n/socat-1.7.4.2-x86_64-1.txz:  Upgraded.
x/ibus-1.5.25-x86_64-3.txz:  Rebuilt.
x/ibus-anthy-1.5.13-x86_64-3.txz:  Rebuilt.
x/ibus-hangul-1.5.4-x86_64-5.txz:  Rebuilt.
x/ibus-libpinyin-1.12.1-x86_64-3.txz:  Rebuilt.
x/ibus-table-1.14.1-x86_64-3.txz:  Rebuilt.
x/pyxdg-0.27-x86_64-6.txz:  Rebuilt.
x/xcb-proto-1.14.1-x86_64-6.txz:  Rebuilt.
xap/blueman-2.2.3-x86_64-2.txz:  Rebuilt.
xap/hexchat-2.16.0-x86_64-3.txz:  Rebuilt.
xap/mozilla-firefox-91.3.0esr-x86_64-1.txz:  Upgraded.
  This release contains security fixes and improvements.
  For more information, see:
    https://www.mozilla.org/en-US/firefox/91.3.0/releasenotes/
    https://www.mozilla.org/security/advisories/mfsa2021-49/
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38503
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38504
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38505
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38506
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38507
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38508
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38509
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38510
  (* Security fix *)
xap/mozilla-thunderbird-91.3.0-x86_64-1.txz:  Upgraded.
  This release contains security fixes and improvements.
  For more information, see:
    https://www.mozilla.org/en-US/thunderbird/91.3.0/releasenotes/
  (* Security fix *)
xap/vim-gvim-8.2.3570-x86_64-1.txz:  Upgraded.
extra/brltty/brltty-6.4-x86_64-3.txz:  Rebuilt.
isolinux/initrd.img:  Rebuilt.
kernels/*:  Upgraded.
usb-and-pxe-installers/usbboot.img:  Rebuilt.
2021-11-04 08:59:59 +01:00

209 lines
7.7 KiB
Bash
Executable file

#!/bin/sh
# SeTpartition user-friendly rewrite Fri Dec 15 13:17:40 CST 1995 pjv
# More updates for Slackware 3.5: Wed Apr 29 22:43:28 CDT 1998
# Updated for Slackware 7.x (new fdisk tags) Fri Sep 10 13:17:18 CDT 1999
TMP=/var/log/setup/tmp
T_PX="$(cat $TMP/SeTT_PX)"
if [ ! -d $TMP ]; then
mkdir -p $TMP
fi
REDIR=/dev/tty4
NDIR=/dev/null
rm -f $TMP/SeTDOS
touch $TMP/SeTDOS
crunch () { # remove extra whitespace
read STRING;
echo $STRING
}
# get_part_size( dev ) - Return the size in K, M, G, T, or P of the named partition.
get_part_size() {
numfmt --to=iec $(blockdev --getsize64 $1)
}
ntfs_security() {
rm -f $TMP/ntfs_security
dialog --backtitle "Setting permissions on NTFS partition $DOS_PART" \
--title "SET SECURITY FOR NTFS PARTITION $DOS_PART" \
--default-item "fmask=177,dmask=077" \
--menu "Because users could go snooping through (or destroy, depending on \
the settings) your Windows partition, you should choose how much access would you \
like your non-root users to have to partition $DOS_PART. The access level can \
range from no access at all, to read-only for everyone, to read-write access \
for every user on the machine. A reasonable default (read-write for root only) \
is chosen, but you may set this any way that you like." \
17 77 4 \
"fmask=177,dmask=077" "Root has read/write access, users have no access" \
"fmask=333,dmask=222" "Everyone has read only access" \
"fmask=133,dmask=022" "Everyone has read access, but only root can write" \
"fmask=111,dmask=000" "All users can read/write to any file" \
2> $TMP/ntfs_security
if [ ! $? = 0 ]; then
rm -f $TMP/ntfs_security $TMP/mount-point $TMP/SeTDOS
echo 1
fi
}
fat_security() {
rm -f $TMP/fat_security
dialog --backtitle "Setting permissions on FAT partition $DOS_PART" \
--title "SET SECURITY FOR FAT PARTITION $DOS_PART" \
--default-item "fmask=177,dmask=077" \
--menu "Because users could go snooping through (or destroy, depending on \
the settings) your Windows partition, you should choose how much access would you \
like your non-root users to have to partition $DOS_PART. The access level can \
range from no access at all, to read-only for everyone, to read-write access \
for every user on the machine. A reasonable default (read-write for root only) \
is chosen, but you may set this any way that you like." \
17 77 4 \
"fmask=177,dmask=077" "Root has read/write access, users have no access" \
"fmask=333,dmask=222" "Everyone has read only access" \
"fmask=133,dmask=022" "Everyone has read access, but only root can write" \
"fmask=111,dmask=000" "All users can read/write to any file" \
2> $TMP/fat_security
if [ ! $? = 0 ]; then
rm -f $TMP/fat_security $TMP/mount-point $TMP/SeTDOS
echo 1
fi
}
# Since the USB installers (both usbboot.img and the ones created using
# usbimg2disk.sh) present bogus FAT/NTFS partitions, we need a way to
# filter these from the partition scan. To do this, we'll set a variable
# $BANHAMMER that contains the name of the device the stick was found on.
# First, we'll set that to contain some random nonsense that will never
# be an actual device since reverse grepping for "" won't work.
BANHAMMER="0xFE11C1A"
# Look for the usbboot.img stick:
if [ -L /dev/disk/by-label/USBSLACK ]; then
BANHAMMER="$(readlink -f /dev/disk/by-label/USBSLACK)"
fi
# Look for the usbimg2disk.sh stick:
if [ -L /dev/disk/by-label/USBSLACKINS ]; then
BANHAMMER="$(readlink -f /dev/disk/by-label/USBSLACKINS | cut -b 1-8)"
fi
# Suggested new GPT partition type: Microsoft basic data
# More research needed... could be FAT32, NTFS, or EXFAT
DOSLIST="$(probe -l 2> /dev/null | grep -E "DOS|Win(95 F|98 F)|HPFS|W95 F|FAT(12|16)|Microsoft basic data" | grep -Ev "Ext('d|end)" | grep -v "$BANHAMMER" | sort)"
if [ "$DOSLIST" = "" ]; then # no FAT or NTFS partitions
exit
fi
dialog --backtitle "Setting up non-Linux partitions." \
--title "FAT or NTFS PARTITIONS DETECTED" \
--yesno "Partitions of type FAT or NTFS (commonly used by DOS and \
Windows) have been found on your \
system. Would you like to add these partitions to your /etc/fstab \
so that these partitions are visible from Linux?" \
8 70
if [ ! $? = 0 ]; then
exit
fi
while [ 0 ]; do # main partition selection loop
rm -f $TMP/SeTSKIP
echo "true" > $TMP/SeTSKIP
cat << EOF > $TMP/tempscript
dialog --backtitle "Selecting non-Linux partitions." \\
--title "SELECT PARTITION TO ADD TO /etc/fstab" \\
--ok-label Select --cancel-label Continue \\
--menu "In order to make these partitions visible from Linux, we \\
need to add them to your /etc/fstab. Please pick a partition to \\
add to /etc/fstab, or select '---' to continue with the installation \\
process." \\
15 70 5 \\
EOF
echo "$DOSLIST" | while read PARTITION ; do
NAME=$(echo $PARTITION | crunch | cut -f 1 -d ' ')
SIZE=$(get_part_size $NAME)
TYPE="$(blkid $NAME | tr ' ' '\n' | grep "^TYPE=" | cut -f 2- -d = | tr -d \")"
if cat $TMP/SeTDOS | grep $NAME 1> $NDIR 2> $NDIR ; then
ON=$(cat $TMP/SeTDOS | grep $NAME | crunch | cut -f 2 -d ' ')
echo "\"(IN USE)\" \"$NAME on $ON $TYPE ${SIZE}\" \\" >> $TMP/tempscript
else
echo "\"$NAME\" \"$TYPE ${SIZE}\" \\" >> $TMP/tempscript
echo "false" > $TMP/SeTSKIP
fi
done
echo "\"---\" \"(done, continue with setup)\" \\" >> $TMP/tempscript
echo "\"---\" \"(done, continue with setup)\" \\" >> $TMP/tempscript
echo "\"---\" \"(done, continue with setup)\" \\" >> $TMP/tempscript
echo "\"---\" \"(done, continue with setup)\" \\" >> $TMP/tempscript
echo "\"---\" \"(done, continue with setup)\" \\" >> $TMP/tempscript
echo "2> $TMP/return" >> $TMP/tempscript
if [ "$(cat $TMP/SeTSKIP)" = "true" ]; then
break
fi
. $TMP/tempscript
if [ ! $? = 0 ]; then
rm $TMP/tempscript
exit 255 # user abort
fi
DOS_PART="$(cat $TMP/return)"
rm -f $TMP/tempscript
if [ "$DOS_PART" = "---" ]; then
break
elif [ "$DOS_PART" = "(IN USE)" ]; then
continue
fi
TYPE="$(blkid $DOS_PART | tr ' ' '\n' | grep "^TYPE=" | cut -f 2- -d = | tr -d \")"
if [ "$TYPE" = "ntfs" ]; then
ntfs_security
FS_UMASK="$(cat $TMP/ntfs_security)"
if [ "$FS_UMASK" = "1" ]; then
exit 1
else
#FS_TYPE="$TYPE"
# Use the new ntfs3 type:
FS_TYPE="ntfs3"
fi
else # Must be fat or exfat:
fat_security
FS_UMASK="$(cat $TMP/fat_security)"
if [ "$FS_UMASK" = "1" ]; then
exit 1
else
FS_TYPE="$TYPE"
fi
fi
dialog --backtitle "Selecting a location to mount $DOS_PART." \
--title "PICK MOUNT POINT FOR $DOS_PART" \
--inputbox "Now this partition must be mounted somewhere in your \
directory tree. Please enter the directory under which \
you would like to put it. For instance, you might want to \
enter /ntfs-c or /ntfs-d or something similar. \
NOTE: This \
partition won't actually be mounted until you reboot. \
Where would you like to mount $DOS_PART?" \
13 65 2> $TMP/mount-point
if [ ! $? = 0 ]; then
rm -f $TMP/tempmsg $TMP/mount-point $TMP/SeTDOS
exit
fi
NEW_DIR="$(cat $TMP/mount-point)"
rm -f $TMP/mount-point
# If this was left blank or is '/', drop back to the first menu and start over.
if [ "$NEW_DIR" = "" -o "$NEW_DIR" = "/" ]; then
continue
fi
if [ ! "$(echo $NEW_DIR | cut -b1)" = "/" ]; then
NEW_DIR="/$NEW_DIR"
fi
mkdir -p ${T_PX}$NEW_DIR
chmod 755 ${T_PX}$NEW_DIR
if echo "$DOSLIST" | grep $DOS_PART | grep NTFS 1> $NDIR 2> $NDIR ; then
printf "%-16s %-16s %-11s %-16s %-3s %s\n" "$DOS_PART" "$NEW_DIR" "$FS_TYPE" "$FS_UMASK" "1" "0" >> $TMP/SeTDOS
else
printf "%-16s %-16s %-11s %-16s %-3s %s\n" "$DOS_PART" "$NEW_DIR" "$FS_TYPE" "$FS_UMASK" "1" "0" >> $TMP/SeTDOS
fi
done # partition adding loop
rm -f $TMP/SeTSKIP
cat << EOF > $TMP/tempmsg
Adding this information to your /etc/fstab:
EOF
cat $TMP/SeTDOS >> $TMP/tempmsg
dialog --backtitle "Finished setting up non-Linux partitions." \
--title "DONE ADDING FAT or NTFS PARTITIONS" \
--exit-label OK \
--textbox $TMP/tempmsg 15 72