My thoughts on Slackware, life and everything

Tag: qt5 (Page 2 of 2)

Finally: VLC 3

largeVLCIt took the VideoLAN developers several years of development to leave the ageing v2 releases of their VLC player behind and release a shiny new version ‘3’. This is also the first version which unifies the releases for all platforms the player can run on.
Lots of changes went under the hood and I encourage you to read the release notes. The new release contains working ChromeCast support using a software stack the developers wrote from scratch, where the video’s you cast are transcoded on the fly if necessary. The UPnP support which was broken for many years, has been re-written and finally works again, so that you can watch the movies you make available on your LAN using for instance Plex or Universal Media Server.

When I compile the VLC package I try to follow the VideoLAN guidelines for its supporting libraries, so that the user experience and functionality matches that of the official binaries as closely as possible. That resulted in several changes to the libraries used by VLC:

  • Updated internal libraries: libass, libdvdcss, libdvdnav, libdvdread, libbluray, ffmpeg, live555, libssh2, x262, x264.
  • New internal libraries: microdns, sdm, srt.
  • Removed libraries (no longer used internally): aacenc, daap, faad, faac, vcdimager.

A note about dependencies for the new package:
My Slackware packages for VLC are mostly self-contained with all of the supporting libraries compiled into the package. This makes for a minimal dependency on external libraries/packages. But there are some caveats with the new release: most importantly, its interface has switched from Qt4 to Qt5. While Slackware contains a ‘qt4’ package, it does not contain ‘qt5’ and therefore, the vlc-3.0.0 package introduces three new dependencies, all related to the Qt5 GUI: libxkbcommon, qt5 and qt5-webkit. On Slackware 14.2, two more packages are needed which are already incorporated into slackware-current: libinput and libwacom (the latter one only for 64bit).

A warning to users who built a ‘qt5’ package themselves, using the SlackBuild script at slackbuilds.org:
Un-install that ‘qt5’ package please and install mine. The ‘qt5’ package built with the SBo script will make VLC crash with a segmentation fault.

A note on compiling:
When you want to compile VLC 3 yourself, be sure to install java8 and apache-ant or your build will fail.

Where to find the new VLC packages:

Rsync access is offered by the mirror server: rsync://slackware.nl/mirrors/people/alien/restricted_slackbuilds/vlc/ .

For BluRay support, read a previous article for hints about the aacs keys that you’ll need.

Note that I only built packages for Slackware 14.2 & -current. I stopped creating packages for Slackware 14.1 and earlier because of the effort it takes to build 4 packages for every Slackware release.

My usual warning about patents: versions that can not only DEcode but also ENcode AAC audio can be found in my alternative repository where I keep the packages containing code that might violate stupid US software patents.

KDE 5_15.07 – July release for Slackware-current

Plasma5_lockedpowerpenguin Today my son had his last day at school – holiday time! We had little hope he would pass his semi-final year at the “middelbare school” but he managed to pull of a small miracle and passed anyway. Yay! His dad will sleep better now… and I used the relaxed mood to sit behind this computer and write a blog post about the July release of KDE 5 for Slackware-current. While my son went out to party, we slackers just install the latest and greatest software and pound it hard to see if any bugs seep out of the cracks.

The past month saw various KDE component releases which I let slip, because I intend to offer upgrades only when newer versions of all of Frameworks, Plasma and Applications are available. Well, there was Frameworks 5.11.0 several weeks ago but I skipped that one entirely, and today Frameworks 5.12.0 was released. The KDE Applications 15.04.3 release was already more than a week ago, and Plasma 5.3.2 one day before that, on 30 June.  Time for some package building, and because the Frameworks sourcecode was made available to packagers a number of days ago, I had them ready on wednesday… but needed to wait for the public release of the new Frameworks.

Now then, my July release of the next-gen KDE for slackware-current: KDE 5_15.07. Its main components, as said earlier, are Frameworks 5.12.0, Plasma 5.3.2 and Applications 15.04.3. The updates to Applications also contain the usual KDE 4 Long Term Support (LTS) updates for kdelibs, kdepimlibs, kdepim, kdepim-runtime and kde-workplace. Hopefully Pat will fold those LTS releases back into the official KDE 4 for Slackware-current.

What’s new in KDE 5_15.07?

Well… probably all sorts of improvements under the hood of the various packages, but nothing exciting jumps out that I feel compelled to tell you about. Overall, more stability and less bugs, let’s hope. Read the Release Notes and you’ll know it all. Hey, weekend ahead! Time is on your side.

Installing or upgrading Frameworks 5, Plasma 5 and Applications

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

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

Note:

If you are using slackpkg+, have already moved to KDE 5_15.01 or newer and are adventurous, you can try upgrading using the following set of commands. This should work but feel free to send me improved instructions if needed (assuming in this example that you tagged my KDE 5 repository with the name “ktown_testing” in the configuration file “/etc/slackpkg/slackpkgplus.conf“):
# slackpkg update
# slackpkg install ktown_testing (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_testing (upgrade all existing packages to their latest versions)
# slackpkg upgrade-all (upgrade the remaining dependencies that were part of my repo previously)
# removepkg sddm-theme-breeze (gone after KDE 5_15.01)
# removepkg libmm-qt5 (gone after KDE 5_15.03)
# removepkg qt-gstreamer0 (gone after KDE 5_15.04)
# slackpkg reinstall qt-gstreamer (ensure that none of the overlapping files of qt-gstreamer0 are left)
# slackpkg reinstall kactivities-framework (ensure that you are using the frameworks version of kactivitymanagerd)

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 that I do not want to repeat here, but 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 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 “testing” repository):

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

New calibre packages – finally

calibreicoIt’s been nearly ten months since my last package for Calibre. What’s Calibre again I hear you ask? It is the highly popular E-book library management program with support for any E-Reader you can think of. I doubt that anyone who tried Calibre will ever switch back to one of the proprietary library management programs that commonly ship with E-Reader devices because Calibre transfers your E-books to and from your E-Reader device with ease. Calibre also contains an excellent E-book reader program for your desktop – even an EPUB editor comparable to Sigil. It will let you convert E-books from one format to another and allows you to subscribe to lots of news sites.

Last year august, the Calibre software switched from Qt4 to Qt5 for its user interface, and I was not yet prepared to follow suit. Running up to that month I had been working long and hard on the new KDE 5 preview and that was my first encounter with Qt5 – I decided to wait a bit for the new Calibre to mature and also I wanted to wait with adding Qt5 to my slackbuilds repository (the qt5 in ‘ktown_testing’ was just that, for testing KDE 5 and nothing production-ready).

During the previous couple of weeks I enjoyed several long weekends due to national holidays, and so it happened that I could spend some time re-visiting the calibre.SlackBuild and updating it so that it was able to compile a package for Calibre 2.x.

I wanted as few external dependencies as possible. The exception would be Qt5 which should be a proper package in its own right – it is too big to become a mere part of a calibre package. I ended up with just “podofo” and “qt5” as dependencies and I am now in the process of uploading the qt5 packages for slackware-current… something I forgot earlier this week. I borrowed them from my ktown_testing repository in order to compile Calibre.

But I also want to keep the older Qt4 version of Calibre (the 1.x releases) around for those who like that better or do not want the big Qt5 on their computer. So I renamed my SlackBuild for the 1.x version to “calibre1.SlackBuild“. I then recompiled calibre-1.48.0 for Slackware-current because the previous build of the package was broken after the recent big update and I still needed to address that issue. That is why you will find a “calibre” as well as a “calibre1” package in the repositories for Slackware 14.1 and -current. Take your pick.

Enjoy a shiny new Calibre 2.28.0 on Slackware (14.1 and -current)!

Eric

Thinking about working on KDE 5 again (frameworks, plasma, applications)

qt-kde-620x350During these final days of my relatively long Christmas holiday, I have started looking at the KDE 5 build scripts again. KDE 4 has seen its final release sometime ago, and Patrick shows no signs of updating the KDE in slackware-current, so in order to bring some fresh excitement to KDE users on Slackware, I am pondering an update of the “testing” repository aka the KDE5 repository.

In December, the KDE community released the first tarballs of the “Applications” which is the first step to completion of the new KDE 5 desktop. Remember: the Frameworks 5 came first (a set of modular libraries that expand the functionality of Qt5), Plasma 5 builds a desktop workspace on top of the Frameworks, so that had to come next, and finally there are the Applications which are now ported from the KDE 4 Development Platform to Frameworks 5 slowly.

In particular that recent release of Applications 14.12 (the notation used here is YY.mm) gave me some headaches. Most of these applications are familiar from KDE 4, and only a few are now ready for the Plasma 5 desktop workspace (Kate and KWrite, Konsole, Gwenview, KAlgebra, Kanagram, KHangman, Kig, Parley, KApptemplate and Okteta). It is impossible for me to separate the KDE 5 applications from the KDE 4 applications. Their names have not changed, and whereas I needed to rename a few packages in Frameworks and Plasma in order to prevent a clash with package names in the KDE 4 set, I do not want to do the same for the Applications. After all, when running Plasma 5 you do not want to see both KDE 4 and Plasma 5 versions of the Konsole application in your desktop menu – just the Plasma 5 version. Also, compiling these “Applications 14.12” will cause a lot of KDE 4 packages to be overwritten – for example, marble-4.14.3 with marble-14.12.0 et cetera. That is a one-way road. I can not think of a clean method of separating the old and the new.

In my “preview” of KDE 5, I was able to offer the KDE 5 packages as co-installable to KDE 4 because it was not yet more than Frameworks and Plasma packages – it needed the presence of KDE 4.x in order to provide a meaningfull Plasma 5 workspace. That meant, you could install KDE 5, play around with it for a bit, and then un-install the packages if you had seen enough, without this process touching or destroying the configuration of your KDE 4 environment. That was a good thing, because Plasma 5 was quite unstable at that time, and the whole exercise was not meant to probide an actual day-to-day work environment.

We are now 5 months further in time, and the current state of Frameworks/Plasma 5 combined with the new set of Application releases, should provide a stable platform that is slowly migrating from KDE 4 to 5.

That is why I decided to not stretch my luck and try another co-installable version of KDE 5 but instead go all the way and provide a full upgrade from KDE 4.14.3 to Frameworks/Plasma/Applications. It will take a while because of all the unknowns, but I think I have done most of the preparations now (gathering all the sources, updating the build scripts). It will be a matter of compiling, fixing failures and retracing issues to their resolution.

I think I will also provide scripts for an easy roll-back from the new KDE 5 packages to either the default Slackware packages or else my KDE 4.14.3 packages.

Note that this is going to be relevant and beneficial only to people who are running Slackware-current (our development version) so if you are going to want to try this later on, you need to know what you are up to. Once you will upgrade from KDE 4 to my new KDE 5 packages, it may not be trivial (i.e. without cleaning out your ~/.kde and ~/.local directories) to downgrade at a later point in time.

End transmission.

Eric

KDE Frameworks 5 and Plasma Next

qt-kde-620x350The KDE4 series is still actively developed (in August we will see the release of KDE SC 4.14) but the KDE developers have been working long and hard at the next generation desktop. I wrote some generic phrases in the past about KDE Frameworks 5 (the successor to the KDE Platform aka kdelibs) and Plasma Next (the Qt5 based successor of the Plasma Workspaces of KDE4 which uses Qt4 for its graphical splendor).

But in the next few months we will actually see the first stable release of the Frameworks and the Plasma 2. There are beta sources available now and I grabbed those in order to re-write Slackware’s KDE.SlackBuild build harness. That took a lot more effort than I anticipated but I am glad I did it in an early stage (I don’t usually concern myself with KDE beta releases). My scripts are ready and it’s mostly empty slack-desk files which need some more attention.

I won’t be sharing more than screenshots at this moment. The KDE-5 desktop is just too crash-prone in this beta stage, and I want to spare Slackware the disaster of pushing an unstable desktop. Just think of how the “big distros” handled the release of KDE 4.0 which was basically a “technology preview” but got added to distros anyway, much to the chagrin and frustration of their endusers.

Some interested parties have received a link to the new packages to try them out and give me feedback. My first attempt was missing a lot of things (missing icons, menus, application entries) but thanks to the feedback, my second compilation attempt (using the sources for Frameworks 5 Beta3, to be released tomorrow, and git snapshots of  Plasma Next) looks a lot better:

kf5_startup

KDE 5 startup (Breeze theme)

kf5_menu

The KDE 5 menu – Qt5 co-esisting with Qt4

kf5_systemsettings_compositor

The OpenGL Window Compositor has become intelligent

This is just a taste of things to come in the summer, I hope!

Eric

Newer posts »

© 2024 Alien Pastures

Theme by Anders NorenUp ↑