I always wondered how I could easily read several variables at once from some program I execute from bash. Usually I simply read all values to a single variable and do a barrel roll (for each) on it or I execute the program in question several times with slightly tweaked parameters. That’s all not so nice for performance critical scripts. So I usually try to read as much as possible with as less as possible program calls from within a script.

Well, this is a snipped I developed today that is much easier by simply making use of read and “<<<

read iUID iGID <<< `awk -v username="$USERNAME" -F ":" '$0 ~ "^"username":x:" {print $3" "$4}' /etc/passwd`

I’m also passing a variable down to awk used in a regular expression. Please notice that this does only work when $IFS is a single space (default).

if [[ $iUID =~ ^[0-9]+$ ]] && [[ $iGID =~ ^[0-9]+$ ]]; then

And here I can even validate both values easily as integers using a regular expression.

Bash is so damn powerful once you get the basics 🙂 Ah and yes I am aware that awk can do the integer check itself but I’m just not there.. yet 😉

Ich mag meinen Job 🙂 Spielzeug fĂŒr Erwachsene:

============
Last updated: Thu Aug 25 16:03:54 2011
Stack: Heartbeat
Current DC: punk (71dd0b09-39d3-4869-9b07-ec7ca7328ea1) - partition with quorum
Version: 1.0.11-6e010d6b0d49a6b929d17c0114e9d2d934dc8e04
2 Nodes configured, unknown expected votes
3 Resources configured.
============Online: [ steam punk ]

Resource Group: grpNFS
fsDRBDnfs  (ocf::heartbeat:Filesystem):    Started steam
resIPnfs   (ocf::heartbeat:IPaddr2):       Started steam
Master/Slave Set: msDRBDnfs
Masters: [ steam ]
Slaves: [ punk ]
resNFS  (lsb:nfs-kernel-server):        Started steam

Ich habe die Tage mal wieder was am Wine zu knabbern gehabt. Nach dem Aktivieren der OnBord Soundkarte schien zunĂ€chst alles schön zu seine. Unter Ubuntu konnte ich einfach den Punkt “Auf alle verfĂŒgbaren Soundkarten ausgeben” auswĂ€hlen.

Unter Wine hatte ich aber plötzlich keinen Ton mehr.

“wine winecfg” hat einen Tab “Audio”. Da ging der Ton, wenn man auf “Test Sound” geklickt hat, lustigerweise.

Nun, des RĂ€stels Lösung: Wine nutzt, genau wie der Pulseaudio von Ubuntu, das Alsa Device. Nun hat Ubuntu mir aber die Alsa Config umgebogen und ein sog. “dmix” Device angelegt, um auf beide Soundkarten auszugeben. DMIX zu erklĂ€ren sprengt nun hier den Rahmen (wenn das interessiert=> alsa webseite erklĂ€rts). Auf jeden Fall war damit das Device “default” von alsa einfach leer. Das dmix Device hört hingegen auf den Namen “default_1”.

Unter “wine regedit” habe ich dann die Variable “DefaultPlayback” auf “default_1” gestellt. Nun gehts wieder

Die Keys sind unter http://wiki.winehq.org/UsefulRegistryKeys beschrieben.

Kann sein dass sich das bald wieder Àndert. Soweit ich das verstanden habe bekommt Wine gerade eine radikale Umstrukturierung bei Audio verpasst, was dann wohl eine direkte Anbindung (ohne Patch) an gstreamer erlaubt.

Klar, alternativ hÀtte ich einfach default in default_1 umlenken können oder eine der anderen 10 Möglichkeiten zur Soundausgabe Soundausgabe umzuleiten nutzen können. Ist aber letztendlich egal. Um mich genau mit sowas nicht mehr rumzuÀrgern habe ich mir damals eine SB Live 5.1 mit emu10k1 Chipsatz geholt. Die konnte Hardwaremixing und brauche garkeine Soundserver und Software-Mixing mehr. Irgendwie ironisch dass mich diese Probleme dann doch 2011 mit dem Aktivieren einer zusÀtzliuchen OnBord Karte wieder eingeholt haben.

Tja.. und wenn mein Samsung Galaxy i5800 mal wieder keine USB Verbindung zum PC aufbauen möchte, und den Verbindungsdialog nicht wie gewohnt anbietet, wenn das GerĂ€t mit dem PC verbunden wird, wĂ€hle ich einfach diese (kostenfreie 😉 ) Nummer (mit Stern!)

*#7284#

Daraufhin öffnet sich ein Einstellungsdialog. Unter USB einmal auf Modem und dann wieder auf PDA geklickt und schon funktioniert alles wieder wie es soll.

Anscheinend stellt sich das GerĂ€t intern ab und an auf Modem um, ohne dies auch anzuzeigen. Technik, die begeistert. Android ist toll. Samsung.. nĂ€chstes mal doch lieber von der Quelle. Da gibt es dann auch zeitnah Updates. So warte ich noch immer auf das offizielle Update fĂŒr Android 2.2 fĂŒr mein Galaxy. Service, Baby. Da weiß man doch, was man gekauft (bekommen) hat.

Gestern wurde es mal wieder sehr spÀt und wie so oft kam das Thema auf Computerspiele. Aus irgend einem Grund kamen wir auf Dungeon Keeper. Ich rede vom ersten Teil. Das war ein 16Bit DOS Spiel aus dem Jahre 1997 von Bullfrog. Falls sich noch jemand erinnert.

Ich habe also in meiner Spieleschatzkiste gegraben und tatsĂ€chlich die originale ziemlich lĂ€dierte und zerkratze CD zu Tage gefördert. Und das schöne: Lief mit “dosemu” auf Anhieb und ohne Murren mit Ton, Sprachausgabe, Maus und “3D”. Oder was man damals halt so unter 3D kannte.

Zum Spiel selbst: Herrlich, witzig, böse, innovativ. Allein das Introvideo war preisverdĂ€chtig. Unglaublich, was hier aus einem DOS rausgekitzelt wurde. Und das Beste: Dank grafischer Ausgabe ĂŒber SDL seitens Dosemu ist eine stufenlose Fensterskalierung möglich. So kann ich es auf meinem reinen 64bit Linux auf einem modernen Monitor, der diese niedrigen Auflösungen nicht mehr kann, noch einmal mit mir genehmer GrĂ¶ĂŸe und Verpixelung spielen.

Wir haben es geschafft! Nach Wirren, Motorproblemen, umgeplanten Übernachtungen und davonfahrenden (Vor-)FĂ€hren (D.d.d.da geht unser GepĂ€ck!!1) sind wir auf Juist aufgeschlagen. Juist ist, wie wir alle wissen, eine autofreie Insel an/in der Nordsee. Auch bekannt als *der* Kurort fĂŒr den wohlhabenden Mittelstand. ZufĂ€lligerweise kennen wir hier eine tolle nette Familie, die uns spontan ĂŒber die Feiertage eingeladen hat. Die Saison hat noch nicht richtig angefangen und hier wirkt noch alles etwas verschlafen. GeschĂ€fte haben das erste mal seit Monaten wieder offen und ĂŒberall stellen sich die Anwohner erst noch richtig auf ein neues Jahr voller fetterlohender Touristen ein. Entschleunigt eben. Am Hafen warten Pferdekutschen und FahrradanhĂ€nger auf die Reisenden. Anstelle von Zulassungsschildern ziert hier jede Handkarre ein Schild mit dem Namen der Miet-Residenz. Alle individuell natĂŒrlich. Ein Gewusel wie auf einem Wochenendemarkt setzt ein und ein paar Minuten stolpern Radfahrer, Fußvolk, Hunde und Pferde wild durch- und ĂŒbereinander. Danach kehrt schlagartig wieder Ruhe ein. Auch auf uns wartet ein kleines Komitee mit Karre, was in Anbetracht unserer schweren Reisetruhe auch gut ist.

Wir sind nach der Übergabe unseres FressCare Pakets und dem Einzug in unser ZimmerFerienapartment gleich mal auf unseren alten quietschenden RĂ€dern ohne funktionierender Gangschaltung und Luft in den Reifen einmal durch den Ort und dann zum Strand rĂŒber. Der Wind zerrt krĂ€ftig an Ohren und Hut und wir schmecken Salz. Ich liebe diesen frischen Meeresgeruch und kanns kaum abwarten hier morgen gemĂŒtlich ĂŒber den Deich zu flanieren. Sehen und gesehen werden. Das ist hier laut ReisefĂŒhrer ohnehin das Motto. Nadur pur 🙂 Leider musste der Bus drĂŒben auf dem Festland bleiben, wo wir ihn gut versteckt haben. Die FĂ€hrenparkplĂ€tze sind nĂ€mlich ziemlich teuer und ich habe irgendwie ein Problem mit teuren “Achtung – ich bin ein paar Tage nicht hier, brich ruhig mein Auto auf”-ParkplĂ€tzen.

Besondere Hilights aus dem Programm, die ich niemandem vorenthalten möchte:

  • Kreatives FĂ€rben von Merino-/Alpaka-/Baumwolle & Co (Schafe fĂ€rben!!!1eins)
  • Klangschalenmassage (Mit tibetischen Klangschalen1!!1)
  • Körpermassage Teil 1 RĂŒckseite (Vorderseite kostet 5 Euro mehr. Warum wohl? .oO( ( . ) ( . ) )
  • Kreatives Stricken und HĂ€keln!1eins

Camping im Sommer kann jeder. Ein neuer Trend, der sich in Deutschland ausbreitet, ist das Wintercamping. Zwar betrachten wir uns nicht als wirkliche Campernaturen oder Naturfreunde, doch ist im Winter ohnehin zu dieser Jahreszeit nur wenig los. Da kam ein Bullitreffen gerade recht um ein wenig Abwechselung in die tristen Tage zu bringen. Aber mitten im Winter? Damit hatte ich auch noch keine Erfahrung und so haben wir mehrere Tage mit den Vorbereitungen verbracht und viele Socken und andere wichtige Kleinigkeiten gepackt.

Das hat auch alles super geklappt und wir haben ein tolles Wochenende am Edersee genießen dĂŒrfen. Mit dabei waren geschĂ€tzt 80 andere VW T3 Busfahrer, darunter einige bereits bekannte Gesichter. Die meiste Zeit hatten wir traumhaftes Wetter und nur am Sonntag ein wenig Neuschnee (siehe Bild). Dank Strom am Bulli und der guten Isolierung mit Trocellen Schaumstoff hatten wir selbst am frĂŒhen Morgen wohlige 22,5°C im Bus bei nur 1,5kW Heizleistung. Versorgt haben wir uns allerdings mit einem Gaskocher und vielen warmen Mahlzeiten und den ein- oder anderen Irish Coffee oder Apfelwein.

Na und was wĂ€re eine knapp 1000 Kilometer Tour mitten im Winter ohne Panne? Auf der RĂŒckfahrt ist uns dann leider ein Reifen kaputt gegangen. Durch ein Loch in der Flanke verschwand der Großteil der Luft und so musste das Reserverad her halten. Kein großer Aufwand, habe ich doch immer das Werkzeug dabei, und ein Abenteuer mehr auf der Liste. Und wenn es auch nur einmal mehr der Reifen war 😉

Der Sommer ist wohl inzwischen wirklich gelaufen. Bis zuletzt hatten wir ungewöhnlich warme Tage. Erst im spÀten Dezember bekamen wir tatsÀchlich Schnee und unsere Portion Eis.

Doch es geht mir gar nicht um das WetterKlima, wie so vielen dieser Tage. In meinem Leben hat sich diesen Sommer so viel getan, dass es mir ohnehin niemand glauben wĂŒrde. Die einzige Konstante ist, wie immer, mein treuer T3 VW-Bus. Ich hatte so viel zu tun, dass es mir nicht einmal fĂŒr die Wartung der Webseite gereicht hat. Inzwischen werden die Tage wieder etwas ruhiger und ich habe es endlich geschafft nicht nur die Inhalte auf meinen neuen Server zu ziehen, sondern auch die Domains folgen zu lassen. TschĂŒss 1und1, deine GeschĂ€ftspolitik wurde mir gar zu seltsam.

Auch beruflich hat sich einiges getan – oder nicht getan. Ich bin seit dem Sommer raus und arbeite nicht mehr fĂŒr den gelben Trachtenverein. Ein Jammer, habe ich diesen Job doch wirklich gerne gemacht. Ich vermute ja, dass meine Ansichten ĂŒber Postboten etwas antiquiert und romantisch sind. Ich habe nicht viel positives dazu zu sagen und sage daher lieber nichts. Höchstens vielleicht dass ich das angeschlossene Verfahren fĂŒr mich entscheiden konnte 🙂

Mit dem Ende des Jobs ging auch meine Beziehung nach etwa zwei Jahren endgĂŒltig in die BrĂŒche. Murphy war, wie immer, mit mir. Die letzten FrĂŒhlingswochen waren eine einzige Seifenoper – nicht zuletzt weil ich mein Auge ausgerechnet auf eine gemeinsame Freundin geworfen hatte. Liebe ist nicht fair. Es gab fĂŒr mich einmal mehr keinen Grund in der Gegend zu bleiben und einmal mehr warf ich all meine Sachen in den Bus und suchte mir mit meiner neuen LebensgefĂ€hrtin eine neue Bleibe.

Die war auch schnell gefunden. GlĂŒck, Schicksal und Murpy wiesen uns eine traumhafte Wohnung am Rand von Stuttgart zu. Der Altbau von 1930 hat schon bessere Zeiten gesehen, doch da wir vor Heimarbeiten keine Angst haben gingen wir munter ans Werk und zogen nach einer Teilsanierung sofort ein. Vor jedem Fenster sehen wir nur dem grĂŒnen Garten, haben eine ruhige Verkehrslage (worĂŒber sich die Katzen sehr freuen), ParkplĂ€tze satt und neben der Bundesstraße ganz in der NĂ€he noch zwei Autobahnzubringer und nur 5 Minuten zu Fuß zur U-Bahn rĂŒber. Eine richtige Insel ohne direkte Nachbarn in der Großstadt.

Der Sommer selbst war so was wie der Sommer meines Lebens Teil 2. Wir waren eigentlich jedes Wochenende auf Achse und haben zusammen mit ebenfalls mittelalterbegeisterten Freunden viele Burgen und MĂ€rkte besucht. Wenn wir gerade mal keine AusflĂŒge oder Grillabende gemacht haben wurde am Bus/an Bussen geschraubt. Ja und dann.. dann kam die Bundestagswahl.

Ich hatte es eigentlich schon vor meinem Abflug nach Schweden damals an den Nagel gehĂ€ngt. Politik? Kasperletheater. Ich war sogar in Berlin und habe mir das live angesehen. Die komplette Tour de Sozialdemokraten. Aber es war egal wohin man sah: Die Basis war nur Wahlvieh und der Kopf völlig abgehoben und weltfremd. Das gilt auch fĂŒr die GrĂŒnen! Man vergleiche mal damalige Werbevideos aus dem TV mit heute. Und eigentlich wollte ich auch nicht wieder zurĂŒck kommen. Doch dieses Jahr hatte es mich wieder gepackt. Mit Entsetzen las ich von Zugangserschwerungsgesetzen und eine Menge anderen Mumpiz wo im Namen des Terrors oder Kindern (ja, das macht sich immer besonders schick) Gesetze durchgedrĂŒckt wurden, die uns genau dahin zurĂŒck werfen, wo wir schon einmal waren. Überwachung, Verfolgung und Kriminalisierung. Und das in Deutschland. Sollten nicht gerade *wir* es besser wissen?

Lange Rede kurzer Sinn. Ein paar Monate vor der Wahl erfuhr ich das erste mal von der neuen Piratenpartei. Nachdem ich einige Wochen das Programm verfolgt hatte bot ich den lokalen Piraten meine Hilfe an. Endlich eine Partei, die fĂŒr Hirn steht und fĂŒr die Grundgesetz und Datenschutz nicht nur zwei Marketingwörter sind. Von da an hieß es Stammtische, Flyer, Plakate, AufklĂ€rungsarbeit und natĂŒrlich.. Transportfahrten 🙂 Ich hoffe, dass sich die Partei besser entwickelt als die GrĂŒnen damals. Schneller ist sie auf jeden Fall jetzt schon.

Der Winteranfang war dagegen ziemlich ruhig und tatsĂ€chlich besinnlich. Ich habe es geschafft mich aus dem Weihnachtstrubel raus zu halten und schöne Feiertage zu erleben. Der Bus weißt zwar regelmĂ€ĂŸig auf einige kaputte Teile hin, die repariert werden wollen, springt aber trotz kalter Temperaturen super an. Dank meiner inzwischen zentralen (Insel-)Lage kommen regelmĂ€ĂŸig Freunde und Familie vorbei. Die Vorfreude auf den nĂ€chsten Sommer ist groß und ich genieße das Leben wieder richtig. Nach zwei Jahren arbeiten bis zum Umfallen eine angenehme Abwechselung. Die Rolle als Hausmann scheint mir auch ganz gut zu stehen. Trotzdem wird es Zeit in das Berufsleben zurĂŒck zu kehren. Das gestaltet sich zur Zeit leider nicht so einfach wie sonst. So wurde eine zugesagte Stelle im letzten Moment komplett gestrichen. VerrĂŒckt.

Die ein oder andere Sache habe ich hier natĂŒrlich unterschlagen. Wie etwa der Spaß mit dem geplatzten Wasserboiler oder der letzte Tanz mit der Telekom. Das wĂŒrde den Rahmen eines Blogeintrags aber auch sprengen. Trotzdem solltet das dem aktuellen Stand der Dinge entsprechen und ich verspreche natĂŒrlich in Zukunft wieder öfter etwas zu schreiben 😉

Meine berĂŒchtigte ToDo Liste:
[x] get a car
[x] get an apartment
[ ] get a job
[x] get a girlfriend

I’ve a bbs system up and running storing the user accounts and their passwords (as md5 hash) in a database. The trac belonging to the bbs stores it’s data in a sqlite db and gave me a hard time for setting up useraccounts. I finally managed to validate users against the data from the mysql database. This is how it works for a standalone tracker project configured as apache2 site with mod_python:

â€čLocation /tracâ€ș
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /path/to/trackerenv
PythonOption TracUriRoot /trac
PythonDebug off
â€č/Locationâ€ș
â€čLocationMatch /trac/loginâ€ș
AuthType Basic
AuthName "Please login with your bbs (forum) account"
Require valid-user
AuthUserFile /dev/null
AuthBasicAuthoritative off
Auth_MYSQL on
Auth_MySQL_Authoritative off
Auth_MySQL_DB thedbname
Auth_MySQL_Username theloginused
Auth_MySQL_Password thepasswordused
Auth_MySQL_Password_Table thetablewiththeuserdata
Auth_MySQL_Username_Field thefieldwiththeusernames
Auth_MySQL_Password_Field thefieldwiththeuserpasswordsstoredasmd5
Auth_MySQL_Empty_Passwords Off
Auth_MySQL_Encryption_Types PHP_MD5
â€č/LocationMatchâ€ș

With that settings I was able to produce a login request on the login-site of the tracker that could be feed with users and passwords from my existing bbs database tables. Now the users could login to the tracker and I could remove ticket/wiki creation/modification from the anonymous access to prevent spambots spamming the tracker.

trac-admin /path/to/trackenv permission remove anonymous TICKET_CREATE TICKET_MODIFY WIKI_MODIFY WIKI_CREATE
trac-admin /path/to/trackenv permission add authenticated TICKET_CREATE TICKET_MODIFY WIKI_MODIFY WIKI_CREATE

Hallo und Willkommen zu einem etwas anderem HowTo von beko. Ich dachte zur Weihnachtszeit backen wir mal etwas anderes als immer nur Kernel oder KDE. Also, SchĂŒrze um und los geht es đŸ˜‰

Was ihr fĂŒr dieses OpenSource Projekt benötigt sind fĂŒr den Teig 125g Zucker, 250g Butter und 350g Mehl. Die Zutaten sollten alle ohne Probleme bei Eurem LD zu bekommen sein. Die gĂŒnstigen Varianten genĂŒgen uns dabei vollauf.

Was ihr nicht braucht sind Haare im Teig. Das ist unhygienisch. Also macht den Arbeitsplatz vorher mit make clean sauber. Runter Kitty!

Habt Ihr alle AbhĂ€ngigkeiten aufgetrieben, kann es ans Konfigurieren gehen. FĂŒr 5 EUR auf dem Flohmarkt zu bekommen dieses praktische Autotool. Echte MĂ€nner dĂŒrfen natĂŒrlich auch alles selbst machen – Hauptsache am Ende kommt eine saubere Formatierung heraus.

Und die sieht dann so aus. Je nach Arbeitsumgebung kann die Darstellung ein wenig Abweichen. Einige sollen sogar Pinguin-Förmchen besitzen 😀 Ist alles fertig kann es bei ca. 180° ans Kompilieren gehen. Zeiten sind schwer einschĂ€tzbar, da dies stark von der Arbeitsumgebung abhĂ€ngt. 10-20 Minuten sollten aber drin sein. Macht einfach die Augen auf. Dann seht ihr schon wenn es fertig ist.

NatĂŒrlich gibt es noch einige optionale AbhĂ€ngigkeiten. Der Fantasie sind dabei kaum Grenzen gesetzt. Meine Lieblingsmodule sind hier ein wenig (viel) Puderzucker angerĂŒhrt mit ein paar Tropfen Wasser und einem Schuss Zitronenaroma. Wer auf Schokolade steht, kann auch solche einschmelzen.

FĂŒrs Auge gibt es natĂŒrlich noch Eyecandy in Form von bunten Streuseln. Sozusagen das Crystal Set unter den optischen Effekten. Wer es nicht so bunt mag nimmt die monochrome Alternative oder verzichtet ganz auf zusĂ€tzliche Optik.

Fertig kann das dann zum Beispiel so aussehen. Die passende Verpackung findet man in einem dieser “Kram-Den-Keiner-Braucht”-LĂ€den. Eine Tupperdose genĂŒgt aber ebenfalls. Hauptsache die Katze kommt nicht dran đŸ„°

Das Nachmachen zuhause ist ausdrĂŒcklich empfohlen 😎