Home avatar

Engineer, Coder and Open-Source enthusiast

XRandr - Automatisch zwischen Display und Monitor umschalten

Ich benutze bevorzugt leichtgewichtige Window-Manager wie i3 oder awesome. Leider bedeutet dies unter Umständen auch, dass man etwas mehr Zeit bzw. Fleiß in die ein oder andere Komfortfunktion investieren muss, um diese nutzen zu können.

xrandr Multi-Monitor Desktop http://en.wikipedia.org/wiki/Xinerama
xrandr Multi-Monitor Desktop http://en.wikipedia.org/wiki/Xinerama

Bspw. bei der Nutzung eines Notebooks möchte man nach Möglichkeit zwischen mehreren Anzeigegeräten automatisch umschalten. Andernfalls müsste man das Gerät immer herunterfahren und nach einem Neustart entsprechend mit xrandr konfigurieren – von Hand natürlich! Nachdem mir das Ganze heute mehr als auf die Nerven ging, habe ich mir auf die „Schnelle“ ein kleines Skript geschrieben und führe dieses nun mittels Udev-Regel aus um automatisch umschalten zu können.

git und gource

Wie bereits für meine Bachelorarbeit

habe ich die Commits meiner Masterarbeit auch durch gource als Video darstellen lassen. Nicht das man das machen müsste, aber man ist ja irgendwie erleichtert und froh das man das Kapitel ruhen lassen kann.

Noch ein Vortrag und es ist komplett. Wer das selbst mal machen will, der findet das Skript (Einzeiler) hier:

GitList Installation und Konfiguration

Wie bereits im Artikel über gitolite angekündigt, folgt nun der versprochene Post bzgl. Installation und Konfiguration von gitlist. Gitlist stellt dabei ein Web-Interface für die Repositories eurer Projekte dar und orientiert sich optisch stark an gitHub. Es ist möglich mehrere Projekte/Repositories, separate Branches und einzelne Commits anzuzeigen.

gitlist webinterface

Zunächst müssen wir uns gitlist von der offiziellen Projektseite herunterladen. Das geht relativ fix mittels wget und sollte keine großen Probleme machen.

Gitolite und GitList unter Debian

Ob für die eigenen Konfigurationsdateien, Softwareprojekte oder für Webseiten bzw. Blogs bieten sich Versionsverwaltungen an. Eine, von Linus Torvalds entwickelte, Möglichkeit zu Versionsverwaltung – Git – hat sich mittlerweile fest etabliert.Möchte man nicht auf Plattformen wie GitHub oder BitBucket setzen und hat einen vServer oder Ähnliches zur Verfügung, bietet es sich geradezu an seine Projekte etc. selbst zu Hosten.

gitlist webinterface
gitlist webinterface

Dabei wird die Einrichtung in zwei Schritte gegliedert:

VIM Einzeiler

Ich dachte mir, dass ich eventuell mal einige hilfreiche VIM Einzeiler sammle, könnte ja nicht nur mir hilfreich sein. Mit der Zeit werde ich diese noch erweitern, wer ein paar gute Sachen parat hat, kann mir auch gern welche zukommen lassen.

gVIM Instanz
gVIM Instanz

bash

KiCAD EDA Software Suite

KiCAD ist ein relativ gutes und vor allem freies Tool zur Erstellung von Schaltplänen und Layouts. Daher wird es auch zur Gruppe der sog. EDA-Tools und soll den Entwickler technologisch bei der Entwicklung von elektronischen Systemen unterstützen (ähnlich wie CAD-Programme). Da die Weiterentwicklung von KiCAD, nicht zuletzt durch den großen Merge des CERNs, stetig voranschreitet wird es nicht nur immer benutzbarer, sondern steigt auch die Verbreitung. Darüber hinaus fließen durchaus interessante Features wie der Push and Shove-Router in den Hauptzweig ein.

Mehr lesen

Octave Stapel- oder Batchverarbeitung von Dateien

Programme wie MATLAB oder Octave sind schon recht hilfreiche Programme, wenn es darum geht Daten mathematisch auszuwerten oder zu visualisieren. Dabei ist es oftmals extrem nervig, wenn mehrere Dateien des gleichen Typs verarbeitet werden – also mittels Stapel- oder Batchverarbeitung – sollen um bspw. Trainingsdaten für einen Klassifikator zu verarbeiten etc.. Für MATLAB ist mir dazu mal eine 32-Bit-DLL untergekommen, aber leider funktioniert diese nicht unter Octave.

Daher habe ich mir ein oct-File geschrieben, welches genau diese Aufgabe übernimmt. Oct-Files sind dabei das Pendant zu den mex-Files von Matlab und stellen eine C++-API bereit um den Funktionsumfang von Octave zu erhöhen.