Mittwoch, 24. Oktober 2012
Patch.exe
Ich musste heute feststellen, dass Windows 7 ein "Sicherheitsfeature" hat, dass für jedes Programm mit "patch" im Namen explizit nachfragt, ob es ausgeführt werden darf. Blöd nur, wenn man "patch.exe" (Windowsportierung von GNU patch) aufrufen möchte, und zwar nicht direkt, sondern über ein anderes Programm, und zwar automatisch in unregelmäßigen Abständen, zum Beispiel durch den Buildbot.
Ein Workaround: man nenne patch.exe um, schreibe eine batch-Datei, mit dem Namen "patch.bat", die nichts tut als patch.exe mit allen angegebenen Parametern aufzurufen.
Auf solche Ideen kann nur Microsoft kommen.

Ach nee, da gab es doch mal Mailanbieter, die nur Dateianhänge mit bestimmten Endungen zugelassen haben. Wenn man ein Sicherheitsfeature durch Umbenennen einer Datei aushebeln kann, ist es kein Sicherheitsfeature.

Gut, mir ist gerade der Gedanke gekommen, dass das auch ein Bequemlichkeitsfeature sein könnte (um direkt Rechte zu bekommen, wenn man einen Patch für ein Programm installieren will), aber für mich ist es wie beschrieben eher ein Unbequemlichkeitsfeature. Windows ist wohl immer noch kein Betriebssystem, mit dem ich arbeiten kann.

... link (0 Kommentare)   ... comment


Donnerstag, 18. Oktober 2012
Fehlermeldungen übersetzen
Was macht man, wenn man eine Fehlermeldung bekommt, die man nicht kennt? Das hier. Anführungszeichen um die Fehlermeldung herum, und man findet meist etwas Praktisches.

Aber was, wenn aus irgendeinem dummen Grund die Fehlermeldung nicht auf Englisch ist? Heute musste ich die Erfahrung machen, dass auf der Arbeit einer unserer buildslaves zwar ein englischer compiler, jedoch eine deutsch lokalisierte Windows-Installation zu finden war, demzufolge war eine Fehlermeldung auf deutsch.Was habe ich im Netz gefunden? Eine Seite, die die verschiedenen Sprachversionen von klassischen .net-Fehlermeldungen gespeichert hat.

Ich halte auf deutsch übersetzte Fehlermeldungen ja sowieso für eine Unsitte, weil mehr Leute Englisch sprechen als Leute Fehlermeldungen verstehen können, und bei compilern deutsche Fehlermeldungen zu sehen ist einfach Schwachsinn.

... link (0 Kommentare)   ... comment


Mittwoch, 5. September 2012
Great Way to go
Dwarf fortress. In einer Welt namens Orukstrasp vegetiert die Zwergenfestung "Foolhammers" vor sich hin. Vor kurzer Zeit erst griff ein Drache die Festung an. Die Zwerge wollten ihn eigentlich fangen, aber ein paar übermutige junge Menschenkrieger schafften es, diesen über hundert Jahre alten Drachen zu besiegen, ohne auch nur einen Kratzer oder eine verbrannte Augenbraue zu kriegen (hätte ich denen gegönnt, schließlich war das der letzte Drache auf der Welt).
Ja, er tritt dem Drachen auf die Zehe und blockt das Drachenfeuer einfach ab
Kurz darauf wurde das Zeitalter der Helden eingeläutet:


Ein paar Monate ist eine neue Bedrohung für die Zwerge erschienen: Ana, ein riesiger Truthahn aus Flammen. Naja, für die Zwerge war es zunächst keine große Bedrohung, schließlich schwamm Ana nur durch die unterirdischen Gewässer an der Festung. Allerdings sind diese unlöschlichen Flammen in Kombination mit Wasser eine ernste Bedrohung für meine Framerate, schließlich muss nicht nur der Dampf, sondern auch das nachfließende Wasser berechnet werden. In einem Kampf stellt sich Vucar Logematír, die schon zwei andere vergessene Bestien bezwungen hat, diesem wütenden Huhn in den Weg. Es stellt sich heraus, dass Feuer ungeignet ist, Armbrustbolzen aufzuhalten, so ist Ana nach zwei gezielten Schüssen aus der Armbrust erledigt. Dummerweise nicht, ohne vorher ein paar Feuerbälle zu schleudern...
Alkohol war ihr Ende.

Vucar hat die Verbrühungen nicht überlebt aber hey - Was für ein Abgang!

PS: Mit "The Miner" und "The Marksdwarf" ist beide Male Vucar gemeint.

... link (0 Kommentare)   ... comment


Sonntag, 26. August 2012
Henne und Ei
Wunderbar. Unser HP Officejet Pro 8500a hat seine Netzwerkeinstellungen gelöscht. Bisher hat er sich immer damit benügt, die WLAN-Verbindung abzuschalten, jetzt sind die Netzwerkeinstellungen gelöscht. Also stelle ich sie neu ein.
Geht aber nicht. Obwohl ich genau diese Einstellungen schon einmal vorgenommen habe, ist es mir nicht möglich, eine feste IP zu vergeben. Wenn ich eine IP-Adresse vergebe, ignoriert der Drucker das und zeigt nur "keine Verknüpfung" an. Laut einem Foreneintrag kann das daran liegen, dass ich keine Netzwerkverbindung habe. Aber wie soll ich denn eine Netzwerkverbingung haben, wenn ich keine Adresse bekomme?

... link (0 Kommentare)   ... comment


Donnerstag, 26. Juli 2012
Retroarch läuft
So, nach einigen Startschwierigkeiten läuft jetzt auch retroarch auf meinem Raspberry, mit pocketsnes als backend (eine Anleitung mit links gibt es z.B. hier).

Das Problem mit dem Controller, nämlich dass das retroarch-joyconfig beim Konfigurieren nichts weiter als "Failed to init joystick subsystem." zurückgabe, lies sich durch Root-Rechte beheben. Warum das so ist, weiß ich nicht, hatte ich doch Zugriffsrechte auf alle notwendigen Dateien.
Die Konfiguration lief dann auch bis zu dem Punkt gut, an dem ich die "oben"-Taste definieren wollte:
Start button
Joybutton pressed: 9
Select button
Joybutton pressed: 8
Left D-pad
Joyaxis moved: Axis 0, Value -32768
Up D-pad
Obwohl die Taste auf meinem SNES-artigen Controller (laut lsusb ein "DragonRise Inc. Gamepad") super funktionierte, wollte retroarch-joyconfig sie nicht registrieren.
Der Workaround ist simpel: man drückt erst einmal irgendwelche anderen Tasten, um mit dem Programm durchzukommen, und schaut sich dann die Konfigurationsdatei an. Dort dann die betroffene Zeile (in meinem Fall input_player1_up_axis = "-0") so anpassen, dass die passende Taste in der Konfigurationsdatei steht (in meinem Fall input_player1_up_axis = "-1").

Wenn man nicht weiß wie die Achsenbezeichnungen sind: im Paket "joystick" ist u.a. das Programm "jstest" enthalten. Damit kann man die Reaktion auf Tastendrücke nachvollziehen.

... link (0 Kommentare)   ... comment


Mittwoch, 25. Juli 2012
MPD läuft
Ok, der MPD läuft jetzt auf dem Raspberry pi. Das Problem präsentierte sich in der Fehlermeldung:
output: Failed to open "My ALSA Device" [alsa]: Failed to open ALSA device "default": No such file or directory
Was leicht irreführend war, denn eigentlich hätte es so etwas wie "permission denied" sein müssen. In der MPD-Konfigurationsdatei lässt sich nämlich eine group einstellen, unter der der MPD laufen soll. Da dies bei mir "pi" war, um auf das Musikverzeichnis zugreifen zu können, hat der MPD vergessen, dass der Benutzer "mpd" bei mir in der Gruppe "audio" ist, also auf Audiogeräte zugreifen darf.
Meine Lösung: Berechtigungen für das Musikverzeichnis ändern, das ging am einfachsten.

PS: genug drinnen gehockt. Jetzt geht es in den Garten.

... link (0 Kommentare)   ... comment


Samstag, 21. Juli 2012
Ganz schlechtes Timing
Mein Raspberry Pi ist heute morgen angekommen. Wiigii!
Das einzige Problem: Am Dienstag schreibe ich die erste Klausur dieses Semesters, und ich muss noch lernen...

... link (0 Kommentare)   ... comment


Dienstag, 10. Juli 2012
Frikkin' Java
Wenn ich es nicht benutzen müsste, wenn ich android-apps schreiben will, dann...
Eben spuckt mir javac folgenden Fehler aus:
Exception java.io.IOException is never thrown in body of corresponding try statement
Keine Warnung, die vielleicht angebracht wäre, weil ein try die Laufzeit herunterzieht, nein, ein Fehler.
So in etwa: "Du kannst das hier nicht machen, weil du keinen Fehler dabei machen kannst."

... link (0 Kommentare)   ... comment


Montag, 2. Juli 2012
Himbeerkuchen
Ich habe mir ein neues Spielzeug bestellt: Einen Raspberry Pi.
Hmm... ein paar Ideen habe ich schon, was ich damit machen könnte:
  • Einen Musikabspieler (mpd) und Filmabspieler, der die Daten vom NAS zieht
  • einen NES-Emulator aufspielen, um alte Spiele spielen zu können
  • ein Infodisplay
Für die ersten beiden Punkte bräuchte ich natürlich noch eine Fernbedienung bzw. einen NES-ähnlichen Controller, die über USB angeschlossen werden können.

Leider kommt das Ding vermutlich erst Mitte August...

... link (0 Kommentare)   ... comment


Freitag, 8. Juni 2012
Verschlüsselte Festplatte:
Falls ich es wieder vergesse: Die Debian-Rescue-Live-CD wird mit dmcrypt ausgeliefert.
Zum Einbinden der verschlüsselten Festplatte meines Netbooks folgende Schritte unternehmen:
1. cryptsetup luksOpen /dev/sda2 irgendeinname
2. lvmdiskscan && vgchange -ay
3. lvdisplay
4. Mounten wie gehabt, mit ermitteltem LVM-Volume

1. aktiviert entschlüsselung
2. aktiviert die LVM-Volumes
3. zeigt die LVM-Volumes an (da muss dann das gewünschte herausgesucht werden)

Boah, ich werde echt alt. Manchmal wünsche ich mir einfach nur ein Betriebssystem, das einfach dasmacht, was ich will. Dummerweise gibt es so ein Betriebssystem nicht.
-Linux macht, was du ihm sagst
-Windows macht, was es will
-MacOS X sorgt dafür, dass du willst, was es macht.

... link (0 Kommentare)   ... comment