Slack-Minimal

What

A bare minimum system with just enough packages to allow you to login and connect to the network.

It has slackpkg, which will allow you to easily turn this bare-bones system into whatever you want, from a simple web server to a full installation of Slackware.

Why

I believe that one should start with a small system and expand it to fit your needs (this page is hosted on a VM with 512MB RAM and 1GB hard drive).

The official view is the opposite: install all then remove what you don’t need, as to minimize problems with missing dependencies.

If you are new to linux or Slackware, this is a good thing.

However, Slackware linux is one of the few distributions that does not make any assumptions about what you intend to do with your system, so it will let you do whatever you want, even if you end up with a broken system.

It simply lets the system administrator (that would be you) make all the decisions, including what packages to install.

In other words: the ‘install it all, then remove what you don’t need’ view is more like a guideline, not an actual rule, so you can actually install a minimal Slackware system if you so desire.

And we’ll do just that.

This minimalistic system may be useful for several reasons:

Low resources – Although this would seem a lesser issue nowadays (the typical PC will have 1TB hard drive and 4GB RAM), the fact is that virtualization is taking an increasingly bigger role in the IT world. So, if either you install it on a VM or some older hardware (remember that Slackware is still compiled for i486…), you will not have a lot of resources.

Security – The less packages you have installed on your system, the less possible bugs there will be (well, you can’t be hurt by a firefox bug if you don’t have firefox installed, can you?).

Learning – It can be a cool project and you can learn a lot. Since Slackware does not have dependency checking in it’s package manager, each time you install a new package (from the official repository or not) you will most likely encounter a problem with missing dependencies and will be forced to deal with it, thus, become more experienced in knowing what is needed to make stuff work.

How

First of all, a few warnings: any steps of the installation not mentioned here are beyond the scope of this post.

As an example, I’ll be using Slackware 13.1, so you should adapt this to your particular case.

Also, you should fulfill the following requirements:

1 PC with a connection to the Internet

1 Slackware 13.1 install DVD

So, let’s start!

The easiest way to do this is using tagfiles, which are the way the setup program knows what packages must / should be installed.

By using your own tagfiles, you will greatly decrease the installation time of your custom system.

Fortunately, I already made the tagfiles for Slack-minimal so, after you have booted the install DVD and partitioned your hard drive to your liking, all you have to do is:

# turn on the network
dhcpcd eth0
# then, download the tagfiles
wget http://cybercenter.com.pt/slack-minimal/tagfiles/slackware-13.1/tagfiles.tar.gz
# and extract them
tar zxvf tagfiles.tar.gz
# you are now ready to start the installer
setup

Now, you proceed normally by selecting your
swap partition.

When you reach the package selecting screen,
just click ‘OK’ as any selection you make here
is irrelevant.

At this point, we select the ‘tagpath’ option…

…and point it to our previously created directory
which contains our custom tagfiles and click ‘OK’.
From now on, the install process will continue
normally.