My thoughts on Slackware, life and everything

Category: Me (Page 8 of 27)

Ten years of SlackBuilds.org

sbologo This week marks the tenth anniversary of SlackBuilds.org.

Many of us will remember the time when a true Slacker did not bother herself with build scripts. The “configure && make && make install” mantra was at the forefront of everyone’s mind when it came to installing new software. Slackware made this possible. Unlike the other big distros, the Slackware package management did (and does!) not get in your way. If you want to compile your software by hand, bypassing the package management ‘database’ (which in Slackware is nothing more than a directory), then nothing or no one is stopping you.

But when you compile and upgrade a lot of software, or when you have to re-install your computer, all that hand-compiled stuff is quite tricky, if not pretty hard, to replicate unless you wrote down all that you did. And if you had been writing your compile and build steps down anyway, then it was a small step towards formalizing this documentation into an actual build script. And Slackware was (mostly) developed using build scripts, called “SlackBuilds” because of these scripts’ extension “.SlackBuild”. So, these scripts used by Slackware became gradually more common among users of Slackware. And once you had compiled a package using a build script, other advantages would become obvious: if you owned more than one computer you did not have to compile your software twice. You would transfer the package to your other computer(s) and use the Slackware ‘pkgtools’ to install or upgrade the package. Fast and deterministic.

In those days, there was a web site called “linuxpackages.net” – formerly known as “linuxmafia.org” but I guess that name had a negative vibe to it. Linuxpackages.net would offer binaries for Slackware, nicely packaged in case you were not inclined to compile stuff yourself. The site was pretty popular, but it had a major disadvantage: the packages did not have a proper quality control and it would happen ever so often that people’s computers broke after installing one of their packages. The ‘LP‘ packages were apparently built on unclean systems, introducing unknown dependencies, and the build scripts would often be absent. Good old NoobFarm has a lot of nice LP related quotes taken from the regular Slackware meeting places on the Net.

Also in those days, somewhere end of May, beginning of June 2006 (don’t have exact records of our first contact) there was a relative Slackware freshman called Robby Workman. He and his pal Erik Hanson (who initiated the GWare project, a Gnome build for Slackware after Slackware dropped that Desktop Environment from the distro) envisioned a web site where one would be able to find – not binaries, but SlackBuild scripts. These scripts would be quality-tested by a small team of people who carried trust in the community. High-quality scripts and skilled, trustworthy people at the helm, this would certainly gain some traction and be generally beneficial to the Slackware ecosystem. Robby and Erik contacted me because I knew Pat, some of my work had landed in Slackware releases, and my SlackBuilds repository (scripts plus packages) was already quite well-known but not well-organized (no proper ChangeLog.txt).

At that time I was not yet a part of the Slackware coreteam by the way – that would take until August of that same year. Robby and Erik asked me if I would be interested to join them and become part of the admin team of this new SlackBuilds.org (SBo) project they had in mind and I said “yes”. We talked this through with Pat and in particular, we discussed our scope. We wanted Pat to be sympathetic of our cause and we did not want to become a possible burden to him on the long run. For that reason, the golden rule was established that all SlackBuild entries at slackbuilds.org would follow the style of the “mother” scripts. Basically, a SBo script should be transferable into the Slackware core distro without feeling out of place. I think it was this rule that made Pat give the nod of approval. Just think of the scenario where the SBo site would become popular using a style of SlackBuild scripts that did not look at all like Slackware’s own. There was a good chance that people would start demanding that Slackware must adopt the scripting style of SBo. This was a big no-no.

In contrast, my own SlackBuild scripts do a whole lot more than a basic Slackware script – notably my scripts will download the source tarballs for you. You will not find any of those scripts on slackbuilds.org for the exact reason I just explained.

I dug through my email logs and the oldest record I still have is this, the first test email of the then already functional project:

testing_SBo

Coïncidentally this day (8 June 2006) also marks the start of formalizing my own SlackBuilds repository. I had been working on my gen_repos_files.sh script since April 2006 and used it for the first time on June 8th. The first entry in the ChangeLog.txt says:

+--------------------------+
Thu Jun  8 15:10:57 UTC 2006
Starting the ChangeLog.txt for Alien's SlackBuild repository.

Ten years have passed since those days, and SlackBuilds.org has brought a lot of good to Slackware. SBo submissions find their way into the Slackware distro core quite regularly. Which is nice, but more important is the fact that users of the distro are no longer tied to the “small” (other distros’ judgement) official repository but can tap into a vast repository of high-quality build scripts. I don’t think that anybody can concieve today of the idea that there would not be a SlackBuilds.org repository.

The fact that the SlackBuild scripts of SBo remained so basic allowed several “third party” tools to be conceived that wrap themselves around the SBo content as it were, providing queue control and automation for the process of building your own packages as well as all their dependencies. Well-known examples are sbopkg, sbotools and slpkg. The queue management feature is special. Slackware is a distro that does not concern itself with dependency management – you install the full distro, it is small enough, and that fulfills all the dependencies. Working with 3rd party packages and scripts is different though, and these tools around SBo have found ways to build and install all the required dependencies along with the package that you want to have in the first place. All of that is made possible by the SBo “info” file which is part of every submission. It contains the essential information about the software that is to be packaged, it is easily parseable and therefore ideal source material for the 3rd party tools:

PRGNAM="name of application"
VERSION="version of application"
HOMEPAGE="homepage of application"
DOWNLOAD="direct download link(s) of application source tarball(s) arch-independent or x86"
MD5SUM="md5sum(s) of the source tarball(s) defined in DOWNLOAD"
DOWNLOAD_x86_64="direct download link(s) of application source tarball(s), x86_64 only"
MD5SUM_x86_64="md5sum(s) of the source tarball(s) defined in DOWNLOAD_x86_64"
REQUIRES="%README%"
MAINTAINER="name of SlackBuild script maintainer"
EMAIL="email address of author"

I have since retired as a SBo admin, although I still hang out in the users- and admin-channels on IRC. Others have come and gone as well, and the current team is still going strong (and with Robby & Erik still at the wheel). I admire these guys a lot, because just look at the size of the repository! The package database for Slackware 11.0 (which we started with in 2006) contains 429 submissions. Compare that number to the Slackware 14.1 repository’s 5745 entries. That’s more than 13 times as many! And now imagine that this small team (the admin team has grown a bit bigger since the beginning but not much) still QA’s every script by compiling it and checking the outcome. On top of that, the team has to test all these scripts against the upcoming Slackware 14.2 release and make sure that there will be a high-quality SBO repository for Slackware 14.2 when that gets released. The project is using GIT to manage this transition process. Learning about and understanding git is one of the most important things that I took from the SBo project.

These guys need your praise and support. Go tell them in the slackbuilds-users mailing list!

 

Stable 1.0.0 release of liveslak

blueSW-64pxYesterday on the final day of my short holiday (of sorts) I prepped and released version 1.0.0 of my “liveslak” project. It is stable and the bugs that were reported (plus some more) have been taken care of.

The “1.0.0” marker is not the end of its development of course. It means that I consider the project production-ready.  It will be used to create Live Editions of Slackware 14.2 (64bit and 32bit) when that is released. There’s still some more ideas for liveslak that I want to implement and those will become available as 1.x releases.

For demonstration purposes I have generated a new set of ISO images using liveslak version 1.0.0. There are ISO images for a full Slackware (64bit and 32bit versions), 64bit Plasma5 and MATE variants and the 700MB small XFCE variant (also 64bit). They are based on Slackware-current dated “Thu May 12 01:50:21 UTC 2016“.

This weekend I will “re-write” the original blog post on Slackware Live because it is the page that has had the biggest hit rate for the past months. People reading that original article may think that this project is still immature and not usable. I will re-write it into a landing page for anyone who is interested in a Live Edition of Slackware, and copy the original text to a new article for reference purposes. All previous articles about the liveslak project aka “Slackware Live Edition” are accessible through this shortcut link by the way.

The changes between 0.9.0 and 1.0.0

Not much was changed actually:

  • I added a new “tweaks” boot option to tweak various aspects of the system. As documented in the Wiki, these are the currently implemented tweaks (multiple tweak values can be combined when comma-separated):
    • nga – no glamor 2D acceleration, avoids error “EGL_MESA_drm_image required”. Because we now have “tweaks=nga“, the old boot parameter “nga” which did the same thing has been removed.
    • tpb – enable TrackPoint scrolling while holding down middle mouse button (a TrackPoint is found on IBM/Lenovo laptops but not only there).
    • syn – start the syndaemon for better support of Synaptics touchpads.
    • ssh – start the SSH server (it is disabled by default). 
  • The SSH daemon is disabled by default now. The default login accounts and passwords of Slackware Live Edition are too easy to find out. Imagine what could happen if you booted Slackware Live on a public network like an internet café!
    Note that you can still enable the SSH daemon on boot: by providing the “tweaks=ssh” boot parameter.
  • The few bugs reported since 0.9.0 have been fixed and I found a few bugs and enhancements too, which have also been dealt with. Check out the commit log if you are interested.

Download the ISO images

The ISO variants of Slackware Live Edition are: SLACKWARE, XFCE, PLASMA5 and MATE. These ISO images (with MD5 checksum and GPG signature) were uploaded to the master server (bear) yesterday and should be available by now on the mirror servers.

Have fun! Eric

Slackware Live Edition – final testing please

blueSW-64pxMy gut feeling tells me that I should announce a stable release of my “liveslak” project soon. I have implemented much more than I set out to do from the beginning, and no bugs have surfaced for a while.

So it was time to stamp a final beta number on the liveslak sources and generate new Slackware Live ISO images. I want you to give them a spin and report any bugs that you find. Otherwise there may well be an 1.0.0 release after the weekend.

Official liveslak version number is 0.9.0 (Beta9). The ISO images (full Slackware, Plasma5 and MATE variants as well as the lean XFCE variant) are based on Slackware-current dated “Thu May  5 05:17:19 UTC 2016” with the latest 4.4.9 kernel. Again, I added an ISO of the 32bit variant of full Slackware Live.

By now the ISO images have been uploaded to “bear” and ready for your consumption.

For background info on my project “Slackware Live Edition” please read the previous articles.

What’s new in 0.9.0?

  • A PXE server was added, through a script called “pxeserver”.
    When you boot Slackware Live from a Live media on one computer (the server), and preferably load the Live media into RAM using the “toram” boot parameter and start the “pxeserver” script, you enable every other computer in your (wired) LAN to boot Slackware Live over the network. If the “server” has Internet, then so will the PXE clients because the server will act as a traffic router. See the documentation on how to start and use the PXE server.
  • The ISO image is still a “hybrid” ISO, meaning you can use “cp” or “dd” to transfer the ISO onto a USB stick to make that a bootable Live medium. But I changed the parameters of the “isohybrid” program to match the ones used for the official Slackware ISO images – this fixes the problem where my ISOs failed to boot in VirtualBox when the file was larger than one GB. So, every curious journalist out there who wants to give Slackware Live Edition a try will get her chance without complaining.
  • Many other significant improvements and bug fixes during the past weeks. Check out the commit log if you are interested.

Download the ISO images

As stated above, you can choose between several variants of Slackware Live Edition. There’s ISO images for the SLACKWARE, XFCE, PLASMA5 and MATE flavours using the latest Slackware-current packages available. The Plasma5 variant comes with KDE Frameworks 5.21.0, Plasma 5.6.3 and Applications 16.04.0 on top of Qt5 5.6.0. The Mate 1.14 packages have all beeen recompiled by Willy Sudiarto Raharjo to take away any possibility of issues resulting from recent library updates in Slackware.

The ISO images (with MD5 checksum and GPG signature) are available on the master (bear) and should be available soon on the mirror servers. Check out the “0.9.0” subdirectory for ISOs based on the liveslak-0.9.0 scripts. A symlink called “latest” will always point to the latest set of ISO images.

Things to remember when you boot the ISO

The Slackware Live Edition comes with two user accounts: user ‘root’ (with password ‘root’) and user ‘live’ (with password ‘live’). My advice is to login as user live and use “su” or “sudo” to get root access.
Note: the “su” and “sudo” commands will ask for the ‘live’ user’s password!

Consult the documentation for assistance with the various boot parameters you can use to tailor the Live OS to your needs. The syslinux boot has help screens behind the F2, F3, F4 and F5 function keys and the grub boot screen has a “help on boot parameters” menu entry.

Slackware Live Edition is able to boot both on BIOS-based computers (where syslinux takes care of the boot menu) and UEFI systems (where grub builds the boot menu, which looks quite similar to the syslinux menu):

liveslak-0.9.0-xfce

Have fun! Eric

Bear is live

alienIn the evenings of the past few days I have been working hard on getting a new server setup to replace the buckling taper.alienbase.nl server.

I proudly announce bear.alienbase.nl , no longer a virtual machine but a real physical server I am renting at online.net. Thanks to many people donating money to ensure that I can pay the server’s rent for a long time to come, and thanks to kikinovak and the support staff at online.net for helping me with getting Slackware installed (it is not an official installation option). So:

Linux bear 4.4.6 #2 SMP Wed Mar 16 14:17:03 CDT 2016 x86_64
Intel(R) Atom(TM) CPU C2350 @ 1.74GHz GenuineIntel GNU/Linux

Bear is running Slackware64 14.2 RC1 and has a 2.5 Gbps (shared) connection to the internet. I managed to get 94 MB/sec downloads from slackware.uk, which means I saturated the full bandwidth of this UK mirror. Downloading content should easily give you speeds in the order or 20 MB/sec if you have that bandwidth at home, meaning a Slackware Live ISO should be downloaded to your computer in about two minutes.

Speaking of Slackware Live Edition, there’s another bounty associated with running a 64bit Slackware-current OS on this server – bear can generate the Live ISOs by itself. So I wrote a script (inspired by mirror-slackware-current.sh) called “create_liveslak_iso.sh” which works the same way: every time there is an update to the Slackware64-current ChangeLog.txt this script will create a 64bit Slackware Live ISO from scratch. It’s already scheduled in cron, and its output can be found at http://bear.alienbase.nl/mirrors/slackware/slackware-live/slackware64-current-live/ . Note that the ISO creation process takes roughly two hours, so before starting a download please check the logfile to see if the process has finished (last line should be “— Cleaning up the staging area…“)

This weekend, if I have time (plans for Easter are still prone to change) I will migrate the SlackDocs Wiki (docs.slackware.com) from taper to bear and then taper will no longer run a critical part of my services. The cgit web interface to the git repositories is already up and running at http://bear.alienbase.nl/cgit/ and after Easter, the actual git repositories at taper will stop being accessible on taper when I move them over to bear.

Summarizing: all of you who were using taper.alienbase.nl for downloading Slackware related stuff, please switch to bear.alienbase.nl. The new server offers http, https and rsync access to all content and does not apply black- or whitelisting. Everyone is welcome to use it. The server has unlimited data transfers so I do not have to be afraid of hidden costs.

taper.alienbase.nl will probably also stop acting as a HTTP mirror

The virtual machine which runs “taper.alienbase.nl” as well as “docs.slackware.com“is still crashing under the load caused by massive downloads. The server’s rsync access is already limited to a few known sources but when half the community is downloading my Slackware-current install ISOs and the Live ISOs using HTTP, this is still killing the server. I have to hard reset it at least once a week.
On top of that, the bandwidth usage is still between 50 and 200 Mbit/sec continuously, causing financial issues for the person who donated the use of this virtual machine.

I am afraid I have to take additional measures, and prohibit future access to the ISO images. I am thinking about how I can still make the slackware-current install ISOs available – probably they will get mirrored on slackware.uk where you already can download the Live ISOs.

I wanted to rent a small VPS at online.net which offers unlimited bandwidth for a fixed monthly price but they are currently not able to deliver. So currently I have no real options for moving my repositories.

Again my apologies for the inconvenience caused.
However I consider the downtime for docs.slackware.com which is caused by the frequent crashes unacceptable – just as much as I think my pal should not suffer from financial backlash as a result of the growing popularity of these ISO images.

Eric

« Older posts Newer posts »

© 2025 Alien Pastures

Theme by Anders NorenUp ↑