ncmpcpp: Ein Wrapper mit Curses Interface für MPD

flattr this!

ncmpcpp ist ein Wrapper für MPD, der aus dem Projekt ncmpc hervorgegangen ist. Es kommt daher mit einer angenehmen Curses Umgebung und lässt sich auch per Kommandos steuern, ohne ihn direkt aufzurufen.

Da es, wie bereits erwähnt, ein Wrapper ist, hat es natürlich ein paar Vorteile. So kann man, ohne ncmpcpp selbst zu starten, über das Skript direkt Lautstärken regeln, entfernte MPDs ansteuern und Tastenbelegungen erstellen(Dies wird in der Datei ~/.ncmpcpp/keys.config erledigt). Ich halte es für eine Qual, dort alles einzustellen, besonders weil diese nur laufen, wenn ich in der entsprechenden Shell arbeite, wo ncmpcpp läuft.

Ein paar Beispiele

Natürlich dürfen hier keine Beispiele fehlen. Ich beginne mit dem Grundsätzlichsten, der Lautstärke. So kann man sie erhöhen:

$ ncmpcpp volume +5

erhöht die Lautstärke um genau 5%. Indem wir das Pluszeichen zu einem Minus migrieren, wird die Lautstärke vermindert.

$ ncmpcpp volume -5

Um dem MPD über ncmpcpp zu starten/Stoppen/Pausieren, wird ein ganz Simples, Intuitives Kommando genutzt:

$ ncmpcpp start

$ ncmpcpp pause

$ ncmpcpp stop

Falls man nun ncmpcpp über(beispielsweise) einem Skript ansteuern will, und das selbe Kommando nutzen will, um zu Starten oder zu Pausieren, wird einem die Option “toggle” gegeben.

$ ncmpcpp toggle

Die Konfiguration

Die Konfiguration von ncmpcpp beginnt zuallererst damit, indem man sich die Konfiguration von ncmpcpp in ~/.ncmcpp/config kopiert. Falls man es, beispiesweise unter Debian, über APT installiert hat, kann man es sich aus /usr/share/doc/ncmpcpp/examples/config.gz entpacken. In der Kommandozeile wäre folgendes eines der funktionierenden Szenarieren:

Natürlich ließe sich dies auch über einfaches Copy&Paste und, wenn man möchte, entpacken im File-Manager machen.
Aber was wäre daran “the Debia way”? ;-)

Da wir uns nun bereitgemacht haben, können wir mit der Konfiguration beginnen. Standardmäßig sollte man die Adresse und Ports des MPDs anpassen, der erreicht werden soll, oder, wenn man möchte, den Lokalen Standardport beibehalten. Jenachdem, wie der MPD konfiguriert wurde.

Da ich meinen auf eine Adresse im Netzwerk konfigurierte, muss ich den natürlich eintragen. Der entsprechende Teil der konfiguration kann so aussehen:

Nun sollte der ncmpcpp laufen. Die entsprechende Konfiguration von MPD gehe ich hier an, sobald ich wieder Zeit zum schreiben finde. :-)

Cya.

Schnell Erwähnt VIIII: Linktipp für den “nicht-sysadmin”

flattr this!

Da ich gerade mal wieder kurzzeitig Lust hatte, im Forum von OSBN vorbeizuschauen. Ein Bloginhaber meldete sich dort und, nach eingehender Betrachtung der Seite, ist mir aufgefallen, dass der Schreiber dort doch sehr auf lange Beiträge besteht, was durchaus nichts negatives ist. Er führt viele Sachen aus, hat meiner Meinung nach einen guten Schreibstil und scheint auch Kompetenz zu besitzen.

Nach langer Geheimhalterei, hier der Link zur Seite: 3Towers Blog :-P

i3: Ein Tiling WM – Screenshots und Eindruck

flattr this!

Huhu,
nachdem ich erst letztens über Notion schreiben wollte, kam von einem der Autoren von crunchWeb* per Jabber der Hinweis auf i3-wm hier an.

i3 ist ein sogenannter Tiling Window Manager(WM) für Unix-artige Systeme(Worunter bekannterweise Debian auch fällt).
Nach meinem persönlichen Geschmack ist der i3 nicht groß anders als Notion. Der einzige (Positive) unterschied scheint mir hier i3status, welches die Statusleiste im i3 darstellt. Über diese ist es möglich, sich verschiedenstes Zeug anzeigen zu lassen:

  • DHCP Läuft: Ja/Nein
  • IPv4 Verbindung: Ja/Nein
  • IPv6 Verbindung: Ja/Nein
  • Bei beiden IP-Versionen ist es zudem möglich, IP-Adresse und (Prinzipielle-)Geschwindigkeit des Anschlusses anzuzeigen
  • Überwachung von spezifischen(selbst definierten) Netzwerkverbindungen(Beispielsweise VPN, Tethering, SSH…)
  • …weiteres auf der Manpage
  • Der konfiguration von i3 selbst werde ich mich erst später widmen(können), werde dies entsprechend in einem separaten Artikel tun. ;-)

    Ein Screenshot meines aktuellen Bildschirms(Hintergrund durch feh):
    i3-screenshot-wp-01

    Bildschirm mit mehreren urxvtc-Shells:
    i3-screenshot-wp-02

    … weitere der zahlreichen Features sind: Virtuelle Arbeitsflächen, Arbeitsflächen umbenennen, eigene dmenu Umsetzung(Läuft schneller als dmenu selbst), optional dmenu selbst, Konfigurieren von Shortcuts, anpassen von Aussehen(Farben der i3status-leiste, Breite der Fenstertrenner(im Screenshot sind die entfernt), Farben von Windowtabs usw.).

    Mein persönlicher Eindruck ist sehr Positiv. Es wird kaum unnötiger Schnickschnack geladen, die Performance ist selbst auf sehr alten Rechnern nahezu unschlagbar(Ein Acer Notebook, TravelMate 292LCi mit auf 1 GB aufgestocktem RAM), denn es läuft dauerhaft flüssig. Natürlich muss ich hier auf Komfort verzichten, aber der hat mir ehrlich gesagt auch nicht gefehlt. :-)

    Der Artikel mit der konfiguration folgt in bälde! ;-)

    Grüße

Firefox: Abspielen von GIF’s verhindern, oder nur einmalig abspielen

flattr this!

Das hat der “Kollege” Heiko Adams hier erklärt.

Da die Konfiguration von Firefox über about:config immer eher Qual als Wahl ist, sollte man sich die Referenz zu den Optionen anschauen.

Grüß’le

Schnell erwähnt VIII: Mit “pstree” die Startprozedur eines Dämonen herausfinden

flattr this!

pstree ist ein Kommando, welches zu den “coreutils” gehört. Dieses Paket bzw. Kommando-sammlung ist in praktisch jeder Distribution enthalten(Debian/Fedora basierte auf jeden Fall).
Es zeigt Praktischer-weise an, wie ein Prozess der als Daemon gekennzeichnet ist gestartet wurde bzw. was den Dämonen aufgerufen hat.

Damit kann man schnell Konfigurationslücken schließen, beispielsweise wenn man mehrere Prozesse eines Daemonen hat, der normal genau 1x gestartet werden sollte. Man guckt sich den Weg an, sucht sich die entsprechende Config zum Korrigieren raus, und naja: Korrigiert es :-D.

Beispielaufruf:

Noch so ein “Klassiker” , mit dem man herausfinden kann, wie ein Befehl (samt Optionen) gestart wurde ist der Blick in das /proc Verzeichnis.

Dazu braucht man nur die Prozess-ID pid. Sagen wir (Beispiel) die pid ist 343 und das ist der dbus-daemon: Hier der Befehl samt Rückgabe:

Die Leerzeichen “unterschlägt” der Blick hinein, aber die Optionen kann man auch so erkennen.(Ab “Klassiker” von Netz10)

Schnell erwähnt VII: Selbstkonfiguriertes Debian Live-Image bauen

flattr this!

Auf Willhaley.com wird sehr gut beschrieben, wie ein eigenes Debian Livesystem-Image gebaut werden kann. Ich verzichte außerdem ausdrücklich auf die Erwähnung von Simple-CDD, da dies seit längeren große Probleme mit der Konfiguration mit sich bringt.
Wer einen kürzeren Weg zur Hand hat, den bitte ich darum, mir diese per Kommentar zukommen zu lassen. Danke :-)

Per TTY1 direkt ins Desktop Environment einloggen

flattr this!

Aufgrund meiner Anfänglichen Problemchen mit X11 und den verschiedenen Dateien, habe ich es letztlich ja nicht geschafft, mich über TTY1 direkt anzumelden. Dank SammyHP aus den Kommentaren des letzten Artikels und eigenen kleinen Änderungen am Skript und beschaffen an Informationen, habe ich das nun jedoch geschafft. Den Weg möchte ich hier Schritt für Schritt aufzeichnen, um ihn nicht zu vergessen..^^

Ich beginne damit, den Desktop Manager für X11(also der Automatisch aufgerufene..) zu deaktivieren.
Dafür wird die Datei /etc/X11/default-desktop-manager einfach geleert, oder Auskommentiert(‘#’ Kennzeichnet die Kommentare). Dort steht der Pfad des DE’s. Beispielsweise…

zu..

Weiter gehts mit…

…der .xinitrc

die ~/.xinitrc wird immer beim Starten des X11 ausgeführt. Sie beinhaltet normalerweise Sachen wie das starten eines Desktop Environments und die dafür benötigten Programme/Variablen/Skripts. Ich definiere hier normalerweise Variablen(Pfade von wichtigen Verzeichnissen), um diese nicht ständig ausschreiben zu müssen:

Ich habe das ganze mal ein bisschen Auskommentiert, sodass die einzelnen Punkte verständlich sein dürften.

Am ende, so wird es jeder bemerkt haben, wird einfach das DE ausgeführt welches man gerade benutzten möchte. Wichtig dabei ist dass exec.

Die .bashrc

Diese Datei, die ~/.bashrc, führt beim Login des Users bestimmte Events aus. z.B werden RGB Farben geladen, bestimmte Debug-Meldungen generiert, usw. Die sollte in ungefähr so aussehen:

Um jetzt beim Login des Users direkt den X-Server zu starten, kann einfach ein startx am Ende der Datei angefügt werden.

Oder man macht es ein bisschen Raffinierter: Man startet den X11 nur, wenn auf einer bestimmten TTY eingeloggt wurde. So kann man z.B nur beim Login in die TTY1 der X11 aufgerufen werden, aber nicht beim Login in die zweite TTY.(Danke Sammy)

$DISPLAY stellt hier den Monitor dar, und $XDG_VTNR stellt die Nummer der TTY(1-6) bereit. -eq bedeutet schlichtweg, dass die beiden Variablen der 1 entsprechen müssen. Ansonsten wird der folgende Befehl nicht ausgeführt.(Die [[/]] sind die Bourningshell Abkürzung für if-Abfragen)

Wenn man sich nun per sudo shutdown now abmeldet/alles herunterfährt(der Rechner bleibt an!) und STRG+D wieder startet, wird anstatt des Desktop Managers nun die TTY1 angezeigt, welche auf den Login warten. Sobald sich nun jemand einloggt, wird der X11 gestartet, welcher das DE ausführt.

Probleme mit Dämonen

Ich führe, wie oben ersichtlich ist, den URxvt Daemon(urxvtd) aus. Dieser schließt sich folgerichtig nicht, sobald der X11 geschlossen/gestoppt wurde. X11 bietet hier aber auch nichts an Skripts an, welche ausgeführt werden sobald er sich schließt. Dies kann man durch ein einfaches Shellskript und dem Befehl/Skript killall beheben(sollte auf jedem Debian/RHEL Rechner vorhanden sein):

Es passiert eigentlich nicht viel. Es wird nur der X11 gestartet(startx) und dann(sobald er beendet wurde) wird der Prozess urxvtd gestoppt, sodass nicht mehrere von ihm vorhanden sein können.(Außer man trägt ihn doppelt und Dreifach überall ein)..

Die Datei nenne ich einfach “xstart”, lege sie als root in dem Verzeichnis /bin ab und gebe ausführ-Rechte mit..

. Nun muss nur noch das Ende der Datei ~/.bashrc geändert werden. Es wird einfach “startx” durch “xstart” ersetzt:

Womit wir eigentlich schon damit fertig wären.
Komisch wie einfach etwas sein kann, wenn man es sich nicht selbst zu kompliziert macht…

Freundliche Greetings :-)

Der Wecker Linux – Crontab-frickeleien

flattr this!

Um sich mit Linux basierten Systemen einen Wecker zu bauen, benötigt man i.d.R nur den MPD, die
Crontab, ein Lied(egal in welchem Format) und (Optional da einfacher, und bei mir schon vorhanden) den ncmpcpp.

Installation aller nötigen Komponenten:

Falls man Alsa(so wie ich..) nutzt, braucht man nebenbei noch den OSS-Wrapper für Alsa:

Ich, für meinen Teil, möchte jeden Tag um 6:30 geweckt werden – auch am Wochenende. Um am Wochenende nicht geweckt zu werden, siehe hier.
Also öffnen wir nun die Crontab des Standardbenutzers, um den Eintrag vorzunehmen:

…und schreiben dort folgendes rein(ich gehe vom Standardpfad /usr/bin aus):

toggle spielt entweder das Lied ab, oder stoppt es. So wird zum Beispiel, falls schon ein Lied abgespielt wird, dieses gestoppt. Falls eines gestoppt ist, wird es abgespielt(Logisch..)

Kleinere Anpassungen – nicht an Wochenenden Abspielen

Manch andere mag es nicht, am Wochenende von einem Wecker gestört zu werden. Natürlich gibt es auch dafür eine
Lösung.

Es wird einfach im Feld für die Tage(d) die Zeichenkette ’1-5′ eingetragen, denn die Crontab versteht dies folgendermaßen: Führe XYZ an den ersten 5 Tagen der Woche(Montag, Dienstag, Mittwoch, Donnerstag, Freitag) aus, aber nicht am Samstag(6) und Sonntag(7).

Spammails I: Rechtschreibschwache Kriminelle „Warez” schreiber

flattr this!

Hier die aktuelle Kollektion der Phishing und Spam Mails, heute die Sparkasse.

Nummer 1: 3(!) Mails mit dem Betreff „Ihre Online Banking” von dem Absender „www.sparkasse.de“. Eine um 6:30, eine um 7:00 und eine um 7:30.
Der Absender, jedenfalls der Eingetragene, ist intelligenterweise keine MAIL sondern eine Website, und die Tatsache dass diese von Intelligenzstrotzenden Kriminellen es schaffen, auch noch sowas Falsch zu schreiben. Wow.

Weiter gehts mit dem Ansehen des Quelltextes(Mach ich standardmäßig bei solch einer Intelligenten Methode):

Nochmal: WOW! Es wurde ganz offensichtlich einfach nur der Name der Domain ohne die Zahl verwendet, um die Mail zuzustellen, was schonmal bedeutet das die meine Mail-Adresse nicht im Internet kusiert… Gutes Zeichen.

Weiter gehts mit dem Aufgezeichneten Sender(Domain+Username): monika@stthuset.com. Sieht total nach Sparkasse aus, stimmt.
Besser kommt es allerdings mit dem Empfänger einer Antwort: . Immernoch Sparkasse, verständlich.

Der wirkliche Hammer an der Sache: Der/Die/Es hat es nicht geschafft, die Mail ohne Microsoft Outlook Express 6 zu schreiben, und hat bei der Leistungsvermeidungstaktik, die ich hier schon feststelle, doch ernsthaft vergessen dass die meisten Geschäftlichen Briefe ganz sicher nicht mit Großen Absätzen voller Kursiver Schrift aufzufinden sind.

Allesamt, die auf SOWAS hereinfallen, dürfen gerne bei Lost auf die Insel gehen und dort den Rest ihres Lebens verweilen, denn die haben es nicht verdient auch nur den Ansatz von Strom zu nutzen. Man schäme sich…