Main menu:

Sponsoring

Please consider a small donation:

 

 

Or you can donate bitcoin:

 

Thanks to TekLinks in Birmingham, AL, for providing colocation and bandwidth.

Page Rank

Fame

FOSS Force Best Blog--2013 Award

Recent posts

Recent comments

About this blog

I am Eric Hameleers, and this is where I think out loud.
More about me.

Search

My Favourites

Slackware

Calendar

February 2016
M T W T F S S
« Jan    
1234567
891011121314
15161718192021
22232425262728
29  

RSS Alien's Slackware packages

RSS Alien's unofficial KDE Slackware packages

RSS Alien's multilib packages

Meta

Slackware Live Edition – on its way to 1.0?

blueSW-64pxLast week the second Beta of the upcoming Slackware 14.2 was released. My goal was to have a new Beta of my liveslak ready by that time, so that I could provide new ISO images to test the Slackware Beta2 on a live medium. Unfortunately, there was an attack of the flu in my team at work and things got a bit busier than usual. There was a plus side to this: some last moment bug fixes which could be applied to my scripts – the result of having more evenings available to test. Therefore the new release is not labeled “0.5.0” but “0.5.1

Check out my previous articles about Beta1 Beta2 Beta3 and Beta4 releases for these scripts, they contain a lot of background about the reasons for creating “yet another” Live version of Slackware. The articles contain instructions on the use of the Live ISO images and their boot parameters and I am not going to repeat all of them here.

What’s new in 0.5.1?

My releases are meant to accomplish something I think is essential to my Live Edition. When I reach 1.0 it means that no essential functionality is missing, and that the features I am going to add later on are “nice to have”. I think that that liveslak is mostly complete at this point, but it is lacking proper documentation – the last thing to do before 1.0.

One of the essential properties of the USB variant of a Live Distribution is that it should be able to store your changes and make them persistent across reboots. In the 0.4.0 release, I added a LUKS encrypted homedirectory and earlier on, I implemented OS persistence by writing changes to a directory “persistence” in the root of the Linux partition of the Live USB drive. Some people will rather want to be able to use a FAT/NTFS formatted USB stick because that allows them easier data transfers to and from non-Linux computers. So my Beta5 adds an alternative persistence method: writing the changes to a loop-mounted container file instead. That file is called “persistence.img” and should be in the root of the Live partition. The “iso2usb.sh” script takes care of creating the persistence and LUKS container files, the process of transforming the ISO into a practical USB Live OS is straight-forward and simple.

Adding my Slackware Live Edition to a FAT formatted drive is an exercise I will leave to the reader, but in theory this should now be possible.

Some more noteworthy updates in 0.5.0:

  • The Compose Key for german keyboards is now Scroll Lock instead of Right-Alt (aka Alt-Gr).
  • A “toram” boot parameter allows you to run the Live OS completely in RAM (you can remove the bootable Live medium after boot).
  • A “blacklist” parameter allows you to blacklist kernel module(s) that prevent a properly functioning environment (like “nouveau” does with some new hardware).
  • The XDM graphical login for the XFCE variant was extended with a “console” button which allows you to effortlessly drop to a console (runlevel 3).

Download the ISO images

I have created ISO images for the SLACKWARE, XFCE, PLASMA5 and MATE flavours using the latest Slackware64-current packages available today (Slackware 14.2 Beta 2).

You can find the ISO images plus their MD5 checksum and GPG signature at any of the following locations – look in the “0.5.1” subdirectory for ISOs based on the liveslak-0.5.1 scripts:

Please allow some time to synchronize these mirror servers.

The ISOs have two user accounts: root (with password ‘root’) and live (with password ‘live’). My advice: login as user live and use “su” or “sudo” to get root access (note: “su” and “sudo” will want the live password!).

The ISOs are 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):

slackwarelive-0.4.0_syslinux

 

How to create a persistent USB stick from the ISO?

The ISO can be burnt to a DVD or copied to USB stick using ‘dd’ or just plain ‘cp’, but that will give you a read-only medium because all changes to the Live OS are in fact written to your computer’s RAM.

Use the ‘iso2usb.sh‘ script to create a Live OS on the USB device with persistence.

By default, the changes you make while running Slackware Live will then be preserved across reboots because the OS will write all these changes to the directory “persistence” in the root of the USB device. The script requires an input and an output parameter at a minimum:

# ./iso2usb.sh -i ~/Download/slackware64-live-current.iso -o /dev/sdX

… where /dev/sdX is the device name of your USB stick.

Alternatively you can use a file “persistence.img” in the root of the USB device which will be loop-mounted by the Live OS and changes to the system will be written to the filesystem inside this container file. A feature which should be appreciated by people who want to use a USB stick with a VFAT partition instead of a Linux ext4 partition. The script requires an additional parameter “-P” in this case:

# ./iso2usb.sh -P -i ~/Download/slackware64-live-current.iso -o /dev/sdX

 

Note that your USB stick will get formatted – erasing all data currently stored on it. The iso2usb.sh script will pause to show you the characteristics of the target device and ask you once more if you really want to continue erasing it. You will not easily destroy your hard drive unless you are really not paying attention!

How to create the LUKS encrypted homedirectory container?

The iso2usb.sh script has a parameter “-c” which takes a size argument. If you want to create a 400 MB container file to hide your homedirectory in, then you need to specify “-c 400M”. If you want 2.5 GB for your homedirectory, use “-c 2.5G”. If you are not concerned so much with the exact size but want to allocate a percentage of the free space on the stick, then use “-c 40%” to create a LUKS container that uses 40% of the available free space.

Now to put that into an actual example command line which will create a file (its name will be “slhome.img” starting with the 0.5.0 release) using up 50% of the free space on the stick:

# ./iso2usb.sh -i slackware64-live-xfce-current.iso -o /dev/sdX -c 50%

When the script gets to the point where it creates the LUKS container file, it will prompt you for a passphrase which will be used for encrypting and decrypting the container’s data. Right after that, the script will prompt you to enter that passphrase again when the LUKS container is unlocked and the ISO’s /home content is copied into the container.

Booting the Live OS

When you boot Slackware Live on a BIOS computer, Syslinux will handle the boot and show the following menu:

  • Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)
  • Non-US Keyboard selection
  • Non-US Language selection
  • Memory test with memtest86+

You can select a keyboard mapping that matches your computer’s. And/or boot Slackware in another language than US English. You will probably want to change the timezone; syslinux allows you to edit the boot commandline by pressing <TAB> because the syslinux bootmenu does not offer you a selection of timezones.

On UEFI computers, GRUB2 handles the boot and it will show a menu similar (and similarly themed) as the Syslinux menu:

  • Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)
  • Non-US Keyboard selection
  • Non-US Language selection
  • Non-US Timezone selection
  • Memory test with memtest86+

Editing a Grub menu is possible by pressing the ‘e’ key. After making your changes to the boot commandline, press <F10> to boot.

Another difference between Syslinux and Grub menus: in Grub you select keyboard, language and/or timezone and you’ll return to the main menu every time. You still have to select “Start Slackware Live” to boot. In the Syslinux menu, only the keyboard selection menu will return you to (apparently bot not actually) the same main menu. The non-US language selection will boot you into Slackware Live immediately without returning to the main menu. A limitation of syslinux.

Have fun! Eric

Almost weekend again – what’s in store

Just a quick recap of my work during the past week (well… the work that I do besides my paid-for work):

I updated my packages for calibre and chromium with new versions. I updated the set of “compat32” packages for a multilib setup on slackware64-current to match the Slackware packages contained in the new Slackware 14.2 Beta 2.

And I updated the “plasma” package set of my KDE5 (aka Plasma 5) repository on ‘ktown‘; this is also just also for slackware-current. Plasma was upgraded to 5.5.4 which is a new bugfix release.

And there is a bit more, still in the pipeline. I have stamped a “version 0.5.0″ onto my liveslak scripts and I am currently in the process of generating new ISO images for my Slackware Live Edition (in full Slackware, Plasma5, Mate and slimmed-down XFCE variants).

After I upload the new ISOs I will update the git repository with liveslak-0.5.0 sources. More about that hopefully tomorrow if my testing yielded good results.

Cheers, Eric

Slackware Live Edition, updated

blueSW-64pxDuring the past weeks I have been working on my “liveslak” scripts for the Slackware Live Edition. Check out my previous articles about Beta1 Beta2 and Beta3 releases for these scripts, they contain a lot of background about the reasons for creating yet another Slackware Live, as well as instructions on the use of the Live ISO images and their boot parameters.

I will be numbering the releases with ‘normal’ version numbers from now on, so the 4th beta release translates to “0.4.0”. The 1.0 release will contain everything I consider essential for my Slackware Live Edition. I think I am rapidly working toward that final milestone..

Update 06-jan-2016: please continue reading and commenting in my follow-up article on “Beta 5“.

 

What’s new in 0.4.0?

As with these previous public releases, this Beta4 marks a new milestone in the functionality of the Live OS. So what’s new? A feature I consider crucial for a persistent Live OS on a USB stick that you carry around with you in your jacket pocket… data protection! Persistence of the Live OS means, the things you change or add (or delete) are stored on the USB medium and will survive a reboot. As opposed to the raw ISO image (burnt to a DVD or ‘dd’-ed to a USB stick) which is a pure Live OS where all your modifications are written to RAM and gone when you reboot.

Data protection. How do you protect the stuff you are accumulating in your live user’s homedirectory, such as passwords, confidential documents, GPG and SSH keys etc? You lose the USB stick, someone else may steal it – your sensitive files will be compromised. Therefore the Slackware Live Edition offers you the option to create a LUKS-encrypted container file in the Linux filesystem of the USB stick. The filesystem inside that encrypted container will then be mounted on the /home directory of the Live OS when it boots. The LUKS passphrase you entered when creating the container, will be prompted for during the boot-up of the Live OS. On shutdown, the container will be locked again and a potential thief of your USB stick will be unable to get to the files in the LUKS container.

But there’s more of course. Here are some other highlights:

  • Better looking Grub boot menu (UEFI computers) by letting the “make_slackware_live.sh” script generate the used fonts.
  • The X session now supports the Compose Key. Use the Right-Alt (aka Alt-Gr) key to generate composed characters (like ë, ï, é etcetera).
  • When selecting a non-US keyboard, you can toggle between that and the US keyboard layout in your X session by pressing the Shift-Alt key repeatedly.
  • On request of Pat, the SLACKWARE ISO no longer contains the Nvidia binary drivers. You’ll get a pure Slackware experience without any 3rd party software getting in the way.
  • The ALSA softvol pre-amp is no longer applied when the pulseaudio package is installed.
  • The “isohybrid” commandline in the “make_slackware_live.sh” script has been tuned so that the resulting hybrid ISO file should boot on a larger variety of computers.

Download the ISO images

I have created ISO images for the SLACKWARE, XFCE, PLASMA5 and MATE flavours using the latest Slackware64-current packages available today. That means, you  can check out the recently added PulseAudio comfortably. For the PLASMA5 variant, I used the very latest KDE-5_16.01 packages available in my ‘ktown‘ repository. Willy Sudiarto Raharjo built a fresh set of Mate packages specifically for this Live release.

You can find the ISO images plus their MD5 checksum and GPG signature at any of the following locations – look in the “0.4.0” subdirectory for ISOs based on the liveslak-0.4.0 scripts:

Please allow some time to synchronize these mirror servers.

The ISOs have two user accounts: root (with password ‘root’) and live (with password ‘live’). My advice: login as user live and use “su” or “sudo” to get root access (note: “su” and “sudo” will want the live password!).

The ISOs are 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):

slackwarelive-0.4.0_syslinux

 

How to create a persistent USB stick from the ISO?

The ISO can be burnt to a DVD or copied to USB stick using ‘dd’ or just plain ‘cp’, but that will give you a read-only medium because all changes to the Live OS are in fact written to your computer’s RAM.

Use the ‘iso2usb.sh‘ script to create a Live OS on the USB device with persistence. Changes you make while running Slackware Live will then be preserved across reboots because the OS will write all these changes to the directory “persistence” in the root of the USB device. The script requires an input and an output parameter at a minimum:

# ./iso2usb.sh -i ~/Download/slackware64-live-current.iso -o /dev/sdX

… where /dev/sdX is the device name of your USB stick which will get formatted – erasing all data currently stored on it. The iso2usb.sh script will pause to show you the characteristics of the target device and ask you once more if you really want to continue erasing it. You will not easily destroy your harddrive unless you are really not paying attention!

How to create the LUKS encrypted homedirectory container?

THe iso2usb.sh script has been extended with a new parameter “-c” which takes a size argument. If you want to create a 400 MB container file to hide your homedirectory in, then you need to specify “-c 400M”. If you want 2.5 GB for your homedirectory, use “-c 2.5G”. If you are not concerned so much with the exact size but want to allocate a percentage of the free space on the stick, then use “-c 40%” to create a LUKS container that uses 40% of the available free space.

Now to put that into an actual example commandline which will create a file (its name will be “slhome01.img” by default) using up 50% of the free space on the stick:

# ./iso2usb.sh -i slackware64-live-xfce-current.iso -o /dev/sdX -c 50%

When the script gets to the point where it creates the LUKS container file, it will prompt you for a passphrase which will be used for encrypting and decrypting the container’s data. Right after that, the script will prompt you to enter that passphrase again when the LUKS container is unlocked and the ISO’s /home content is copied into the container.

Booting the Live OS

When you boot Slackware Live on a BIOS computer, Syslinux will handle the boot and show the following menu:

  • Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)
  • Non-US Keyboard selection
  • Non-US Language selection
  • Memory test with memtest86+

You can select a keyboard mapping that matches your computer’s. And/or boot Slackware in another language than US English. You will probably want to change the timezone; syslinux allows you to edit the boot commandline by pressing <TAB> because the syslinux bootmenu does not offer you a selection of timezones.

On UEFI computers, GRUB2 handles the boot and it will show a menu similar (and similarly themed) as the Syslinux menu:

  • Start (SLACKWARE | PLASMA5 | XFCE | MATE) Live (depending on which of the ISOs you boot)
  • Non-US Keyboard selection
  • Non-US Language selection
  • Non-US Timezone selection
  • Memory test with memtest86+

Editing a Grub menu is possible by pressing the ‘e’ key. After making your changes to the boot commandline, press <F10> to boot.

Another difference between Syslinux and Grub menus: in Grub you select keyboard, language and/or timezone and you’ll return to the main menu every time. You still have to select “Start Slackware Live” to boot. In the Syslinux menu, only the keyboard selection menu will return you to (apparently bot not actually) the same main menu. The non-US language selection will boot you into Slackware Live immediately without returning to the main menu. A limitation of syslinux.

Caveats and tips

Remember that this is still a Beta! There are still some rough edges that I am aware of, and if you find others please let me know.

  • Using the Nvidia binary drivers on a persistent USB stick – once you pass the argument “load=nvidia” and your USB stick is persistent, you have to keep loading the nvidia module or else your X serssion will no longer start. If you are always going to use the USB stick on computers with supported Nvidia cards, the simplest solution is to move the file “0060-nvidia-352.63_4.4.0-current-x86_64.sxz” from “liveslak/optional/” to the “liveslak/addons/” directory so that it is loaded by default, saving you from typing “load=nvidia” every time. The ugly solution is to remove the content of the “/persistence/” directory on the Linux partition.
  • Booting a persistent USB stick with LUKS home to the “virgin condition” – suppose you screwed up somehow and the USB stick won’t work anymore. You can boot the original Live OS without all your accumulated persistent changes by adding the boot command parameter “nop” which stands for “no persistence”. That will still mount the LUKS container on the /home directory. If you want to ignore the LUKS container, and use the /home directory of the original Live OS, an additional parameter “luksvol=” must be added to the boot commandline. After logging in you can remount the Linux partition of your stick to make it writable:

    # mount -o remount,rw /mnt/livemedia

    and proceed with pruning the persistence directory “/mnt/livemedia/persistence” and/or fixing the LUKS container file “/mnt/livemedia/slhome01.img“.

Happy hacking! Eric

KDE 5_16.01 for slackware-current

plasma5_startup I had big issues with my Internet connectivity this past week, when my internet cable modem suddenly died. I was able to use a backup connection on my telephony modem but the 1 Mbit/sec up- and download offered by that outlet was not sufficient for the amounts of data I had to upload. So, I was very happy to get a new modem yesterday evening and found that my 200/20 Mbit/sec connection was restored overnight. That allowed me to upload the latest ‘ktown’ package set to the mirror server. KDE 5_16.01 is now available for your enjoyment. These packages are based on the latest KDE releases: Frameworks 5.18.0, Plasma 5.5.3 and Applications 15.12.1.

What’s new in KDE 5_16.01?

  • Frameworks 5.18.0 is an enhancement release. See https://www.kde.org/announcements/kde-frameworks-5.18.0.php .
    • The ‘bluez-qt’ package is now finally being built since Slackware switched to BlueZ 5.
    • Bug 356529 was resolved: the very visible “I18N_PLURAL_ARGUMENT_MISSING” error in various places.
  • Plasma 5.5.3 keeps polishing the 5.5 series. See https://www.kde.org/announcements/plasma-5.5.3.php .
    • Now that Slackware contains PulseAudio, I was able to compile and add the ‘plasma-pa’ package which adds a PulseAudio based volume control Plasmoid for your system tray.
    • Slackware also moved to BlueZ 5 (which caused a requirement for PulseAudio in order to fix the broken BlueTooth audio)  and therefore another new package is available in the Plasma set: ‘bluedevil’.
    • I have added back the previously removed ‘kde-wallpapers’ and ‘oxygen-fonts’ packages to the “plasma-exta” section  (used to be part of Applications) because Plasma 5 was left with just a single ugly wallpaper otherwise and there was a user request for the fonts.
    • Let me also mention again this noteworthy improvement of Plasma 5.5 because some people missed it the previous time:
      • Support for legacy Xembed protocol is back – the blueman and HP systray icons are again visible without having to jump through hoops. The package “xembed-sni-proxy” which I added a few releases earlier, is gone from my repository because its code is now part of Plasma itself. Don’t forget to run “removepkg xembed-sni-proxy“!
  • The Applications 15.12,1 is a bugfix release. For a full list of changes to applications, read this page.
    • After the previous KDE 5_15.12 the overlooked (and therefore missing) ‘baloo5-widgets’ package was added.

Some things to tell about the Plasma 5 dependencies.

  • I upgraded OpenAL again, and rebuilt qt5 and phonon against Slackware’s PulseAudio.
  • There’s a SlackBuild script but no package for “unar” in the repository. Unar is an un-archiver originating from Mac OS-X. The Ark package in KDE Applications can use ‘unar’ to provide RAR view/extraction support, even for the latest RAR formats, but ‘unar’ depends in turn on two pieces of software I did not want to add yet; ‘gnustep-base’ and ‘gnustep-make’. If you really want to have ‘unar’ then download the SBo scripts for these gnustep utilities, build your own packages and then build ‘unar’. Let me know how that went and how big the gnustep packages are.

If you want to test the new release in a Live environment, you need to wait just a little bit longer. I am preparing ISO images for the new 0.4.0 (Beta4) release of my Slackware Live Edition. These ISOs are based on the latest Slackware64-current and the PLASMA5 variant contains my KDE-5_16.01 packages. I hope to be able to upload the ISOs during the weekend.

Installing or upgrading Frameworks 5, Plasma 5 and Applications

You can skip the remainder of the article if you already have my Plasma 5 installed and are familiar with the upgrade process. Otherwise, stay with me and read the rest.

As always, the accompanying README file contains full installation & upgrade instructions. Note that the packages are available in several subdirectories below “kde”, instead of directly in “kde”. This makes it easier for me to do partial updates of packages. The subdirectories are “kde4″, “kde4-extragear”, “frameworks”, “kdepim”, “plasma”, “plasma-extra”, “applications” and “telepathy”.

Upgrading to this KDE 5 is not difficult, especially if you already are running KDE 5_15.12. You will have to remove old KDE 4 packages manually. If you do not have KDE 4 installed at all, you will have to install some of Slackware’s own KDE 4 packages manually.

Note:

If you are using slackpkg+, have already moved to KDE 5_15.12 and are adventurous, you can try upgrading using the following set of commands. This should “mostly” work but you still need to check the package lists displayed by slackpkg to verify that you are upgrading all the right packages. Feel free to send me improved instructions if needed. In below example I am assuming that you tagged my KDE 5 repository with the name “ktown_testing” in the configuration file “/etc/slackpkg/slackpkgplus.conf“):
# slackpkg update
# slackpkg install ktown_testing (to get the newly added packages from my repo)
# slackpkg install-new (to get the new official Slackware packages that were part of my deps previously)
# slackpkg upgrade ktown_testing (upgrade all existing packages to their latest versions)
# removepkg xembed-sni-proxy ktux amor kde-base-artwork kde-wallpapers kdeartwork (they don’t exist in the repo anymore)
# slackpkg upgrade-all (upgrade the remaining dependencies that were part of my repo previously)

And doublecheck that you have not inadvertently blacklisted my packages in “/etc/slackpkg/blacklist“! Check for the existence of a line in that blacklist file that looks like “[0-9]+alien” and remove it if you find it!

Recommended reading material

There have been several posts now about KDE 5 for Slackware-current. All of them contain useful information, tips and gotchas that I do not want to repeat here, but if you want to read them, here they are: http://alien.slackbook.org/blog/tag/kde5/

A note on Frameworks

The KDE Frameworks are extensions on top of Qt 5.x and their usability is not limited to the KDE Software Collection. There are other projects such as LXQT which rely (in part) on the KDE Frameworks, and if you are looking for a proper Frameworks repository which is compatible with Slackware package managers such as slackpkg+, then you can use these URL’s to assure yourself of the latest Frameworks packages for Slackware-current (indeed, this is a sub-tree of my KDE 5 “testing” repository):

Where to get the new packages for Plasma 5

Download locations are listed below (you will find the sources in ./source/5/ and packages in /current/5/ subdirectories). If you are interested in the development of KDE 5 for Slackware, you can peek at my git repository too.

Using a mirror is preferred because you get more bandwidth from a mirror and it’s friendlier to the owners of the master server!

Have fun! Eric

OpenJDK updated to 7u95_b00

icedteaVersion 2.6.4 of IcedTea was released last week. The IcedTea “build harness” for OpenJDK will compile OpenJDK 7 “Update 95 Build 00“. In Slackware terminology: here is the package openjdk-7u95_b00. The release synchronizes with Oracle’s January 2016 updates to OpenJDK. Read more about the release on the blog of release maintainer Andrew Hughes.

This is the list of security fixes and CVE‘s which have been addressed and fixed in this release.

Note about usage:

Remember that I release packages for the JRE (runtime environment) and the JDK (development kit) simultaneously, but you only need to install one of the two. The JRE is sufficient if you only want to run Java programs (including Java web plugins). Only in case where you’d want to develop Java programs and need a Java compiler, you are in need of the JDK package.

The Java package (openjre as well as openjdk) has one dependency: rhino provides JavaScript support for OpenJDK.

Optionally: If you want to use Java in a web browser then you’ll have to install my icedtea-web package too. While Oracle’s JDK contains a browser plugin, that one is closed-source and therefore Icedtea offers an open source variant which does a decent job. Note that icedtea-web is a NPAPI plugin – this prevents use of Java in Chrome & Chromium because those browsers only support PPAPI plugins, but you’ll be OK with all Mozilla [-compatible] browsers of course.

Download locations:

Have fun! Eric