Switching from GandiBlog/Dotclear2 to WordPress4

This blog was hosted by GandiBlog since mid-2006. Thanks to the Gandi folks, it has served me well, though it was starting to show its age.

Now I intend to revive this blog, and the first step was to finally move it on my server, switching to WordPress in the process! The rest of this post will detail how I did the switch, keeping the blog content and links. Continue reading “Switching from GandiBlog/Dotclear2 to WordPress4”

Backporting Apache support for websockets reverse proxy (aka getting GateOne to work behind Apache)

Recently, I have been toying around with GateOne, a web-based SSH client/terminal emulator. However, installing it on my server proved to be a bit challenging: it requires tornado as a webserver, and uses websockets, while I have an Apache 2.2 instance already running with a few sites on it (and my authentication system configured for my tastes)

So, I looked how to configure a reverse proxy for GateOne, but websockets were not officially supported by Apache… until recently! Jim Jagielski added the proxy_wstunnel module in trunk a few weeks ago. From what I have seen on the mailing list, backporting to 2.4 is easy to do (and was suggested as an official backport), but 2.2 required a few additional changes to the original patch (and current upstream trunk).

A few fixes later, I got a working patch (based on Apache 2.2.24), available here:ย https://cafarelli.fr/gentoo/apache-2.2.24-wstunnel.patch
2015/10 update: a rebased patch for 2.2.31 (with a few additional fixes) is also available now atย https://cafarelli.fr/gentoo/apache-2.2.31-wstunnel.patch
2
016/01 update: if you get segmentation faults, this Apache bug could be interesting

Recompile with this patch, and you will get a nice and shiny mod_proxy_wstunnel.so module file!

Now just load it (in /etc/apache2/httpd.conf in Gentoo):

<IfDefine PROXY>
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
</IfDefine>

and add a location pointing to your GateOne installation:

<Location /gateone/ws>
ProxyPass wss://127.0.0.1:1234/gateone/ws
ProxyPassReverse wss://127.0.0.1:1234/gateone/ws
</Location>

<Location /gateone>
Order deny,allow
Deny from all
Allow from #your favorite rule

ProxyPass http://127.0.0.1:1234/gateone
ProxyPassReverse http://127.0.0.1:1234/gateone
</Location>

Reload Apache, and you now have Gateone running behind your Apache server ๐Ÿ™‚ If it does not work, first check GateOne log and configuration, especially the “origins” variable

For other websocket applications, Jim Jagielski commentsย hereย :

ProxyPass /whatever ws://websocket-srvr.example/com/

Basically, the new submodule adds the ‘ws’ and ‘wss’ scheme to the allowed protocols between the client and the backend, so you tell Apache that you’ll be talking ‘ws’ with the backend (same as ajp://whatever sez that httpd will be talking ajp to the backend).

Update 1: a user-friendly howto on how to apply this patch on Ubuntu is now available here

If you’re looking for a TortoiseSVN clone for Gnome…

… be sure to check NautilusSvn/RabbitVCS. I usually prefer the command-line SVN, but I got curious about this one( meld integration, svn rev and user as columns, …).
So what do you need to try this on Gentoo?

  • Python bindings for SVN: dev-python/pysvn
  • Python bindings for Nautilus: dev-python/nautilus-python
  • dev-python/wxpython and dev-util/meld from portage (runtime dependencies)

Then head to NautilusSvn web page and follow the README. Remember to restart Nautilus, and there you are! People motivated in writing an ebuild can visit bug #147433

ps: if you prefer konqueror, kdesvn should do the job too

Seam Carving for Content-Aware Image Resizing: sounds nice, works great!

Some weeks ago, I saw this video on a new picture “resizing” technique. A white paper is also available for those interested in the algorithm.

So why did this video launch quite a buzz? Well, watch the video (if you never saw it), and be amazed by this intelligent resizing of images (changing the aspect ratio, while keeping important parts, and removing other parts). That means you can resize a photo without making the people on it look like aliens, keep the nice parts of a panorama and forget a bit about the rest…

If you want to try it, there is now a live demo available on the net: rsizr.com (flash demo, needs the newest flash plugin to work). After toying with it a bit, I can say it works as well as in the video ๐Ÿ™‚

Next step, try it in GIMP! A plugin is available here, and an ebuild here (I’ll probably add it to my overlay for testing too). I have a few pictures that will make great wallpapers, once I have them resized for my screen ratio.

Little update: the seam carver project also provides a library implementing the technology, with a little demonstration application (live this time) called arachne. Ebuild in my overlay for the curious!

Extreme Tux Racer: tuxracer is back!

Aaah tuxracer… This game was a fine example of what linux could do in 3D gaming for some time (and one of the reasons I struggled some years ago to get 3d acceleration on my linux box). For those who never tried it, it’s a 3d race game, where you control Tux as he slides down a course of snow and ice, while collecting herring. Read more about it and the game history at wikipedia: in short, the first game changed from GPL to closed-source, a fork was launched from the last GPL code, another one (ppracer) was started when the first died,…

ppracer is still in portage, but sadly it is also a dead project now. Luckily, some people have picked it up (again), and have released their first version! ๐Ÿ™‚ This new tuxracer is called “Extreme Tux Racer”

Their homepage is here, and they even kindly provide ebuilds for their first release! For now it’s not that different from ppracer, but let’s wish them luck and lots of new features ๐Ÿ˜‰ (hum… multiplayer tuxracer…)

Virtualbox 1.5.0: great release

I had previously blogged about virtualbox, which replaced vmware on my desktop.

The new version 1.5.0 was released yesterday, and the Changelog has some nice entries, like virtual serial ports, …

A new feature I love is “seamless windows” (vmware and parallels had this on Mac, now we have that on linux ๐Ÿ™‚ ): that means windows programs in their windows on your desktop (and not anymore in a big “windows desktop” window)

Another great “new” feature is shared folders support: this was in 1.4.0, but not in the GPL edition… Here it is in 1.5.0, and working great: all the shared folders you set up appear (and appear quickly) in your “network neighborhood”.

There is also an option now to activate/deactivate VT-x/AMD-V support, but they say it’s slower than their own implementation. I’ll have to test that on minesweeper ๐Ÿ˜‰

ps: and of course it’s available in Gentoo portage

Sudoku programs

Sudokus in the free newspapers are a great way to pass some time in the train/metro (when you have no book left to read). Sudoku programs can be fun too, but some of them lack interesting features (like writing down possible numbers, giving just a hint and not the entire solution)

Gentoo portage has ksudoku, with some special sudoku types (including 3D ones), and a “Give hint” button, that reveals one of the missing numbers. KDE application though…

GNUstep users, there is a new application under development, it only has classic 9-by-9 sudoku formats, but the author is rapidly adding new features. Available in the gnustep overlay (and soon in your favorite portage tree)

And now another new application (spotted on the linux game tome): Sudoku Sensei. It allows custom sudoku formats, including the Samurai variant (9 grids in one), a great hint system (that lists all “rules” that can be applied to rule out a number), tutorials, undo/redo, basic printing, … You can find a not-so-pretty ebuild in my overlay

Now I just need to get my printer back in working order to print some nice grids (another item on my TODO list)

Bye bye vmware, hello virtualbox!

When I got my new desktop box some months ago, I got motivated enough to install the “other OS” I got with it in a vmware image (vmware workstation with test license first, then vmware server/client thingy when it expired ๐Ÿ˜‰ ).

Now virtualbox provides an interesting alternative: good performance, works natively on amd64, can read vmware images, GPL edition available, …

The binary edition provides remote desktop, usb support and shared folders, but I can live without them, so that’s one less 32bit closed-source program on my box!

“Updating” the image from vmware to virtualbox took some time though. If you want to try it: this page is a must-read: How to migrate existing Windows installations to VirtualBox. All steps were needed, plus reactivation of the OS, as the ‘hardware’ changed a lot

Now waiting for openJDK and gnash (java and flash) to pimp up firefox and dump nspluginwrapper (nice temp solution, but tends to crash a LOT)