Mypaint, OpenRaster, et.c. update

OpenRaster

I managed to the GIMP OpenRaster plug-in into mainline GIMP. This means that GIMP 2.7.1 and forward will have rudimentary saving and loading support out-of-the-box. Users of GIMP 2.6 or 2.7.0 can download and install the plug-in from here.

Luka Čehovin started work on a reference library (libora) for OpenRaster. Hopefully this will, along the way, make it easier to provide OpenRaster support in applications. Perhaps it can also help solve some performance issues we currently have in MyPaint when saving large images.

MyPaint

In late January we released MyPaint 0.8.0. The release was delayed a couple of months from the initial planning, and we did not get to integrate as much as we’d like from external git branches, but it was about time to get the changes we do have out in a stable version.  It was very nice to have a Windows installer ready from day 1, and that we were able to translate it into 12 languages! This weekend we also released MyPaint 0.8.1, which fixed a nasty memory leak and some minor issues. No Windows installer or DEBs yet tho.

Just recently, MyPaint has also been successfully built and run on Mac OSX, pressure sensitivity and all. Hopefully we can make it solid and easily available to end users with time.

I’m also hoping that we’re able to get 0.8.1 into official Ubuntu Lucid repositories. Sadly we missed the deadline for being imported from Debian, and I’m not sure who or how to approach this, but at least we got an issue for it filed on Launchpad. If we also got into the spring releases of Fedora, OpenSUSE, Mandriva et.c. that would be great, but thats of lesser importance.

More important is documentation, we are currently way behind on end-user documentation. I started a skeleton for a manual, and I suspect that I’ll be the one to do finish it also as no-one else has shown an interest in working on it. If I get motivated I might also do some screen-casts showing and explaining some features. Another area of documentation is making sure potential contributors have the information they need to easily be able to contribute, and I’m hoping to make all the relevant information available from the Development page on our wiki. And I’ll probably document up some of the code also, eventually. Lots of things to be done in a software project besides writing code!

As a side note, Krita 2.2 (due in early May) will include a MyPaint brush-engine, which is very cool. And apparently a commercial OS X application (that I cant remember the name of) already uses the it!

Going to Libre Graphics Meeting?

I’m looking at going to LGM in Brussels this year, to meet with MyPaint, GIMP, Krita and developers of free and open source graphics software.  Sadly its on 27th to 30th of May, which really is a bad time for me; May 27th being the dead-line for my senior project report and on June 2nd is my first exam.  But we’ve planned completion of the report 2 weeks before that and I’m trying to prepare in advance for my exams, so I’m hoping that I can go.

To make this event happen and enable developers to go  a money-raising campaign has just been launched on Pledgie: http://pledgie.com/campaigns/8926  Please support this effort if you are able!
Click here to lend your support to: Libre Graphics Meeting 2010 and make a donation at www.pledgie.com !

Argh Linux?

Last night and today I’ve been trying to migrate my Argh Arch Linux server install from a SATA to a CF-Card (connected via an IDE adapter from DealExtreme). It should have been a straight forward thing, but when I had moved my system over (/ filesystem, /boot and set up the bootloader correctly) the thing would not boot up correctly.

At first it was failing to activate my second LVM2 volume group (the one that my root filesystem was on) in the LVM hook. A regeneration of the initcpio image took  care of that.

But then it hangs on “waiting for udev uevents to be processed”. Which is even stranger, because when I boot the same system from the SATA drive init works entirely as expected.  And it does not even time out and tell me what uevent it is waiting for like it should. So I try the -lts kernel, the fallback images, using the “verbose” kernel flag, unplugging all usb devices; all fails in more or less the same way.

Then suddenly XX boots later, when I was ready to let the whole thing go, udev times out and tell me its waiting for “/dev/snd/sequencer”. Apparently when booting from said IDE adapter, and only then, my soundcard (an M-Audio 2496 using the ice1712 alsa driver) messes up on this stock Arch kernel (stock Linux 2.6.31.6 and 2.6.27.39) . Hurrah.

Note to self: Removing all unnecessary components when troubleshooting is a sane strategy and will often save time even if it seems to be more effort: use it more often.

Published here in hopes that it would be useful to someone else.

UPDATE: after a couple of successful boots (but no software of system config changes) I put the card back in and… it works. I usually see computers as quite predictable, but not this.

On the road to MyPaint 0.8

MyPaint popularity is continuing to grow, much thanks to publicity from the Durian Open Movie project. We’re now working on the v0.8 release, which hopefully will be out this year.  I wrote a small post on the official site about that here.  I’m responsible for the translations, and so far we have 11 of them, with a couple more in the works that I know of.  Packaging is also picking up, soon most of the major GNU/Linux distros will have MyPaint in the official repos! Even some talk about a Mac OSX version (using X11.app tho).

I also plan to do some OpenRaster / GIMP-integration improvements and perhaps a small statusbar. I’m even considering writing a C library (with Python wrappers ofc) for OpenRaster, mostly to sped up saving and loading. A reference implementation would of course be nice to have.
But that is somewhat unknown territory for me and I’m not sure if I’m able to set aside the time necessary for such a task… We’ll see!

Senior project screenshot and X11+SSH tip

So, I have not really written that post describing my senior project yet (well, I have a draft…), but here is a visual teaser at least:

2009-11-08-003736_1280x800_scrot

To get this nice image I had to do some X11 forwarding over SSH through an intermediate server. And since I’m probably not the only one with such needs and I’m bound to forget how I did it I will post it here.

Basically I used this excellent reference. But if you need trusted X11 forwarding (like with ssh -Y instead of -X) you need to generate an xauth file as an extra step when you’re on the remote server. That can be done with “xauth generate $DISPLAY .” And the “nolisten tcp” config option that you need to disable locally is usually found in /etc/X11/xinit/xserverrc
Additional heads up: if you try and connect with -X in addition to this manual forwarding you are setting up, you might get strange errors like “X connection to localhost:10.0 broken (explicit kill or server shutdown).” So don’t do that.

Linux everywhere?

I stopped by my local library today (must have been 5 years since last time!) and guess what I found:

library-linux-thinclient

Yes, Linux. Debian or a derivative with KDE3  running on a HP thin client. Even has Tux! At first I thought it was just this one terminal, but a quick peek told me that all the user available machines ran this system.  And several people where surfing around on the web using Firefox with the with no apparent struggles. The computers for the employees ran Windows XP though. Definitely a step in the right direction, but the fact that I was somewhat surprised tells me that Linux adoption still has a long way to go. Here is another machine:
library-linux-workstation

Maybe I’ll ask them about their experiences with the system when I go there next time. Would be interesting to hear.

At home I’ve migrated all my machines to Arch Linux x86_64 as of yesterday. Previously it was a mix of Arch 32/64 bit and Debian. No major issues yet so I guess I can say that it went pretty smooth. All the machines are now KVM capable so I’ll set them up as a small virtualization cluster. But first I want to install Linux (openWRT) on my router so that it can run DNS/BOOTP/DHCP and give me a bit more flexibility in the configuration.

I’m now also a Linux Foundation member. I’m not sure if I’ll ever use any of the benefits I get, but the cause is worth 25 usd per year none the less. I even asked them to not send me the free t-shirt. I’d never use it anyways, as it was bright white and had big logos on it. And the fit on such shirts are always the same crappy “loose” (read: “shoulder mounted tent” on a slim guy like me). Not my style.

Today I sent in my first deliverable for my senior project. We also had the first meeting and agreed on tasks for the next weeks/months. More about that later!

MoinMoin, MyPaint & Me

One of my latest addictions are wikis. So much that writing a blogpost like this, without being able to use wiki markup syntax, is quite annoying. I might have to fix that some day. Specifically I’ve set up my own MoinMoin wiki, where I can put all my silly ideas and thoughts. Circumstances made it so that I fixed up the norwegian translation of the 1.8.3 version. Due to pure foolishness on my part I did not check if the translation for the upcoming 1.9, so now we have a lot of conflicting strings (circa 200). Yay… Hopefully it will turn out for the better as me and Jørg Cassens, the translator focusing on 1.9, get them in sync again.

Recently I’ve also become involved in MyPaint development. It’s “a fast and easy open-source graphics application for digital painters”. You can follow development over at gitorious. Things fixed untill now:

MyPaint with filename in titlebar

  • Filenames in the title bar!
  • Improved file handling; Nice and consistent error messages when trying to open a file that doesnt exist or you dont have permissions to read.

My artistic skills are severly limited, and I’ve never used a tablet before but here is the obligatory screenshot.  Needless to say, I dont do this awesome program any justice at all. Here is someone who does (David Revay). But hey, I’m at least halfway there right?!

If you are on Arch Linux, packages are avaliable from AUR, both stable version and -git. Somehow I’m also the maintainer of those now… If you are on anything else, you will have to go to the homepage and get it there. Hopefully packages will be in Debian and Ubuntu official repos shortly.
Do note that it currently does not build on Windows, or cygwin at the moment. So if you are the type of person that can make such magic happen, please step up for the task!

I hope to do some more adventurous coding on some of my own project ideas soon, but for now I expect to continue contributing bits and pieces on MyPaint to gain some experience.