From 70549d8aab87e5c9b0fc97e73087eaaeb56e19b6 Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Wed, 2 Sep 2015 14:57:25 +0200 Subject: Release of KDE 5_15.09 for Slackware. --- README.5_15.09 | 387 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 387 insertions(+) create mode 100644 README.5_15.09 (limited to 'README.5_15.09') diff --git a/README.5_15.09 b/README.5_15.09 new file mode 100644 index 0000000..01e0ac6 --- /dev/null +++ b/README.5_15.09 @@ -0,0 +1,387 @@ +KDE5 +==== + +Here is KDE 5_15.09 for Slackware, consisting of the KDE Frameworks 5.13.0, +Plasma 5.4.0 and Applications 15.08.0. + +This is an intrusive update if you currently have my KDE 5_15.07 packages +installed. Consider this to be beta-quality because there may be some usability +issues - and read the "BUILD NOTES" below very carefully before you decide +to upgrade. I need testers to iron out some annoying regressions. + +KDE-5_15.09 is meant only to be installed on top of Slackware -current and +it will *replace* any version of KDE 4 you might have installed! + +BUILD NOTES: + +In random order, this is what I ran into while working on this set of updates. +* Qt5 fails to compile if an older version of Qt5 is already installed. +* frameworks:kwallet should be built against applications:gpgmepp, + therefore I adapted the build order in KDE.SlackBuild slightly. +* Several Applications packages could not be configured using cmake, + because of a missing line in their CMakeFiles.txt. These files needed a line + "cmake_minimum_required(VERSION 2.8.9)". Instead of creating 17 patches I + decided to modify cmake/applications and cake/applications5 instead, and + fixed the omission with a sed substitution. +* kde-runtime needs the kdelibs-4 based kdepimlibs. Since KDEPIM has now been + ported to KDE Frameworks 5 (KF5) I had to add a compatibility package + "kdepimlibs4" containing the relevant bits of the old kdepimlibs. +* and... kdepimlibs4 needs the old akonadi-1.13 release. Therefore a "akonadi4" + package was added alongside "kdepimlibs4" in the kde/kde4/ directory. +* kdepimlibs4 will fail to compile in the presence of akonadi (kf5 edition), + it wants only akonadi4 to be present. I hope I fixed this. +* Compilation errors in okteta required a patch to qca-qt5. +* I took the opportunity to rebuild some packages with library linking issues + caused by recent slackware-current updates: phonon-vlc, pykde4, qtruby, + korundum, smokekde, perlqt, smokeqt, baloo. +* rocs will emit an internal compiler error unless you increase the RAM to + well beyond 3GB (use a big swap file if needed). +* Into the breeze package I have built Qt4 support in addition to the default + Qt5 support. This will allow the KDE4 based applications to blend in + with the Plasma 5 Breeze theme better. +* I updated the SDDM login manager (sddm-qt5 package) with a git snapshot + which supposedly supports the session management of ConsoleKit2. However + the 'passwd' authentication backend was broken and it took a while before + someone came up with a patch. +* Several "deps" packages were removed: + - grantlee-qt5 (nothing uses the old grantlee anymore I hope, so I just + replaced it with the new grantlee-5) + - pairs and kgamma (no longer part of KDE Applications) + - ConsoleKit (has been replaced by ConsoleKit2 which is a fork of the + no longer maintained ConsoleKit and has several fixes and enhancements) +* A problematic package is baloo because its file content partially overlaps + with baloo5, and I do not know what I can do about it. Nor do I know if + this has any negative impact on Plasma 5 Workspace. +* libkface requires opencv as a dependency. I almost wanted to add opencv to + make the process of adding digikam easier (since digikam needs both libkface + and opencv) but after discussing with willysr and ponce, SBo admins, + I decided to skip this because the new opencv-3 has to much impact on the + slackbuilds.org content. + +All in all I am pretty unhappy with the effort which was required to get this +latest batch of updates to compile and work together. +And even then, with a finished set of packages, there are a few annoying issues +for which I have no explanation nor do I have a solution because I do not know +whether they are caused by Plasma 5 or by the recent slackware-current updates. + +Annoyance #1: +Logging out is delayed: +* Try to open the Plasma Kicker startmenu and move your mouse over the + "Leave" tab. It will then take a minute to display the tab's content, + and in the meantime, the Plasma workspace is frozen. Any open application + windows are still responsive and you can work with them. +* Try to use the logout/shutdown widget in the system tray if you added that. + Clicking the widget will also cause a one to tw minute delay before the + logoff dialog appears. +* Try logging out from the commandline using this qdbus commmand in an X term: + $ qdbus org.kde.ksmserver /KSMServer logout 0 0 0 + You will notice that this command just sits there for the same one to two + minutes, and then it kicks into action and you'll be logged off. +Something is amiss with the communication over dbus. Ideas anyone? + +Annoyance #2: +Whenever the power saver kicks in and I am not paying attention, the screen +of my Lenovo T400 laptop (Intel graphics) turns black and will not revive. +I have to Ctrl-Alt-F1 to get to my Linux console, press the backlight button until I can read again what's on screen, and then back to X using Alt-F7. + +Annoyance #3: +In my 32-bit virtual machine I cannot even login, because there is a flood of +re-spawning screensaver processes that prevent access. This can be caused by +something in the virtual machine, but I did not do extensive troubleshooting. + +=== END OF BUILD NOTES === + +Having said all that, it is still an impressive release with lots of changes +and improvements. I hope that we get the quirks solved so we can focus on +what's good. + +Highlights of KDE-5_15.09: +- Qt5 has been updated to 5.5.0 +- ConsoleKit (unmaintained) gets replaced by ConsoleKit2 (well-maintained fork) + which could open up a path to a systemd-free Slackware that is compatible to + a large extent with systemd requirements. +- I added LoginKit also for that purpose. LoginKit in its present form does not + do much (if anything at all) but I want to have it in for those who want to + play test this. +- Several of the other deps were added, updated, rebuilt or removed as well: + LibRaw (update for the Slackware package), + PyQt5 (updated), + qca-qt5 (patched), + grantlee (update for the Slackware package) + lmdb (new) + grantlee-qt5 (renamed to grantlee thereby replacing the Slackware version) +- Removed deps (we can use the original Slackware packages now) are: + PyQt, sip and libepoxy +- Frameworks 5.13.0 is an enhancement release, lots of fixes are documented on + https://www.kde.org/announcements/kde-frameworks-5.13.0.php +- Plasma 5.4.0 is a feature release, you can read all the details in + https://www.kde.org/announcements/plasma-5.4.0.php + Important is that the krunner has a command history again, and lots of new + icons were added for non-Plasma5 applications, which helps to give the + Plasma 5 desktop a uniform look and feel; + Not so important for Slackware is the Wayland Tech Preview and some system + tool improvements using PAM (kwallet-pam) or pulseaudio (audio volume applet). +- Applications 15.08.0 is bringing more KF5 ports: 107 applications in total. + Most noticeable are the KF5 ports of Dolphin (the file manager), KDEPIM (the + Kontact Suite as it is called now) and Ark (archive tool). I am a bit worried + about the Kontact development toward the KDE Frameworks 5. Lots of struggles + were discussed in the mailing lists and the resulting KF5 based Kontact Suite + is still considered BETA quality. + The move to KF5 exposed several older KDE4 based applications that have + a dependency on the KDE4 based PIM libraries. + Therefore I had to add a compatibility layer of packages containing that + KDE4 code: akonadi4 and kdepimlibs4 (similar to what I had to do earlier + with libkmahjongg4, libkdegames4, konsolepart4 and katepart4). + +Further points of interest that are unchanged since the previous releases: +- kde/kde4-extragear packages should be taken from slackware-current (calligra, + k3b, kaudiocreator, kplayer, kwebkitpart, oxygen-gtk2, oxygen-gtk3, + kdevplatform, kdevelop-pg-qt, kdevelop, kdev-python, kdevelop-php, + kdevelop-php-docs, skanlite, kio-mtp, libktorrent, ktorrent, partitionmanager) +- I still did not compile the new Plasma Mediacenter tech-preview. +- Note that I did not compile the new KDEnlive and KDE Telepathy. They need + a lot of attention before I can build them and it was more important to me + to have a new release of KDE 5 out as fast as possible, that works with + the latest slackware-current. + If you are curious and want to try yourself, start by reading: + https://community.kde.org/KTp/Setting_up_KAccounts +- katepart4 was added so that kdevelop works again +- konsolepart4 was added to be able to use an embedded konsole in dolphin +- kdeconnect4 was added; this stripped-down version of the KDE4 based + kdeconnect-kde allows you to access your Android device with the + (also still KDE4 based) Dolphin filemanager +- sddm-theme-breeze was removed, the theme is now part of plasma-workspace +- Lots of packages in the 'deps' department which are completely new to + Slackware. Since KDE 5 is built on Qt5 (KDE 4 had 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, these are the + new ones: + OpenAL, PyQT5, cfitsio, json-glib, libappindicator, libdbusmenu-gtk, + libdbusmenu-qt5, libepoxy, libfakekey, libindicator, polkit-qt5-1, qca-qt5, + qt-gstreamer, qt5, sni-qt, wayland and xapian-core. +- Note for users of multilib Slackware64 and also using Skype: you will have to + grab the 32-bit version of sni-qt and run 'convertpkg-compat32' on it, + or else Skype won't be able to dock its icon in the systray. +- A bit sneakily, I built phonon-vlc for you. You will also need a VLC package + to be able to use this package though. +- Several source tarballs in Plasma 5.4.0 have not been compiled to Slackware + packages: libbluedevil and bluedevil (they need BlueZ 5 which is not part of + Slackware), muon (a debian/ubuntu package manager), libkface (needs opencv + which I was not willing to add as a dependency), user-manager and kwallet-pam + (need PAM), plasma-pa (needs pulseaudio). +- One dependency which you'll probably find curious, is wayland. It is required + in order to *compile* KWin's X11 driver, but it is apparently not needed at + *runtime*. Nevertheless, I left the package in, just in case you want or need + to recompile kwin (actually, it does not seem required any longer, but that + issue will be revisited on next Plasma update). +- Graphical login: KDM has been replaced with SDDM. Slackware-current supports + it already. Select "Plasma" from the SDDM session dropdown. + Alternatively, if you prefer good old runlevel 3, you can type (at your own + user account's command prompt): + $ xwmconfig + ... and select "xinitrc.plasma" as your default window manager for X. + Then run: + $ startx + +NOTE: +Also explained in more detail below, upgrading to this KDE 5 is non-trivial. +You will have to remove old KDE packages manually. If you do not have KDE +installed at all, you will have to *install* some of Slackware's own KDE +packages manually. + +NOTE: +If you decide to install these packages on top of a fresh installation of + Slackware-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-current 'KDE' series, then you + will have to install the following essential Slackware-current packages + at a a minimum: + * bluedevil + * libktorrent + And optionally install these Slackware-current packages as well: + * amarok + * calligra + * k3b + * kaudiocreator + * kplayer + * kwebkitpart + * kaudiocreator + * kdevplatform + * kdevelop-pg-qt + * kdevelop + * kdev-python + * kdevelop-php + * kdevelop-php-docs + * kio-mtp + * ktorrent + * oxygen-gtk2 + * oxygen-gtk3 + * partitionmanager + * skanlite + +------------------------------------------------------------------------------- +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: + + # rsync -av rsync://alien.slackbook.org/alien/ktown/source/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 - + +Be prepared to wait a *long* time since this will recompile Qt4 and compile a +new Qt5 package among others. The finished package will be stored in /tmp . +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 ! + +But if all you want is the packages I created, then you can skip all of that. + +------------------------------------------------------------------------------- +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-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 + +If you have my 'ktown' set of KDE 5_15.07 installed: +- Upgrade to KDE-5_15.09 and then remove the packages + that no longer exist in KDE 5_15.09: + * removepkg ConsoleKit + * removepkg grantlee-qt5 + * removepkg kgamma + * removepkg pairs + +If you have my 'ktown' set of KDE 5_15.06 installed: +- No further actions are needed. + +If you have my 'ktown' set of KDE 5_15.05 installed: +- Re-install the following 'ktown' packages: + * kactivities-framework + +If you have my 'ktown' set of KDE 5_15.04 installed: +- Remove packages that no longer exist in KDE 5_15.05: + * removepkg qt-gstreamer0 +- Re-install 'ktown' packages: + * qt-gstreamer + +If you have my 'ktown' set of KDE 5_15.03 installed: +- Remove packages that no longer exist in KDE 5_15.04: + # removepkg gst1-plugins-base + # removepkg gst1-plugins-good + # removepkg gstreamer1 + # removepkg qt-gstreamer1 + # removepkg libmm-qt5 +- Re-install original Slackware-current packages that were removed from "deps" + in KDE 5_15.04 (this will be easiest using slackpkg): + * LibRaw + * akonadi + * attica + * cmake + * eigen3 + * exiv2 + * grantlee + * harfbuzz + * libfakekey + * libodfgen + * librevenge + * libssh + * libwpd + * orc + * poppler + * qt + * shared-desktop-ontologies + * soprano + * strigi + +Then proceed with installing/upgrading KDE 5 as outlined below. + +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 +(and be careful of the 'dot' at the end of that command, it is part of the +commandline !!): + + # rsync -av rsync://alien.slackbook.org/alien/ktown/current/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 . +If you want only the 32-bit packages: + # rsync -av --exclude=x86_64 rsync://alien.slackbook.org/alien/ktown/current/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/kde/*/*.t?z + + On Slackware 64-bit: + # upgradepkg --reinstall --install-new x86_64/deps/*.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. + +============================================================================== + Eric Hameleers / alien at slackware dot com / 02-sep-2015 -- cgit v1.2.3