Big problems with simple solutions

Number one: KnetworkManager claims "Network Management disabled", no matter what you do in YaST. This had me triple-boot Kubuntu for a few weeks, until Kubuntu had the same problem after a botched hibernation.
This worked on both for me:
Edit /var/lib/NetworkManager/NetworkManager.state Make sure it says NetworkingEnabled=true.

Number two: With the fixed network settings in place, I did a system update including a new kernel. What came up after the boot menu: "File not found ... You need to load kernel first"
Ouch. OK … google … The Kubuntu grub has to be told about SuSE's new kernel. I bang my head on the desk a few times (can't hurt, apparently there's nothing viable in it anyway) and run sudo update-grub in Kubuntu.


Samsung SCX-4200 on Kubuntu 10.04

Short summary: Don't use Samsung's Unified Driver (which worked OK on SuSE). The scanner works plug-and-play with Skanlite (not in Kubuntu default install, btw), and the printer works after adding it in CUPS without proprietary drivers.


Murphy's law - or triple boot using a thumb drive

The good: Windows 7's partitioner is great.
The bad: I did some update on Saturday afternoon which completely fried my KNetworkManager (it keeps claiming "Network management disabled", no matter what I do) - which is not good, considering that the unstable university wireless keeps kicking me out and I have to run YaST's network settings every time to reconnect. Also, for some reason, 11.3's suspend to RAM feature which I had really liked before in terms of shutdown/wake-up speed, froze my system several times. Not exactly good, either.


OpenSuSE 11.3 - less fun on a Samsung P35 - ATI woes continued

After the tremendously positive testing results of avocadohead with Tisiphone, I tried my luck some days ago with 11.3 on Thukydides, a Samsung P35 notebook, not the newest hardware and unfortunately with an ATI graphic card.


Why it's a bad time to buy a laptop right now

Tisiphone is getting old and slightly cracked around the edges, so I thought it might be time for a replacement. After all, two major reasons to move to the US are cheap clothes (girls) and hardware (guys).
I don't want to indulge in product placement but the Asus U30Jc looked quite sexy to me: a moderately fast i3 processor, 13 inch, not too heavy, widescreen, 8-10 hours battery life, at least a partial aluminium case, hybrid graphics and significantly cheaper than a comparable MacBook Pro (and before daWuzzzz starts a war in the comments section: the hardware-optimised OS on the Mac is no good if you intend to run Linux...)
Ay, there's the rub: hybrid graphics on Linux is still in early development, and apparently the Nvidia Optimus technology (check out this Nvidia whitepaper for specs) would need a major Xorg makeover to function.
I'd consider just getting the machine and waiting for Xorg/driver updates, if I could at least use the Nvidia chip all the time or manually switch with a server reboot, but apparently one is confined to the Intel-on-board chip right now. Nvidia blames Xorg and has better things to do than work towards a solution and the Linux hybrid graphics hackers concentrate more on getting the conventional switching setup to work.
I really don't like settling on an older model just for compatibility reasons and I have forsworn ATI forever (don't start me on driver issues), so I'll see what transpires and in any case wait for the USB3-capable chipsets to become standard.
I think I'll have to go on a major frustration shopping spree now - in this town, it should be easy to spend the equivalent of a quite high-end notebook on shoes and handbags.
Update (7/26): There seems to be slight progress on the vga_switcheroo front with the nouveau drivers on an Asus N61 with an Optimus card according to the hybrid-graphics mailing list - they didn't specify the exact model (hopefully the N61Jq, it's the only one with Optimus).


ntfsclone - a nice tool for dealing with ntfs partitions

Again another crashed harddrive... (maybe we should start a counter on this blog how many crashed harddrives we already got through?)

By chance, I fell over a tool called ntfsclone using gparted, because in the error analysis of the damaged harddrive showed up a tool tip to use ntfsclone to get an image of the partition before doing anything else.


Lilypond fails at ghostscript PDF conversion

openSuSE 11.3 came with the new ghostscript 8.70, which lilypond wasn't quite ready for yet. On my system, gs consistently threw a "failed (256)" error when called by lilypond - just copying and pasting the gs code from the lilypond log into a shell worked, btw.
Quoting Graham Percival on the Lilypond mailing list:
Ghostscript was bumped to something.70, and a bunch of extra patches we apply to ghostscript changed. We'll look into it.
He has already posted an apparently patched development version here, but I haven't seen a linux x86 version there. Anyway, for all x86 users and people who'd rather stick to the stable release, there is the simple solution of downgrading to ghostscript < 8.70 - I used openSuSE 11.2's ghostscript-library 8.64, which worked fine, at least with LaTeX and lilypond.


Really, openSuSE!

Touchpad control - great!
Improved wireless handling - impressive!
No desktop effects without kernel tweaking - priceless.

The 11.3 installation report:


HowTo edit lilypond with TeXworks

Apart from jEdit, which is awfully bloated, there is no decent Lilypond editor for Windows and it sucks to close the Acrobat Reader every time you recompile - which you do really often while typesetting music.
Edit (07/2012): As of now, there is a decent Windows editor for Lilypond, as Wilbert Berendsen has made his excellent Frescobaldi editor KDE independent. Find a full installer here.
It is, however, possible to tweak TeXworks (included in MikTeX), whose PDF viewer doesn't create a lock that keeps lilypond from compiling. You have to do two things: create a lilypond compiler profile in TeXworks and edit one of Lilypond's scheme files to prevent the PDF file from being deleted (else you get the "backend-library.scm Permission denied" error). I got the trick from this comp.tex.texworks thread (by Helge Kruse).

Compiler profile: Edit→Preferences→Typesetting: add <Windows program directory>/LilyPond/usr/bin to the list of paths on top and create a new processing tool "lilypond" with the app lilypond-windows.exe and the $fullname argument.

Lilypond tweak: Open the file <Windows program directory>/LilyPond/usr/share/lilypond/current/scm/backend-library.scm in an editor with admin permissions, search for these two lines:
(if (access? pdf-name W_OK)
   (delete-file pdf-name))))
and comment them out (keep two closing parentheses):
;;(if (access? pdf-name W_OK)
   ;;(delete-file pdf-name))
Remember to do this each time you update Lilypond.


Why I can hardly wait for 11.3

No irony here - I mean it.
First and foremost reason: KDE 4.4 is finally in the stable repos - just in time before the 4.5 final release (sigh…)


Parallel Python Client with matplotlib and pylab trouble

Problem: use OpenSuSE 11.1 as parallel python client with numpy, scipy and matplotlib, which starts automatically at boot time without the need to have anyone logged in.

Dual boot Windows 7 64bit and OpenSuSE 11.1 Linux - GRUB magic

After having installed OpenSuSE 11.1 on my office machine quite a long time ago and found, that Windows 7 was not bootable any more I simply repaired the boot by using the Windows 7 Installation DVD and forgot about Linux on that machine. A few days ago the necessity of having Linux as well showed up again and I wanted to integrate both systems into GRUB, which for whatever reason failed. (I guess it is due to the 64bit Version which in my case added an invisible boot partition of roughly 100 MB as first partition on the hard drive.) I finally ended up integrating GRUB into the Windows Boot Loader using mainly this entry (thanks and credits to the author!) which I will fine tune and enrich with additional information in the following:


Sooo PC now!

Nobody really likes renaming their blog. However, together with such venerable institutions as the most famous s***m whale in fiction, we are victims of the Great Online Bowdlerisation Initiative - as witnessed on the openSuSE forums (asterisks in the blog URL, yay!)
Some lame excuses for the old name:
  • Really, that blog name was totally inconnuous in German!
  • Did we mention our outstanding women's quota?
  • We are still allowed to abuse our computers, right? (Yes, Tisiphone, talking about you, you ugly brainwashed crackpot…)
  • People googling "bitches in latex" are in for a very educational evening
  • Can't we be a bit naughty now and then?
So, Eumenides it is. The Kindly Ones. Bloody old euphemism, which hopefully won't get bowdlerised into the page-not-found-nirvana. We illustrate our newfound virtue with a picture including three semi-naked women with snakes in their hair.

And no, potter wasps are Eumeninae. With an n.


Digikam and the Marble symbol lookup error

(double posting this on the opensuse forums)
With KDE 4.4, digikam > 0.10 for quite some time crashed on startup with something like this:
digikam: symbol lookup error: digikam: undefined symbol: _ZN6Marble12MarbleWidget16staticMetaObjectE

The Marble symbol lookup error seems to be vendor related: upgrading to the KDE 4.4 Marble version requires a vendor change from openSuSE to obs://build.opensuse.org/KDE in YaST. Usually this ought to be done automatically by the dependency checker during an update to KDE 4.4 as it happens with a lot of other KDE 4.4 packages, but apparently this dependency is not registered. Find marble and marble-data in YaST, go to the Versions tab and select the 4.4 version.
With digikam 1.2, this got me at least as far as the splash screen before it crashed ("Trying to open ksycoca..." on konsole).
Digikam finally worked after downgrading to version 1.1 (from software.opensuse.org search). Well, sort of: it crashes on quitting…


Notes on replacing Tisiphone's hard disk

Yet another faulty hard disk…
  1. Restoring the home partition from a gz-compressed image with the aid of an Ubuntu live CD: uncompressing the image directly onto the target partition took ages, especially as the amount of uncompressed data is the actual partition size and not what's on it.
    It was considerably faster to uncompress the image in place (even regarding the bottlenecks of booting from CD and the USB connection to the external drive), mounting it and just copying the contents. (see daWuzzz's contributions on gzipped images and image mounting)
  2. Just a reminder: only copy the bare necessities using a live system. USB data throughput was about four times slower compared to copying with a system on disk.
  3. Importing users from a previous installation, using the copied home partition: This is a bit tricky, as the installer DVD actually needs an existing installation to read from. Inelegant solution: first do a dummy install setting up fresh users with the same properties (easiest way in a single-user environment), then format the home partition and copy your user data, and finally install the OS again, this time importing the user from the dummy setup using your previous home directory. Alternatively, restore both your old root and home partitions before the fresh install and import the users from there (cumbersome if you had a lot of data on the root partition).
    Other variants I tried but ran into problems with: create a new user and use the old home (KWallet password fail); formatting and rewriting the home partition after the system install (ate my GRUB)
  4. Opensuse 11.2 still reports a failure on the network connection during install despite obviously being able to download release notes


Importing UNIX users into webmin

After getting CUPS to accept my username and password, I moved on to the last root-only web interface standing, i.e. webmin.
Webmin's import feature is pretty sophisticated, as you can specify permissions for subsets of modules and users via the concept of webmin groups.
This implies that you first have to create such a group before you can import UNIX users.
Groups can be defined in the  Webmin->Webmin Users module, I called mine "admins" and gave the members every permission available.
I then converted my UNIX user to webmin, checking the box "Use same password as unix user in the future" and assigned the admins group.
Apart from the "create group first" point, pretty intuitive.


How to stop CUPS from asking for the root password

CUPS has a quite restrictive allow/deny policy. Cancelling jobs requires the owner or root (OK, makes sense), for starting and stopping printers you also need root privileges. My root password is befittingly cumbersome, so I looked for some kind of CUPS sudo.
The file to look for is /etc/cups/cupsd.conf, which can be conveniently edited from the CUPS web interface's (localhost:631) Administration tab.


NY = outer space

...at least according to wetter.com, providing data for the LCD Weather plasma applet. And yes, space is actually warmer.


I love disper!

...and, if you use a laptop with nVidia graphics and want to extend/clone your screen output to an external monitor or projector, you will, too.
Disper is a python-based command line app and can be downloaded from here. I don't think there are any prerequisites except the nVidia packages and basic Python, and potentially xrandr. Install with make /sudo make install.
The beauty of disper is that it automatically and quite intelligently fits your screen resolution and panning to the detected displays.


State of Pymorph Address

Friends, Romans, countrymen, lend me your ears:

Actually, I was just looking for a quick 'n dirty Python morphology library to do a kind of string length image analysis and pymorph looked promising. Sadly, a major overhaul seems to be going on there right now, so while the actual code I ended up with is nice, short and robust, getting there was quite a pain.
Pymorph's old (<= 0.8) version has some very helpful demonstration pages, which have to be adapted for the new version (0.92 - and I found nothing but win32 packages for 0.8). Some hints are given on the developer's page, but quite a lot one has to figure out for oneself - mostly formatting issues.


Rotating my screen output

or: Who ate my xorg.conf?
Oh. SuSE did, as the xorg.conf file is deprecated for newer versions of Xorg. Right.
Which posed a bit of a problem, as I needed the file to make xrandr work. Xrandr is a console app able to flip your screen by multiples of 90° (actually, it can do a lot more) via
xrandr -o left #right, inverted, normal


Samsung SCX-4200 on SuSE 11.2

First problem: Samsung Universal driver nowhere to be found, at least not in the download links for this model. Well, it's supposed to be universal, isn't it, so I got the tar archive from the SCX-4300 download page.
Installation: untar, cd to cdroot/Linux, ran sudo ./install.sh and followed the console instructions. And yes, the scx-4200 was included. What worked out of the box: Scanning, both xsane and skanlite interfaces. Printing worked for all kinds of files and apps except PDF from whichever source, which is a bit of a bummer.


console copy without overwriting

To copy an arbitrary number of files without overwritting existing ones, use:
yes n | cp -i <source> <destination>
Found here.
Note that this does not work for scp, as there is no -i option. A workaround proposed here suggests setting previously copied files read-only - which you can't do on FAT or NTFS partitions, btw.


timidity vs my USB sound card

timidity refused to play MIDI files with cryptic error messages:
can't create mcop directory
and, after I had created /tmp/ksocket-<myuser>:
sh: arts-start: command not found
Couldn't open output device
It turns out that the problem lay with my USB sound card, which I had set as the primary card in YaST to get the sound output from online flash movies etc. on it (Firefox is not handled by Phonon, so you have to do it permanently via YaST), and which I had unplugged. Setting the on-board card as the primary card again solved the issue. I suppose plugging in the USB card might also help, but I don't have it with me right now.