Skip to content

Instantly share code, notes, and snippets.

@jensschulze
Last active April 6, 2023 17:11
Show Gist options
  • Save jensschulze/86526c6bbe0dd82c2e025142d28fdf85 to your computer and use it in GitHub Desktop.
Save jensschulze/86526c6bbe0dd82c2e025142d28fdf85 to your computer and use it in GitHub Desktop.
Installation von gocryptfs und Sirikali auf macOS (DE)

Installation von gocryptfs und Sirikali auf macOS

Es gibt für den Mac keine ausführbaren Dateien zum Download, daher müssen gocryptfs und Sirikali selbst kompiliert werden.

Die folgenden Befehle müssen alle in einem Terminalfenster eingegeben werden.

Möglicherweise gibt es irgendwann eine Nachfrage, dass die Apple Developer Tools installiert werden müssten. Diese Abfrage muss bejaht werden.

Falls eine Passwortabfrage kommt, ist damit das eigene "Mac-Passwort" gemeint (das ist – auch im Terminal – das User:innen-Passwort). Nicht wundern: Bei der Eingabe eines Passworts im Terminal werden üblicherweise noch nicht einmal Platzhalterzeichen angezeigt. Trotzdem nimmt das Terminal die eingegebenen Tastendrücke entgegen.

Vorbereitungen

Homebrew installieren

Hierbei handelt es sich um einen Paketmanager für macOS, mit dem man sehr viele Programme sehr praktisch über die Kommandozeile installieren und immer updaten kann. Wir benötigen Homebrew zur Installation des Versionsverwaltungstools Git und der Programmiersprache Go.

Zum Installieren muss folgendes in einem Terminalfenster eingegeben werden:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Bitte die Ausgabe genau lesen: nach der Installation muss noch mindestens ein manueller Schritt durchgeführt werden!

Für die folgenden Schritte wird ein neues Terminalfenster benötigt. Das alte kann geschlossen werden.

Quelle: Homepage von Homebrew

Go installieren

Falls der Paketmanager Homebrew bereits installiert ist, lässt sich Go bequem damit installieren (und immer wieder updaten).

Im Terminalfenster eingeben:

brew install go

Git installieren

Dieser Schritt wird nur benötigt, falls das git-Kommando sich nicht auf dem Computer befindet. Dies lässt sich ganz einfach herausfinden:

git --version

Wenn hier eine sinnvolle Antwort kommt, muss git nicht mehr installiert werden.

Falls doch, im Terminalfenster eingeben:

brew install git

gocryptfs

Den Quellcode von gocryptfs herunterladen

Zunächst erstellen wir im eigenen Userverzeichnis ein Verzeichnis für Go-Code und betreten es:

mkdir -p "${HOME}/go"
cd go

Dann wird das gocryptfs-Projekt von Github geklont und das entstandene Verzeichnis betreten:

git clone https://github.com/rfjakob/gocryptfs.git
cd gocryptfs

gocryptfs kompilieren

Nun kann endlich aus dem Quellcode eine ausführbare Programmdatei kompiliert werden:

./build-without-openssl.bash

Die entstandene Datei muss jetzt noch in ein Verzeichnis für ausführbare Dateien verschoben werden:

sudo mv ./gocryptfs /usr/local/bin/gocryptfs

Sirikali

Den Quellcode von Sirikali herunterladen

Zunächst wird ein Code-Verzeichnis erstellt und betreten:

mkdir -p "${HOME}/cpp"
cd "${HOME}/cpp"

Dann wird das Sirikali-Projekt von Github geklont und das entstandene Verzeichnis betreten:

git clone https://github.com/mhogomchungu/sirikali.git
cd sirikali

Abhängigkeiten von Sirikali installieren

Um Sirikali kompilieren zu können, werden diverse Programmbibliotheken und Tools benötigt:

brew install libgcrypt qt5 pkg-config cmake

Jetzt ist ein neues Terminalfenster erforderlich! Das alte kann geschlossen werden.

Da die Version von qt sich ändern kann, müssen wir die installierte Version herausfinden:

ls "${HOMEBREW_PREFIX}/Cellar/qt@5"

Bei mir kam z.B. 5.15.7 heraus, das muss in den folgenden Kommandos ggf. durch aktuellere Versionsnummern ersetzt werden:

echo 'export PATH="${HOMEBREW_PREFIX}/Cellar/qt@5/5.15.7/bin:$PATH"' >> "${HOME}/.zshrc"

Und schon wieder wird ein neues Terminalfenster gebraucht!

Sirikali kompilieren

Und auch hier kann nun endlich der Quellcode zu einer ausführbaren Programmdatei kompiliert werden. Achtung, hier muss nochmal die gerade herausgefundene Qt-Version eingetragen werden!

export CMAKE_PREFIX_PATH=${HOMEBREW_PREFIX}/Cellar/qt@5/5.15.7
cd "${HOME}/cpp/sirikali"
mkdir -p build
cd build
cmake -DCMAKE_INSTALL_PREFIX="../dist" -DQT5=true -DCMAKE_BUILD_TYPE=RELEASE . ..
make install -j$(sysctl -n hw.ncpu)
mv "../dist/sirikali.app" /Applications/sirikali.app
rm -r "../dist"

Fast fertig

Das Terminalprogramm kann nun geschlossen werden.

Sirikali befindet sich nun unter Programme und kann dort wie gewohnt gestartet werden – aber one last thing

macFUSE installieren

Damit Sirikali laufen kann, wird noch die Systemerweiterung macFUSE benötigt. Deren Installation ist leider etwas unangenehm, weil erstens ein Neustart des Computers erforderlich ist und zweitens die Sicherheitsmechanismen von macOS verlangen, dass man die Erweiterung in den Systemeinstellungen aktiv erlaubt (Button "Systemerweiterungen aktivieren").

Falls also im weiteren Verlauf – ggf. erst bei der Verwendung von Sirikali – entsprechende Dialoge (Plural!) aufpoppen, bitte nicht einfach wegklicken!

Es ist möglich, dass die Sicherheitseinstellungen in der Wiederherstellungsumgebung geändert werden müssen. Der entsprechende Text wirkt ziemlich einschüchternd. Von der Firma RME gibt es unter der Überschrift "Öffnen Sie das Startsicherheitsdienstprogramm" eine kurze, einfache Anleitung, wie man hier vorgeht.

brew install --cask macfuse

Fertig!

Nach dem erwähnten Neustart kann Sirikali dann endlich gestartet werden 🎉

Links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment