Upgrade Git

Seit kurzem arbeite ich mit Visual Studio Code als IDE. Nachdem dessen Update auf Version 1.6 kam die Meldung, dass Git 1.9.1 installiert sei, aber VSCode mit Git 2.x besser zusammenarbeiten würde. Also warum nicht auch Git aktualisieren?!

$ sudo apt install git

brachte erstmal keinen Erfolg, weil die aktuellste Version bereits installiert sei. Mmh.. Eine kurze Recherche ergab, dass noch ein passendes PPA-Repository hinzugefügt werden muss:

$ sudo add-apt-repository ppa:git-core/ppa

Danach die Paketquellen aktualisieren und die Installation erneut starten. Voila!

$ sudo apt update
$ sudo apt install git
$ git --version
git version 2.10.1

Dropbox unter Linux Mint installieren

Um Dropbox unter Linux Mint 17.3 zu installieren am einfachsten den Installer für Ubuntu (.deb) herunterladen und starten. Dabei werden die Zugangsdaten und das zu synchronisierende Verzeichnis abgefragt.

Um die Synchronisation der Dateien allerdings laufen zu lassen, muss ein Daemon laufen.  Diesen kann man einmalig mittels

$ ~/.dropbox-dist/dropboxd

starten, bringt aber den Nachteil mit, dass keine Änderungen abgeglichen bzw. erkannt werden. pixeldust hat einen interessanten Blogpost dazu verfasst, wie der Dropbox-Daemon automatisch beim Systemstart mit anläuft. Die vier Schritte sind:

  1. Die Datei /etc/init.d/dropbox erstellen
    $ sudo nano /etc/init.d/dropbox

    und befüllen

    # dropbox service
    DROPBOX_USERS="user1 user2"
    
    DAEMON=.dropbox-dist/dropboxd
    
    start() {
        echo "Starting dropbox..."
        for dbuser in $DROPBOX_USERS; do
            HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
            if [ -x $HOMEDIR/$DAEMON ]; then
                HOME="$HOMEDIR" start-stop-daemon -b -o -c $dbuser -S -u $dbuser -x $HOMEDIR/$DAEMON
            fi
        done
    }
    
    stop() {
        echo "Stopping dropbox..."
        for dbuser in $DROPBOX_USERS; do
            HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
            if [ -x $HOMEDIR/$DAEMON ]; then
                start-stop-daemon -o -c $dbuser -K -u $dbuser -x $HOMEDIR/$DAEMON
            fi
        done
    }
    
    status() {
        for dbuser in $DROPBOX_USERS; do
            dbpid=`pgrep -u $dbuser dropbox`
            if [ -z $dbpid ] ; then
                echo "dropboxd for USER $dbuser: not running."
            else
                echo "dropboxd for USER $dbuser: running (pid $dbpid)"
            fi
        done
    }
    
    case "$1" in
      start)
        start
        ;;
    
      stop)
        stop
        ;;
    
      restart|reload|force-reload)
        stop
        start
        ;;
    
      status)
        status
        ;;
    
      *)
        echo "Usage: /etc/init.d/dropbox {start|stop|reload|force-reload|restart|status}"
        exit 1
    
    esac
    
    exit 0

    Die Zuweisung an Variable DROPBOX_USERS muss angepasst werden!

  2. Die Datei ausführbar machen
    $ sudo chmod +x /etc/init.d/dropbox
  3. Die rc-Skripte erstellen
    $ sudo update-rc.d dropbox defaults
  4. Den Daemon für die aktuelle Sitzung starten
    $ sudo /etc/init.d/dropbox start

Überprüft werden kann der Status entweder per

$ sudo /etc/init.d/dropbox status

oder

$ ps aux | grep dropbox

.

Midnight Commander Color Scheme

Ein dunkles Farbschema empfinde ich als wesentlich angenehmer. Daher hier ein kurzes HowTo, wie ich das Standard-Theme des MC  ersetzt habe.

  1. close mc
  2. Download von darkened.ini nach ~/.local/share/mc/skins/
  3. Anpassen von ~/.config/mc/ini: skin=darkened
  4. start mc and enjoy

Hier noch einige interessante Links, die mir weitergeholfen hatten:

  • https://sinustrom.info/2014/03/23/midnight-commander-dark-color-scheme/
  • http://www.zagura.com/index.php/2008/01/09/midnight-commander-color-themes/
  • https://www.midnight-commander.org/wiki/doc/common/skins

Virtualbox auf Linux Mint installieren

Virtualbox ist eine Möglichkeit zum virtualisierten Betrieb verschiedener Betriebssysteme. Hier nun eine kurze Abhandlung zur Installation unter Linux Mint 17.3.

$ sudo apt install virtualbox

Virtualbox ist nun allerdings noch nicht startklar, da die Paket-Installation einen Fehler meldet: „No suitable module for running kernel found“.
In Bezug auf forums.linuxmint.com müssen noch weitere Pakete nachgelegt werden:

You should however handle the original error, by installing the package virtualbox-dkms. This should create the VirtualBox kernel modules, which were missing.
You may also want to install virtualbox-qt so you can use the VirtualBox Manager GUI.

$ sudo apt install virtualbox-qt virtualbox-dkms virtualbox-guest-dkms

Ähnlich wird es auch auf linuxmintusers.de beschrieben.

Danach kann Virtualbox über das Menü gestartet werden.

Git-Merge schlägt fehl

$ git checkout develop
$ git pull

Branch develop wird geladen und von remote aktualisiert. Soweit so gut.. Während unseres weiteren codens ergänzt jemand origin/develop. Nun  können unsere Änderungen nicht ohne weiteres nach remote geschoben werden:

$ git push => Fehler beim Versenden einiger Referenzen

screenshot_20160317

Dies lässt sich durch folgende Befehle beheben:

$ git fetch
$ git rebase

Nun kann mittels git push auch origin/develop aktualisiert werden.

Falsches Keyboard-Layout bei Login (Linux Mint)

Problem war, dass der Anmeldebildschirm nur mit englischer Tastatur zu benutzen war, obwohl deutsches Layout beim User gewählt war. Somit konnten Umlaute oder Sonderzeichen (wie Unterstrich) nicht wie gewohnt eingegeben werden, was bei (verborgenen) Passwörtern erst einmal unbemerkt bleibt. Ursache war wahrscheinlich ein (nicht mehr nachvollziehbares) Update.

Die Datei /etc/mdm/Init/Default bearbeiten und folgende Zeile vor „exit 0“ einfügen: „/usr/bin/setxkbmap de“.

Nach einem Neustart können somit auch Passwörter beim Anmelden mit deutschem Tastaturlayout eingegeben werden.

Weitere Informationen auf github.com.

Reset deleted file from git-index

Die Datei test.txt ist neu erstellt und wird dem git-index (staging area) hinzugefügt:

$ git add test.txt

Warum auch immer wird diese Datei gelöscht:

$ rm test.txt

Ein manuelles Entfernen der Datei test.txt aus der Staging-Area mittels dem bei „git status“ vorgeschlagenem „git reset“ schlägt fehl: „unknown revision or path not in the working tree.“ Es hilft „git remove“:

$ git rm --cached test.txt

Das Web und ich