The Combat Pretzel Rotating Header Image

Access your global zone X11 server from a local zone, without TCP/IP!

I’ve stumbled over some ARC case enabling labelled zones in OpenSolaris (from Trusted Extensions) to access the X11 server in the global zone “natively” using Unix domain sockets instead of TCP/IP or other jokes. It seems that mounting the X11 socket with the loopback filesystem driver into your zone does the job quite well and simple.

Obviously it helps when you’re messing with multiple native zones for some reason (I don’t know, like a seperate zone to develop and test software), but I was more thinking about BrandZ. Things like Google Earth or maybe Unreal Tournament for Linux. I’d figure the overhead of TCP would screw up framerates a lot. Right now I’ve only tried Google Earth, I’ve yet to look for a demo of a Linux port of some commercial game (at least one that’s not worth a whole CD-R).

Anyway, that’s how it goes during runtime. Might want to tweak your vfstab accordingly if you want it to be permanent:

pfexec mkdir /pathtoyourzone/root/tmp/.X11-unix
pfexec mount -F lofs /tmp/.X11-unix /pathtoyourzone/root/tmp/.X11-unix
xhost +

Sadly, you need to disable access restrictions on X11 to make it work. Since listening on TCP/IP is disabled by default, it’s no biggie. If you do have your X server listen on it tho, you may want to tighten up your firewall rules accordingly to why you’re doing it.

Update: Games fly right out of the window. I’ve tried to get Enemy Territory: Quake Wars to run. The game fails to start properly because quite a few OpenGL features are missing. The reason they’re missing is that the GL client library, both Mesa and NVidia ones, can’t do Direct Rendering.

In the case of the Mesa client library, I can still somewhat understand. But in the case of the NVidia one (the Linux version matching the version number of the Solaris one, expecting ioctls to be the same), I’m not sure. I’ve ended up forwarding the /dev/nv* device nodes to the zone, did nothing. Then I’ve installed a native zone for a change, to ensure it’s the expected client library (i.e. the Solaris one), forwarded the NVidia nodes plus things like /dev/fb*, /dev/fbs/*, /dev/mem and god knows what, practically putting everything I’d expect it to consume on a platter, still it doesn’t want to enable Direct Rendering.

So commercial games in BrandZ is currently a no-go. I guess the only way to make this work is a megashim running in the global zone. What I mean by that is a ld-linux.so.2 mapping calls in the way BrandZ does, but without the zones and tweaked to run standalone.

Google Earth still works fine, tho. :|

Tablets…

After having played around with that Aiptek graphics tablet from my dad, I’ve decided I also need one. I’ve ordered a Wacom Bamboo Fun medium, it was delivered today, and let me tell you…

Can't draw for shit.

Then again, I’ve never really cared about drawing until now. Geometric shape doodles while bored at school maybe, but that’s it. First tries don’t really look good. Like drawing my car from my head. Looks like this:

Shitty drawing
(Random internet photo of my car model)

Or even drawing an avatar for my TF2 nick General Whatshisface ended in too much grief that necessary.

Gen. Whatshisface

I guess I have to keep trying…

Anyway, the tablet’s really nice. Writing with the pen on its surface feels like writing on paper, i.e. the rough feeling. But there’s also a drawback to this, the plastic nib of the pen wears down rather quickly. The surface of that thing is roughly as large as an DIN A5 paper page. The Bamboo Fun comes in two variants, sized A5 and A6. Looking at both, I went the safe way and got the larger one, expecting more movement freedom.

Compared to the Aiptek whatever model my dad bought, this thing is waaaaayyyy more accurate. I guess people recommending Wacom isn’t just simply brand recognition. The pen also doesn’t require a battery since it gets its juice via induction. This results in a slim and comfortable pen, unlike that bulky Aiptek thing.

As far as using this thing goes, I’ve rarely drawn at all in the past. Trying to coordinate pen to screen is a rather brain damaging process currently. Trying to quickly sketch in short strokes has them go off into unexpected directions more often than not. Additionally to that, I still unwillingly bring mouse semantics into this.

Even if I can’t manage to improve my drawing skills considerably, being able to write stuff down on my computer allows me to get rid of that mountain of notes on my desk.

OpenSolaris 2008.11 is out!

The new bi-yearly release is out. Go download at http://www.opensolaris.com/

A 700MB Live CD with installer, based on build snv_101, more stable, more hardware support, with more applications on the repository.

Cheap dedicated hosting!

I’ve finally found a relatively cheap dedicated webhost, that allows me to evade this stupid VPS bullshit and actually let me do what I want. That host is called Hetzner Online, located in Germany.

If you don’t need mission critical hosting and can accept running your stuff on consumer hardware, this might just be for you. 50€ a month nets me an Athlon X2 5600+ with two gig of RAM and two 400GB SATA drives. My silly three-share VPS with lagged CPU shares, 768 megs and 15GB of disk would have costed me a little more than 40€ once the promo is over. Since I don’t host the New York stock exchange on this box, I don’t need to think twice where I go.

The best thing of all this is that I’m running OpenSolaris 2008.11 and it’s AMP stack on this thing. Granted, OpenSolaris isn’t a supported option over at Hetzner (and likely won’t be for a while), but for a little fee, they’ll burn the ISO onto a CD and let you screw two hours with an IP-KVM.

This blog is now OpenSolaris powered! \o/

What the fuck Firefox?!

So I had my machine idling there, while I was doing some paper work (i.e. bills), noticing that the disks make a short ruckus periodically. Trying to find out what it was, I dtraced my system.

Turns out that Firefox seems to maintain a temporary SQLite database, which holds a copy your browsing history. That database gets purged and then refilled regulary, every 10-15 seconds or so, on my system right now writing out 5MB every time. The reason behind this is apparently data integrity.

The Firefox team seems to expect your filesystem catching fire randomly when you turn around, I’m guessing destroying all its precious SQLite files. Or god knows what. Seriously, the browser nor computer nor disks are doing anything. Yet Firefox is bullshitting me. And it’s not going to be fixed before Firefox 3.1.

What the hell!

Fedora 9 on BrandZ

If you’re in need of Linux emulation for whatever reason under Solaris, you’ve an existing mechanism at hand called BrandZ. The seemingly supported distros however are CentOS 3/4 and 5. Kind of antique. Stuff like Ubuntu or various other distros don’t seem to work. However if you really need an updated userland, try Fedora 9.

You go about following the usual Linux 2.6 brand install procedure, but instead feed this image to the zone installer:

http://download.openvz.org/template/precreated/contrib/fedora-9-i386-default.tar.gz (courtesy of OpenVZ)

Logging into the zone console will not work. The zone will get stuck booting. Logging into a virtual terminal however does work (i.e. zlogin -l root zone). From there, create a new regular user and then go about installing all various sorts of things using yum. The image above is a minimal one. Be sure to create /etc/resolv.conf and fill some actual nameservers in there.

Update: Proof, pudding and all that shit…

Thumbnail
(Pro-Click Zone)

Building Mono 2.0 on OpenSolaris

I’ve tried to build the source from scratch and hacked the configure file in various ways, nothing helped. I’m not sure what the problem is, it looks like the C# compiler in the Mono Lite package freaking out for some reason. To actually build it properly, you have to have an existing working C# compiler. And the basic precompiled one delivered doesn’t work.

To get a working build, you’ll have to build Mono 1.2.6 first. Put it anywhere but /usr, since you probably want it to stay clean. The build however also has some issues. Turns out that the Mono Lite C# compiler in that version doesn’t like an unlimited stack (the main compiler’s probably also affected). To fix that, issue ulimit -Hs 10240 in your command line (preferably bash, since Mono expects the GNU command chain) which sets the hard limit to 10MB, run make, make install and then make sure the binaries are in the path.

Then retry compiling Mono 2.0. The build should succeed.

I’d recommend recompiling the whole package yet again, but with the Mono 2.0 binaries. Which means compile Mono 1.2.6 and slap it in e.g. /opt/mono126, then compile Mono 2.0 putting it in e.g. /opt/mono2 and then do a final compile with the prefix you want. Consider keeping both previous compiles, in case a future release shows more issues.

Update: Turns out that the Mono 2.0 compiler’s also shitting all over itself about Solaris’ default stack settings. Either manually set ulimit or tweak the mcs/gmcs scripts wherever you’ve installed Mono.

Pidgin configure is fucking stupid!

Seriously, why use autoconf if you need to go hands on anyway? That shit started somewhere with the 2.4.x releases and is fucking retarded and annoying. See this:

checking for GTKSPELL... no
configure: error:
GtkSpell development headers not found.
Use --disable-gtkspell if you do not need it.

Duh? How about you just go about implying that parameter then? Like how it was done in the past? What is that change for good, anyway, apart annoying the shit out of people? It doesn’t just happen with GTKSpell.

Of landlords and previous tenants…

When I first met my new landlord, he seemed to make a good and honest impression onto me. The apartment I visited also looked pretty great, while still furnished. He also warned me that the current tenant is a bit moody due to ostensible relationship problems. Which turned out to be very possible, since her eyes could harpoon Moby Dick while we were checking the place out.

Fast forward a month, the apartment is mine. First thing I notice, ignoring all the door frames that don’t seem to have been cleaned in years and general nitpicks all over the place, is a room whose corners are nicely stricken with mold. Hell, whatever, it’s only this room and it doesn’t look that bad. Off to renovating this place…

Another two weeks later, I run across the previous tenant. She apparently takes care of an old lady in the same house. Turns out there never where any relationship problems. Matter of fact, the couple bought a new single home across the street. Not only that, but she’s joking about the mold and telling me horror stories about the rest of the apartment and general state of the roof, and asking me why I didn’t talk much to her, with me quoting what the landlord said.

Now here I am. Pretty miffled about all this.

For one, my landlord bullshitted me. No relationship problems whatsoever. Having casually talked to some people on the road by now, it seems it was well-known that the couple bought the house. It’s a small town, the landlord should have known. Instead he bullshitted me.

Then, ostensibly the bedroom was affected in the near past, too, which she supposedly fixed by replacing the plaster, but claiming that it started coming through again. I didn’t notice  anything and may take a while to do so again, considering I’ve painted over it. I can live with a single room being affected, especially because it’s a relatively small room. The bedroom however not, fuck that.

Meanwhile, checking some things out, like the state of the roof, which doesn’t match the claims of the women, then hammering a hole into the wall down to the foundation, not feeling anything moist or wet (maybe I’m wrong), I’m not sure what to think. Maybe she’s trash talking about the landlord. After all, she kind of let me know that she and him didn’t exactly go well together (mild understatement). But there’s that one room with mold…

Again, here I am. I don’t know what to think. It appears that two people are bullshitting me here in parallel. I’m not really happy with the current situation, especially considering the work I’ve already put into the place.

Luckily, two virtually certainly available parachute options open up in spring next year. Should any mold come back through, I’m out for sure. If it shouldn’t, I think I’ll bail anyway, since both apartments are the same price, at least as large if not larger and most importantly newer and in a better general state.

Moving twice within more or less half a year, I guess. Sigh.

Solaris/x86 software you might be interested in…

While we wait for Sun to fill up its IPS repository for OpenSolaris and whether third parties create good repos or not (Blastwave, yach!), here’s a three links to binary packages that might interest you and shouldn’t be missing on any system (I’ve tested them only under Solaris Nevada/OpenSolaris). All links are SVR4 packages:

Transmission 1.21: A decent Gnome based torrent client. Stable.

WINE 1.1.2: No explanations needed. Appears stable. Runs at least the three main apps from Office 2007.

Songbird 0.7: A pretty cool iTunes look-a-like. Requires the appropriate GStreamer modules for the respective file formats.

And if you feel really bored and need to watch deviants at play, or maybe just need a virtual toy world, there’s also a bonus: SecondLife for Solaris.