path: root/README.5_17.12
blob: 4287fd9f0c976d7d844ae0cd53ee38c81f17f7c9 (plain) (tree)















































































Good-bye KDE 4!
Here is KDE 5_17.12 for Slackware, consisting of the KDE Frameworks 5.41.0,
Plasma 5.11.4 and Applications 17.12.0 on top of Qt 5.9.3.

Upgrading from the previous 5_17.11 is not completely trivial so read on.

KDE-5_17.12 is meant to be installed on top of Slackware -current.
It will *replace* any version of KDE 4 you might have installed!
The Plasma 5 Desktop has gotten rid of its Qt4 legacy.  Applications 17.12
no longer ships anything based on kdelibs4.

What is the NEWS in this batch of updates:
- Several recompiled/upgraded 'deps': OpenAL, PyQt5, cfitsio, ddcutil, gpgme,
  json-glib, libburn, libpwquality, libxkbcommon,lmdb and poppler.
- The telepathy section of the 'deps' also saw several upgrades:
  libaccounts-glib, libaccounts-qt5, libnice, libsignon-glib, signon,
  signon-plugin-oauth2, signon-ui, telegram-qt, telepathy-gabble,
  telepathy-glib, telepathy-logger-qt5, telepathy-mission-control,
  telepathy-morse and telepathy-qt5.
- Frameworks update is a stability release, see: .
- Plasma also is a stability update, see .
  I compiled plasma5-nm against openconnect so that it picks up support for
  it.  However I did not add openconnect to the 'deps' section, you need
  to install it separately if you need it. 
- Applications 17.12.0 is where the hammer hits. KDE Applications 17.12 is
  the first release that sheds its KDE4 legacy.  Any program which had not
  yet been ported to KDE Frameworks 5 has been removed.  This means that we
  say goodbye to the following packages:
  libkface (unmaintained), blogilo (unmaintained and broken), jovie (replaced
  by Qt Speech), kaccessible (superseded by Qt5 functionality), ksaneplugin
  (no one used it), kde-runtime (split up), kremotecontrol, kppp, kfilereplace,
  klinkstatus, kopete and kscd (I did not have a package for kscd anyway).
  New is 'ksmtp' which belongs to the KDEPIM suite (also part of Applications).
  And 'kstars' has moved out of Applications and into applications-extra 
  because it no longer follows the regular release schedule.
  See .
- In applications-extra I have added kstars and rebuilt calligra and krita.
  Upgraded are kile, kpmcore and partitionmanager.  Removed is kuser because
  that was still KDE4 based and no longer works now.
- I have emptied the kde/kde4 and kde/kde4-extragear subdirectories except
  for the 'kdelibs' package.  The 'oxygen-gtk2' package has been moved to
  'applications-extra' because it is still needed for Mozilla-based browsers.
  If you have a KDE4-based application that needs library support on this
  Plasma 5 desktop, let me know which of the removed packages needs to return
  in 'kde/kde4'!
- The 'kdei' subdirectory which used to contain the localization packages,
  is gone.  The Plasma 5 localizations are contained in the packages
  themselves now.  This means that you can no longer selectively install
  just one language, or even none at all.  It will increase the disk space
  requirements a bit.

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.
  * freerdp: access RDP servers through krdc.
  * openconnect: support for Cisco's SSL VPN.
  All of these can be found in my regular package repository.
- There's no more need to install any KDE4 package from Slackware 14.2.
- 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, accountsservice, cfitsio, cracklib, ddcutil, dvdauthor,
  frei0r-plugins, grantlee-qt4, hack-font-ttf, id3lib, json-glib, lensfun,
  libappindicator, libburn, libdbusmenu-gtk, libdbusmenu-qt5, libdmtx,
  libindicator, libinput, libpwquality, libwacom, libxkbcommon, lmdb, mlt,
  ninja, noto-font-ttf, noto-cjk-font-ttf, opencv, polkit-qt5-1, qca-qt5,
  qrencode, qt-gstreamer, qt5, qt5-webkit, qtav, sni-qt, vid.stab
  and wayland.
  As a side note, libinput and libwacom have become part of Slackware-current.
  Technically that makes them redundant in the above listing, however I still
  compile Plasma5 packages for Slackware 14.2 so I left them in.
  The phonon and poppler packages were extended so that they now support
  Qt5 as well as Qt4.
  Note that the SBo version of 'frei0r-plugins' package is called 'frei0r'.
  If you have that SBo package installed, remove it.
- 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 .
- The kde/kde4 directory contains packages that are still required to
  support 3rd party kdelibs4-based programs.
- Also worth mentioning: the KF5 ports of calligra, digikam, kaudiocreator,
  kile, krita, ktorrent, kwebkitpart, partitionmanager, skanlite
  and the KDE Development Suite can be found in kde/applications-extra . 
  Finally, kjots (previously contained in KDEPIM), kuser (abandoned by its
  developer) and kstars (does not align with the Application release schedule
  any longer) have been moved into kde/applications-extra as well.

If you install a 32bit program on a 64bit Slackware computer with multilib
and that program needs legacy system tray support (think of Steam 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.

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 had installed KDE 4 as your default desktop previously, 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 kdepim
  # removepkg kdepimlibs
  # removepkg kdev-python
  # removepkg kdevelop-php
  # removepkg kdevelop-php-docs
  ..or instead of the above, simply '# slackpkg remove kde'.

Alternatively, 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_17.10) 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.  Note that some of the old KDE package names were obsoleted along
the way, they were split up, renamed or integrated and that is the reason
for some of the 'removepkg' lines you'll see below.
Here we go:

If you have my 'ktown' set of KDE 5_17.11 installed:
- Upgrade to KDE 5_17.12
  Remove the packages that no longer exist in KDE 5_17.12:
  # removepkg libkface blogilo jovie kaccessible ksaneplugin kde-runtime
  # removepkg  kremotecontrol kppp kfilereplace klinkstatus kopete
  # removepkg akonadi4 katepart4 kdepimlibs4 kfilemetadata konsolepart4
  # removepkg korundum kross-interpreters libkdegames4 libkexiv2_4
  # removepkg libkmahjongg4 libksane4 oktetapart4 perlkde perlqt pykde4
  # removepkg qtruby smokegen smokekde smokeqt
  # removepkg audiocd-kio4 kio-mtp libkcddb4 libkcompactdisc4
  # removepkg /var/log/packages/kde-l10n-*

If you have my 'ktown' set of KDE 5_17.10 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.09 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.07 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.06 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.05_02 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.05 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.04 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.03 installed:
- Upgrade to KDE 5_17.04
  Remove the packages that no longer exist in KDE 5_17.04:
  # removepkg kajongg
  # removepkg kommander
  # removepkg pim-storage-service-manager

If you have my 'ktown' set of KDE 5_17.02 installed:
- No further actions are needed.

If you have my 'ktown' set of KDE 5_17.01 installed:
- No further actions are needed.

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 kdgantt2
  # 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
  # removepkg kde-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.

If you have my 'ktown' set older than KDE 5_16.01 installed:
- Really?

Then proceed with installing/upgrading KDE 5 as outlined below.

The example commands below are for Slackware -current but you can use
these commands for Slackware 14.2 as well by replacing the /current/
string with /14.2/ (provided there is a suitable 'ktown' release available
for Slackware 14.2 of course):

Instead of using the mirror host (its rsync URI
is rsync://, you could choose the alternative
mirror (its rsync URI is

If you use 'slackpkg' to automate your upgrades, be sure to blacklist my
custom packages or else slackpkg will always try to replace my packages
with the stock Slackware versions if the package names are identical.
As an example, you can add the following lines to the file
"/etc/slackpkg/blacklist" to prevent this unintentional downgrading to KDE4:
  # These three lines will blacklist all SBo, alien and multilib packages:
If on the other hand you are using the 'slackpkg+' extension for slackpkg
then your "/etc/slackpkg/blacklist" file should *not* contain the above
lines!  The slackpkg+ extension enables the use of 3rd-party repositories
with slackpkg and then Plasma5 package upgrades will be handled properly.

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 -Hav rsync:// 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.

If you want only the 64-bit packages:
  # rsync -Hav --exclude=x86 rsync:// 5/
If you want only the 32-bit packages:
  # rsync -Hav --exclude=x86_64 rsync:// 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:

  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

  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 -Hav rsync:// 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 hopefully (have not tested the script
'updates.SlackBuild' in a long time) as easy as this:
  # 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 / 21-dec-2017