From dd005500c624d127321ff3fe14a0c29bfa8d67f7 Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Thu, 30 Jul 2020 20:11:13 +0200 Subject: Release of KDE 5_20.06 for Slackware README updated. --- README.5_20.06 | 365 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 365 insertions(+) create mode 100644 README.5_20.06 (limited to 'README.5_20.06') diff --git a/README.5_20.06 b/README.5_20.06 new file mode 100644 index 0000000..47abb24 --- /dev/null +++ b/README.5_20.06 @@ -0,0 +1,365 @@ +KDE5 +==== + +BIG FAT NOTICE: + This monthly release of Alien's ktown is a major prep test + for replacing ConsoleKit2 with elogind in Slackware-current. + Read the instructions carefully! In short: + - UPGRADE TO THE LATEST slackware-current first. + - Then, REMOVE the ConsoleKit2 package. + - Finally, install or upgrade the KDE5 package set. + +This is (unsurprisingly) KDE 5_20.06 for Slackware, consisting of +KDE Frameworks 5.71.0, Plasma 5.19.1 and Applications 20.04.2 +on top of Slackware's Qt 5.15.0. + +Upgrading from the previous 5_20.05 should be done with care! If you do not +follow directions, your system will no longer allow you in! + +KDE-5_20.06 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. Since the release of +Applications 17.12 there's nothing left which is based on kdelibs4. +Slackware-current has begun its slow adoptation of the Plasma5 dependencies. +Most importantly, QT5 and its dependencies are already part of Slackware. + +What is the NEWS in this batch of updates: +- Last month was the first release on top of a PAM-ified Slackware. I thought + I was done with public updates and continued experimenting in private, + but then a discussion on LinuxQuestions.org started because some people + seem to watch my git repository and noticed that I created a new 'elogind' + branch there. The discussion resolved a dead-end for me and I decided to + make a deal with Patrick. A new 'ktown' release targeting a fully + functional Plasma Wayland session. + And so, this month we take another major step. ConsoleKit2 which has been our + Session/Seat Manager for a long time, is going to be replaced with elogind. + The elogind code, similar to eudev which is already in Slackware, is a piece + of the systemd codebase (notably, systemd-logind) which was extracted and + modified so that it is no longer depending on systemd at all. + Slackware needs elogind if we are ever to provide a Wayland desktop next to + the venerable X.Org desktop environment. It seems like ConsoleKit2 is no + longer actively maintained and that means, other developers are no longer + maintaining compatibility with it (ConsoleKit2 and elogind offer similar + functionality but a program which needs that functionality must explicitly + carry the code to support both). + This time we are taking a joint approach. + Pat Volkerding has modified '/etc/rc.d/rc.M' inside the sysvinit-scripts + package, and '/etc/pam.d/login' inside the util-linux package in + slackware-current to be compatible with both ConsoleKit2 and elogind. + I have added elogind to 'ktown' and rebuilt the Slackware packages dbus and + polkit to pick up support for elogind (losing support for CK2 in the + process). + * * + * Note that only one of the two (ConsoleKit2 or elogind) must be installed! * + * If you install ktown KDE-5_20.06 you need to remove ConsoleKit2! * + * * +- So, this leads to the following package updates in 'deps'. + * added the package autoconf-archive which was needed to recompile dbus. + * added elogind (make sure to 'removepkg ConsoleKit2' first!) + * added recompiled Slackware packages with elogind support: dbus and polkit. + * recompiled accountsservice to pick up elogind support + * recompiled polkit-qt5, libdbusmenu-qt5, qca-qt5 against the new Qt5, + which got an upgrade in Slackware since last month's 'ktown' release. + * recompiled grantlee-qt4 because I had forgotten to do so after the 2018 + mass rebuild in Slackware... no-one noticed. +- Frameworks 5.71.0 is an incremental stability release, see also: + https://kde.org/announcements/kde-frameworks-5.71.0 + The packages which pick up elogind support are: solid. +- Plasma 5.19.1 is the second increment of the 5.19 cycle, which means + that I skipped the .0 release. + See https://kde.org/announcements/plasma-5.19.1 and if you want to + read more about the goals for 5.19 you should check out: + https://kde.org/announcements/plasma-5.19.0 + There is a new package in here: kwayland-server. + The packages which pick up elogind support are: plasma-workspace, + powerdevil, kscreenlocker. +- In plasma-extra I rebuilt sddm-qt5 to pick up elogind support and added + plasma-wayland-protocols as dependency for the new kwayland-server in Plasma. +- Applications 20.04.2 is an incremental bug fix release, see also + https://kde.org/announcements/releases/2020-06-apps-update/ +- For applications-extra, I tried (and failed) to update krita + and updated kmymoney. + +Further points of interest: +- 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'! +- 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. +- 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. Apart from updates to regular Slackware packages the new ones are: + accountsservice, autoconf-archive, cfitsio, cryptopp, cryfs, ddcutil, + dotconf, drumstick, dvdauthor, elogind , espeak-ng, flite, freecell-solver, + frei0r-plugins, grantlee-qt4, hack-font-ttf, id3lib, lensfun, + libappindicator, libburn, libdbusmenu-gtk, libdbusmenu-qt5, libdmtx, + libindicator, libsass, md4c, mlt, noto-font-ttf, noto-cjk-font-ttf, opencv, + pcaudiolib, perl-path-tiny, perl-template-toolkit, polkit-qt5-1, + python3-random2, quazip, qca-qt5, qrencode, qtav, rttr, sassc, sni-qt, + speech-dispatcher, and vid.stab + The phonon and poppler packages were extended so that they now support + Qt5 as well as Qt4. The gpgme package picked up Qt5 support. + Note that the SBo version of 'frei0r-plugins' package is called 'frei0r'. + If you have that SBo package installed, remove it. + Several 'deps' packages which used to be listed here, have already been + absorbed into Slackware. Let's hope the rest takes the same road soon. +- KDEI is gone. The localizations are now embedded in each package and + no longer available as separate 'kdei' packages. This is a by design. + You will get all languages installed by default. + +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. + +NOTE: +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. + +NOTE: +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. + +NOTE: +You can start a Plasma Wayland session via SDDM (runlevel 4) by selecting it +in the session drop-down menu. +You can start a Plasma Wayland session at the console (runlevel 3) by +executing the "startkwayland" command. + +NOTE: +Running a Wayland session using the proprietary NVIDIA driver is possible, +see https://community.kde.org/Plasma/Wayland/Nvidia . +There are still some quirks & glitches but no showstoppers. +* Qt5 >= 5.15 is a requirement, luckily we already have that in Slackware. +* You need to enable modesetting: + The output of "cat /sys/module/nvidia_drm/parameters/modeset" should be "Y". + If you get a "N", then you need to add the string "nvidia-drm.modeset=1" + to the kernel's boot commandline e.g. via the 'append' parameter in + (e)lilo.conf or syslinux.cfg, or via the 'linux' parameter of grub.cfg. +* KWin needs to use EGLStreams for accelerated graphics support: + Create a profile script (e.g. /etc/profile.d/kwin.sh), make that script + executable and let it contain the single line: + export KWIN_DRM_USE_EGL_STREAMS=1 + (or set this environment variable through any other means that you prefer). + + +------------------------------------------------------------------------------- +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 to return to the console. +If your computer boots to runlevel 4 (graphical login) you first have to go +back to runlevel 3 (console) after logging out. Press to +switch to a console, logon there, and execute the command "init 3" to +switch from runlevel 4 to 3, thereby effectively stopping X. + +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 amarok + # removepkg kscreen + # removepkg kactivities + # removepkg kde-workspace + # removepkg kdeconnect-kde + # removepkg kdepim + # removepkg kdepimlibs + # removepkg kdev-python + # removepkg kdevelop-php + # removepkg kdevelop-php-docs + # removepkg libkscreen + # removepkg libmm-qt + # removepkg libnm-qt + # removepkg plasma-nm + # removepkg polkit-kde-agent-1 + # removepkg polkit-kde-kcmodules-1 + # removepkg wicd-kde + ... or instead of the above, simply run '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_19.11) 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_20.05 installed: +- UPGRADE TO THE LATEST slackware-current first. +- Then, REMOVE ConsoleKit2: + # removepkg consoleKit2 +- Upgrade to KDE 5_20.06 +- Move the new X session files into place which SDDM uses to start your + login-session, but first check that you won't accidentally overwrite + any of your customizations: + # mv /usr/share/sddm/scripts/Xsession.new /usr/share/sddm/scripts/Xsession + # mv /usr/share/sddm/scripts/Xsetup.new /usr/share/sddm/scripts/Xsetup + +If you have my 'ktown' set of KDE 5_20.04 installed: +- Upgrade to KDE 5_20.05 + Remove the packages that no longer exist in KDE 5_20.05: + # removepkg python-enum34 + +If you have my 'ktown' set of KDE 5_20.03 installed: +- Upgrade to KDE 5_20.04 + Remove the packages that no longer exist in KDE 5_20.04: + # removepkg kdeconnect-framework + +If you have my 'ktown' set of KDE 5_20.02 installed: +- Upgrade to KDE 5_20.03 + Remove the packages that no longer exist in KDE 5_20.03: + # removepkg OpenAL + # removepkg SDL_sound + +If you have my 'ktown' set of KDE 5_20.01 installed: +- Upgrade to KDE 5_20.02 + Remove the packages that no longer exist in KDE 5_20.02: + # removepkg polkit-kde-kcmodules-framework + +If you have my 'ktown' set of KDE 5_19.12 installed: +- No further actions are needed. + +If you have my 'ktown' set of KDE 5_19.11 installed: +- Upgrade to KDE 5_19.12 + Remove the packages that no longer exist in KDE 5_19.12: + # removepkg qt-gstreamer + +If you have my 'ktown' set of KDE 5_19.10 installed: +- Really? A full re-install may be wiser. + +Proceed with installing/upgrading KDE 5 as outlined below. + +NOTE: +Instead of using the mirror host http://slackware.nl/alien-kde/ (its rsync URI +is rsync://slackware.nl/mirrors/alien-kde/), you could choose the alternative +mirror http://slackware.uk/people/alien-kde/ (its rsync URI is +rsync://slackware.uk/people/alien-kde/) which is faster for some people. + +NOTE: +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: + [0-9]+_SBo + [0-9]+alien + [0-9]+compat32 +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://slackware.nl/mirrors/alien-kde/current/latest/ latest/ + +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://slackware.nl/mirrors/alien-kde/current/latest/ latest/ +If you want only the 32-bit packages: + # rsync -Hav --exclude=x86_64 rsync://slackware.nl/mirrors/alien-kde/current/latest/ latest/ + +Assuming you just downloaded the bits you want from the directory tree "latest" +you must now change your current directory to where you found this README +(which is the directory called 'latest'). If you used one of the above "rsync" +commands then you can simply do: + + # cd latest + +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/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 + +NOTE: + If you installed the slackpkg+ extension and configured a 'ktown' repository + with the label 'ktown' then the commands to upgrade would become: + # slackpkg update + # slackpkg install ktown + # slackpkg upgrade-all + The first command fetches the repository metadata from the remote server(s); + The second command installs any new package that was added to the repository; + And the third command will upgrade all installed packages, including the + 'ktown' packages, to their latest versions in the repositories. + +Finally: +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 this is the first time you run Plasma5, be aware that Baloo will +tax your CPU fairly heavily for a while as it indexes the content of +the files on your hard disk. After this initial indexing operation finishes, +(could take several hours) Baloo will get out of your way and stay there. + +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://slackware.nl/mirrors/alien-kde/source/latest/ sources/ + +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 scripts +'updates.SlackBuild' and 'alldeps.SlackBuild' in a long time) as easy as this: + # cd sources/deps + # ./updates.SlackBuild + # cd - + +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 sources/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 / 18-jun-2020 -- cgit v1.2.3