KDE5 ==== Here is KDE 5_17.01 for Slackware, consisting of the KDE Frameworks 5.30.0, Plasma 5.8.5 and Applications 16.12.1 on top of Qt 5.7.1. Upgrading from the previous 5_16.12 needs a bit of tender care & loving this time. In particular, the new quarterly release of the Applications brings a lot of change. Many packages have been added, but also many packages are no longer part of the 'ktown' repository. Read the instructions well! KDE-5_17.01 is meant to be installed on top of Slackware 14.2 or -current. It will *replace* any version of KDE 4 you might have installed! Note that I am currently undecided whether I should keep on supporting Slackware 14.2 in my 'ktown' builds. The 'ktown' repository's primary goal has always been to do the research and development into bleeding edge KDE software, so that integrating it into Slackware's core can be done with the knowledge that these KDE releases have been given a good QA testing by the community. Which means, slackware-current is the only relevant release. Providing updates for 14.2 will probably stop, once -current has diverged too much from 14.2 to keep it all manageable. What is the NEWS in this batch of updates: - 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 unmaintained. 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 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' 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. Further points of interest: - There are a couple of *runtime* dependencies that I did not add to the ktown repository, but you may want to consider installing them yourself: * vlc - will give phonon another backend to select from. * python-twisted - required by kajongg to start & run. * freerdp: access RDP servers through krdc. All of these can be found in my regular package repository. - kde/kde4-extragear packages should be taken from slackware 14.2 or -current (k3b, kaudiocreator, kplayer, kwebkitpart, oxygen-gtk2). - Lots of packages in the 'deps' department are completely new to Slackware. Since KDE 5 aka Plasma 5 is built on Qt5 (KDE 4 uses Qt4 as its base) you'll find many Qt5 related packages. Also, in order for Qt4 and GTK based applications to dock into the Plasma 5 system tray, more dependencies were needed. So, apart from updates to regular Slackware packages and the new telepathy support packages (see below), these are the new ones: OpenAL, PyQT5, cfitsio, grantlee-qt4, json-glib, libappindicator, libdbusmenu-gtk, libdbusmenu-qt5, libdmtx, libindicator, libinput, libwacom, libxkbcommon, lmdb, hack-font-ttf, ninja, noto-font-ttf, noto-cjk-font-ttf, polkit-qt5-1, qca-qt5, qrencode, qt-gstreamer, qt5, qt5-webkit, sni-qt and wayland. The phonon package was extended so that it now supports both Qt4 and Qt5. - A completely new subset of "deps" packages, contained in their own "telepathy" subdirectory, needed for KDE Telepathy: libotr, libnice, farstream, libaccounts-glib, libaccounts-qt5, signon, signon-plugin-oauth2, signon-ui, libsignon-glib, telegram-qt, telepathy-glib, telepathy-farstream, telepathy-haze, telepathy-gabble, telepathy-morse, telepathy-qt5, telepathy-logger, telepathy-logger-qt5, telepathy-mission-control and telepathy-accounts-signon. - Telepathy for KDE packages are found in their own subdirectory kde/telepathy . - Also worth mentioning: the KF5 ports of ktorrent, skanlite and the KDE Development Suite can be found in the kde/applications-extra directory. Also kjots, previously contained in KDEPIM, has been separated into its own package in the kde/applications-extra directory. NOTE: If you install a 32bit program on a 64bit Slackware computer with multilib and that program needs legacy system tray support (think of Skype for instance), you will have to grab the 32-bit version of Slackware's 'libdbusmenu-qt' and my ktown-deps package 'sni-qt', and run the 'convertpkg-compat32 -i' command on them to create 'compat32' versions of these packages. Then install both 'libdbusmenu-qt-compat32' and 'sni-qt-compat32'. Those two are mandatory addons for displaying system tray icons of 32bit binaries in 64bit multilib Plasma5. NOTE: Also explained in more detail below, upgrading to this KDE 5 is non-trivial. You will have to remove old KDE 4 packages manually. If you do not have KDE installed at all, you will have to *install* some of Slackware's own KDE 4 packages manually. NOTE: If you decide to install these packages on top of a fresh installation of Slackware 14.2 or -current and have excluded all packages in the 'KDE' package series during installation, you will be missing several add-on packages, some of these are essential to the proper functioning of KDE! If you excluded the complete Slackware 'KDE' series, then you can optionally install these Slackware packages as well: * amarok * k3b * kaudiocreator * kplayer * kwebkitpart * oxygen-gtk2 NOTE: If you had installed KDE 4 previously as your default desktop, the removal of KDE 4 packages will break the symbolic link '/etc/X11/xinit/xinitrc'. An attempt to run 'startx' in a console will fail with a black screen. After installing Plasma 5 for the first time, you need to run 'xwmconfig' and select 'xinitrc.plasma' as your desktop session. ------------------------------------------------------------------------------- Install pre-compiled packages: ------------------------------------------------------------------------------- In order to install or upgrade KDE 5, follow these steps: Make sure you are not running KDE or even X ! If you are running an X session, log out first, and if you are in runlevel 4 (graphical login) you first have to go back to runlevel 3 (console) by typing "init 3". If you still have a KDE 4 installed, it must be removed first. No clean upgrade path can be provided! Do as follows: If you have Slackware 14.2 or -current's default KDE 4.14.3 installed: # removepkg /var/log/packages/*-4.14.3-* # removepkg libkscreen # removepkg kscreen # removepkg kactivities # removepkg kde-workspace # removepkg libmm-qt # removepkg libnm-qt # removepkg plasma-nm # removepkg polkit-kde-agent-1 # removepkg polkit-kde-kcmodules-1 # removepkg kdeconnect-kde # removepkg kdepimlibs # removepkg kdevelop-php # removepkg kdevelop-php-docs ..or instead of the above, simply '# slackpkg remove kde' and de-select the packages you want to keep (amarok, calligra, k3b etc). Alternativly, in case you are already using an older release of my KDE 5 packages, you need to look up that particular release in the list right below (for instance: KDE 5_16.08) and then apply the actions shown for that KDE 5 release *and* all more recent releases, i.e. work your way back up to this paragraph. Here we go: If you have my 'ktown' set of KDE 5_16.12 installed: - Upgrade to KDE 5_17.01 If you are running Slackware-current, manually install or upgrade libinput and libwacom to the Slackware versions. Remove the packages that no longer exist in KDE 5_17.01: * removepkg kactivities * removepkg nepomuk * removepkg nepomuk-widgets * removepkg gpgmepp * removepkg kde-baseapps kdepim kdewebdev If you have my 'ktown' set of KDE 5_16.11 installed: - Upgrade to KDE 5_16.12 Remove the packages that no longer exist in KDE 5_16.12: * removepkg baloo * removepkg baloo-widgets If you have my 'ktown' set of KDE 5_16.08 installed: - No further actions are needed. If you have my 'ktown' set of KDE 5_16.07 installed: - Upgrade to KDE 5_16.08 Remove the packages that no longer exist in KDE 5_16.07: * removepkg kdegraphics-strigi-analyzer * removepkg kdenetwork-strigi-analyzers * rempovepkg kdesdk-strigi-analyzers * removepkg kdepimlibs libkdeedu mplayerthumbs If you have my 'ktown' set of KDE 5_16.06 installed: - Upgrade to KDE 5_16.07 Remove the packages that no longer exist in KDE 5_16.07: * removepkg /var/log/packages/noto-font-ttf-2015-09-29-noarch-1alien If you have my 'ktown' set of KDE 5_16.05 installed: - No further actions are needed. If you have my 'ktown' set of KDE 5_16.04 installed: - No further actions are needed. If you have my 'ktown' set of KDE 5_16.03 installed: - Upgrade to KDE 5_16.04 Remove the packages that no longer exist in KDE 5_16.04: * removepkg kactivities-workspace If you have my 'ktown' set of KDE 5_16.02 installed: - No further actions are needed. If you have my 'ktown' set of KDE 5_16.01 installed: - No further actions are needed. Then proceed with installing/upgrading KDE 5 as outlined below. NOTE: The example commands are for Slackware -current but you can use these commands for Slackware 14.2 as well by replacing the /current/ string with /14.2/ in the example commandlines below: NOTE: Instead of using the host alien.slackbook.org/alien/ktown/ you can pick any mirror like bear.alienbase.nl/mirrors/alien-kde/ because a mirror may be faster. To make it easy for you, here is a one-line command that downloads the whole '5' directory (excluding the sources), with 32-bit and 64-bit packages. # rsync -av rsync://alien.slackbook.org/alien/ktown/current/5/ 5/ Or else, if you want to download packages for just one of the two supported architectures, you would run one of the following commands instead (note that there is a dot at the end of these commands!). If you want only the 64-bit packages: # rsync -av --exclude=x86 rsync://alien.slackbook.org/alien/ktown/current/5/ 5/ If you want only the 32-bit packages: # rsync -av --exclude=x86_64 rsync://alien.slackbook.org/alien/ktown/current/5/ 5/ Assuming you just downloaded the bits you want from the directory tree "5", you must now change your current directory to where you found this README (which is the directory called '5'). If you used one of the above "rsync" commands then you can simply do: # cd 5 From within this directory, you run the following commands as root (note that some of the old KDE package names are obsoleted now, they have been split up, renamed or integrated and that is the reason for the 'removepkg' lines): On Slackware 32-bit: # upgradepkg --reinstall --install-new x86/deps/*.t?z # upgradepkg --reinstall --install-new x86/deps/telepathy/*.t?z # upgradepkg --reinstall --install-new x86/kde/*/*.t?z On Slackware 64-bit: # upgradepkg --reinstall --install-new x86_64/deps/*.t?z # upgradepkg --reinstall --install-new x86_64/deps/telepathy/*.t?z # upgradepkg --reinstall --install-new x86_64/kde/*/*.t?z If you already have one or more non-english language packs installed: On Slackware 32-bit: # upgradepkg x86/kdei/*.t?z On Slackware 64-bit: # upgradepkg x86_64/kdei/*.t?z If you want to have a non-english language pack installed but none is currently installed, substitute your country code instead of the 'XX' in the next command: # upgradepkg --install-new x86_64/kdei/kde-l10n-XX-*.t?z Check if any ".new" configuration files have been left behind by the upgradepkg commands. Compare them to their originals and decide if you need to use them. # find /etc/ -name "*.new" A graphical (ncurses) tool for processing these "*.new" files is slackpkg: # slackpkg new-config Then reboot your system. If all you want is to install the packages I created, then you can skip the remainder of the README which details how to (re)compile the packages from their sources; it is not required reading material. ------------------------------------------------------------------------------- Building it all from source: ------------------------------------------------------------------------------- Sources and scripts are separated from the packages in my 'ktown' repository. If you want the sources for KDE 5, run the following command to download them (downloading from a mirror will usually be much faster): # rsync -av rsync://alien.slackbook.org/alien/ktown/source/5/ 5/ There are a lot of 'dependencies' for KDE 5 which you'll have to compile and install before attempting to compile KDE 5. Compiling and installing these dependencies on Slackware-current is as easy as: # cd 5/deps # ./updates.SlackBuild # cd - # cd 5/deps/telepathy # ./telepathy.SlackBuild # cd - Be prepared to wait a *long* time since this will compile a new Qt5 package among others. The finished packages will be stored in /tmp and will already have been installed/upgraded automatically. Then if you want to compile the KDE packages on your computer, run: # cd 5/kde # ./KDE.SlackBuild Wait a long time, and you will find the new packages in /tmp/kde-build . Note that these packages will already have been installed by KDE.SlackBuild ! Reboot your computer and login to a Plasma session. ============================================================================== Eric Hameleers / alien at slackware dot com / 26-jan-2017