Skip to content

Linux Casesticker

Moo stickers :)
Attribution-NonCommercial-ShareAlike License by Bruno Santos

Im Ubuntu Planeten entdeckt: Beim Ubuntux-Blog kann man nette Case-Sticker mit Ubuntu  / GNU / Linux Motiven ordern.

Hier der Link zum Shop :  http://ubuntux.user-blog.de/aufkleber-shop/

Gute Sache :)

Gnome in etwas schreckliches verwandeln…

Hier nochmal der Link zum Tarball.

Danger from the Deep

Bildschirmfoto

Durch Machinarium habe ich mal wieder Lust bekommen eine Runde am PC zu zocken. Irgendwie  bin ich dabei auf das Spiel Danger from the Deep gestoßen, einen U-Boot Simulator mit ganz netter Grafik. Als Aces of the Deep Veteran hab ichs mir auch gleich installiert. Im Ubuntuusers Wiki gibts auch einen Artikel dazu. Ich hab das Game per Linuxinstaller installiert (leider gibts nur ein 32Bit Deb*Package auf der Seite). Alles geklappt, nur kommt beim Start diese nervige Fehlermeldung:

dangerdeep: error while loading shared libraries: libfftw3f.so.3: cannot open shared object file: No such file or directory

Diese merkwürdige Lib hat irgendwas mit Grafik zu tun und interessiert mich nicht wirklich. Per apt-get konnte das Problem auch nicht behoben werden. In irgendeinem französischen Forum bin ich dann auf die Lösung gestoßen:

$ wget http://fr.archive.ubuntu.com/ubuntu/pool/main/f/fftw3/libfftw3-3_3.1.2-3ubuntu1_i386.deb
$ dpkg-deb -x libfftw3-3_3.1.2-3ubuntu1_i386.deb fftw3-i386
$ cd fftw3-i386/usr/lib
$ sudo install * /usr/lib32

Package auspacken, Libs kopieren, Läuft – nicht ganz. Als Argument muß noch die Montiorauflösung mitgegeben werden. In mienem Fall 1680*1050. :)

dangerdeep –res 1680*1050 –nofullscreen –language de

Reblog this post [with Zemanta]

I 8> my Thinkpad

Thinkpad Trackpoint macro
Attribution-NonCommercial-ShareAlike License by TDR1

Ich baue normalerweise keine emotionalen Beziehungen zu Gegenständen auf, aber mein Thinkpad mag ich seit dem Tag an dem wir uns kennengelernt haben. Es ist zwar schon ein Lenovo, aber das Teil ist gut verarbeitet und gut zum Arbeiten. Der Trackpoint ist wohl mit Abstand das Genialste seit der Erfindung des Dosenbiers und die Tastatur sucht auch seinesgleichen.

Allerdings war ich nach 1,5 Jahren nicht mehr so zufrieden mit der 160GB Festplatte.

Das Teil war ein wenig zu klein (ich nutze eigentlich nur noch diesen Laptop), zu langsam und ab und an hat sie auch noch komische Geräusche gemacht.

Eine Lenovo Ersatzplatte war mir allerdings ein wenig zu teuer. Nach kurzer Recherche habe ich diese WD HD mit 250 GB Speicher für 55€ gefunden. Beim Einbau gabs (wie erwartet keinerlei Probleme) Hier noch ein paar Bilder von der 5 minütigen Operation:

Benötigt wird ein normaler Schraubenzieher,Kreuzschlitz. Einfach das Schräublein am Rand rausdrehen und die Blende abnehmen

HPIM2012

Die Gummilasche mit dem Schraubenzieher aus dem Gehäuse drücken

HPIM2007

und die Platte einfach rausziehen

HPIM2008

Die seitlichen Gummipuffer abnehmen

HPIM2009

Die 4 seitlichen Schrauben lösen, um die Platte aus dem Rahmen zu nehmen

HPIM2010

Neue Platte verschrauben, Puffer drauf rein und alles klappt.

HPIM2016

Reblog this post [with Zemanta]

System Tray in Python mit GTK

Green Tree Python
Attribution-NonCommercial-ShareAlike License by Sebastian Niedlich (Grabthar)

Im Moment beschäftige ich mich ein wenig mit Python und GTK.  GTK kenn ich schon ein wenig länger, aber Python programmiere ich erst seit einer Woche und ich muß sagen, es macht wirklich Spaß und produziert im Gegensatz zu Perl sehr gut lesbaren Code:)

Nun schreibe ich gerade ein kleines Notizbuch, dass auch einen Platz im System Tray haben soll. Also mal in der GTK Referenz irgendwas in der Richtung Window.visible() gesucht aber Fehlanzeige.

Da ich auch durch googlen nichts manierliches gefunden habe hier meine kleine Interpretation des Problems in Python. HF:)

#!/usr/bin/env python
 
import <a class="zem_slink freebase/guid/9202a8c04000641f80000000003991b6" title="PyGTK" rel="homepage" href="http://www.pygtk.org/">pygtk</a>
pygtk.require('2.0')
import gtk
import egg.trayicon		
 
class PythonTray:
	def __init__(self,
			icon,		#Pfadangabe zu einem Bild (String)
			tooltip,	#Tooltiptext (String)
			event_handler	#Eventhandler fuer das Trayzeichen mitgeben
			):
		"""
		Erzeugt das Trayicon
		"""
		tray_object = egg.trayicon.TrayIcon(tooltip)
		tray_object.set_tooltip_text(tooltip)
		#bild laden + skalieren
		image_widget = gtk.Image();
		pixbuf = gtk.gdk.pixbuf_new_from_file(icon)
		scaled_buf = pixbuf.scale_simple(32,32,gtk.gdk.INTERP_BILINEAR)
		image_widget.set_from_pixbuf(scaled_buf)
 
		event_box = gtk.EventBox()
		event_box.add(image_widget)
		event_box.connect('button_press_event', event_handler)
		tray_object.add(event_box)
		tray_object.show_all()	
 
	def showWindow(self,
		"""
		Blendet ein Fenster ein und aus
		"""
			window	#handle fuer's Fenster
			):		
 
		if not(window.is_active()):
			window.show_now()
			window.present()
		else:
			window.hide()
 
class Trayexample:
	tray = PythonTray
	#kill den shit
	def destroy(self, widget, data=None):
		gtk.main_quit()
 
	###delete event ueberschreiben
	def delete_event(self, widget, event, data =None):
		self.window.hide()
		return True
 
	def applet_face_click(self, window, event, *data):
		if event.button ==1:
			#haesslich
			self.tray.showWindow(window=self.window)
			#self.showWindow()
		if event.button ==3:
			self.destroy(self.window)
 
	def __init__(self):	#Konstruktor
		#neues Fenster erzeugen
		self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
		self.window.connect("delete_event", self.delete_event)	###Das X wird ignoriert :)
		self.window.set_size_request(640,480)		###fenstergroesse
		self.window.set_title('SystemTray Example')
		self.window.connect("destroy", self.destroy)
		self.window.set_icon_from_file('/usr/share/icons/gnome/scalable/apps/im-aim.svg')
		#Tray Krams
		self.tray= PythonTray ("/usr/share/icons/gnome/scalable/apps/im-aim.svg","MyTray",self.applet_face_click)
		#self.window.show()
 
	def main(self):
 
		gtk.main()
 
if __name__ == "__main__"	:
	hello = Trayexample()
	hello.main()

hier kann das Skript runterladen

Reblog this post [with Zemanta]

Standar(t)deditor unter Debian

Chocolate Debian
Attribution License by oskay

Spätestens wenn ich

crontab -e

in die Shell tippe, fällt auf, dass nano der Standardeditor unter Debian ist.

mit

update-alternatives –config editor

lässt sich das ändern.


Netzwerkperformance messen

The worlds network
Attribution-NoDerivs License by saschaaa

Der kleine Slugserver treibt mich in den Wahnsinn. Das Teil will einfach nicht schneller als 3,3MB/s über Samba kopieren. Um mein Netzwerk als Schuldigen auszuschließen habe ich mich mal nach Tools umgesehen, mit denen man die Geschwindigkeit im Netz messen kann. Dabei bin ich auf iperf gestoßen (in den Repositories vorhanden). Die Messung läßt sich recht einfach realisieren:

Auf dem Server:

slug:~# iperf -s

Auf dem Client das Programm aufrufen mit dem Server als c Argument.

schmiddi@hundefutter:~$ iperf -c 192.168.0.77 -i2 -t 20

Das Ergbnis spricht dann für sich

————————————————————
Client connecting to 192.168.0.77, TCP port 5001
TCP window size: 16.0 KByte (default)
————————————————————
[  3] local 192.168.0.6 port 48169 connected with 192.168.0.77 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 2.0 sec  22.6 MBytes  94.6 Mbits/sec
[  3]  2.0- 4.0 sec  22.5 MBytes  94.3 Mbits/sec
[  3]  4.0- 6.0 sec  22.4 MBytes  93.9 Mbits/sec
[  3]  6.0- 8.0 sec  22.5 MBytes  94.2 Mbits/sec
[  3]  8.0-10.0 sec  22.3 MBytes  93.7 Mbits/sec
[  3] 10.0-12.0 sec  22.5 MBytes  94.4 Mbits/sec
[  3] 12.0-14.0 sec  22.1 MBytes  92.9 Mbits/sec
[  3] 14.0-16.0 sec  22.4 MBytes  93.8 Mbits/sec
[  3] 16.0-18.0 sec  22.5 MBytes  94.2 Mbits/sec
[  3] 18.0-20.0 sec  22.3 MBytes  93.6 Mbits/sec
[  3]  0.0-20.0 sec    224 MBytes  93.9 Mbits/sec

Eigentlich schade. Wäre zu schön gewesen um wahr zu sein, wenn irgendein Oldschool Hub das Netzwerk ausgebremst hätte :(

Reblog this post [with Zemanta]

Wordpress Addon für Firefox und Zemanta

Irgendwie kann ich mich nicht richtig damit anfreunden meine Blogeinträge im Webeditor anzulegen.
Nach kurzer Recherche bin ich auf die Addon’s Zemanta und ScribeFire gestoßen.
Zemanta ist ein Editor für Firefox, der sich per XML RPC mit dem Blog verbindet. Man kann seine Posts bearbeiten und
den Text ordentlich formatieren. Sehr nett ist die Möglichkeit Zemanta im Splitscreenmodus zu betreiben, so kann man parallel schreiben und surfen.

Bildschirmfoto-2

Leider habe ich einige Probleme mit dem Plugin unter Firefox 3.5. Irgendwann sehe ich im Splitscreenmodus nur noch graue Masse statt des Browserfensters und Bilder lassen sich auch nicht einbinden. Mit der Version 3.0 des Browsers gibts keine Probleme. Ich werde einfach mal eine neuere Version von Zemanta abwarten.

Zemanta integriert sich sowohl in Firefox als auch in die Wordpress Adminoberfläche. Der Webeditor wird noch zum Erstellen von Posts verwendet. Dafür bietet das Tool allerlei nette Funktionen.

Es schlägt Links, Tags und Bilder  vor anhand der Wörter die im Post stehen und verweist auf andere Blogs. Diese Gechichten funktionieren erstuanlich gut muß ich sagen und beschleunigen das Schreiben ungemein. Hier ien kleines Video:

Semanta ist nicht auf Firefox beschränkt, man bekommt das Programm als Plugin für verschiedene Blogs, Maildienste, Social Networks und Twitter. Ich bin begeistert :) .

Unterm Strich habe ich 2 Addon’s gefunden, die unterschiedlicher nicht sein könnten.

Über die Nutzung von ScribeFire, vor allem mit Firefox 3.5 läßt sich streiten. Zemanta dagegen läuft stabil, erspart es ab und an Links zu erstellen, findet Bilder für die Posts, erstellt Tags und macht einfach Spaß :) Ein Blick darauf lohnt sich wirklich.

Reblog this post [with Zemanta]

Taschenlampengewinnspiel

Flashlight On
Attribution-NonCommercial-NoDerivs License by John Charlton

Bei Hannes Schurig gibts Taschenlampen zu gewinnen. Wenn man an diesem Gewinnspiel teilnehmen möchte, muß man einen Trackback auf seine Seite setzen.

Gewonnen hab ich bis heute nie etwas großes und im Internet noch nie was. Mal schauen was passiert :)

Linksys NSLU2 mit Debian Lenny

Der Beitrag ist jetzt hier zu finden