LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Introducing StripSlack, a minimal configuration of Slackware (https://www.linuxquestions.org/questions/slackware-14/introducing-stripslack-a-minimal-configuration-of-slackware-4175526790/)

kikinovak 11-29-2014 01:52 AM

Introducing StripSlack, a minimal configuration of Slackware
 
Hi,

I've recently built a LiveCD based on Slackware, which actually works quite well, except for the fact that there is way too much bloat included. So I started to give a sane minimal configuration for Slackware some thought.

Vincent Batts has a page about a minimal Slackware configuration, and the french Slackware users site sports an outdated article on the subject. I fired up a VM, bookmarked the LFS and BLFS documentation and then spent a few rainy afternoons reading and experimenting.

Here's a first version of StripSlack:

http://www.microlinux.fr/slackware/stripslack-14.1/

Here's a detailed introduction with a HOWTO:

http://www.microlinux.fr/slackware/s...lack-HOWTO.txt

I'd say this is a usable beta. Everything is working fine, there don't seem to be any showstoppers, though there are still some rough edges and some missing things.

In the past, the need for a "basic" Slackware installation has repeatedly been voiced in this forum. I hope my little project can answer these requests.

Test it and feel free to report your findings and suggestions, so we can work on making it perfect.

Cheers,

Niki

moesasji 11-29-2014 03:31 AM

Thanks for the effort Kikinovak!

Just one comment: it might be worth making clearer what exactly is included in your stripslack as I don't think you include a desktop seeing your tagfiles and this might not be everyones understanding of a minimal enterprise desktop, so better to be clearer about this on your webpage. In particular as determining which packages need to be installed to get a minimal XFCE + some specific applications isn't obvious.

I for example do this by using Salix's dependency repository with a bash-script to generate a specific tagfile for a XFCE desktop with only the applications I use, which works well enough for me.

ReaperX7 11-29-2014 04:00 AM

Nice work Kikinovak! Might check this out in a VM soon myself.

kikinovak 11-29-2014 04:16 AM

Quote:

Originally Posted by moesasji (Post 5276585)
Thanks for the effort Kikinovak!

Just one comment: it might be worth making clearer what exactly is included in your stripslack as I don't think you include a desktop seeing your tagfiles and this might not be everyones understanding of a minimal enterprise desktop, so better to be clearer about this on your webpage. In particular as determining which packages need to be installed to get a minimal XFCE + some specific applications isn't obvious.

At the moment this is only useful for someone who wants a minimal console-system. Desktop users definitely don't want to use this.

That being said, I have an idea that's slowly growing at the back of my head. Something similar to 'yum groupinstall <package_group>' on RHEL/CentOS or 'tasksel --install <package_group>' on Debian, only for Slackware. This will take some time, though, since my skills to do that aren't sufficient for the moment. But I'm working on it.

kikinovak 11-29-2014 06:10 AM

Quote:

Originally Posted by moesasji (Post 5276585)
Just one comment: it might be worth making clearer what exactly is included in your stripslack as I don't think you include a desktop seeing your tagfiles and this might not be everyones understanding of a minimal enterprise desktop, so better to be clearer about this on your webpage.

I didn't understand at first that you were referring to the h1 page title. I just changed it to avoid any further confusion.

http://www.microlinux.fr/slackware/

Thanks for the heads-up.

moesasji 11-29-2014 08:01 AM

Quote:

Originally Posted by kikinovak (Post 5276592)
That being said, I have an idea that's slowly growing at the back of my head. Something similar to 'yum groupinstall <package_group>' on RHEL/CentOS or 'tasksel --install <package_group>' on Debian, only for Slackware. This will take some time, though, since my skills to do that aren't sufficient for the moment. But I'm working on it.

Not sure what you aiming for, but generating the appropriate packages to install for a given minimal desktop system is not difficult to do using the salix dependency tree.

What I typically do is start with a similar file as you have as your stripslack.sh then add the package-names of things I know I want to add and run this through a simple script that fills in the missing packages using Salix's hard work. This gives me a complete list of packages to install on that system. With that list I can generate the tagfile using gust.

Initially I thought it would be hard to add packages, but in reality I find slackpkg sufficient to deal with the things I need to add. As a result I never extended the quick and dirty script for step 1 although in reality it would be no more than taking a diff between the list of installed and to_install packages.

kikinovak 11-29-2014 08:19 AM

Quote:

Originally Posted by moesasji (Post 5276633)
Not sure what you aiming for.

That's why I wrote a detailed document about the subject and linked to it in my initial post. Please take at least one minute to read it before starting to speculate.

http://www.microlinux.fr/slackware/s...lack-HOWTO.txt

Here's what it says:

Code:

Minimal system
--------------

When two users are talking about a "minimal system", chances are they don't
refer to the same thing. Embedded Linux systems will consist in barely more
than a kernel, a C library, a shell and a very reduced set of tools. On the
other side of the scale, installing the "Base System" package group on a
RHEL/CentOS system will leave you with several hundred packages and a complete
collection of shells and text editors as well as a full set of administration
tools.

A task-oriented approach will help us in finding the right balance between
these two extremes. Here's a few things we want to be able to do with our
minimal installation of Slackware:

  * Boot in multi-user console mode
  * Use the Bash shell
  * Edit text files using Vim
  * Display man and info pages
  * Manage disks and filesystems
  * Build an initrd
  * Manage users
  * Connect to a network
  * Install and upgrade packages through a network
  * Work remotely using SSH
  * Work with the Git revision control system
  * Compile applications
  * Browse the Web using a text-mode browser

StripSlack simply aims to provide all these functionalities while leaving out
all the stuff that's not strictly needed.

Cheers,

Niki

moisespedro 11-29-2014 08:46 AM

I am glad you kept bsd-games.

brianL 11-29-2014 08:49 AM

Got it running OK in VirtualBox. Thanks, Niki. :hattip:
It's been on my ToDo list for ages: setting up a minimal Slack in VBox, but I'm afflicted with chronic laziness. :redface: :D

Bertical 11-29-2014 08:52 AM

This is great. Would it be possible to include a blacklist for slackpkg so updates don't undo it all ?

brianL 11-29-2014 08:55 AM

Slackpkg only updates whatever you've got installed.

ivandi 11-29-2014 09:01 AM

Nice work.

If you aren't aware there is tracepkg, a great tool to track package dependencies.
Last time it was discussed here http://www.linuxquestions.org/questi...on-4175490991/.
And that's the version I use http://www.bisdesign.ca/ivandi/slackware/PAM/tracepkg/

BTW you don't need any X libs. Groff is used only by man and it works fine w/o X. And I am not sure why you need the netkit stuff. You have to add portmap and eventually inetd to make use of it. Telnet and tftp-hpa make me wonder too.

Cheers

ivandi 11-29-2014 09:21 AM

And here is a simple script I use in conjunction with slackpkg and tracepkg to get rid of the bloat in /l.

Code:

#!/bin/bash

grep -w /slackware64/l /var/lib/slackpkg/pkglist | cut -f6 -d ' ' | \
while read p ; do
    [ -f /var/log/packages/$p ] || continue
    grep -q $p /var/log/dependencies/* || echo $p
done

Cheers

moesasji 11-29-2014 09:30 AM

Quote:

Originally Posted by kikinovak (Post 5276637)
That's why I wrote a detailed document about the subject and linked to it in my initial post. Please take at least one minute to read it before starting to speculate.

http://www.microlinux.fr/slackware/s...lack-HOWTO.txt

For clarity: I referred to the "idea" that was "growing" in your head, not what you now posted, hence the quote above. Bottomline, please be careful in misreading replies...

Just for clarity: what you currently have is in itself very useful for many already, which is why I thanked you for this effort!

kikinovak 11-29-2014 10:38 AM

Quote:

Originally Posted by moesasji (Post 5276664)
For clarity: I referred to the "idea" that was "growing" in your head, not what you now posted, hence the quote above. Bottomline, please be careful in misreading replies...

Just for clarity: what you currently have is in itself very useful for many already, which is why I thanked you for this effort!

Right, sorry, it was a misunderstanding indeed.

Cheers,

Niki


All times are GMT -5. The time now is 09:33 AM.