My thoughts on Slackware, life and everything

Month: January 2017

Openjdk (Java8) updated with January fixes

icedteaThe icedtea project have released version 3.3.0 of their IcedTea build framework. This release updates the OpenJDK 8 support with the October 2016 bug fixes from OpenJDK 8 u112 and the January 2017 security fixes from OpenJDK 8 u121. Another point of notice is that improved font rendering is being worked on. The ‘infinality patches’ to freetype will be used for this. While I did not enable it in my package, IcedTea no longer requires a patched freetype. Infinality support should be enabled by default from IcedTea 3.4.0 onwards.

Compiling OpenJDK using IcedTea has resulted in the openjdk-8u121_b13 package for Slackware (Java 8 Update 121 Build 13). Next to the JDK there’s also the JRE package of course.

Here is list of security fixes and CVE‘s as taken from the announcement on Andrew Hughes’s blog:

Download locations for the JDK and JRE packages:

If your applications are not yet ready for Java 8, I still maintain the Java 7 packages under new names:”openjdk7″ and “openjre7”. Note that my Java 7 and Java 8 packages (e.g. openjdk7 and openjdk) can not co-exist on your computer because they use the same installation directory.

There is no more need for a separate “rhino” package (implementation of the JavaScript engine used by OpenJDK) because in OpenJDK 8, this functionality is provided natively using the internal “nashorn” library.

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.

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.

Have fun! Eric

liveslak 1.1.6 released

blueSW-64pxIt has been a while since I released the last ‘liveslak‘. Usually these releases seem to co-incide with Plasma5 releases in my ‘ktown’ repository.
Today is no different, and liveslak 1.1.6 has been released to produce a new set of Live ISO images.

You will find the usual versions of Slackware Live Edition based on liveslak 1.1.6 and using Slackware-current dated “Thu Jan 26 21:33:41 UTC 2017“. There are variants for a full Slackware (in 64bit and 32bit), Plasma5, MATE and Dlackware (a newcomer). Also the 700MB small XFCE variant (in 32bit and 64bit).

If you already use a Slackware Live USB stick that you do not want to re-format, you should use the “-r” parameter to the “iso2usb.sh” script. The “-r” or refresh parameter allows you to refresh the liveslak files on your USB stick without touching your custom content.

 

New in the ISOs

The new ISOs are based on the latest slackware-current with Linux kernel 4.4.38.

The SLACKWARE variant contains exactly that: the latest slackware-current and nothing else. Ideal for testing.

The XFCE variant contains a stripped down Slackware with a minimalized package set but still quite functional. The small size is also accomplished by excluding all documentation and man pages, and the localizations for the languages that are not supported in the boot menu. This ISO is small enough that you can burn it to a ’80 minutes’ CDROM (700 MB).

The MATE variant (a Slackware OS with KDE 4 replaced by Mate) contains packages from the repository at http://slackware.uk/msb/current/ which is Mate 1.17.

The DLACK variant contains Dlackware – this is Slackware (minus KDE4) with PAM and Systemd bolted on, and with Gnome 3.22 as the Desktop Environment. If you have been curious as to how PAM and Systemd would affect Slackware, this is your chance to experience all of this first-hand without having to install it to your harddrive. This DLACK ISO has been created from the repository at http://pkgs.dlackware.com/mirrors/slackware/dlack/current/3.22/x86_64/. Thanks to bartgymnast for creating the packages and letting me help him getting the packages to a quality level where I was comfortable using them in a Live ISO.

The PLASMA5 variant (Slackware with KDE 4 replaced by Plasma 5) comes with the latest Plasma 5 release “KDE-5_17.01” as found in my ktown repository. Additionally you will find several packages from my regular repository: chromium (with flash and widevine plugins), vlc,ffmpeg, libreoffice, qbittorrent, openjdk and more. This ISO also contains the LXQT and Lumina Desktop Environments. Both are light-weight DE’s based on Qt5 so they look nice & shiny.
One word of caution when using the Lumina DE:

  • The network applet is not enabled by default, and you may have to enable the network manually. I used “nmtui” in a terminal window but you can try enabling the networkmanager-applet instead. I did not find out how, yet.

The changes between liveslak scripts 1.1.5 and 1.1.6

  • Most obvious update is the addition of a new supported variant: DLACK, installs Dlackware (i.e. Slackware with PAM, Systemd & Gnome3 instead of KDE4).
  • More fixes to get rid of hardcoded ‘/mnt‘ paths in the version of the Slackware installer files which are used by ‘setup2hd’. Installation to hard disk should finally work properly.
  • Added packages from the restricted repository (ffmpeg, handbrake, lame etc) to the PLASMA5 ISO.
  • various updates in package content for the XFCE, PLASMA5, MATE ISOs.

Multilib considerations

I added a live module to enable multilib support out of the box in the PLASMA5 variant of Slackware Live. Inside the ISO that module-file is called “/liveslak/system/0020-slackware_multilib-current-x86_64.sxz”.
I host a copy of that module online as “0050-multilib-current-x86_64.sxz” so that you can download it and add it to the ‘addons‘ or ‘optional‘ subdirectory of your non-plasma5 liveslak.
Multilib is something you’d need for Wine, so I also added a live module for Wine (including the 32bit OpenAL libraries) as a separate module in the ‘optional‘ subdirectory of the PLASMA5 ISO and made copy of it available in the aforementioned ‘bonus’ directory online.
This is how I created that live module for wine: by installing the 32bit OpenAL libraries on top of my 64bit wine package for Slackware (which contains both 32bit and 64bit wine):

# SCRATCHDIR=$(mktemp -t -d makesxz.XXXXXX)
# installpkg --root $SCRATCHDIR wine-1.9.23-x86_64-1alien.txz
# installpkg --root $SCRATCHDIR OpenAL-compat32-1.17.1-x86_64-1aliencompat32.txz 
# ./makemod $SCRATCHDIR ./optional/0060-wine-1.9.23-current-x86_64.sxz 
# rm -r $SCRATCHDIR

Remember, the modules in the ‘optional‘ subdirectory of liveslak can be loaded into the live OS on boot when you use the “load=” boot parameter in syslinux or grub. Loading the optional wine module for instance, needs this as additional boot parameter: “load=wine” and if you would be using a non-plasma5 based Live OS and have added the multilib module in the ‘optional‘ subdirectory also, then the boot parameter needs to load both multilib and wine: “load=multilib,wine”.
Of course, if you place both modules in the ‘addons‘ subdirectory instead, they will always be loaded on boot unless you want to prohibit that using the “noload=multilib,wine” boot parameter in syslinux or grub.

Download the ISO images

The ISO variants of Slackware Live Edition are: SLACKWARE, XFCE, PLASMA5, MATE and DLACK. These ISO images (with MD5 checksum and GPG signature) have been uploaded to the master server (bear) and should be available on the mirror servers within the next 24 hours.

Download liveslak sources

The liveslak project can be found in my git repository: http://bear.alienbase.nl/cgit/liveslak/ . That’s all you need to create a Slackware Live ISO from scratch. Documentation for end users and for Live OS developers is available in the Slack Docs Wiki.

Have fun! Eric

Plasma 5_17.01 for Slackware

My previous post concerned itself with the question: what do I spend my time on? Keeping Plasma 5 working on Slackware 14.2 and -current, and for 32bit as well as 64bit architectures, is simply too time-consuming for a monthly release. I asked for your opinion and I was glad for all the feedback I have received. Predominantly, people are using 64bit Slackware and I saw both the stable 14.2 and the -current development tree mentioned. It looks like a small minority of people is running Plasma 5 on 32bit Slackware – not my target of choice but everyone has his or her own reasons and I am not here to doubt those.

So, here is the first 2017 release of the ‘ktown’ packages – KDE 5_17.01. I have updated the main package sets to their latest releases: KDE Frameworks 5.30.0, Plasma 5.8.5 and Applications 16.12.1. I have also updated the Qt  package to 5.7.1.
What can you expect of this and the future releases? You can still use this latest KDE 5 on Slackware 14.2 (only 64bit) but I will be focusing more on -current. After all, the ‘ktown’ development is all about getting the latest and greatest KDE software included in Slackware-current. This is how I think I am going to handle the releases:

I am going to do my releases first for Slackware64 14.2 and -current. During the days that follow, will compile the 32bit packages for Slackware-current. I will stop releasing Plasma 5 packages for 32bit Slackware 14.2.

What’s new in KDE 5_17.01?

  • Frameworks 5.30.0 is an enhancement release and contains one new framework compared to my previous release: prison. See https://www.kde.org/announcements/kde-frameworks-5.30.0.php
  • Plasma 5.8.5 is an incremental bug fix release for the 5.8 series. See https://www.kde.org/announcements/plasma-5.8.5.php and if you want to know more about the long term support (LTS) for Plasma 5.8, go read: https://www.kde.org/announcements/plasma-5.8.0.php
  • Applications 16.12.1 contains many changes. In these 16.12.x releases, some of the big packages have been split into many smaller ones: ‘kde-baseapps’, ‘kdepim’ and ‘kdewebdev’ (and these three packages are gone now).
    Two other packages have been removed: ‘gpgmepp’ (whose functionality has been integrated into ‘gpgme’), and ‘kuser’ (for which there is no replacement and therefore I have kept it as part of applications-extra).
    Formerly part of ‘kdepim‘, the ‘kdgantt2′ program has been removed and it is replaced by a new package ‘kdiagram‘. Another new package ‘kwave‘ was added in 16.12.0 (which I never built). See https://www.kde.org/announcements/announce-applications-16.12.1.php .
  • I have removed ‘kactivities‘, ‘nepomuk‘ and ‘nepomuk-widgets‘ from the kde4 package subset. These kdelibs4-based packages are no longer used by other packages.
    I also added a package there: ‘libcddb4‘ is the old kdelibs4 based version and it is needed to keep ‘k3b‘ running. The latest libkcddb is Frameworks5 based and incompatible with k3b.
    Unfortunately ‘kdepimlibs4‘ is still required by ‘kopete‘ and ‘klinkstatus‘. I had to recompile ‘kdepimlibs4‘ to remove gpgme++ files that are now part of the ‘gpgme‘ package. If you want to repeat this at home, make sure you only have ‘akonadi4‘ installed, not the newer ‘akonadi‘ from Applications.
  • In applications-extra, I upgraded ‘calligra‘ to the recently released Frameworks5 based version; a recompilation would have been needed anyway in order to ditch ‘kactivities‘. The new ‘calligra‘ has shed some of its code and no longer contains ‘krita‘ or ‘kexi‘, they are developed independently now. ‘Flow‘ and ‘Stage‘ have also been removed from the code but here the reason is that their code is un-maintained. Therefore I have added ‘krita‘ as a new package. If anyone needs ‘kexi‘ as well, let me know so I can add it (and its dependencies) next time. Also, ‘partitionmanager‘ (along with its dependency ‘kpmcore‘)  was upgraded and is now Frameworks5 based. Note: ‘partitionmanager‘ has issues using kdesu to gain root access to the disks even though it will ask for the root password. If all actions are greyed out, start it from the commandline with “sudo -s partitionmanager”.
  • The ‘kdeconnect-framework‘ package in plasma-extra was upgraded.
  • The ‘deps’ section has two new packages (three in the Slackware 14.2 repo as you can read below): ‘libdmtx‘ and ‘qrencode‘, both of which are requirements for the new ‘kdiagram‘ package. The ‘libinput‘ package was upgraded to the same version as was recently added to slackware-current (and compiled against the new package ‘libwacom‘ just like in slackware-current). Note that libinput and libwacom are not part of the ‘deps’ for Slackware-current since these are already covered by your Slackware install.
  • The ‘qt5‘ package was upgraded to 5.7.1, and accompanying upgrades were done for ‘qt5-webkit‘, ‘sip‘ and ‘PyQt5‘. Note that qt5’s dependencies have increased again: it now requires libinput, libwacom, libxkbcommon. I did not upgrade qt5 to 5.8.0 – it is too new and currently seems to have issues with KWin.

This upgrade should be relatively straightforward if you already have Plasma 5 installed. See below for install/upgrade instructions. For users who are running slackware-current, the most crucial part is making sure that you end up with Slackware’s packages for ‘libinput‘ and ‘libwacom‘. Failing to do so, may render your input devices (mouse and keyboard) inoperative in X.Org.

You may want to check out the new Plasma 5 before installing. For this purpose, I have generated a new Live ISO for the PLASMA5 variant. Look for that ISO on http://bear.alienbase.nl/mirrors/slackware-live/latest/ . The timestamp of the “slackware64-live-plasma5-current.iso” file should be Jan 27, 2017.

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“, “applications-extra” and “telepathy“.

Upgrading to this KDE 5 is not difficult, especially if you already are running KDE 5_16.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.

What I usually do is: download all the ‘ktown’ packages for the new release to a local disk. Then run “upgrade –install-new” on all these packages. Then I check the status of my Slackware-current, upgrading the stock packages where needed. The slackpkg tool is invaluable during this process of syncing the package installation status to the releases.

Note:

If you are using slackpkg+, have already moved to KDE 5_16.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” in the configuration file “/etc/slackpkg/slackpkgplus.conf“):
# slackpkg update
# slackpkg install ktown (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 (upgrade all existing packages to their latest versions)
# 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. 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 repository):

The same goes for Frameworks for Slackware 14.2 (change ‘current’ to ‘14.2’ in the above URLs).

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/ and  /14.2/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

Poll: who needs 32bit packages for latest Plasma 5?

During the past week I have been spending time on getting the latest KDE Frameworks, Plasma and Applications built. The new Applications 16.12 was quite a bit of work due to the splitting of tarballs in many smaller ones. Also, the Slackware 14.2 and -current versions have now diverged sufficiently that the packages I compile on 14.2 are no longer guaranteed to work on -current, so that introduces additional work.

This effort took much longer than I am comfortable with. I do not have as much time available as I used to have due to “real life” – meaning my new job is quite a bit more demanding than my previous one.
This made it clear to me that I have to start making decisions about my Slackware activities, with more detail than what I said in the past along the lines of “updates may come less frequent”. It is obvious that I can not keep releasing a new set of ‘ktown‘ packages every month, for both 32bit and 64bit platforms, and for both Slackware 14.2 and -current. I have a few options:

  1. stop releasing 32bit packages for Plasma 5 (ktown repository)
  2. stop releasing Plasma 5 for Slackware 14.2 and start focusing on -current exclusively

I tend to lean into option (1) and therefore wrote this blog post. Who is using my Plasma5 (ktown) packages on a 32bit Slackware OS?

If there are users running a 32bit Slackware-current OS then this could mean a stop to new Plasma5 releases for Slackware 14.2. Updates to the graphical desktop does not have priority at this time in the development cycle of Slackware-current which means I will have to keep maintaining my ‘ktown’ repository for a while to come.

Bottomline: I will have to make one of the two above choices, and I will listen to you – the users of my packages – to help me make that decision.

© 2024 Alien Pastures

Theme by Anders NorenUp ↑