Loud ramblings of a Software Artisan

Monday 22 June 2020

Flatpak extensions

Linux Audio

When I started packaging music applications in Flatpak, I was confronted to the issue of audio plugins: lot of music software has effects, software instruments and others implemented as plugins colloquially called VST. When packaging Ardour, it became clear that supported these plugins where a necessity, as Ardour includes very little in term of instruments and effects.

On Linux there are 5 different formats: while LADSPA, DSSI and LV2 are open, VST2 and VST3 are proprietary standard, created by Steinberg, they are very popular in non-libre desktops and applications. Fortunately with somewhat open implementations available, they exist on Linux in open source form. These 5 audio plugins format work in whichever applications can host them. In general LV2 is preferred.

Now the problem is that "one doesn't simply drop a binary in a flatpak". I'm sure there are some tricks to install them, since a lot of plugins are standalone, but in general it's not sanctioned. So I came up with a proposal and an implementation to support and build Linux Audio plugins in Flatpak. I'll skip the details for now, as I'm working on a comprehensive guide, but the result is that several audio applications now support plugins in flatpak, and a good number of plugins are available on Flathub.

The music applications that support plugins in Flatpak are Muse3 (not to be confused with MuseScore), LMMS, Hydrogen, Ardour (this is not supported by the upstream project), Mixxx, gsequencer. Audacity is still pending. There is also a few video editors: kdenlive, Flowblade, and Shotcut that support LADSPA audio effects and can now use the packaged plugins.

Sadly there don't seem to be a way to find the plugins on Flathub web site, nor in GNOME Software (as found in Fedora). So to find available plugins, you have to use the command line:

$ flatpak search LinuxAudio

GIMP

In the same idea, GIMP was lacking plugins. GMic has been the most requested plugin. So I took similar steps and submitted plugin support for GIMP as a flatpak. This was much less complicated as we don't have the problem of multiple apps. Then I packaged a few plugins, GMic being the most complex (we need to build Qt5). Now GIMP users have a few important third-party plugins available, including LensFun, Resynthesizer, Liquid Rescale and BIMP.

Thanks to all the flathub contributors and reviewers for the feedback, to the Ardour team for creating such an amazing application, and to Jehan for his patience as the GIMP flatpak maintainer.

Friday 1 February 2019

Music, Flathub and Qt

I have started reading recently about music theory and such, with the purpose to try to learn music (again). This lead me to look at music software, and what we have on Linux.

I found a tutorial by Ted Felix on Linux and MIDI

I quickly realised that trying these apps on my Dell XPS 13 was really an adventure, mostly because of HiDPI (the high DPI screen that the PS 13 has). Lot of the applications found on Fedora, by default, don't support high DPI and a thus quasi impossible to use out of the box. Some of it is fixable easily, some of it with a bit more effort and some, we need to try harder.

Almost all the apps I have tried used Qt. With Qt5 the fix is easy, albeit not necessarily user friendly. Just set the QT_AUTO_SCREEN_SCALE_FACTOR environment variable to 1 as specified in Qt HiDPI support documentation. There is also an API to set the attribute on the QCoreApplication object. There must be a good reason why this opt-in and not opt-out.

This is the case of Muse3 (aka muse sequence not to be confused with MuseScore which work out of the box, at east from Flathub), and Rosegarden.

LMMS and Hydrogen on the other hand are using Qt4 on Fedora 29. The good news? They both have been ported to Qt5, so it is just a matter of building these newer versions. After doing so, they still need the workaround described above.

This is where Flathub comes into play: make them available on Flathub, where we can set that environment variable for the runtime.

In the end, I have Hydrogen available on Flathub, the three others in queue for Flathub, and all have had patches submitted (with Muse3 and Rosegarden already merged upstream).

Now what other cool Free Software music oriented application exist?

Tuesday 27 January 2009

KDE 4.2 mis-step

One more time a Free Software project advocate using a closed and proprietary technology to view their announcement. See for yourself: http://www.kde.org/announcements/4.2/desktop.php. Apparently the KDE4 release party video fiasco was not enough (using the same technology).

<Nightrose> hub: yea - i can't change it now due to translations being done and so on - but we will keep it in mind for the next one - you are not the only one to complain :/

This come from the people that complain each time a website reject Konqueror (which is wrong too), and that said Konqueror is always ignored by the proprietary vendor.

Now I need a refill for b.s. my allergy meds.

At least Mozilla is pushing Ogg/Theora.

Update: I messed with the link, it has been fixed.

Tuesday 30 September 2008

Atheros driver is Free, at last.

Not so hot news, but Atheros finally released the HAL source code under a Free Software license. Given that they always claimed it was because of the FCC, I now wonder where that argument will stand now.

Update: it appears that it is not the ath_hal source code. (source) As I understand it, it is the same source code that make ath_hal in MadWifi. This means that we can get a really Free Software madwifi. Apparently the ath5k authors are already using it to fix issues with the in-kernel driver.

Kudos to Atheros, you did the right thing.

Thursday 28 August 2008

Lawsuit, etc

You probably read it on /. or elsewhere, but here is the important part of a PR about a lawsuit:

FACIL, a non-profit association, which promotes the collective appropriation of Free Software, contests the Quebec government purchasing methods for software used within public administrations. FACIL has filed a motion before the Quebec Superior Court in order to bring an end to these methods which the association believes are not in the best interest of the Quebec government, but more importantly, not in accordance with the regulation for supply contracts, construction contracts and service contracts of government departments and public bodies (R.Q. c. A-6.01, r.0.03).

In short when the Québec government spend millions of tax payer money buying proprietary software, after bending its rules to not have to call for bids, it does not get unnoticed. The fact that only Free Software advocate are raising the issues is just revealing.

It started a while back, in March, with a potential bidder: Savoir Faire Linux' declarative judgment request

Coverage:

Thursday 15 May 2008

...

Debian publish a vulnerability and Free Software development halts to a grind. Film at 11.

source

Thursday 20 March 2008

10 years ago

10 years ago, almost, Mozilla was released as Free Software under the NPL. It was supposed to be Netscape 5. I built it on a K6-200 with 64MB of RAM which was powerful at the time (running Debian)

Yesterday, I finally rebuilt it for the second time, using the Firefox 3.0b4 code base. I'm not sure how much code is in common either. The build was smooth and, by far, much easier than OOo. Actually the fun part is that in some configuration OOo leads to building xulrunner :-)

Now let's learn XPCOM the hard way.

Thursday 28 February 2008

I told you so!

I think that this time I can say "I told you so".

In 2005/09 I posted this to rant about the use of hidden and undocumented MacOS X API in WebKit.

In 2008/02, the Mozilla folks post this, this and this where they denounce that issue.

The difference is that at that time I didn't bother to provide data like performance comparison, probably because I decided that it was someone else problem.

To add the these post, Microsoft actually got sued, back in the early 90s, for using undocumented APIs in order to be ahead of their competition in the space of... office applications. And Apple employees still continue to drink the KoolAid claiming that one need to file a bug... or that these are not API bit SPI (sic)[1].

This is just one of the many frustration I no longer get by choosing only Free Software.

Notes

[1] actual justification given to me at one point

Sunday 30 December 2007

False claim

Alvaro: I hate to be the devil advocate, but claiming that Java is a Free (-Software) platform is a bit inaccurate. So far, Sun still hasn't released a fully functionnal JDK under a Free Software license, and AFAIK the Free Software re-implementation of Java are not up to either, even though IcedTea is probably going in the right direction.

Tuesday 11 December 2007

HTML5 and Ogg

Looks like a recent edit of the HTML5 draft about video support bent to the pressure of some corporation: Ogg Vorbis and Theora removed from the HTML5 spec.

See the diff. It is interesting to read the commit message:

Lift the cat who was amongst the pigeons up and put him back on his pedestal for now. (remove requirement on ogg for now)

I'll let you make your own opinion on the matter, but this is clearly not the right direction.

Monday 12 November 2007

Open, the new buzzword

Dalibor comment on the Android SDK licensing. And Paul open questions about the announcement of Open Handset Alliance.

Happy to see that I'm not the only one thinking about that. I believe more in GMAE, and OpenMoko intents, as well as Nokia's, are much clearer.

Wednesday 24 October 2007

Welcome Gimp to the non-free hype

Gimp 2.4 has been released . And now this piece of Free Software as a website that is as annoying as various non-free software by requiring to install a piece of non-free software to view content.

Welcome Gimp to the land of the non-Free hype. See for yourself.

Update: as Alan commented, bug 489958 has been filed.

Thursday 27 September 2007

LGM 2008

From Boud of Krita fame: LGM 2008 will be held in Wroclaw, Poland from May 8 to 11th 2008. See the website.

For those asking, LGM stands for Libre Graphics Meeting, and is the meeting of Free Software for graphism. This include GIMP, Krita, Inkscape, Scribus and Blender.

Thursday 26 July 2007

Freedom is the goal

tbf, I agree with what you said. Another thing that made me cough during the keynote is when Alex[1] said that Flash did address the problem of video codecs. I'm sorry it does not. It just move it in the wrong direction, away from freedom.

The main problem with video (and sound) codecs is that they are patent encumbered. Therefore most of them can't be redistributed without violating some obscure patents in some obscure country. That's what Ogg (Vorbis and Theora) is addressing, the problem with Ogg being that no proprietary vendor has the courage nor the interest to push it forward[2]. As for moving to Flash it is even worse: there is no reliable Free Software implementation of the technology[3], the video codecs are even more encumbered (hello VP6), not solving the distribution problem (actually the Free Software implementations relies on the same code as the one I mentionned above, causing the same headache) And the current non-Free implementation of Flash is not even re-distribuable in its binary form, nor does it run on more than one variety of Linux arch: x86[4]. And given how reliable Adobe have been providing non-Free Linux support for Flash in the past[5], I'd guess pushing Flash is like putting all your eggs in the basket whose handles are about to break.

I don't use Linux because it is cool, I use Linux for the freedom it provides me. If I wanted to be cool, I would use MacOS X on a MacBookPro, have an iPod video with the latest "cool" song and video DRM'ed purchase on iTMS, would have bought a locked iPhone I couldn't use as a phone, and spend my time on MySpace, youtube, instead of trying push Free Software forward with all the other Free Software hackers.

Notes

[1] nothing personal, really, I just happen to disagree

[2] lot of examples to be given, but mostly the major two are just pushing their own agenda to try to keep people prisonner to their system

[3] neither gnash nor swfdec are complete and stable at the moment

[4] you all know the hack involved in making it run on x86_64: SuSE for example ship Firefox in 32bits just to run the proprietary plugins

[5] remember Flash 8 on Linux?

Thursday 12 July 2007

CUPS sell out

According to CUPS.org, Apple has purchased the company behind CUPS and the Copyright of CUPS source code. Apparently this does not affect licensing of the current version of CUPS, still under GPL2/LGPL2, but I wouldn't be that optimist about the future. Note that in the past Apple had already paid a premium for a license exception that allowed them to evade the GPL2, and even though they published their modification to CUPS itself, they never released the whole stack as they would have if it at been GPL2.

Time will tell... but I'd recommend starting to mirror everything just in case Apple pull the plugs.

Note: this is a pessimist view. But it just remind why at one point copyright assignment might not be good.