My thoughts on Slackware, life and everything

Month: December 2015 (Page 1 of 2)

Beta3 of Slackware Live Edition is available

blueSW-64pxIt took me a while to get to a level where I could do another public update of my “liveslak” scripts for the Slackware Live Edition. The previous two articles about the Live OS generated quite some feedback and I think I was able to address a lot of those remarks and suggestions in the updated code. My TODO has however only shrunk with one item…

A “Beta3” is what we have now. My milestone for emitting a new Beta was to have a working UEFI boot. And I hope I managed that. Works here… for what it’s worth.

What is Slackware Live Edition?

Please read the previous two articles, “Slackware Live Edition” and “Beta 2” to get a better understanding and so that I do not have to repeat myself too much 🙂

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

We’re talking about a “live OS” here, which you can run off a CDROM, a DVD or a USB stick and does not have to be installed to a computer hard drive. You can carry the USB stick version with you in your pocket. You’ll have a pre-configured Slackware OS up & running in a minute wherever you can get your hands on a computer with a USB port. The USB version is “persistent” meaning that the OS stores your updates on the stick. The CD/DVD versions (and the USB stick if you configure it accordingly) run without persistence, which means that all the changes you make to the OS are lost on reboot.

I created “Slackware Live Edition” as a showcase for the development of Slackware. It is not meant as a generic Live Distro generator – it will only support the latest slackware-current. A tool to satisfy your curiosity!

The main script “make_slackware_live.sh” creates an ISO from scratch. The script installs Slackware packages or package sets into compressed “squashfs” modules, configures and optimizes the target filesystem to be run as a Live environment, and then generates an initial ramdisk that will assemble the Live environment when you boot. All that is put into a bootable ISO image file. Thanks to Linux kernel 4.x and the squashfs-tools package added to Slackware-current, the process requires no compilation nor does it need non-standard packages to create a Slackware Live Edition (of course, the Plasma, Mate and Cinnamon flavours do require 3rd party packages). The downside is that the ISO has to be created on Slackware-current (older versions of Slackware do not have the proper tools). It follows that the only Slackware release which is supported as a Live Edition is the “-current” development tree. All future releases will be supported too of course.

The “liveslak” scripts can generate a variety of Slackware flavors. The default script action is to create an ISO from scratch that will give you a complete 64bit Slackware-current Live Edition. The scripts can also create a 700 MB slimmed-down XFCE version with XDM as the graphical login manager which fits on a CDROM medium or a 1 GB USB stick; and for my own enjoyment (as well as yours I may hope) it can create a 3.0 GB ISO image of Slackware64-current but containing Plasma 5 instead of KDE 4, as well as an addition of several other packages I maintain: vlc, libreoffice, calibre, qbittorrent, ffmpeg, chromium, openjdk, veracrypt.

Since Beta 2 the scripts are also capable of generating a Mate and a Cinnamon flavour of Slackware (replacing Slackware’s KDE 4) courtesy of Willy Sudiarto Raharjo’s repositories.

slackwarelive_syslinux_beta2

How to create a persistent USB stick?

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 where all changes to the Live OS happen in RAM. You can 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. Typically you would run the script with 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!

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
  • Detect/boot any installed operating system
  • Memory test with memtest86+

Grub understands variables, which simplified the creation of the menu greatly and allowed me to add a timezone selection menu. 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, which could only be overcome by generating a lot more syslinux menu files than we already have.

 

Boot parameters & tweaks

You can use the following tweaks to the boot commandline:

  • 0|1|2|3|4|5|6|S|s|single (Select another runlevel to start with; the default is 4 for graphical login)
  • lang=nl_NL kbd=nl tz=Europe/Amsterdam (Example of language, keyboard and/or timezone customization)
  • nop (No persistence, i.e. boot the virgin installation in case your ‘persistence’ directory got corrupted)
  • nomodeset (Boot with kernel mode setting for graphics — needed with some machines)
  • load=nvidia (Load and configure binary Nvidia drivers that are present in some of the ISOs)
  • rootdelay=10 (Add 10 second delay to give the kernel more time to initialize USB – try this if the Live OS fails to boot)
  • hostname=aliens (Change the hostname for the OS; default hostname is “darkstar
  • livepw=”somestring” (Change the password for the ‘live’ user)
  • rootpw=”somestring” (Change the password for the ‘root’ user)
  • load=mod1[,mod2[…]] (load one or more squashfs modules that are present in the directory “/liveslack/optional”; by default none of the modules in the “optional” directory are loaded)
  • noload=mod1[,mod2[…]] (Prevent loading of one or more squashfs modules that are present in the directory “/liveslack/addons”; by default all of the modules in the “addons” directory are loaded on boot)
  • rescue (After initialization, you will be dropped in a rescue shell where you can perform lowlevel maintenance; the same happens anyway if the OS fails to boot)
  • debug (During init, pause at strategical locations while assembling the overlay filesystem and show relevant mount information)
  • swap (Allow the Live OS to activate all swap partitions it finds on the local hardware; by default, the hard drive will not be touched at all)
  • livemedia=/dev/sdX (Tell the init script which partition contains the Slackware Live OS you want to boot; this can become necessary if you have another copy of Slackware Live already installed to another drive partition)
  • livemain=directoryname (Use this if you copied the content of the ISO to a different directory than the default “liveslak” directory)

Download the ISO images

I have created ISO images for the SLACKWARE, XFCE, PLASMA5 and MATE flavours using the latest packages available today. You can find them at any of the following locations:

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.

Can I create an ISO myself?

Certainly! You can download my sources and have a go at it. Apart from the sources & scripts, you will need local copies of the repositories where the packages will be taken from. The Slackware and XFCE ISOs will of course need a mirror of the official Slackware64-current package tree. The Plasma5 ISO requires that you have mirrored my ‘ktown‘ repository as well as my regular SlackBuild repository. The Mate ISO depends on the Slackware mirror as well as Willy’s Mate mirror.

The git repository for the scripts can be found here: http://taper.alienbase.nl/cgit/liveslak/

A checkout of this repository can be found in http://www.slackware.com/~alien/liveslak/ and http://taper.alienbase.nl/mirrors/people/alien/liveslak/

If you wonder how I created the squashfs module (0060-nvidia-352.63_4.1.15-current-x86_64.sxz) containing the Nvidia drivers:  I used the SBo scripts for nvidia-kernel and nvidia-driver to compile two packages. I then created a temporary directory and installed the resulting nvidia-kernel, nvidia-driver packages together with Slackware’s xf86-video-nouveau-blacklist package all into that directory (using the command “installpkg –root”). Then I ran the “makemod” script with the temporary directory as first parameter and “0060-nvidia-352.63_4.1.15-current-x86_64.sxz” as the second parameter which created the .SXZ squashfs module which you find in ./graphics/. Simple!

Happy hacking! Eric

KDE 5_15.12 for Slackware-current

plasma5_startup It is time for a refresh of my ‘ktown’ package set. KDE 5_15.12 has been uploaded, containing the latest and greatest: Frameworks 5.17.0, Plasma 5.5.1 and Applications 15.12.0.

To be honest, the compilation had already finished on tuesday but due to the hectic work circumstances moving toward the christmas break, I did not have time to install and test the new packages on my laptop. Today, that has changed, and here is the new batch. One small disappointment… the colorful icons used for the shutdown & logout widget are again replaced by the old colorless flat icons. A regression in my opinion. Die flat colorless icons die!

Anyway, don’t mind the ramblings of an old greybeard who yet has to pour his first drink of the holiday. On with the story.

What’s new in KDE 5_15.12?

Actually, I skipped a Plasma release! Starting with Plasma 5.5, the developers have adopted a more agile release schedule, meaning that after a point release (.0) there will be one or two fast bugfix updates (.1 and .2) followed by further updates with a slightly longer delay. I had built Plasma 5.5.0 and was about to apply the wrapping paper when several last-minute bugs were uncovered in the new Applications point release (15.12.0) which lead to delays in finalizing the repository because of all the patching and subsequent rebuilds. And by the time the Applications issues were resolved, I found the Plasma 5.5.1 sources ready so I archived my 5.5.0 packages and built 5.5.1 instead.

  • Frameworks 5.17.0 is an enhancement release. See https://www.kde.org/announcements/kde-frameworks-5.17.0.php
  • Plasma 5.5.1 is the first bugfix release of the 5.5 series. See https://www.kde.org/announcements/plasma-5.5.1.php . Plasma 5.5 ditched KDE’s own TrueType font “oxygen-icons” in favor of Google’s Noto font family. Another load of font bullshit dumped on Slackware, yay, just what we needed. I had to follow suite and added “noto-font-ttf” and “noto-cjk-font-ttf” packages to the “deps” department. Other noteworthy enhancements and improvements of Plasma 5.5:
    • 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“!
    • Network Manager applet supports WPA2 Enterprise now.
    • A Breeze theme engine for GTK2+ applications was added.
    • You should be able to run a Wayland session now without too much pain and grinding of teeth. I did not test this myself, but some of you may want to tell me your experiences. Wayland is still a grey area to me, if not a black box.
  • Like the new Plasma, Applications 15.12.0 was also announced earlier this week. It is a step further in maturing the KDE Frameworks 5 (KF5) ports of the KDE application collection.
    • Highlight is the retirement of good old KSnapshot and the introduction of a brand new screenshot tool, Spectacle which should also be capable of capturing application menus and pop-ups.
    • Apart from KSnapshot, other packages have been removed as well in Applications 15.12: Amor, KTux (both unmaintained), and SuperKaramba (Plasma offers similar functionality).
    • And several artwork collections are no longer shipped: kde-base-artwork, kde-wallpapers and kdeartwork. Apparently “their content had not changed for a long time”.

I am wondering if I should re-add these removed packages as part of the “kde4” subset, like I already did with some of the other old stuff. Give me your opinion about the value of Amor, KTux, kde-base-artwork, kde-wallpapers and kdeartwork! I will re-add them when the demand is high.

And then there are the dependencies. I upgraded OpenAL, PyQt5, lmdb, added an updated sip package (i.e. newer than Slackware’s own), added the two aforementioned noto font packages and also added yet another new dependency for KWin: libxkbcommon.

I am also working on a new release of the Plasma 5 version of my Slackware Live Edition. It depends on whether I can get UEFI boot to work properly. That milestone will also become the “Beta 3″ release of my liveslak scripts. A link to the Plasma 5 Live ISO will be added to KDE’s Plasma 5 Live testing page, so that more people can get a taste of Slackware-current topped with Plasma 5.

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.11. 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.10 and are adventurous, you can try upgrading using the following set of commands. This should work but feel free to send me improved instructions if needed (assuming in this example 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

LibreOffice 5.0.4 for Slackware-current

libreoffce_logoMy christmas break has started! So there is finally time to finish some of the stuff that had been piling up. First thing to release is the new version of LibreOffice 5, because it is so fresh. Release 5.0.4 was announced yesterday on the Document Foundation blog. My virtual server I rent from HostUS gives me so much better speeds than my build server at home for RAM-hungry compilations like LibreOffice… I built my new packages in a third of the time it usually takes me. Plus, the server at home was free to work on Slackware Live Edition… more about that soon, in another post.

The Document Foundation statement about this release: “LibreOffice 5.0.4 is ready for enterprise level or large scale deployments, when backed by professional level 3 support from certified developers

The new LibreOffice 5.0.4 packages have again been compiled for users of Slackware-current only. I will soon find time to compile the latest LibreOffice 4 (to be precise: 4.4.7) for Slackware 14.1.

lo504_about

Get your packages from any of these sites (if you have a fast, uptodate and reliable mirror outside the US or UK I’d like to hear from you):

Cheers! Eric

Slackware multilib updates to match the changes in slackware-current

blueSW-64px
There was yet another update of slackware-current today. The 150+ lines of ChangeLog.txt are not as massive as previous updates but still, lots of polishing and under-the-hood improvements, a couple of security updates (bindcups-filters, libpng, mozilla-firefox and openssl), two new packages (libtirpc and rpcbind) to replace the removed portmap package; a fresh version of the GCC compiler suite (5.3.0) and a new Linux kernel (4.1.15).

This triggered a matching update to the multilib version of the gcc packages for slackware-current, as well as the set of “compat32” packages for those who are running a 64bit Slackware multilib computer and need to compile or run 32bit programs.

I’ll be working on refreshed ISOs for my Slackware Live Edition, but you’ll have to be patient. A couple more days and I will have a lot more free time. New Plasma 5 packages are awaiting too.

Official download locations for multilib on slackware-current:

Have fun! Eric

The Expanse

People, make sure you reserve a slot in your monday schedule to watch the first episode of SyFy’s new science fiction series (10 episodes recorded in advance): The Expanse is an epic story about the human race that is on a crossroads: it will either destroy itself… or expand beyond our solar system.

There are not many science fiction movie series that are honoring the science – most current science fiction is just sitcoms interwoven with something inexplicable. Ever since Babylon 5, I have not been excited as much as I am now.

The theatric version is based on a series of novels called The Expanse (5 so far, and more in the pipeline) written by a duo that assumed the pen name James S.A. Corey. Taking place two centuries in the future, when humans have mostly depleted the natural resources on Earth and colonized Mars (for expanding human living space) and the Asteroid Belt (for its resources), the cold war between the three populations is about to get hot. In  the center of the story is a rich girl gone rogue, who has come into contact with an alien probe containing a genetic code alteration template (need to keep this vague in order not to spoil the storyline). Story lines on Earth, Mars, the Belt and in space are revolving around the devastating effects the alien genetic code has on the world around it, and the result is a solid and exciting space opera. Daniel Abraham and Ty Franck, the author duo, are also the script writers for the SyFy episodes which should be a guarantee for a a faithful interpretation of the books. I read all of them, the story draws you in and won’t let you go. The combination of fast-paced action and contemplative chapters worked as a booster for my imagination. I like it when a written story is able to visualize itself in my mind, many books are just (exciting) stories but without a properly crafted and believable world in which the story unfolds. I could totally connect with the main character Holden’s quest for a good cup of coffee, regardless of the precarious situations he finds himself in.

If you are not so much into movies, at least take the opportunity to buy or borrow the books, they are worth it.

 

« Older posts

© 2024 Alien Pastures

Theme by Anders NorenUp ↑