I guess I am someone who would say “once you go Slack, you never go back.” So far, there were times that I left Slackware for short periods of time, but eventually return for a longer amount of time. My latest computer is a Lenovo Thinkpad E14 Gen 4 with an Intel i5-1235U processor. Since I like Slackware, I looked into making the GNU/Linux distribution work in this machine. One of the major things I had to do is to start using GRUB(I have been using LILO for Slackware until this time). In previous machines, I can still easily use LILO to dual boot Slackware64 and Windows 7. But now, it’s not the case with Windows 11 and Slackware64. My special thanks to the OldTechBloke (https://www.youtube.com/watch?v=OZeJd5JPQro) for the documentation on setting up GRUB during Slackware installation. This is because there is no GUI tool during Slackware setup for setting up GRUB(one has to use the CLI). Also, one has to build a more recent kernel than the one supplied with Slackware64 15.0.
# Boot Slackware64 15 installer. Perform the following steps after logging in as root during Slackware64 15.0 setup:
cfdisk /dev/nvme0n1 # Create swap and root partitions.
setup # Start with addswap. EFI partition will be added to /etc/fstab. Proceed with setup. After intstalling the packages, skip LILO and ELILO installation. After setup, go back to shell to proceed with the steps below.
mount # This is for checking your mounts.
chroot /mnt /bin/bash
source /etc/profile
grub-install –target=x86_64-efi –efi-directory=/boot/efi –bootloader-id=grub
grub-mkconfig -o /boot/grub/grub.cfg
# If you are trying this documentation on Virtualbox first, here are additional steps. For Virtualbox to boot on UEFI you also need to copy grub to a new directory:
mkdir -p /boot/efi/EFI/boot # -p option creates any intermediate directories
cp /boot/efi/EFI/grub/grubx64.efi /boot/efi/EFI/boot/bootx64.efi
# Additional Virtualbox steps end here. Proceed with “exit” and “reboot” as shown below for both non-Virtualbox and Virtualbox setups.
exit
reboot
# Connect laptop to wired LAN for internet access. Then, as root:
wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.12.14.tar.xz
wget https://hkg.mirror.rackspace.com/slackware/slackware64-current/kernels/generic.s/config
# Disconnect LAN cable. Then proceed while still being root:
cd /usr/src
tar xJpf ~/linux-6.12.14.tar.xz
rm linux
ln -s /usr/src/linux-6.12.14 linux
cd linux
make mrproper
mv ~/config .config
make oldconfig # When asked for input, use the default or the option you think is best.
make menuconfig # You may skip this. Do this only if you need to make configuration changes.
make bzImage ; make modules ; make modules_install
cp arch/x86/boot/bzImage /boot/vmlinuz-huge-6.12.14
cp System.map /boot/System.map-huge-6.12.14
cp .config /boot/config-huge-6.12.14
cd /boot
rm System.map
ln -s System.map-huge-6.12.14 System.map
rm config
ln -s config-huge-6.12.14 config
rm vmlinuz
ln -s vmlinuz-huge-6.12.14 vmlinuz
vi /etc/default/grub # Set: GRUB_DISABLE_OS_PROBER=false
grub-mkconfig -o /boot/grub/grub.cfg
reboot
# As root:
git clone https://github.com/thesofproject/sof-bin.git
cd sof-bin
cd v2.2.x
../install.sh v2.2
reboot
# Update Slackware64 15. Connect to the internet via wired LAN or WIFI. You may now create an unprivileged user here.
su - # Or login as root.
cd /etc/rc.d
wget https://blog.balcos.net/rc.firewall
chmod 755 rc.firewall
./rc.firewall
cd
wget https://blog.balcos.net/slackpkg+-1.8.0-noarch-7mt.txz
installpkg slackpkg+*.t?z
cp -p /etc/slackpkg/slackpkgplus.conf /etc/slackpkg/slackpkgplus.conf.orig
vi /etc/slackpkg/slackpkgplus.conf
#Have the following configured
#BEGIN
REPOPLUS=( slackpkgplus restricted alienbob slackonly )
# Slackware 15.0 - x86_64
#MIRRORPLUS[‘multilib’]=https://slackware.nl/people/alien/multilib/15.0/
MIRRORPLUS[‘alienbob’]=https://slackware.nl/people/alien/sbrepos/15.0/x86_64
MIRRORPLUS[‘restricted’]=https://slackware.nl/people/alien/restricted_sbrepos/15.0/x86_64
# use this to keep the slackpkg+ package updated to the latest stable release
MIRRORPLUS[‘slackpkgplus’]=https://slakfinder.org/slackpkg+15/
MIRRORPLUS[‘slackonly’]=http://slackonly.com/pub/packages/15.0-x86_64/
#END
cd /etc/slackpkg
cp -p mirrors mirrors.orig
vi mirrors # Enable a mirror.
slackpkg update gpg
slackpkg update
slackpkg upgrade-all
cd /boot
rm System.map
ln -s System.map-huge-6.12.14 System.map
rm config
ln -s config-huge-6.12.14 config
rm vmlinuz
ln -s vmlinuz-huge-6.12.14 vmlinuz
grub-mkconfig -o /boot/grub/grub.cfg
reboot