My thoughts on Slackware, life and everything

Tag: qt (Page 1 of 2)

Calibre 6.14.1 – I finally made it past 6.11…

News for people who no longer read paper books!
Well 😉 I guess everyone needs paper from time to time, but in all honesty, my eyes are getting worse and an E-reader is the optimal device for me when I want to read books – I can enlarge the font and it has a night light.

Calibre 6.x is a really cool-looking and versatile graphical Python3 application, using PyQt to build the graphical interface based on Qt6 widgets. It is the application to use if you have a collection of E-books and an E-reader, and want a decent library management program to move these E-books onto your E-reader. In addition, it offers a good ebook-viewer application for your computer and even an impressively powerful E-book editor.

As you may know, I have been creating native Slackware packages for Calibre for many years. However I had some issues with the compilation of any Calibre release past version 6.11.0. Kovid Goyal, the developer of this e-book management software, removed some of the content from his release tarballs and since version 6.12.0 requires that the build process generates these required files instead.

This meant that I had to study the changes in the Python files which are used to build Calibre to discover how the missing pieces where getting downloaded and compiled during a ‘bootstrap’ build. That took a while but I found a way to get these sources in place before starting the build.
So now again, Calibre packages for Slackware 15.0 and -current will be getting refreshes in my repository.

Download the new Calibre 6.14.1 packages from my repository or any mirror (like my own US mirror). No external dependencies, works out of the box on Slackware 15.0 or -current.

 

Have fun! Eric

First package for Calibre6 in my repository

Not so very long after I was finally able to produce my first packages for Calibre 5.x, Kovid Goyal ended that development cycle and bumped his e-book management application’s major version number to “6” in order to make a switch from Qt5 to Qt6 as its graphical engine.

The main hurdle for me when the upgrade from Calibre 4.x to 5.x happened was that internally, Calibre switched from Python2 to Python3. Essentially the whole of Calibre is written in Python and it uses PyQt to build the graphical interface using Qt widgets.

It took me a lot of work to re-write the calibre.SlackBuild to also make that Python switch. After all, my single calibre package is actually getting built from many sources (44 tarballs for Calibre 4, 55 tarballs for Calibre 5) and a lot of those had to be replaced to work with Python3. Moving my calibre.SlackBuild to Python3 took so much effort that I decided to apply some simplification as well: I removed the script’s ability to build its own Qt5 libraries from source, instead I let my calibre-5.x packages depend on the qt5 package which is already present in the Slackware OS since release 15.0.
Naturally I was not looking forward to doing the same cumbersome and time-consuming exercise again, now having to figure out the intricacies of Qt6, a graphical toolkit I had never built or used before.

But I was bothered by the consequence that I had to stick with Calibre 5.44 being the final release using Qt5, and so I decided to take my time, and inbetween other activities I started gradually re-writing the calibre.SlackBuild script to encompass the new sources and get these compiled and tested.

Now then finally, you can install Calibre 6 on Slackware using a 170 MB large natively-built package which needs 64 source tarballs to compile You can get the new Calibre 6 packages from my repository or any mirror (like my own US mirror). No external dependencies, works out of the box on Slackware 15.0 or -current.

To refresh your memory in case you are still thinking “what the heck is he talking about” – Calibre is an e-book library management program which I started using after buying my first E-reader (a Sony TRS-T1) and discovering that the accompanying e-book management software was proprietary and not user-friendly. The functionality and ease-of-use of Calibre were so much better than the commercial software that I never looked back.
I now read my e-books on a Kobo Aura2 H2O . Adding books to the reader is dead-simple: Calibre exports my book library on the internet as a OPDS server that works with any e-reader that has Internet connectivity, and I can scroll through my library even when on vacation and pick a new book to read. The power of Open Source.

A note for those of you who are on a 32bit Slackware and are currently using my Calibre 5.x package. With Calibre 6 it is no longer needed to set the “QTWEBENGINE_CHROMIUM_FLAGS” variable to disable seccomp. Qt6 does not appear to have the issues that the embedded Chromium browser of Qt5 had.

I also checked that the application’s screenreader still works. Right-click the current page in your open e-book text and then click “Read Aloud“. The text-to-speech is provided by an embedded speech-dispatcher program.
This is great, but the downside of it is, that the default espeak voice sounds like Steve Hawking came to visit you. If you find out how to improve the text-to-speech capability of Calibre by adding voices (especially non-english) and playing with the various engines, please let me know in the comments section below. I really would like to improve the out-of-the-box TTS experience for people with visual disabilities or dyslexia.

Have fun! Eric

KDE SC 4.10.0 released

Right on time, here is KDE Software Compilation 4.10.0. We left behind the 4.9 series but since this is a “zero release” I will keep my 4.9.5 packages around for a while. With this 4.10 series, one of the most interesting new features for end-users is the enhanced scripting possibilities for Plasma Workspaces (using QML, the Qt Markup Language and QtQuick) and the KWin window manager using external scripts. A new print manager has been added as well.

I have had packages ready for a few days already, and that allowed for limited testing by the people I trust. No strange bugs surfaced, if there are any left I hope you will uncover them 🙂

Remember: my ktown packages for KDE are meant to be used on Slackware-current, but I built this set of packages on Slackware 14.0. It allows these KDE 4.10.0 packages to work on Slackware 14 as well as -current.

How to upgrade to KDE 4.10.0? Whether you are upgrading from the stock KDE 4.8.5 of Slackware 14.0/current, or if you are upgrading from my previous 4.9.5 packages, you will find all the installation/upgrade instructions that you need in the accompanying README file.

You are strongly advised to read and follow these instructions!

Highlights for the new set of Slackware packages:

  • You will find nine updated dependencies compared to Slackware’s own KDE 4.8.5:  PyQt, akonadi, attica,phonon-gstreamer, qt, shared-desktop-ontologies, sip, soprano, virtuoso-ose. Several of those were updated after my previous 4.9.5 packages. I added a new one as well: qjson.
  • Some of the “extragear” of the KDE in Slackware 14/current has been updated: with new versions of calligra (accompanying the KDE 4.10.0 release), kdevelop, kdevplatform, oxygen-gtk2, skanlite (already updated for my previous package sets).
  • The “extragear” section also introduces new packages (compared to the stable Slackware): oxygen-gtk3 – which should give any software which uses the GTK+3 widget set a nice integrated look and feel when you run it in KDE; and kio-mtp which is required in order to access and manage files on devices running Android 4.0 and later. Starting with the KDE 4.10.0 release, I also added libkscreen and kscreen – this is a new screen management software which plugs into the System Settings of KDE’s Plasma Workspace. It tries to make multilple-screen management as easy as possible
  • Compared to KDE 4.8.5, but also compared to KDE 4.9.x, there were some package removals:
    • kdegames has been split up into several smaller individual packages, starting with 4.10.x
    • kdemultimedia had been split up into several smaller individual packages already, starting with 4.9.x.
    • ksecrets has been removed completely since the 4.9.x series.
    • printer-applet has been replaced by print-manager since the 4.10.0 series.

Download locations (using a mirror is preferred:

Have fun! Eric

Last maintenance release in KDE 4.9 series

The KDE developers are already well underway to a 4.10 release, having published the second Beta yesterday. But as I stated before, I will stick with the 4.9 series until at least there is a stable release of 4.10. Today marks the final update in the 4.9 series. With the publication of KDE Software Compilation 4.9.4 we are at the end of the maintenance cycle. Check out the release notes if you want to know all about what happened in the past month.

I think that 4.9.4 is a perfect companion for people running Slackware 14 or current.

My Ktown packages for KDE are specifically targeting Slackware-current, since that is what they are built on. At the moment, the development of -current has not deviated much, so that the KDE 4.9.4 packages will work well on Slackware 14 as well. That is why you will find the packages in a “14.0” directory.

Whether you are upgrading from the stock KDE of Slackware, or if you are upgrading from my previous 4.9.3 packages, you will find proper installation/upgrade instructions in the accompanying README and you are strongly advised to read and follow them.

Highlights for the new set of Slackware packages:

  • You will find five updated dependencies compared to Slackware’s own KDE 4.8.5: akonadi, qt, shared-desktop-ontologies, soprano, virtuoso-ose.
  • Since qt-4.8.4 was released a few days ago, I decided to add this version to the package set. I would have had to rebuild qt anyway in order to apply fixes for crash bugs, but 4.8.4 should be better even..
  • I had upgraded some of the “extragear” of KDE in my 4.9.3 package set and they are kept for 4.9.4: you will find new versions of kdevelop and kdevplatform, as well as oxygen-gtk2.
  • I had added a new package oxygen-gtk3 to my 4.9.3 set which is also carried to this 4.9.4 set. The package should give any software which uses the GTK+3 widget set a nice integrated look and feel when you run it in KDE.
  • And to conclude, I have added an entirely new package to this KDE 4.9.4 set, “kio-mtp” which is required in order to access and manage files on devices running Android 4.0 and later. I have not tested this, and am hearing mixed reports about its usefulness. Let me know if you use this!
  • Compared to KDE 4.8.5, there were two package removals:
    • kdemultimedia has been split up into several smaller individual packages.
    • ksecrets has been removed completely in the 4.9.x series.

Download locations (using a mirror is preferred, both my own taper and Willy’s server are fully synchronized):

 

Have fun! Eric

 

KDE 4.8.0 arrives

The release schedule could have told you in advance – here we have the first installment in the KDE 4.8 series!

The Slackware KDE 4.8.0 packages are ready for your enjoyment..

A good primer on the how and why of the modularization of KDE, resulting in an abundance of smaller packages compared to the big meta packages of Slackware 13.37, please read my earlier post about KDE 4.7.0.

My packages have been compiled on Slackware-current. There has been an incompatible update to slackware-current recently (the glibc package). If you consider using KDE 4.8.0 on one of Slackware’s earlier (stable) releases, then you have no other option than to compile packages yourself. I have written down the guidelines in another blog post..

Read the accompanying README file for installation and upgrade instructions!

Some of the highlights of these KDE packages:

  • Being the first release in the KDE 4.8 series means, there will probably be some bugs to iron out. But, I really can not find anything wrong with this point zero release. It sports a new default background “Ariya” to replace “Horos” of the 4.6 and 4.7 releases. It’s nothing but straight-line geometry, giving the desktop a professional look. The desktop feels fast and snappy, partly thanks to the upgraded Qt 4.8.0 which I added as well, but also thanks to the improvements made to kwin, KDE’s window manager. Enabling the “blur” effect should no longer slow down your desktop.
  • There are a lot of updated dependencies compared to Slackware’s own KDE 4.5.5: PyQt, QScintilla, akonadi, attica, clucene, ebook-tools, hunspell, libdbusmenu-qt, libvncserver, phonon, polkit-qt-1, qt, raptor2, rascal, redland, shared-desktop-ontologies, sip, soprano, strigi, system-config-printer and virtuoso-ose. I really hope Slackware will catch up some day, as it is no fun to maintain so many packages outside of the main Slackware tree.
  • In comparison with my previous KDE 4.7.4 the number of updated dependencies is still rather big because I wanted to offer the best experience: akonadi, attica, hunspell, libatasmart, libvncserver, phonon, phonon-xine, polkit-qt-1, qt, strigi, udisks, and upower have all been brought to their most recent versions. Note that libktorrent is now located in “deps” instead of “kde” directory because it has become a dependency for more than just ktorrent.
  • KDE dpendencies that are not part of Slackware 13.37 at all (yet): grantlee, herqq, libatasmart, libbluedevil, libssh, phonon-gstreamer, phonon-xine, sg3_utils, udisks and upower. Note that I added phonon-gstreamer and phonon-xine only after I had already released KDE 4.7.0 packages because people reported that they no longer had sound. These two packages solve that issue.

Also worth mentioning is some stuff which is not completely new, since I added these to previous releases of KDE 4.7 already (but if you are new to KDE 4.8 this will certainly interest you):

  • You will find some additional useful new applications, which are not part of the KDE core set. They are new, compared to Slackware’s own version of KDE. I already added bluedevil to my 4.6.5 package-set. Bluedevil is the new KDE bluetooth stack with a nice GUI, based on the BlueZ libraries already present in Slackware. And with KDE 4.7.0, I included kplayer, a KDE front-end to MPlayer. With KDE 4.7.2, I added Quanta Plus, which disappeared from KDE4 because that migrated from Qt3 to Qt4. It is now being worked on again, but no longer as a standalone application – instead it is available as a plugin to the Kdevelop Platform. And with KDE 4.7.3, I added a native WICD applet for KDE, called “wicd-kde“. It can replace the GTK based “wicd-client” which is part of the wicd package.
  • I also added oxygen-gtk2 (renamed from “oxygen-gtk” now that there is also a version supporting GTK3). It is not really an application, but a theme engine. It (optionally) makes GTK2 applications visually blend in with KDE’s own Oxygen theme. There is a README in its documentation directory which explains how to enable it.
  • Since KDE 4.7.2, I include a “test” directory. This directory contains NetworkManager, plus some other dependencies, that allows me to create a KDE package for “networkmanagement“. Networkmanagement is an applet plus a kcontrol (i.e. a plugin for KDE’s systemsettings). Use the packages in this “test” directory if you want to switch from WICD to NetworkManager as your basic network management service. The applet plus kcontrol make it quite easy to configure your network in KDE (wired, wireless, vpn, dsl and mobile broadband). No new Gnome libraries had to be added for this (NM itself plus its supporting tools have no dependency on the rest of Gnome). I have added NM installation/configuration instructions to the README. Note that I moved from NM 0.8 (which I had in KDE 4.7) to the newer NM 0.9 because that is what KDE currently supports best.

The KDE 4.8.0 packages for Slackware-current are available for download from my “ktown” repository and several mirrors (taper will probably be in sync when I post this, the other mirrors will have to catch up):

Have fun! Eric

« Older posts

© 2024 Alien Pastures

Theme by Anders NorenUp ↑