Table of Contents

Slackware Installation

My Slackware installation notes. Some old notes have been archived.

Do note that Slackware also has a great documentation site.

Getting Slackware

The official way to do this is, of course, to get it from slackware.com.

Personally, I have getslack, a bash script based on (more accurately, a trimmed-down version of) the excellent (he termed it infamous) mirror-slackware-current.sh by Alien Bob. When going down this path, the next step would be to prepare the installation media.

Slackware Installer ISO Image

Slackware USB Installer

Note: GPT Disks and EFI

Using Slackware-current

Note: I have removed a section on DE-less installation since my current slackware installations ARE, in fact, DE-less.

Note: I have also removed a section on hijacking other Linux system - this, here, turned out to be VERY similar to what needed to be done.

[LastUpdated20210620]

I need to use GTK3 version that is newer that the one on 14.2, so I tried the development version (slackware64-current). I have done the same once (pre-11), so I am aware that there can be some issues when doing this. I am happy to say that I AM writing this on a slackware64-current (15.0 beta?) installation on my laptop.

So, this is a little note to my future self (or anybody that may be find this useful DISCLAIMER: Use this at your own risk!). I am doing this while still using Devuan and I want to keep that for backup, in case things go wrong. (On a side note, the reason I use Devuan was because of the GTK3 version.) So, I have an extra partition that I have reformatted and prepared to download the stuffs I need.

To maintain:

note: my libmy1slack library will detect current when /etc/slackware-version has '+' suffix. this sign will disappear when -current is near to a stable release.

Lean Installation

This is what I do for a lean (not necessarily minimal, but trimmed to my liking) installation. Will continuously update this based on my latest experience.

LastUpdated20230322

To maintain:

Configuration file for getslack

Configuration file for getslackpack

Configuration file for slackpatch

Listing for my1live-root

Core list for Slackware-15.0 (Current)

chroot Installation

20110621 I want to have a 32-bit system running in chroot environment on my Slackware64. I've used such system on Debian using schroot…

20110906 I managed to do this as published here

20120518 Minor change to the fstab entry for dev, which needs an rbind option so that the pty inside can be valid! Discussed here.

20120524 This is now part of my slackstuff collection (now known as my1shell)… in form of a script called slackroot.

20121031 The path to the chroot installation MUST ALL BE owned by root - or else, users will get a Write failed: Broken pipe error.

TODO A how-to on creating 32-bit chroot on 64-bit Slackware using slackroot script.

slack_chroot32.txt
- on my pure slack64 (maintained using getslack/getslackpack)
$ ARCH=i686 getslack
 
- create root filesystem using 32-bit packages
# slackroot /opt/chroot32 --arch x86 --desk -x
 
- copy user/group info from 64-bit system to chroot32
  = will maintain its own login info!
# preproot --init /opt/chroot32
 
- mount bind 'system' paths
# preproot /opt/chroot32
 
- ssh into system to use 32-bit chroot
# ssh user@127.0.0.1
 
- unmount bind 'system' paths
# preproot --done /opt/chroot32

Extra Notes

Some things to note…

20210620 Slackware's CPU frequency scaling works (checkout /etc/rc.d/rc.cpufreq) - just to remind myself, no need to look into this!

Admin-stuff for non-root user

To allow non-root users basic admin (poweroff,reboot,etc.), insert the following to /etc/sudoers (obviously, through sudo). Note: Actually, only to users in group power.

%power ALL=(ALL) NOPASSWD:/sbin/poweroff
%power ALL=(ALL) NOPASSWD:/sbin/reboot
%power ALL=(ALL) NOPASSWD:/usr/sbin/pm-suspend
%power ALL=(ALL) NOPASSWD:/usr/sbin/pm-hibernate
%power ALL=(ALL) NOPASSWD:/usr/sbin/pm-powersave

Note: The pm-* binaries (pm-utils) are no longer available on Slackware 15.0

Multicast DNS @ Zeroconf

Multilib Setup

Main references are here and here.

  1. Basically, need to have C library and compiler capable of multilib. I use getslackpack to download required packages from Eric's multilib site. Install as instructed.
  2. I already have a 32-bit Slackware tree downloaded using getslack which I use for my 32-bit chroot installation. I use massconvert32.sh script on this tree. The massconvert32.sh script can be used to update as well (built packages are not rebuilt). Install as instructed.
  3. My slackpatch script has been updated to handle 'blacklisted' 64-bit versions and 'upgraded' compat32 packages

Update20180903

Read here. I now have a more specific script to get multilib stuff (previously part of getslackpack script),

Upgrading 14.1 to 14.2

A bash shell script I used to upgrade from 14.1 to 14.2

Building Custom Kernel

Listing Packages

Run ls -l output on /var/log/packages

# ls -l /var/log/packages

Get package full name ONLY

# ls -l /var/log/packages | sed 's|^.* \(.*\)$|\1|g'

Get package name ONLY

 # ls -l /var/log/packages | sed -e 's|^.* \(.*\)$|\1|g' -e 's|^\(.*\)-[^-]*-[^-]*-[^-]*$|\1|g'

Find package files for installed packages

for pkg in `ls /var/log/packages/` ; do
	pkg_file=`find /home/share/slackware/slackware64-14.2/ -name "${pkg}.txz"` ;
	[ -f "$pkg_file" ] && continue ;
	echo "Cannot find file for $pkg" ;
done

Find installation log for standard packages

for pkg in `find /home/share/slackware/slackware64-14.2/slackware64 -name "*.txz" | sort` ; do
	base=`basename $pkg` ;
	name=${base%.*} ;
	test="/var/log/packages/$name" ;
	[ -f "$test" ] && continue ;
	echo "Cannot find file for $test" ;
done

To list currently installed packages (to be used in my1live)

Slackware/Linux Desktop

Little tips for better Slackware/Linux desktop experience.

Mplayer (gmplayer) runs without video window

Double-clicking in file manager (Thunar) shows no video (audio is ok, so program is running). Running mplayer from command line is fine. Turns out gui version is gmplayer - running from console shows this error message

Failed to open VDPAU backend libvdpau_va_gl.so

So, just edit ~/.mplayer/gui.conf, find the line for vo_driver and set it to gl. Show be ok after that… at least in my case it is.

Login issue

When using xdm, login fails sometimes with error message … Unable to establish ICE listener…

Mplayer and Xscreensaver

Note: NOT tested… just found this :-P

Although the mplayer setting to disable xscreensaver has been selected, xscreensaver still runs!

Possible Solution: Edit ~/.mplayer/config

heartbeat-cmd="xscreensaver-command -deactivate >/dev/null 2>&1"

Audio issue when using ALSA

The solution is here

Low volume when using ALSA

As seen here

Check /etc/asound.conf

  pcm.!default {
      type plug
      slave.pcm "softvol"
  }

  pcm.softvol {
      type softvol
      slave {
          pcm "dmix"
      }
      control {
          name "Pre-Amp"
          card 0
      }
      min_dB -5.0
      max_dB 20.0
      resolution 6
  }

Sometimes need type in pcm.!default to be hw

Slackware Application

Setting up application(s) on Slackware… but, most are applicable to all distributions.

'Hidden' Application

There are a couple (a few?)of applications that I thought have great features but relatively unknown (I only knew about them after looking for specific solution). Here they are:

Apache Setup

Editing /etc/httpd/httpd.conf

Setting up SSL: (for HTTPS!)

mariadb/mysql Setup

TeXLive Install/Setup

The default tetex is usable, but it is no longer maintained and some new packages are not available.

The recommended TeX distribution is TeXLive.

  • Download from here
  • Execute
    ./install-tl -gui
    • install path: /home/share/tool/texlive/YYYY (currently, YYYY=2020)
    • select basic, then customize (e.g. lang:en, graphics, math, etc.)
    • setup environment variable
      TL_VERS="2020"
      TL_PATH="/home/share/tool/texlive/${TL_VERS}"
      export PATH=${TL_PATH}/bin/x86_64-linux:$PATH
      export MANPATH=${TL_PATH}/texmf-dist/doc/man:$MANPATH
      export INFOPATH=${TL_PATH}/texmf-dist/doc/info:$INFOPATH
    • setup tlmgr (tlmgr option repository ctan)
  • Run manager
    tlmgr --gui
    • needs perl-tk
    • to get collection of a package
      tlmgr show <package>
2023/08/29 13:04

rsync server

Steam on Slack64 (in chroot32)

on an x86_64 machine,

Slackware Miscellaneous

Some personal notes…

Libreoffice