same-gnome

same-gnome

Das Spiel same-gnome ist seit Ubuntu 10.04 nicht mehr in den offiziellen Paketquellen enthalten.

Da ich die Pakete bei Ubuntu nicht mehr finden kann, stelle ich die Pakete hier zum Download bereit:

Vor der Installation muss jedoch das Spiel swell-foop deinstalliert werden. Diese Spiel wird als Nachfolger von same-gnome bezeichnet. Naja, wer es mag.

Wenn das Spiel beendet ist, dann kann man leider seinen Highscore nicht eintragen:

[Unfortunately your score did not make the top ten."

Der Highscore wird hier gespeichert:


-rw-rw-r-- 1 root games 0 2011-03-23 18:01 same-gnome.Large.scores -rw-rw-r-- 1 root games 0 2011-03-23 18:01 same-gnome.Medium.scores -rw-rw-r-- 1 root games 0 2011-03-23 18:02 same-gnome.Small.scores

Bei der Installation von same-gnome_2.28.0-0ubuntu3_amd64.deb werden diese Dateien jedoch nicht mit installiert.
Also muss man die Dateien von Hand anlegen und mit den richtigen Rechten versehen, um die Highscores speichern zu können.

$ sudo touch /var/games/same-gnome.Large.scores   
$ sudo chown root:games /var//games/same-gnome.Large.scores   
$ sudo chmod 664 /var//games/same-gnome.Large.scores   
$ ls -l /var//games/same-gnome.Large.scores   
-rw-rw-r-- 1 root games 0 2011-03-25 13:11 /var//games/same-gnome.Large.scores  

Die nötigen Befehle sind in diesem Script zusammengefasst:

  • "wnf_init_same_gnome.sh](http://downloads.wlsoft.de/wnf_init_same_gnome.sh)

Das Script muss mit sudo ausgeführt werden.

wnfDesktpopkalender.py 0.17

Die Skripte zur Anzeige des Desktpopkalenders unter Kubuntu 11.04 haben nicht mehr richtig funktioniert. Das erzeugte Hintergrundbild konnte unter [Arbeitsflächen-Einstellungen" nicht mehr angezeigt werden, obwohl es von Gwenview ordentlich dargestellt wurde.

Im Skript hatte ich der PIL-Funktion Image.Save() nur den Dateinamen übergeben. Eigentlich soll PIL an Hand der Datei-Erweiterung erkennen, welches Format zu schreiben ist. Aber es wurden neuerdings Jpeg-Dateien geschrieben, obwohl ich einen PNG-Dateinamen angegeben hatte.

  • alt
        self.im.save(dn)  
  • neu
        self.im.save(dn,"PNG")  

XXX-|python-powered-w-100x40|"Download wnfDesktopkalender_Anzeigen](http://downloads.wlsoft.de/wnfdesktopkalender.zip)

VMWare über Konsole steuern

Zum Steuern der VMware Workstation benötigt man das Programm vmrun, welches zur VIX-API gehört.

$ sudo ./VMware-VIX-1.10.3-368992.x86_64.bundle  

Anzeige aller laufenden Maschinen

$ vmrun -T ws list  
Total running VMs: 1  
/media/sdc2/vmware/xp_buero/xp_buero.vmx  

Python-Script zum herunterfahren aller laufenden VMware-Maschinen

#!/usr/bin/env python  
# -*- coding: utf-8 -*-  
#   

import os.path  
import os  
import tempfile  

def vm_shutdown(aDateiname):  
    if (os.path.isfile(aDateiname)):  
        s = 'vmrun stop %s soft' % (aDateiname)  
        print s  
        os.system(s)  
    else:  
    print aDateiname  

def vm_shutdown_all():  
    # Alle laufenden Maschinen auflisten und in Temp-Datei speichern   
    t = tempfile.mktemp()  
    s = 'vmrun -T ws list > %s' % (t)  
    os.system(s)  
    for z in open(t, 'r').readlines():  
        z = z.rstrip('\n')  
    vm_shutdown(z)  
    os.remove(t)  

if __name__ == [__main__]()  
    print "Alle VMwaremaschinen herunterfahren"   
    print "Shutdown all runnung VMware-Machines"  
    vm_shutdown_all()  

Zugriffsverletzung in der SQLOLEDB.dll beim zweiten Aufruf einer Stored Procedure aus Delphi heraus

Das funktioniert nur unter Win7 und ADO-Version 6.1

unter XP-SP3 und ADO-Version 2.8
kommt es zu einer einer Zugriffsverlertzung in SQLOLEDB.dll
beim zweiten Aufruf der Stored Procedure b9_Auslastung

  aProc.Close;  
  aProc.ProcedureName := 'b9_Auslastung';  
  aProc.Parameters.Refresh;  
  aProc.Parameters.ParamByName('@Bearbeiter_ID').Value := aBearb_ID;  
  aProc.Parameters.ParamByName('@Stichtag').Value := aStichtag;  
  aProc.Prepared := TRUE;  
  aProc.Open;  

Das funktioniert unter Win7 und ADO-Version 6.1

         und unter XP-SP3 und ADO-Version 2.8  
  aProc.Close;  
  aproc.Parameters.Clear;  
  aProc.ProcedureName := 'b9_Auslastung';  
  aProc.Parameters.CreateParameter('@Bearbeiter_ID', ftInteger, pdInPut, 0, aBearb_ID);  
  aProc.Parameters.CreateParameter('@Stichtag', ftDate, pdInPut, 0, aStichtag);  
  aProc.Prepared := TRUE;  
  aProc.Open;  

HBCI-Banking und KAAN TriBank unter Kubuntu 11.04 (64bit)

Nachdem mein KAAN TriBank unter Kubuntu 10.04.2 LTS ohne Probleme lief, gab es wieder Probleme seit dem Update auf Kubuntu 11.04.

Der Cardping64 funktionierte zwar.

$ ./cardping64 -b1 20100101  
Going to call CT_init  
CT_init (Port 1): 0  
CT_Reset: 0  
CT_data Aufruf mit: 20 10 01 01  
CT_data: 0  
Antwort: 3B ....  

aber sowohl Moneyplex als auch Hibiscus konnten mit dem Kartenleser nichts anfangen.

Daraufhin wandte ich mich an Kobil und habe vom Support eine neue libct.so bekommen. Diese libct.so kopierte ich in das Verzeichnis /usr/bin und seitdem ist der Kartenleser wieder benutzbar.

HBCI-Banking und KAAN TriBank unter Kubuntu 10.04.2 LTS

Den zur Zeit evtl. laufenden Dämon pcscd anhalten

$ sudo /etc/init.d/pcscd stop  

Zur Installation des Treibers lege ich mir unter ~/bin ein Verzeichnis kobil an und entpacke dort den Treiber.

$ mkdir bin/kobil  
$ cd  bin/kobil  
$ unzip /wnfdaten/Doẃnloads/ct-linux.zip  
$ cd  install  
$ tar xzf kobil-install.tgz  

Jetzt installiere ich die 32-bit Version

$ cd  installation  
$ sudo ./install32  

Jetzt den Dämon pcscd neu starten:

$ sudo /etc/init.d/pcscd restart  

Den Rechner neu starten

$ sudo reboot  

Nach dem Booten des Rechners noch einmal ins Installationsverzeichnis wechsel und den 32bit-Treiber für den Benutzer installieren.

$ cd  bin/kobil/install/installation  
$ ./installuser32  

In der Banking-Software Hibiscus den Kartenleser KAAN TriBank wie folgt ansprechen:

XXX-|Kartenleser |KAAN TriBank
|HBCI-Version |2.2
|CTAPI Treiber-Date | /usr/lib/libct.so
|Index des HBCI-Zugangs| 1
|Port des Lesers | COM2/USB2
|Index des Lesers |0

KinterbaseDB verursacht Fehler -901

Was in Kubuntu 10.04 noch funktioniert hatte, ruft in Kubuntu 10.10 diesen Fehler hervor:

(Kubuntu 10.10 amd64 - python 2.6 - Firebird 2.5 Super - kinterbasdb 3.2)

kinterbasdb.OperationalError: (-901, 'begin transaction: \n invalid parameter in transaction parameter block\n Table reservation lock type isc_tpb_shared requires table name before in TPB')

Traceback (most recent call last):  
  File "wnf_fib.py", line 60, in <module>  
    db.list_Adr()  
  File "wnf_fib.py", line 47, in list_Adr  
    dt_Adr.execute("SELECT ID,KURZ,STR,TEL1 FROM KO_ADR ORDER BY STR")  
kinterbasdb.OperationalError: (-901, 'begin transaction: \n  invalid parameter in transaction parameter block\n  Table reservation lock type isc_tpb_shared requires table name before in TPB')  

Hier fand ich einige Ausführungen dazu:

Also habe ich zusätzlich einen CustomTPB (transaction parameter buffers) eingeführt.

    def connect(self):  
        self.svc = kinterbasdb.services.connect(host=self.Server, user=self.User, password=self.Passwort)  
        dsn="%s:/%s" % (self.Server,self.Datenbank)  
        self.con = kinterbasdb.connect(dsn=dsn, user=self.User, password=self.Passwort)  
        self.customTPB = ( kinterbasdb.isc_tpb_write + kinterbasdb.isc_tpb_read_committed + kinterbasdb.isc_tpb_rec_version)  
        self.con.begin(tpb=self.customTPB)  
        return True  

Und jetzt funktioniert es wieder.

scantopdf.pl

Mit diesem Script kann ich von meinem Scanner aus eine PDF-Datei im Verzeichnis ~/PDF erzeugen. (Das Original stammt von www.svenna.de))

#!/usr/bin/perl  


######################################################  
# LIZENZ  
#  
# dieses programm steht unter der bierlizenz!  
# du kannst es benutzen, veraender und kopieren, wie du willst.  
# wenn wir uns mal treffen und du meinst es ist es wert - gib mir n bier aus :-)  
# svenna  
#  
# scripts@svenna.de  
# www.svenna.de  
######################################################  


# scanner erkennen  
# dazu muss sane installiert sein  
$scanner = `scanimage -L`;  
# drucker erkennen  
$printer = `lpq -P PDF`;  

$printer = $1;  

if ($scanner =~ /(\w+:libusb:\d{3}:\d{3})/){  
$scanner = $1;  

print "Scanner: $scanner\n";  
print "Drucker: $printer\n\n";  

copy();  
}  

else {print "Immer erst den Scanner anschliessen ;-) \n";}  


sub copy {  
print "scanne Dokument\n";  
system("/usr/bin/scanimage -d $scanner --gray=yes --resolution 150 -x 210 -y 295 > /tmp/kopie.pbm");  

print "wandle in PS-Datei um\n";  
# dazu muss netpbm installiert sein  
system("/usr/bin/pnmtops -equalpixels -dpi 150 -width 8 -height 11.6 /tmp/kopie.pbm > /tmp/kopie.ps");  

print "schicke Kopie an Drucker\n";  
system("/usr/bin/lpr -P$printer /tmp/kopie.ps");  

print "Kopie wurde im Ordner ~/PDF erstellt\n";  
}  

Seiten