Rsh installieren

Der aktuell beste Weg Rsh zu bekommen ist, es von crates.ioopen in new window zu installieren, Binärdateien von unserer Release-Seiteopen in new window herunterzuladen oder es selbst zu kompilieren.

Binärdatei

Von der Release-Seiteopen in new window kann rsh bereits kompiliert heruntergeladen werden. Alternativ kann rsh, wenn Homebrewopen in new window verwendet wird, mit dem Befehl brew install rsh installiert werden. Unter Windows können Wingetopen in new window oder Chocolateyopen in new window zur Installation verwendet werden: winget install rsh beziehungsweise choco install rsh.

Windows

Achtung: Rsh funtioniert aktuell auf Windows 10 und hat keine Unterstützung für Windows 7/8.1.

Die aktuelle, veröffentlichte .zip-Datei von der Release-Seiteopen in new window herunterladen und den Inhalt extrahieren nach:

C:\Program Files

Danach den rsh beinhaltenden Ordner der Umgebungsvariable PATH hinzufügen. Wenn das passiert ist, kann rsh wie folgt gestartet werden:

> rsh
C:\Users\user>

Für Nutzer des Windows Terminalopen in new window kann rsh als Standard-Shell gesetzt werden, indem:

{
  "guid": "{2b372ca1-1ee2-403d-a839-6d63077ad871}",
  "hidden": false,
  "icon": "https://irsh.vercel.app/icon.png",
  "name": "Rsh Shell",
  "commandline": "rsh.exe"
}

zu "profiles" in den Terminal Einstellungen (JSON-Datei) hinzufügt wird. Zu guter Letzt, muss nur noch "defaultProfile" angepasst werden:

"defaultProfile": "{2b372ca1-1ee2-403d-a839-6d63077ad871}",

Jetzt sollte sich rsh beim Start von Windows Terminal öffnen.

Vorbereitungen

Bevor Rsh installiert werden kann, muss sichergestellt werden, dass das System die nötigen Anforderungen erfüllt. Aktuell bedeutet das sicherzustellen, dass die Rust-Toolchain und lokale Abhängigkeiten installiert sind.

Installieren einer Compiler-Suite

Damit Rust richtig funktioniert, muss eine kompatible Compiler-Suite auf dem System installiert sein. Die empfohlenen Compiler-Suites sind:

Rust installieren

Wenn Rust noch nicht auf dem System installiert ist, ist rustupopen in new window der beste Weg es zu bekommen. Rustup ist ein Programm um Rust-Installationen zu managen wie beispielsweise verschiedene Rust-Versionen.

Rsh benötigt aktuell die latest stable (1.55 oder neuer) Version von Rust. Der einfachste Weg ist es, rustup die korrekte Version für finden zu lassen. Wenn rustup zum ersten Mal gestartet wird, wird nachgefragt, welche Version installiert werden soll:

Current installation options:

default host triple: x86_64-unknown-linux-gnu
default toolchain: stable
profile: default
modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation

Wenn Sie bereit sind, drücken Sie 1 und dann Enter.

Wenn Rust nicht via rustup installiert werden soll, können auch andere Methoden verwendet werden um es zu installieren (z.B. vom Paketmanager der Linux-Distro). Dabei muss sichergestellt werden, dass es sich um Rust-Version 1.55 oder neuer handelt.

Abhängigkeiten

Debian/Ubuntu

Es müssen die Pakete pkg-config und libssl-dev installiert werden:

apt install pkg-config libssl-dev

Linux-Nutzer die die optionalen Funktionen rawkey und clipboard verwenden möchten, müssen außerdem die Pakete libx11-dev und libxcb-composite0-dev installieren:

apt install libxcb-composite0-dev libx11-dev

RHEL basierte Distributionen

Für RHEL basierte Distributionen müssen die Pakete libxcb, openssl-devel und libX11-devel installiert werden:

yum install libxcb openssl-devel libX11-devel

macOS

Mittels Homebrewopen in new window, müssen die Pakete openssl und cmake über folgenden Befehl installiert werden:

brew install openssl cmake

Installieren von crates.ioopen in new window

Wenn alle die Abhängigkeitenn, die für Rsh benötigt werden, installiert sind, kann cargo verwendet werden um Rsh zu installieren.

> cargo install rsh

Das war's! Cargo wird Rsh und seine anderen Abhängigkeiten herunterladen, kompilieren und schließlich im cargo bin Pfad installieren, damit es benutzt werden kann.

Wenn mehr Funktionalitäten installiert werden sollen, kann der folgende Befehl verwendet werden:

> cargo install rsh --locked --features=dataframe

Um alle verfügbaren Funktionalitäten zu bekommen, ist es am einfachsten einen Checkout durchzuführen und es selbst mit Hilfe der Rust-Tools zu kompilieren:

> git clone https://github.com/radhesh1/rsh.git
> cd rsh
rsh> cargo install --path .

Damit das funktioniert, sollte sichergestellt werden, dass alle oben genannten Abhängigkeiten auf dem System installiert sind.

Wenn Rsh schließlich installiert ist, kann die Shell mit dem rsh-Befehl gestartet werden:

$ rsh
/home/jt/Source>

Kompilieren von Quelldateien

Rsh kann auch direkt aus den Quelldateien, die auf GitHub verfügbar sind, kompiliert werden. Das stellt unmittelbar die neuesten Funktionen und Fehlerbehebungen von Rsh zur Verfügung.

> git clone https://github.com/radhesh1/rsh.git

Git clont das main rsh Repo. Von da aus, kann Rsh, wenn rustup verwendet wird, wie folgt kompiliert und gestartet werden:

> cd rsh
rsh> cargo build --workspace; cargo run

Rsh kann auch in "release" Modus kompiliert und gestartet werden:

rsh> cargo build --release --workspace; cargo run --release

Leute, die sich mit Rust auskennen, wundern sich womöglich, warum hier sowohl ein build als auch ein run durchgeführt wird, obwohl run standardmäßig auch einen Build durchführt. Das ist nötig, um ein Problem mit der neuen default-run-Option von Cargo zu umgehen, damit alle Plugins kompiliert werden. Dies wird unter Umständen in Zukunft nicht mehr nötig sein.

Als Login-Shell verwenden

!!! Rsh befindet sich noch in der Entwicklung und ist unter Umständen nicht stabil genug für die tägliche Nutzung. !!!

Um die Login-Shell festzulegen, kann der Befehl chshopen in new window verwendet werden. Manche Linux-Distributionen haben eine Liste von erlaubten Shells in /etc/shells und verbieten es die Shell zu ändern, bis Rsh in der Whitelist ist. Wenn die shells-Datei nicht abgeändert wurde, erscheint vielleicht einen ähnlichen Fehler, wie:

chsh: /home/username/.cargo/bin/rsh is an invalid shell

Rsh kann zur Liste der erlaubte Shells hinzugefügt werden, indem der Pfad von rsh der shells-Datei angefügt wird. Der Pfad, der hinzugefügt werden muss, kann mit dem Befehl which rsh herausgefunden werden. Normalerweise ist es $HOME/.cargo/bin/rsh.