Kostenlos und werbefrei, dank dir. Unterstützen
Freie Software 5 Min. Lesezeit Aktualisiert im Oktober 2026

RustMusic aus dem Quellcode kompilieren

RustMusic ist freie Software: Der Code ist öffentlich, und Sie können ihn selbst kompilieren, um zu prüfen, was Sie installieren, eine Korrektur zu testen oder einen Beitrag vorzubereiten. Hier die Schritte unter Windows, macOS und Linux.

01

Die nötigen Werkzeuge

RustMusic verbindet einen Kern in Rust (Audio-Engine, Decoder, DLNA-Server, SQLite-Datenbank) mit einer Oberfläche in SvelteKit, zusammengeführt durch Tauri 2. Auf allen drei Systemen brauchen Sie:

  • Rust in der stabilen Version, installiert mit rustup (rustup.rs).
  • Node.js 20 oder neuer, mit npm.
  • CMake, das libopus für die Wiedergabe von Opus-Dateien kompiliert.
  • Git, um den Code zu holen.
02

Die Abhängigkeiten der einzelnen Systeme

Windows: Installieren Sie die Microsoft C++ Build Tools mit der Workload „Desktopentwicklung mit C++“, danach CMake. Außerdem wird WebView2 benötigt; auf aktuellen Systemen mit Windows 10 und 11 ist es bereits vorhanden.

macOS: Installieren Sie die Xcode-Befehlszeilentools und danach CMake, zum Beispiel mit Homebrew:

xcode-select --install
brew install cmake

Linux (Debian, Ubuntu): Installieren Sie die Build-Werkzeuge und die Entwicklungsbibliotheken von WebKitGTK, GTK, ALSA und PulseAudio:

sudo apt install -y \
  build-essential curl wget file git pkg-config cmake libssl-dev \
  libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev libxdo-dev \
  libwebkit2gtk-4.1-dev libsoup-3.0-dev libjavascriptcoregtk-4.1-dev patchelf \
  libasound2-dev libpulse-dev libdbus-1-dev

Installieren Sie auf einer anderen Distribution die entsprechenden Pakete, oft mit der Endung -devel: WebKitGTK 4.1, GTK 3, libsoup 3, ALSA, PulseAudio, D-Bus und OpenSSL.

03

Den Code holen und kompilieren

git clone https://github.com/larevuegeek/rustmusic-desktop.git
cd rustmusic-desktop
npm install

Die offizielle Konfiguration signiert außerdem die Update-Dateien mit dem privaten Schlüssel des Projekts, den Sie nicht haben. Deaktivieren Sie diesen Schritt mit einer kleinen Konfigurationsdatei im Stammverzeichnis des Projekts, zum Beispiel no-updater.json:

{ "bundle": { "createUpdaterArtifacts": false } }

Starten Sie dann den Build und übergeben Sie ihm diese Datei:

npm run tauri build -- --config no-updater.json

Der erste Build dauert lange: Cargo lädt alle Rust-Abhängigkeiten herunter und kompiliert sie. Die folgenden Builds kompilieren nur neu, was sich geändert hat. Die Pakete für Ihr System landen in src-tauri/target/release/bundle/.

Ohne diese Datei bricht der Build mit der Meldung „A public key has been found, but no private key“ ab: Es scheitert die Signatur der Updates, nicht Ihr Code.

04

Der Entwicklungsmodus

npm run tauri dev

Dieser Befehl startet RustMusic im Entwicklungsmodus: Eine Änderung an der Oberfläche erscheint sofort, nach einer Änderung am Rust-Code wird neu kompiliert und die Anwendung neu gestartet. Ein Signaturschlüssel ist dafür nicht nötig.

Zur Orientierung im Code:

  • src/: die Oberfläche (Komponenten, Seiten, Dienste), mit den Übersetzungen in src/lib/i18n/locales.
  • src-tauri/src/core: die Audio-Engine, die Decoder, DSD und DLNA.
  • src-tauri/src/commands: die Befehle, die die Oberfläche aufruft.
  • src-tauri/src/repository: der Zugriff auf die SQLite-Datenbank.
05

Ihre Änderung einreichen

  1. 1

    Öffnen Sie ein Issue

    Beschreiben Sie eine neue Funktion oder eine größere Änderung zuerst in einem GitHub-Issue. Kleine Korrekturen (Fehler, Tippfehler, Übersetzung) können direkt als Pull Request kommen.

  2. 2

    Arbeiten Sie an Ihrer Kopie

    Erstellen Sie auf GitHub eine Kopie (Fork) des Repositorys und darin einen Branch für Ihre Änderung.

  3. 3

    Prüfen Sie Ihren Code

    Auf der Rust-Seite müssen cargo fmt und cargo clippy ohne neue Warnung durchlaufen; cargo check muss erfolgreich sein. Jeder sichtbare Text läuft über die Übersetzungen und muss in allen fünf Sprachen vorhanden sein.

  4. 4

    Öffnen Sie den Pull Request

    Erklären Sie, was die Änderung bewirkt und warum. Commit-Nachrichten auf Französisch sind willkommen.

Wie der Rest des Projekts wird Ihr Code unter der GPL v3 veröffentlicht.

Häufige Fragen

Muss ich Rust können, um beizutragen?

Nein. Die Oberfläche ist in Svelte und TypeScript geschrieben, die Übersetzungen sind einfache JSON-Dateien, und ein guter Fehlerbericht hilft so viel wie eine Zeile Code.

Wofür wird CMake gebraucht?

Es kompiliert libopus, die Referenzbibliothek zum Dekodieren von Opus, die in RustMusic eingebunden ist.

Kann ich RustMusic für eine andere Linux-Distribution kompilieren?

Ja, wenn die entsprechenden Abhängigkeiten verfügbar sind. Tauri erzeugt Pakete als .deb, .rpm und AppImage, und das kompilierte Programm liegt in src-tauri/target/release.

Darf ich meine kompilierte Version verbreiten?

Ja, unter der GPL v3 und mit ihrem Quellcode. Wenn Sie sie verändert haben, geben Sie ihr einen anderen Namen, damit sie nicht mit der offiziellen Version verwechselt wird.

Keine Lust zu kompilieren?

Die offiziellen Versionen von RustMusic sind fertig zur Installation unter Windows, macOS und Linux. Frei, kostenlos, ohne Konto.

Weiterführende Anleitungen