von
Kai um
17:38 am
Montag, 23. August 2010 in
Allgemeines |
2 Kommentare
Es ist schon interessant. Das erste Mal, als ich vor zwanzig Jahren einen GameBoy in der Hand hatte, war ich so beeindruckt von diesem kleinen Gerät, dass ich mich noch heute haargenau daran erinnern kann, was mir damals durch den Kopf ging, als ich zum ersten Mal Tetris spielte.
Ich malte mir aus, dass ich in der Klasse der Held sein würde und auf dem Pausenhof meine Klassenkameraden darum betteln würden, einmal kurz damit spielen zu dürfen. Ich habe Duck Tales und Tetris bestimmt monatelang täglich gespielt, ohne dass es mir je langweilig dabei wurde.
Als ich kurz darauf meinen ersten C64 bekam und Pirates, International Karate oder Last Ninja spielte, war ich fasziniert von der unglaublichen Grafik und den vielen Möglichkeiten, die man in diesen Spielen geboten bekam.
Einige Jahre später schrieb ich dann meine ersten BASIC-Programme und glaubte fortan, mit Computern ließe sich alles anstellen, woran man im entferntesten auch nur denken könne.
Wenn ich mich heute mit Technologie und Software beschäftige ist nicht mehr viel von der damaligen Faszination zu spüren. Ich habe mich so sehr daran gewöhnt, meine Joggingstrecke im Internet über GPS-Tracking nachvollziehen zu können und in meiner Hosentasche ein Smartphone zu haben, was mir einen nahezu vollwertigen Internetzugang bietet, wodurch jede Information nur ein Klick Touch weit entfernt ist, dass ich ungeduldig werde, wenn eine Webseite mal länger als einige Sekunden zum Laden braucht.
Ich entwickle über die Semesterferien in Zusammenarbeit mit meiner Hochschule (a.k.a FH) eine mobile Anwendung, die aus einem Kamerabild mittels einem optischem Chromasplitter ein 3D-Objekt extrahiert. Nochmal in kurz und verständlich: Aus einem Kamerabild wird ein 3D-Objekt erstellt. (Das Titelbild für diesen Beitrag ist nur die Vorarbeit gewesen und noch nicht das Endprodukt). Die einzige Reaktion, die ich bisher dazu bekomme habe, war: “Cool” oder “interessant” und im Grunde genommen fühle ich genauso: Nettes Projekt, nicht mehr, nicht weniger. Hätte man mir vor zwanzig Jahren versucht zu erklären, dass man aus einem Kamerabild ein 3D-Modell erzeugen kann, dann hätte ich das sicherlich unter Science-Fiction verbucht oder es als Humbug abgetan. Hätte man mir den Beweis gezeigt, wäre ich wohl ehrfürchtig auf die Knie gesunken. Heute ist es ein Projekt, was man mal so über die Semesterferien gemacht hat.
Denkbar, dass sich Menschen in der Zukunft darüber aufregen werden, dass die Sitze so unbequem sind auf dem Interplanetarflug zum Mars.
von
Kai um
11:27 am
Montag, 9. August 2010 in
How-To, Linux |
3 Kommentare
Da Computer und Betriebssysteme bei unsachgemäßer Behandlung gerne mal ihren Dienst quittieren und die darauf folgende Installationsprozedur langwierig sein kann, habe ich mir ein Skript geschrieben, was das Neuaufsetzen von (K)ubuntu komplett automatisiert. Dabei hab ich festgestellt, dass man das beliebig weit treiben kann (Setzen von Wallpaper, Installation eines Netzwerkdruckers etc., wobei ich ersteres wieder verworfen habe).
Ein weiterer Vorteil beim skriptgesteuertem Aufsetzen ist, dass man die kleinen Anpassungen an das System genau einmal aufschreibt und künftig dann nur einmal das Skript angestoßen werden muss (Es sei denn, langwierige Bugs wurden endlich gefixt und die Anpassung wird obsolet).
Als erstes fragt das Skript, ob es als root ausgeführt wurde, was für das Hinzufügen von Repositories und Installation von Programmen notwendig ist:
if [ `whoami` != "root" ]; then
echo "Bitte Skript als root starten"
echo "Installationsskript wird abgebrochen"
exit -1
fi
Danach folgen eine Aktualisierung und die Installation von bestimmten Repositories:
echo "System aktualisieren"
apt-get --yes update
apt-get --yes upgrade
apt-get --yes dist-upgrade
echo "Repo: Installation von Wine-Repository"
add-apt-repository ppa:ubuntu-wine/ppa
echo "Repo: Installation von Miro-Repository"
add-apt-repository ppa:pcf/miro-releases
echo "Repo: Installation von Webkit-Repository"
add-apt-repository ppa:webkit-team
apt-get -y update && apt-get -y upgrade
add-apt-repository ppa:liferea/ppa
Danach ziehe ich mir den aktuellen Treiber für meine Grafikkarte und Firmware für die DVB-T Karte:
echo "Hardware: ATI Grafiktreiber installieren"
wget https://a248.e.akamai.net/.../linux/ati-driver-installer-10-7-x86.x86_64.run
sh ati-driver-installer-*-x86.x86_64.run --buildpkg
sudo dpkg -i fglrx_*
sudo dpkg -i fglrx-mod*
sudo dpkg -i fglrx-amd*
echo "Hardware: Installation von DVB-T"
wget http://www.otit.fi/~crope/v4l-dvb/af9015/af9015_firmware_cutter/firmware_files/4.95.0/dvb-usb-af9015.fw
mv dvb-usb-af9015.fw /lib/firmware/
Anschließend folgen die eingangs erwähnten Anpassungen für bestimmte Bugs. Außerdem werden der Netzwerkdrucker und bestimmte Schriftarten installiert. Die Anpassung für Plymouth geht sicherlich auch besser, aber ich bin nicht sehr gut im Skripte schreiben (quasi mein erstes:-) ):
echo "Anpassungen: Akonadi beim Anmelden starten"
touch akonadi-start.sh
echo "#"'!'"/bin/bash" >> akonadi-start.sh
echo "/usr/bin/akonadictl start" >> akonadi-start.sh
mv akonadi-start.sh /home/kai/.kde/Autostart/
chmod +x /home/kai/.kde/Autostart/akonadi-start.sh
chown kai:kai /home/kai/.kde/Autostart/akonadi-start.sh
echo "System: Drucker installieren"
lpadmin -p hp-deskjet-f4180 -v lpd://192.168.2.2/LPRServer -P hp-deskjet-f4180.ppd -o InkType=300GrayscaleK -D "HP Deskjet F4180" -L Wohnzimmer -E
echo "Anpassungen: Plymouth anpassen"
apt-get install --yes v86d hwinfo
touch grubTMP
LINE1='GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"'
LINE1NEU='GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1400x1050-24,mtrr=3,scroll=ywrap"'
LINE2='#GRUB_GFXMODE=640x480'
LINE2NEU='GRUB_GFXMODE=1400x1050'
while read line
do
if [ "$line" = "$LINE1" ]; then
echo "$LINE1NEU" >> grubTMP
elif [ "$line" = "$LINE2" ]; then
echo "$LINE2NEU" >> grubTMP
else
echo "$line" >> grubTMP
fi
done < "/etc/default/grub"
mv grubTMP /etc/default/grub
echo "uvesafb mode_option=1400x1050-24 mtrr=3 scroll=ywrap" >> /etc/initramfs-tools/modules
echo FRAMEBUFFER=y | tee /etc/initramfs-tools/conf.d/splash
update-grub2
update-initramfs -u
echo "Anpassungen: Schriftarten installieren"
apt-get install unzip
wget http://www.gringod.com/wp-upload/MONACO.TTF
wget http://www.proggyfonts.com/download/download_bridge.php?get=ProggySquareSZ.ttf.zip
mkdir -p /usr/local/share/fonts/m
mkdir -p /usr/local/share/fonts/p
mv MONACO.TTF /usr/local/share/fonts/m/
unzip ProggySquareSZ.ttf.zip
mv ProggySquareSZ.ttf /usr/local/share/fonts/p/
chmod -R +r /usr/local/share/fonts
rm Licence.txt
Schließlich noch Dropbox installieren inklusive Anpassungen für Dolphin und alle weiteren Programme, die ich halt so brauche:
echo "Programme: Download und Installation von Dropbox"
wget http://www.dropbox.com/download?plat=lnx.x86_64
tar xzf dropbox-lnx*
mv .dropbox-dist /home/kai/
chown kai:kai /home/kai/.dropbox-dist
rm -f dropbox-lnx*
apt-get --yes install sqlite3 python-m2crypto xdg-utils
wget http://kde-apps.org/CONTENT/content-files/124416-DropboxServiceMenu-0.14.3.tar.gz
tar xzf 124416-DropboxServiceMenu-0.14.3.tar.gz
cd DropboxServiceMenu-0.14.3
./install-it.sh
cd ..
chown -R kai:kai /home/kai/.kde4/
rm -rf DropboxServiceMenu-0.14.3
echo "Programme: Installation von Virtualbox"
wget http://download.virtualbox.org/virtualbox/3.2.6/virtualbox-3.2_3.2.6-63112~Ubuntu~lucid_amd64.deb
dpkg -i virtualbox-3.2*
echo "Programme: Installation von NX-Client"
wget http://64.34.161.181/download/3.4.0/Linux/nxclient_3.4.0-7_x86_64.deb
dpkg -i nxclient_3.4.0-7_x86_64.deb
echo "Programme: Installation von Google Chrome"
wget http://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
dpkg -i google-chrome-stable_current_amd64.deb
echo "Installation von weiteren Programmen"
apt-get install --yes pdftk texlive texlive-doc-de texlive-latex-extra texlive-lang-german emacs23 build-essential ffmpeg openvpn network-manager-openvpn network-manager-openvpn-kde eclipse gimp subversion wine idle kdenlive auctex lacheck python-opengl p7zip-full liferea vlc dosbox imagemagick python-psycopg2 traceroute aspell aspell-de aspell-en kubuntu-restricted-extras vim xpdf kaffeine akonadi-kde-resource-googledata audacity easytag p7zip-full skype libsvn-java unrar unzip qbittorrent miro dia googleearth choqok libdvdcss2 w64codecs non-free-codecs nmap git-core sun-java6-jdk sun-java6-bin sun-java6-jre sun-java6-plugin
Das Skript ist sicherlich in die Kategorie “schnell und dreckig” einzuordnen, da sich viele Dinge besser lösen lassen und bestimmte Parameter mit dem Skript übergeben werden sollten, anstatt fest einzukodieren. Vielleicht baue ich das in ein späteres Update noch ein