Main menu:

Sponsoring

Please consider a small donation:

 

Also appreciated: support me by clicking the ads (costs nothing) :-)

 

Or you can donate bitcoin:

 

Thanks to TekLinks in Birmingham, AL, for providing colocation and bandwidth.

Page Rank

Fame

FOSS Force Best Blog--2013 Award

Recent posts

Recent comments

About this blog

I am Eric Hameleers, and this is where I think out loud.
More about me.

Search

My Favourites

Slackware

Calendar

April 2014
M T W T F S S
« Mar    
 123456
78910111213
14151617181920
21222324252627
282930  

RSS Alien's Slackware packages

RSS Alien's unofficial KDE Slackware packages

RSS Alien's multilib packages

Tag cloud

Meta

New SQLite driver for the blog

Ever since this blog’s inception I have used a plugin called “PDO for WordPress” which allowed me to have a SQLite (file-based) database instead of the default MySQL database used by WordPress.

There are a couple of bugs in PDO for WordPress that I was getting tired of, and perhaps some of the people writing comments have been annoyed too, when their post failed to show up on the blog. Most notorious bug was that any text containing the two characters ) and ‘ immediately after eachother would silently be discarded by the driver… the only way to get your precious text back was to hit your browser’s “Back” button and try to find out what was wrong with the text.

The PDO for WordPress plugin has not been maintained for a while, mostly because the development pace of the WordPress code was faster than the PDO for WordPress author could manage. Some of the bugs were addressed with patches, but these were never incorporated into a new release.

I was finally so irritated with this that I was going to attempt to apply these patches to my own blog. Luckily, I did my research properly and I ran into a new plugin that can replace the old PDO for WordPress plugin: it is called “SQLite Integration“. This plugin uses PDO just like the old one.

Remember, PDO stands for PHP Data Objects. Quoting the PHP manual: “PDO provides a data-access abstraction layer, which means that, regardless of which database you’re using, you use the same functions to issue queries and fetch data. PDO does not provide a database abstraction; it doesn’t rewrite SQL or emulate missing features“. This is what allows the use of a different database than MySQL and at the same time is the cause of the bugs in my blog – there are incompatibilities in the way WordPress creates SQL queries (targeted at MySQL syntax which does not always work for SQLite).

Interesting enough, the discussion among the WordPress developers about the possible use of PDO has been revived now that the  mysql_* functions are officially deprecated in PHP 5.4.

This new SQLite Integration plugin will work with versions of WordPress starting with 3.3. My blog is at the latest 3.8 release so that is OK.  Thus I proceeded to do the installation of the plugin and re-configuration of the blog, following the instructions (I always RTFM before applying irreversible changes – and make a full backup too ;-)

As you can see, the blog is still here. I have not checked whether the text entry bugs have gone now, but at least I am running on a well-maintained database driver again.

Eric

A journey into recording sound & video in Slackware

ssr When it comes to audio and sounds in Slackware, we’re happy to have ALSA as the sound subsystem. It works reliably, and has done so ever since it replaced OSS in Slackware all those years ago. In due course ALSA got capable of dynamically mixing multiple sound sources – which is basically what a sound server does, too. We were never plagued with the issues of other distros when they abandoned ALSA for PulseAudio.
When the Arts sound daemon of KDE was deprecated and finally removed with the release of KDE4, Slackware was left without a sound “server” that ran out of the box. We still have ESD, the Enlightened Sound Daemon but that one has limited use because of the wrapper programs it needs.
There are however scenarios where you wish Slackware had some sort of audio server. Until now, the only times when that thought crossed my mind it was related to streaming audio over a network – think of remote desktop sessions and virtual machines. I may write some more about that topic in a future post because I think I have the solution now – read on.

A more immediate need arose when I went looking for software that can record videos of my Slackware desktop – individual program windows and gameplay footage. My son is a huge Minecraft fan and wants to be able to do in Slackware what he already does with Fraps in Windows. My intention is to task him with creating some Slackware “end-user” videos to attract newcomers to the distro :-)

It turns out that there really is not all that many good desktop video recording software in Linux land. I have tried recordmydesktop and like it well enough (that is how it ended up in Slackware’s “/extra” section) but it does not deliver stellar videos, in particular I don’t think it is suited for recording gameplay. It also produces OGG video only, which is OK since that gives you the only free and open video format and codecs… but I believe this design decision limits my options too much.

I read up on ArsTechnica’s attempts to record gameplay footage on SteamOS. To this day, the ArsTechnica folk have not found a way to record the audio of a game… apparently it is not as easy as you might think, to record OpenGL games. Programs like FFMPEG and VLC are able to record (parts of) your desktop but it is cumbersome and also does not deliver high-quality video with properly synced audio. These programs are not capable of intercepting OpenGL renders either, which limits their use.
So I went looking… and came across GLC, an ALSA & OpenGL recording software for Linux which was inspired by Fraps and Yukon, but it seems mostly abandoned by its author. Then there also is SimpleScreenRecorder, a relatively new piece of work by Maarten Baert. The program uses FFMPEG’s codecs to allow you to record audio and video into any format supported by the locally installed version of ffmpeg. It supports the recording of ALSA sound sources (think of a microphone). The word “simple” in its name only characterizes the ease-of-use, not the featureset! And it has a Qt-based GUI which nicely blends into my KDE desktop. By means of an OpenGL injection library it also supports direct recording of OpenGL renders (read: games). That should produce superior videos compared to merely recording the desktop window (because that produces lower frame rate videos or lower quality).

Unfortunately it turned out that SimpleScreenRecorder was not capable of recording my Slackware desktop’s sound, and therefore game videos are silent.
That is a show stopper… apparently you need a sound server like PulseAudio in order to record the audio as well. I am not prepared to install PulseAudio on Slackware – as you are well aware, this is a personal issue I have with the PA author and the way he writes code. So I investigated further, and found out that the unreleased GIT sources of SimpleScreenRecorder support JACK as a new sound source next to ALSA (and PulseAudio). I built the program from its GIT sources and then went on to learn about JACK Audio Connection Kit. I knew that JACK is primarily used by audio professionals and musicians because of its low-latency core design. But as it goes with versatile programs, it is inherently difficult to grasp its concepts and complex to configure. But I persevered and ultimately found a way to configure JACK on my desktop, and reconfigure my ALSA setup so that all the programs that I use can still emit sound, and SimpleScreenRecorder is now capable of recording video and audio! I put a demo video online which I recorded for the intro sequence from the Metro: Last Light game.

As you can see, the game stutters a bit, but that is not caused by the recording software – it’s my desktop PC which is just not fast enough for the game.

ssr_qtui

My next post will be about how I built and configured JACK, and what I had to change in my ALSA configuration so that for instance Steam games (using SDL for audio) and MineCraft (using OpenAL for audio) would still make sounds.

In the meantime, if you want to try SimpleScreenRecorder, there’s a couple of dependencies you need to install as well. SimpleScreenRecorder was built against ffmpeg (version 2.1 to be precise – please note that upgrades of ffmpeg will usually break a lot of applications that depend on it due to a change in library versions). Also, the package which I released has been built against jack – even if you do not plan on using it, you’ll have to install it… or you can rebuild SimpleScreenRecorder yourself.
If you want to use SimpleScreenRecorder to record 32-bit OpenGL programs (Steam games, WINE based games) and are running a 64-bit Slackware, it will have to be a multilib system and you will have to use the “convertpkg-compat32″ script (part of my compat32-tools package) to convert and install the 32-bits “compat32″ versions of the simplescreenrecorder, ffmpeg and jack packages as well as the 64-bit versions.
If you want to try and record a Steam game without the Steam windows being visible (those are also rendered in OpenGL), you’ll definitely have to read these instructions: http://www.maartenbaert.be/simplescreenrecorder/recording-steam-games/#native-steam-for-linux because currently it involves some manual tweaking to get this working (I expect that this will get easier in time). Judging by his Wiki, Maarten is responsive to the users of his program and is able to write meaningful documentation.

Get packages (and sources) here:

Have fun! Eric

LibreOffice 4.1.4 for Slackware 14.0 and newer

Quite by accident I noticed that LibreOffice 4.1.4 was released yesterday, even before the DocumentFoundation’s blog post was up. The official stance for 4.1.4 is that it is “the first also suggested for corporate deployments“. Well that is good news! So I quickly cleaned up the KDE 4.12 virtual machines and started with compiling some packages.

What I also did was read this page, suggested to me by my pal Heinz: http://dilfridge.blogspot.nl/2013/12/libreoffice-kde-integration.html . This post mentions the exact issues that were also reported by Slackware users of my earlier LO packages on KDE: slowness in the “File” dialogs for opening and saving; and crashes in LO Sheets when selectiong some cells and then moving them (this would actually freeze the complete KDE desktop, not just LO). I checked out the Gentoo bug reports which are mentioned by Andreas Hüttel and extracted the patches he backported from LibreOffice 4.2. It seems (and I asked some friends to check) that these patches do indeed fix the issues on KDE.

Another change in the SlackBuild is that I switched it to use a private version of poppler, this should hopefully fix the broken PDF import in Slackware 14.1 and -current, because of a change in libpoppler library version since Slackware 14.

The LibreOffice 4.1.4 packages for Slackware are available in my 14.0 package repository – I just uploaded them. Remember, they will work on Slackware 14.1 and current just as well. Note that I ship my LibreOffice 4.1 packages with additional “libreoffice-dict-<language>” packages, containing dictionary and spellchecker support!

If you are still running Slackware 13.37 you should stick with LibreOffice 3.6.7 for which I also have packages.

At this point, I used to request that you select one of the mirrors as your preferred download location, in order to spare the master site at slackware.com. However with the launch of SLackware 14.1 the server has been placed behind the Akamai cache infrastructure, so that downloading from slackware.com will no longer hurt us;

You can subscribe to the repository’s RSS feed if you want to be the first to know when new packages are uploaded.

Cheers, Eric

Freedom of Choice 2013

LinuxQuestions.org Members Choice Awards

LinuxQuestionsFellow Slackers and other friends!

It’s that time of the year again where Jeremy calls upon the masses to enter the poll for the 2013 LinuxQuestions.org Members Choice Awards. Remember last year, when Slackware made it to Desktop Distro of 2012 and was beaten to a hair-width by Debian for Server Distro of the year?

Please have a look at this year’s poll, it’s full of interesting choices. And make a honest selection! I don’t really care if Slackware ends up on top, it is more important that you experience that moment of realization that there is a wealth of Open Source Software out there which allows us to succeed in doing the things we like most. Freedom of choice usually comes at a high price, but Open Source Software & Standards allow you to make your choices for free and in freedom.

Please, take a moment to consider if there are ways for you to contribute back – it does not have to cost you money out of your pocket. If you are poor or can’t spare the money, your give-back can still be trememdously valuable. For instance, by helping friends with their adoption of Open Source, or by writing down your knowledge so that others can in turn advance their own knowledge; maybe you could check at your children’s school to see if there is room for a “Linux college” of sorts or prepare a hack-fest where everyone brings their computer and you bring a bunch of Slackware install CD’s ;-) Or perhaps this is the perfect time to start coding on some cool program so that we can forget about SystemD!

Realize that the Open Source (and Open Standards) ecosystem is about respect, sharing, growth and advancement. You and I, we are both part of this ecosystem. By working together without artificial boundaries or constraints and treating each other as equals, we can try to make this world a better place for all.

It’s like the spirit of Christmas which your Granny keeps talking about, but then without the turkey and the tree.

Happy polling! Happy holidays! Eric

tux-xmas

KDE 4.12 is available

The new release cycle of KDE has commenced today with the revealing of KDE SC 4.12.0!

KDE Software Compilation 4.12.0 will be mainly about improving and polishing KDE Applications. The Plasma Workspace has been feature-frozen at the end of the 4.11 cycle. There is no new source tarball labeled “4.12″ for kde-worlspace anymore, the KDE folk have stuck to the 4.11 tarball for inexplicable reasons… you may recall that the basis on which all of KDE is built, the KDE Platform, has been feature-frozen since 4.9 already. New features in the Platform are being implemented for the future KDE Frameworks 5.0 but nevertheless, a 4.12 tarball has been made available. I guess they are too smart for me, I do not understand this difference in versioning choice.

Anyway, KDE SC 4.12 (with kde-workplace 4.11) runs smoothly here.  I sure hope that KDE 4.12 will soon be added to Slackware-current (Slackware skipped 4.11 entirely). In the meantime, I built packages for you, on Slackware-current. I have not tested them on Slackware 14.1 and although they will probably just work, my focus for new KDE releases will be slackware-current as usual. If you want to be on the bleeding edge of KDE, you’ll have to follow Slackware’s bleeding edge as well.

What’s new in KDE 4.12?

KDE keeps an up-to-date feature plan page for the 4.12 release, as they do for every release past and future. Since the Workspace and Platform have been frozen, much activity is showing in the KDE Applications. Looking at that overview page, I want to check out Okular and Dolphin in any case. The graphical text editor Kate has been improved in areas of code completion and python support, which could make it an interesting choice for code developers. Especially so, since these Kate improvements trickle through in KDevelop which uses the Kate engine. I did not add kdevelop-4.6.0, anyone interested in case Slackware-current does not move soon?

And reading about Kwebkit, I guess I will have to renew the kwebkitpart package sometime soon because I seem to have missed a release.

The PIM suite had a lot of improvements (in speed and functionality) but to be honest I do not use KDE’s PIM software. Interesting to know in any case: According to a mailing list post by Vishesh Handa: there is a chance that Nepomuk will be replaced by Baloo, which performs better and avoids the data duplication currently seen in KDE (copies of the same data, think of emails, get replicated between nepomuk, akonadi and virtuoso leading to large homedirectory storage needs).

How to upgrade to KDE 4.12 ?

You will find all the installation/upgrade instructions that you need in the accompanying README file. That README also contains basic information for KDE recompilation using the provided SlackBuild script.

You are strongly advised to read and follow these installation/upgrade instructions!

Where to find packages for KDE 4.12 ?

Download locations are listed below (you will find the sources in ./source/4.12.0/ and packages in /current/4.12.0/ subdirectories). 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