Minimal Slackware64 in Qemu
Slackware is one of those distros I kept trying to install but always ran
into issues. This time, I gave it a shot in QEMU and went for a minimalist
setup. The thing with Slackware is that, by default, it wants to install
everything, over 15 GB of packages, which I’m not a fan of. I don’t
like having software I won’t use cluttering up my system, so I tried
to keep it lean. After a lot of trial and error and a bunch of failed
boots, I finally got it installed. Here’s how I did it.
NOTE
I will update the selected packages if needed.
Also, you don’t have to choose what I choose.
It’s your system, not mine.
Setup
for Minimal setup i install from A, AP, D, L and N, also i use GRUB and kernel-generic so after install you need to chroot
it then install initrd and grub
qemu-img create -f qcow2 Slackware.qcow2 20G
# Slackware Partition
128M EFI System
512M /boot
REST /
# Setup after Install
chroot /mnt
mkinitrd -c -k 5.15.19 -m ext4
grub-install --target=x86_64-efi --efi-directory=/boot/efi
grub-mkconfig -o /boot/grub/grub.cfg
A - Base Linux System
- aaa_base
- aaa_glibc-solibs
- aaa_libraries
- aaa_terminfo
- acl
- acpid
- attr
- bash
- bin
- bzip2
- coreutils
- cpio
- cpufrequtils
- cracklib
- dbus
- dcron
- devs
- dialog
- dosfstools
- e2fsprogs
- ed
- efibootmgr
- efivar
- elogind
- etc
- eudev
- file
- findutils
- gawk
- gettext
- glibc-zoneinfo
- gptfdisk
- grep
- grub
- gzip
- hostname
- kbd
- kernel-firmware
- kernel-generic
- kernel-modules
- kmod
- less
- libpwquality
- logrotate
- lzip
- lzlib
- mcelog
- mkinitrd
- mlocate
- openssl-solibs
- pam
- patch
- pciutils
- pkgtools
- procps-ng
- sed
- shadow
- sysfsutils
- sysklogd
- sysvinit
- sysvinit-scripts
- tar
- time
- usbutils
- util-linux
- which
- xz
AP - Various Application that do not need X
- diffutils
- man-db
- man-pages
- nano
- neofetch
- slackpkg
- sqlite
D - Program Development (C, C++, Lisp, Perl, etc.)
- autoconf
- automake
- binutils
- cmake
- flex
- gcc
- gcc-g++
- gdb
- git
- kernel-headers
- libtool
- m4
- make
- ninja
- perl
- pkg-config
- python3
L - System Libraries (needed by KDE, GNOME, X, and more)
- brotli
- elfutils
- glibc
- glibc-i18n
- libarchive
- libedit
- libffi
- libidn
- libmpc
- libunistring
- lz4
- lzo
- ncurses
- readline
- xxHash
- zlib
N - Networking (TCP/IP, UUCP, Mail, News)
- ca-certificates
- cyrus-sasl
- ethtool
- gnupg
- gnutls
- gpgme
- iproute2
- iputils
- libgcrypt
- libgpg-error
- libksba
- libmnl
- nc
- net-tools
- nettle
- network-scripts
- nftables
- nghttp2
- openssh
- openssl
- p11-kit
- rsync
- wget
- whois