Sapphire : gestionnaire de paquets basé sur Rust pour macOS (alternative à Homebrew)
(github.com/alexykn)- Sapphire est un gestionnaire de paquets de nouvelle génération développé en Rust
- Inspiré de Homebrew, il permet d’installer et de gérer des Formulae et des Casks
- À l’heure actuelle, seule l’architecture ARM est prise en charge ; la compatibilité x86 pourrait être ajoutée plus tard
- Le projet se compose de sapphire-core et sapphire-cli
- Sapphire est distribué sous licence BSD-3-Clause
Avertissement
- Sapphire est un logiciel expérimental, en développement actif, et peut être instable
- Si vous réinstallez avec Sapphire un cask installé via brew, il sera installé avec un chemin légèrement différent, et les paramètres utilisateur ne seront pas migrés automatiquement
⚙️ Structure du projet
- sapphire-core : bibliothèque principale, chargée notamment de la récupération des paquets, de la résolution des dépendances, de l’extraction des archives et du traitement des artefacts
- sapphire-cli : interface en ligne de commande ; l’exécutable
sapphireencapsule la bibliothèque principale
🚀 Feuille de route
- Mise à jour des paquets installés avec la commande upgrade
- Nettoyage des téléchargements, versions et caches obsolètes
- Commande Reinstall pour des réinstallations rapides
- Prefix isolation avec prise en charge de
/opt/sapphirecomme disposition indépendante - Assistant
sapphire initpour initialiser l’environnement - Corrections de bugs continues et amélioration de la stabilité
📦 Utilisation
- Afficher l’aide :
sapphire --help - Mettre à jour les métadonnées :
sapphire update - Rechercher un paquet :
sapphire search - Obtenir des informations sur un paquet :
sapphire info - Installer une Bottle ou un Cask :
sapphire install - Compiler et installer une Formula depuis les sources :
sapphire install --build-from-source - Désinstaller :
sapphire uninstall - (Bientôt disponible)
sapphire upgrade [--all],sapphire cleanup,sapphire init
🏗️ Compilation depuis les sources
Pré-requis : toolchain Rust stable
git clonecd sapphirecargo build --release- Le binaire
sapphirese trouve danstarget/release/sapphire; ajoutez-le auPATH
1 commentaires
Avis Hacker News
Il reconnaît que son projet n’est pas meilleur que Homebrew sur de nombreux points, mais qu’il est en train de résoudre certains problèmes comme la gestion des chemins relatifs
.rbvers un format plus générique et lisible par machine.dmgen.appainsi que les installateurs.pkgfonctionnent bien d’après les testsIl explique deux éléments centraux de Homebrew
Le projet est jugé amusant et bien réalisé
Il remet en question l’objectif d’atteindre la parité avec Homebrew
Un ancien utilisateur de MacPorts explique pourquoi il est passé à Homebrew
Il est suggéré d’ajouter au README les objectifs, la motivation et les raisons du projet
Il reconnaît que Homebrew peut être amélioré et accueille favorablement une nouvelle tentative
Il est suggéré de raccourcir le nom du projet
Il affirme que réécrire le logiciel n’est pas efficace