Nov 122012

As the new slackware is out, I wanted to try a clean install on my rasperry-pis.
I referred to the super-detailed guide from dave (thanks!), but his build scripts needed just a little refreshing as upstream moved to a new firmware (boot changed slightly) and kernel version (ditching 3.1.9): more, they are committing on two kernel branches, one based on 3.2.27 (the default) and another based on 3.6.1.
So, at first I forked dave’s build script to build a 3.6.1 kernel, just to test, added some patches, rebuilt, and all went pretty well, but the installer wasn’t working.
Then I decided to go for the 3.2.27 branch, following upstream’s default: so I took the kernel config suggested by raspberrypi’s devs, added some modules to support various hardware, patched the kernel to support the BFQ I/O scheduler setting it as default.
The result are these new build scripts

and these premade packages/disk images

I’ll probably play with it a little in the next days to build a 3.6.1 kernel (and an installer with that) switching there too to a new .config with additions, but consider that times needed for building this stuff grows on the raspi, and running the complete build takes nearly 11 hours to complete.

Ah, while I was there I found some time to build a full LXDE, a Razor-qt/qtdesktop and other various packages for slackwarearm-14.0 using‘s scripts (I’ll try to organize this stuff as a repository soon)

Nov 022012

It has been some time since last post and many things happened: one of those is that I have been invited to work with the people at and I gladly accepted 🙂
Work there is really interesting and I feel like I’m learning a lot.

But the thing I felt most urgent, as I had chosen Slackware to host the services I administer at work and a new version of slackware is out, is to upgrade the lxc host and containers to slackware-14.0.

So I made some tests to adapt the procedure I described for slackware-13.37 (you might want to have a look at that too, mainly for the network setup) to the new version, trying at first to run a minimal slackware64-14.0 container on a slackware64-14.0 host.

I switched to slackpkg to install the packages in the container as I think, with just little modifications, it can be safely used as debootstrap is used on Debian: it also supports itself templates, so they can be used to install custom selections of packages (creating /etc/slackpkg/templates/mytemplate.template and passing the variable TEMPLATE=mytemplate to the lxc-create command).
So I patched it: here you can find the patched version for slackware and slackware64, and here is the one for slackwarearm.

I assembled a new template, placed it in my host filesystem as /usr/lib64/lxc/templates/lxc-slackware

cd /usr/lib64/lxc/templates
wget --no-check-certificate
mv lxc-slackware
chmod +x lxc-slackware

and installed my minimal slack with it

MIRROR= lxc-create -f /path_to/chuckd.config -n chuckd -t slackware
  • arch defaults to the host’s one. The template supports slackware{,64,arm} but this option makes sense only specifying arch=i486 on a x86_64 host to install a 32 bit container – only case possible/tested ATM
  • SUITE defaults to “14.0” (and it’s tested with that 😉 )
  • TEMPLATE defaults to “minimal-lxc” (in the previous article you can see the list of packages used)
  • MIRROR defaults to “” and points to a slackpkg mirror, the main tree, withouth the /slackware-$SUITE/ at the end.
    You can use also a local folder: supposing you have a mirror of the latest slackware64-14.0 in /my/path/slackware64-14.0 use MIRROR=cdrom://my/path. As this will be set as the default mirror in the container (during creation), in this case you surely have to edit it after (that path won’t be accessible by the container).
  • chuckd.config is the configuration file for the container (two examples are available in the previous article, depending on the chosen network setup)
  • chuckd is the name of the container
  • slackware is the linux flavour of the container

Then I edited /var/lib/lxc/chuckd/rootfs/etc/rc.d/rc.inet1.conf and /var/lib/lxc/chuckd/rootfs/etc/resolv.conf, the network configuration files of the container, with its network settings (IPADDR[0], NETMASK[0], GATEWAY and nameserver) and I started it with

screen -dmS init-chuckd /usr/bin/lxc-start -n chuckd

because launching it using a detached screen session leaves me an usable console (and I can reattach it, if needed).
And I happily connected to it through the network via ssh (or “lxc-console -n chuckd”) 🙂

While chatting with Alien Bob, he suggested me to try to install a full slackware on a lxc container, as a friend had tried it and got some problem logging in after.
I thought that happened because devices are defined outside of the containers and generally they don’t like manual adding or things like udev messing around, so I adapted the template also to disable an eventual /etc/rc.d/rc.udev and blacklisted the devs package (don’t install it in a container).
After that, I was able to install a full slackware64 in the container

slackpkg update
slackpkg install slackware64

While I was there, I tested also a remote connection through the nx protocol, installing freenx in the container with sbopkg

installpkg sbopkg-0.36.0-noarch-1_cng.tgz
sbopkg -r
sbopkg -i nx
sh /var/lib/sbopkg/SBo/14.0/network/freenx/
sbopkg -i freenx

and I connected to it from the host with nxclient.

Sep 242010

I submitted gource to and I’ve tried it with their repository

you can alternatively watch it with mplayer


first I got the avatars off gravatar with a perl script.

then the command I’ve used to do this (inside of the slackbuilds repository folder) is

gource -1280x800 -s 0.7 --user-image-dir .git/avatar/ --default-user-image \
  ../no_photo.png -a 0.25 --colour-images --bloom-multiplier 0.80 \
  --bloom-intensity 0.55 --user-scale 1.8 --user-friction 0.7 \
  --title " git history" --output-framerate 25 --disable-progress \
  --stop-at-end --output-ppm-stream - | ffmpeg -vpre libx264-default -y -b 3000K \
  -r 25 -f image2pipe -vcodec ppm -i - -vcodec libx264 ../gource.mp4
Aug 232010

LXDE logo

as I promised, I have added the necessary branches to my’s git master fork, so it will be easy to build a complete LXDE desktop using sbopkg.
I used existing components, I added alien bob’s scripts adapting them to template and I wrote some from scratch.

    UPDATE: all the components are submitted to now so there’s no particular need to set up my repository, unless you want latest testing (but working) stuff for current.
    I also removed the gnome-vfs building option because it’s obsolete starting with slackware 13.37; libatasmart, sg3utils, udisk, upower and gvfs are part of slackware since 14.0.
    Other modifications have been done at the end of 2015 following the latest development choices.
    I’ll try to keep it updated with the latest fixes, you can see them in the branch list of the git repository, so you can use them individually.

the quick install guide:

download and install the latest version of sbopkg (if you don’t have it already, as it’s a must-have application for slackware 😉 )
Launch it, and only if you using current, go to the Utilities menu and use the Repository option to select the SBo-git repository. If you’re using stable just leave the default settings and jump at the queue part.
You can also use some command line alternatives 😉
you can then go back to the main menu and select the Sync option.
If you find any problems syncing (still only in current case), just

rm -fR /var/lib/sbopkg/SBo-git
sbopkg -r

use this text file as /var/lib/sbopkg/queues/lxde.sqf


then launch

sbopkg -i lxde

choose in the dialog to keep the queue options and you’ve only to wait a little. 🙂

at the end, launching xwmconfig you can choose xinitrc.lxde and the next time you enter in X you’ll have a brand new shiny LXDE desktop. 😀

Aug 062010

hi, finally found the time to work a little on LXDE: I’ve prepared a second round of slackbuilds and packages based mainly on the git version of the various components (many improvements in there).
hope I haven’t missed anything of the things spotted (still have to do experiments with suspend).
maybe is better if I just cut and paste from the README.txt of the download folder

LXDE for slackware current

many of the slackbuilds here are from alien bob's repository and

I simply adapted/updated some things to build on current and added some others.
You can check the build scripts used in the "build" folder:
LXDE.SlackBuild is the script to launch (it uses a build queue, it's a modified
version of kde build script).

I updated the version of the stuff beyond the latest stable packages on sourceforge,
as on git there's lotta new interesting stuff going on:

- new libfm and pcmanfm with automounting/udisks support
- new lxappearance (this is version 2, renamed in the build script)
- many translation and other updates

How to use:

* install the packages for your architecture:

  - the i486 ones if you are running slackware-current
  - the x86_64 ones if you are running slackware64-current

packages are UNTESTED on 13.1 (but, who knows, they might work ;) )

* be sure to have installed the packages tango-icon-theme (for the default
  desktop icons/menu theme), vte (for lxterminal), atk, glib, pango, cairo and
  gtk+2 from the official slackware repository (obviously also X packages :P).

* run xwmconfig as user and choose the lxde session.

* start/restart X.

* if you want to run lxdm as the session manager (optional) apply the patch that you can
  find in this directory (instructions are inside the patch itself) to

these packages include *one* update of the standard slackware packages, glib2,
but unfortunately is needed for the new libfm.

if you find any problems report them on this linuxquestion thread

I’m only a little disappointed for having to upgrade glib2 but, you know, it’s testing stuff 🙂

soon I’ll try to do branches about these packages on my fork so I can use this stuff in my sbopkg queue: for eric scripts I think I’ll do a first commit in the corresponding branch adding the original script and a second one with the modified version (I tried to follow the autools-template).

you can find on the download page also a .tar of the build folder (with the sources folder and links in the slackbuilds folders too, for easy self-building).

happy testing! 🙂

EDIT: looks like suspend works! 😀

May 302010

As Robby Workman has announced on the users mailing list, they started a git repository for managing their slackbuilds. 🙂

This, besides being great news, has some implications: my SBo-git repository for -current has no sense to be continued anymore, as the logic (and Robby too :D) tells me to rebase my work on their repository.
It’s was also much cleaner and ordered, but I forked it on github and I started playing on it to have a branch to use to build my sbopkg queue.

so, if you want to follow my mods, the new address is:

2ManDVD                multimedia/2ManDVD: updated to 1.3.3, miscellaneous cleanups
LiVES                  multimedia/LiVES: fixed link to lives-exe binary, miscellaneous cleanups
audacity               audio/audacity: updated to latest 1.3.12 beta, miscellaneous cleanups
avidemux               multimedia/avidemux: fixed md5sum, added alien bob's fix for x86_64 paths and plugins build code
cabextract             system/cabextract: miscellaneous cleanups
cherokee               network/cherokee: updated to 1.0.1, added some configure options, miscellaneous cleanups
cksfv                  misc/cksfv: miscellaneous cleanups
clamav                 system/clamav: updated to 0.96.1, rewritten clamd.conf.patch, miscellaneous cleanups
cryptopp               libraries/cryptopp: downgraded to 5.5.2 for aMule
darkstat               network/darkstat: miscellaneous cleanups
dvgrab                 multimedia/dvgrab: miscellaneous cleanups
encfs                  revert system/encfs removal and adds a patch for the new toolchain
ffmpeg                 multimedia/ffmpeg: updated to r23248, added a configure option, miscellaneous cleanups
ffmpegthumbnailer      desktop/ffmpegthumbnailer: updated to 2.0.2, miscellaneous cleanups
foremost               system/foremost: miscellaneous cleanups
gavl                   libraries/gavl: added.
gdk-pixbuf             libraries/gdk-pixbuf: miscellaneous cleanups
gpac                   revert multimedia/gpac removal, adds a patch for the new libpng and miscellaneous cleanups
gst-plugins-bad        multimedia/gst-plugins-bad: updated to 0.10.18, miscellaneous cleanups
gst-plugins-ugly       multimedia/gst-plugins-ugly: updated to 0.10.14, miscellaneous cleanups
gst-python             libraries/gst-plugins-python: updated to 0.10.18, miscellaneous cleanups
hping3                 network/hping3: miscellaneous cleanups
id3                    audio/id3: miscellaneous cleanups
kino                   multimedia/kino: updated to 1.3.4 for the new ffmpeg
kvirc                  network/kvirc: updated to 4.0rc3 for qt4 build, miscellaneous cleanups
libiconv               libraries/libiconv: added libiconv, a text conversion library
libnice                libraries/libnice: downgraded to 0.0.10 for farsight2
libunicap              libraries/libunicap: added libunicap, a video capture library
ltris                  games/ltris: miscellaneous cleanups
mjpegtools             multimedia/mjpegtools: miscellaneous cleanups
obconf                 desktop/obconf: miscellaneous cleanups
perl-Compress-Raw-Zlib libraries/perl-Compress-Raw-Zlib: added perl-Compress-Raw-Zlib, a Perl interface to the zlib compression library
perl-Compress-Zlib     libraries/perl-Compress-Zlib: added perl-Compress-Zlib, a Perl interface to the zlib compression library
perl-IO-Compress-Base  libraries/perl-IO-Compress-Base: added perl-IO-Compress-Base, the base class for all IO::Compress and IO::Uncompress Perl modules
perl-IO-Compress-Zlib  libraries/perl-IO-Compress-Zlib: added perl-IO-Compress-Zlib, a Perl interface to allow reading and writing of gzip and zip files/buffers
python-twisted         network/python-twisted: miscellaneous cleanups
python2-chardet        libraries/python2-chardet: miscellaneous cleanups
scummvm                revert games/scummvm removal, updated to 1.1.1
snack                  audio/snack: added snack, a sound toolkit
soundtouch             revert libraries/soundtouch removal, updated to 1.5.0, miscellaneous cleanups
vice                   system/vice: added patch to fix build, miscellaneous cleanups
wmCalClock             desktop/wmCalClock: miscellaneous cleanups
wmMoonClock            desktop/wmMoonClock: miscellaneous cleanups
wmSun                  desktop/wmSun: miscellaneous cleanups
wmakerconf             desktop/wmakerconf: miscellaneous cleanups
wminfo                 desktop/wminfo: miscellaneous cleanups
wmnet                  desktop/wmnet: miscellaneous cleanups
wmweather              desktop/wmweather: miscellaneous cleanups
wormux                 games/wormux: updated to, miscellaneous cleanups
wvdial                 revert network/wvdial removal, updated to 1.6.1, miscellaneous cleanups
wxcam                  multimedia/wxcam: miscellaneous cleanups
x264                   multimedia/x264: updated to 20100425, added configure option, miscellaneous cleanups
zisofs-tools           revert system/zisofs-tools removal, miscellaneous cleanups

soon I’ll manage to build the queue on a fresh installed slackware 13.1 to try this new repository (last packages was built using SBo-git) so stay tuned if you prefeer prebuilt fresh goodies 🙂

P.S. in the meantime I managed to do lxde packages for slackware 13.1 from alien bob’s lxde build scripts and some stuff from, to create a slax-remix module to have an alternate desktop on that live distribution (it’s based on ex-current, now 13.1, too).
if you want to try them and report back any problem, I’ll be glad to improve them (if I am able to). 🙂

May 252010

as announced on slackware main site the 13.1 release of the oldest linux distribution is ready 🙂

slackware confirm itself one of the most innovative distribution in the field, with software updates surpassing latest ubuntu 😀

The SBo-git repository is ready too to be used with sbopkg on this new slackware version.

if you need fresh additional packages beside slackware standard full install, I built some (using sbopkg and SBo-git) for my personal use (the list) that I gladly share:

I massconverted now also the compat32 packages (waiting for official updates from alien bob) for running 32 bit software on multilib slackware64: if you are using those in the past, remember to remove libv4l-compat32 (it has been superseded by v4l-utils) before doing

upgradepkg --install-new --reinstall */*.txz

while in compat32 folder.

May 192010

updated SBo-git with some small fixes after the updates of 2 days ago: this is the repo at today.
there’s also a new contributor, Greg Tourte! 🙂

soon I’ll fix the individual branches to do a rebase and a merge in a new branch derived from master: after all, it looks cleaner to me than apply lot of fixes to current. 🙂

I also rebuilt my x86_64 packages (soon the i686 ones will follow).

then I’ll wait for the new 13.1 repository: alien bob hints about surprises and that stimulated a lot my curiosity 😀

May 082010

updated all my -currents to latest status (13.1 beta1: as usual, if you want you can check the current commits/branches on SBo-git page) and rebuilt all my stuff (x86_64 and i686).

I managed to set up also a redmine site to have a frontend for my projects. 🙂

but the best thing is that SBo-git has a new contributor of patches/fixes: tnx a lot and welcome, grissiom. 😀