Before you do this, reconsider if it is really needed. More often than not, it isn't. This is why.
A common reason for attempting a minimal install is an expectation that Slackware will run faster. This is not true. Some example, (IMHO) valid, reasons for stripping back the install include:
- Installing on a device with limited disk space, where it is hard to add additional storage
- A setup where there is an ongoing cost to rent disk space (e.g. a Virtual Private Server)
- As a learning exercise. ;)
If you do have a good reason, below is a rough guide. It won't get you the smallest possible install but with relatively little effort you can take 32-bit Slackware 14.1 down to around the 2GB mark, which is good enough for many use cases. It is also relatively fast to setup, compared to a more precise minimal install (without any redundant dependencies).
Remember that only a full install is supported, so if you are asking for help on the Slackware forums you should first test your problem with a full install, to ensure that missing packages are not the source of your problems. At the very minimum mention that your installation is stripped back and exactly what you have removed (keep notes!).
- Install only the
a/
,d/
,l/
,n/
andx/
package sets. - After install is complete remove large, unneeded packages (see Tips below for help identifying the biggest packages). If you are unsure if something is needed, just leave it! Some examples of things to consider include:
- Large libs, like Qt
- Large network servers, like Apache (httpd)
- Any kernels (plus kernel modules and the source package) that you know you won't use
- Any development tools you know you won't need
- Excess font packages
- Consider also issuing
rm -r /usr/doc
after install. The contents of this directory (documentation, which can usually also be found online) take up quite some space and are not essential to the every day running of the operating system. (Note: This directory will get re-created and start to repopulate when new packages are installed or old ones upgraded). - Install anything you find missing and regularly use (e.g. your preferred window manager, a web browser, your favourite utilities). You can find the packages on your local install media or use a tool like
lftp
orwget
to fetch packages from a Slackware mirror.
- You can generate a sorted list of the largest installed packages via the following command:
( cd /var/log/packages/ ; grep -x 'U.*M' * ) | awk -F: '{print $3 "\t" $1}' | sort -n
- To simplify installing additional packages and keeping the system up to date, install and configure
slackpkg
and its dependencydiffutils
(both found in theap/
package set). - If you want to be able to read man pages locally, install
groff
,man
andman-pages
(found in theap/
package set). Otherwise there are plenty sites online that have the same information. - Have a look through PACKAGES.TXT (found on the install media or a mirror) to get an overview of available packages from the official repository. Pay particular attention to packages from the package sets you skipped over during install.
- If a program complains about a missing program or library, you can find the package that owns it using slackpkg's file-search command or looking in MANIFEST.bz2.
I've been looking for this a long time ago, but wouldn't this, decrease the boot time and also make Slackware faster?
Or is it the fat kernel installed by default that makes Slackware take forever to boot?