Sapphire: Rust-basierter Paketmanager für macOS (Homebrew-Alternative)
(github.com/alexykn)- Sapphire ist ein Paketmanager der nächsten Generation, entwickelt in Rust
- Er ist von Homebrew inspiriert und installiert und verwaltet Formulae und Casks
- Derzeit wird nur die ARM-Architektur unterstützt; x86 könnte künftig ergänzt werden
- Das Projekt besteht aus sapphire-core und sapphire-cli
- Sapphire steht unter der BSD-3-Clause-Lizenz
Warnung
- Sapphire ist experimentelle Software in aktiver Entwicklung und kann instabil sein
- Wenn mit brew installierte Casks mit Sapphire neu installiert werden, werden sie in leicht abweichenden Pfaden installiert, und Benutzereinstellungen werden nicht automatisch migriert
⚙️ Projektstruktur
- sapphire-core: Kernbibliothek, zuständig für das Abrufen von Paketen, das Auflösen von Abhängigkeiten, das Entpacken von Archiven und die Verarbeitung von Artefakten
- sapphire-cli: Kommandozeilenoberfläche; die ausführbare Datei
sapphirekapselt die Kernbibliothek
🚀 Roadmap
- Aktualisierung installierter Pakete mit dem Befehl upgrade
- Bereinigung alter Downloads, Versionen und Caches
- Befehl Reinstall für schnelle Neuinstallationen
- Prefix isolation mit Unterstützung für
/opt/sapphireals eigenständiges Layout - Helfer
sapphire initzum Bootstrapping der Umgebung - Fortlaufende Bugfixes und Verbesserungen der Stabilität
📦 Verwendung
- Hilfe anzeigen:
sapphire --help - Metadaten aktualisieren:
sapphire update - Nach Paketen suchen:
sapphire search - Paketinformationen abrufen:
sapphire info - Bottle oder Cask installieren:
sapphire install - Formula aus dem Quellcode bauen und installieren:
sapphire install --build-from-source - Deinstallieren:
sapphire uninstall - (demnächst verfügbar)
sapphire upgrade [--all],sapphire cleanup,sapphire init
🏗️ Aus dem Quellcode bauen
Voraussetzung: stabile Rust-Toolchain
git clonecd sapphirecargo build --release- Die Binärdatei
sapphirebefindet sich untertarget/release/sapphire; diesen Pfad zuPATHhinzufügen
1 Kommentare
Hacker-News-Kommentare
Er erklärt, dass sein selbst entwickeltes Projekt Homebrew in vielerlei Hinsicht nicht überlegen sei, aber einige Probleme wie die Konfiguration relativer Pfade löse
.rb-Skripte in ein allgemeineres maschinenlesbares Format umzuwandeln.dmgnach.appund.pkg-Installer funktionieren in Tests gutEr erläutert zwei Kernbestandteile von Homebrew
Das Projekt wird als unterhaltsam und gut gemacht bewertet
Das Ziel einer Gleichwertigkeit mit Homebrew wird infrage gestellt
Jemand war früher MacPorts-Nutzer, erklärt aber, warum er zu Homebrew gewechselt ist
Es wird vorgeschlagen, im README Ziele, Motivation und Gründe zu ergänzen
Das Verbesserungspotenzial von Homebrew wird anerkannt, und neue Versuche werden begrüßt
Es wird vorgeschlagen, den Projektnamen zu verkürzen
Es wird argumentiert, dass eine komplette Neuschreibung der Software nicht effektiv sei