Benutzer im Dockerfile hinzufügen

In Alpine Linux basierten Dockerfiles kann man einen neuen Nutzer mit Standardbenutzerprivilegien wie folgt hinzufügen:

addgroup myuser && adduser -D -G myuser myuser
chown -R myuser: /home/myuser

In Ubuntu/Debian geht das wie folgt:

useradd -ms /bin/bash myuser

Schließlich kann man den Nutzer im Dockerfile mit USER aktivieren und sein Home-Verzeichnis als WORKDIR einstellen:

USER myuser
WORKDIR /home/myuser

NTFS schreiben in Mac OS X via ntfs-3g (mit Homebrew installiert)

Um auf NTFS Dateisysteme in Mac OS X schreiben zu können, kann man ntfs-3g installieren. Zunächst installiert man die Abhängigkeit [FUSE for macOS] 1 und anschließend direkt [ntfs-3g] 2.

brew cask install osxfuse
brew install ntfs-3g

Hierbei schlägt bei mir der brew link Schritt fehl, sodass ich den mkntfs-Befehl nicht im Pfad habe. Aber das ist okay für mich, weil mein USB-Stick schon mit NTFS formatiert ist.

Als nächstes darf man in Windows-Manier erstmal neustarten.

Nach dem Neustart kann endlich ein USB-Stick, der mit NTFS formatiert ist, gemountet werden:

sudo mkdir /Volumes/NTFS
sudo umount /dev/disk2s1
sudo /usr/local/Cellar/ntfs-3g/2017.3.23/bin/ntfs-3g /dev/disk2s1 /Volumes/NTFS -olocal -oallow_other

Der erste Befehl erstellt das Zielverzeichnis, wo der USB-Stick eingehangen werden soll. Danach wird der automatisch eingehangene, nur lesbare USB-Stick ausgehangen und schließlich mit dem dritten Befehl beschreibbar unter das Zielverzeichnis eingehangen. Doch dann kommen diverse Popups bzgl. der Sicherheitseinstellungen, die auf Risiken hinweisen.

Durch die klickt man sich und erlaubt ntfs-3g.

Schließlich wiederholt man den letzten Befehl und hat nun unter dem Pfad /Volumes/NTFS den USB-Stick zum Beschreiben eingehangen.

sudo /usr/local/Cellar/ntfs-3g/2017.3.23/bin/ntfs-3g /dev/disk2s1 /Volumes/NTFS -olocal -oallow_other

Wenn man den USB-Stick automatisch eingehangen haben möchte, sobald man einen USB-Stick einsteckt, muss man in den Recovery-Modus booten und [der Anleitung] 3 folgen.

Macosx Mojave Brew Upgrade Fehler: missing xcrun

Bei meinem letzten brew upgrade trat folgender Fehler auf:

$ brew upgrade
==> Upgrading 5 outdated packages, with result:
vim 8.1.0400 -> 8.1.0450, go 1.11 -> 1.11.1, sqlite 3.25.1 -> 3.25.2, git 2.19.0_1 -> 2.19.0_2
==> Upgrading sqlite
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
Error: Failure while executing; `git config --local --replace-all homebrew.private true` exited with 1.

Die ergooglete Lösung für mich war folgende Xcode Installation:

$ xcode-select --install
xcode-select: note: install requested for command line developer tools

Anschließend lief das brew upgrade ohne weitere Komplikationen durch.

Hugo Syntax Highlighting Migration von Prism zu Chroma

Seit meinem Umstieg zu Hugo wurde nun mit der Hugo Verison 0.28 mit Chroma ein nach Go portiertes Pygments Syntax Highlighting für Hugo-Artikel eingeführt. Die Chance habe ich genutzt, um mein hier verwendetes Hugo Theme Troll von Prism Syntax Highlighting zu Chroma zu migrieren. Dazu mussten nur alle CSS- und JavaScript-Verweise zur Prism entfernt werden und anschließend die Hugo Config angepasst werden. Ich habe die folgenden drei Zeilen hinzugefügt:

pygmentsCodeFences = true
pygmentsStyle = "native"
pygmentsCodefencesGuessSyntax = true

Den Pygments Style native habe ich mir aus der großen Menge an Styles herausgepickt.

Standard Zoom Level in Firefox anpassen

In about:config den Wert von layout.css.devPixelsPerPx anpassen, wobei -1.0 der Standardwert ist und beispielsweise 1.5 einem Zoomlevel von 150% entspricht.