Sapphire: Trình quản lý gói dựa trên Rust cho macOS (thay thế Homebrew)
(github.com/alexykn)- Sapphire là trình quản lý gói thế hệ mới được phát triển bằng Rust
- Lấy cảm hứng từ Homebrew, nó cài đặt và quản lý Formulae và Casks
- Hiện chỉ hỗ trợ kiến trúc ARM, và hỗ trợ x86 có thể sẽ được bổ sung sau
- Dự án gồm sapphire-core và sapphire-cli
- Sapphire được phát hành theo giấy phép BSD-3-Clause
Cảnh báo
- Sapphire là phần mềm thử nghiệm và đang được phát triển tích cực, nên có thể không ổn định
- Nếu cài lại cask đã cài bằng brew bằng Sapphire, đường dẫn cài đặt sẽ hơi khác và thiết lập người dùng sẽ không được tự động di chuyển
⚙️ Cấu trúc dự án
- sapphire-core: thư viện lõi, phụ trách lấy gói, giải quyết phụ thuộc, giải nén archive, xử lý artifact, v.v.
- sapphire-cli: giao diện dòng lệnh, trong đó tệp thực thi
sapphirebao bọc thư viện lõi
🚀 Lộ trình
- Cập nhật các gói đã cài bằng lệnh upgrade
- Dọn dẹp các bản tải xuống cũ, phiên bản cũ và bộ nhớ đệm
- Lệnh Reinstall để cài lại nhanh
- Prefix isolation hỗ trợ
/opt/sapphirevới bố cục độc lập - Trình trợ giúp
sapphire initđể bootstrap môi trường - Tiếp tục sửa lỗi và cải thiện độ ổn định
📦 Cách dùng
- Hiển thị trợ giúp:
sapphire --help - Cập nhật metadata:
sapphire update - Tìm kiếm gói:
sapphire search - Xem thông tin gói:
sapphire info - Cài Bottle hoặc Cask:
sapphire install - Build và cài Formula từ mã nguồn:
sapphire install --build-from-source - Gỡ cài đặt:
sapphire uninstall - (Sắp có)
sapphire upgrade [--all],sapphire cleanup,sapphire init
🏗️ Build từ mã nguồn
Điều kiện tiên quyết: bộ công cụ Rust ổn định
git clonecd sapphirecargo build --release- File nhị phân
sapphirenằm tạitarget/release/sapphire, hãy thêm nó vàoPATH
1 bình luận
Ý kiến trên Hacker News
Tác giả nói rằng dự án mình làm không có nhiều điểm vượt trội hơn Homebrew, nhưng đang giải quyết một số vấn đề như thiết lập đường dẫn tương đối
.rbsang định dạng máy có thể đọc được phổ biến hơn.dmgsang.appvà trình cài đặt.pkghoạt động tốt qua thử nghiệmGiải thích về hai phần cốt lõi của Homebrew
Đánh giá dự án là thú vị và được làm tốt
Đặt câu hỏi về việc lấy mục tiêu ngang bằng với Homebrew
Từng là người dùng MacPorts nhưng giải thích lý do đã chuyển sang Homebrew
Đề xuất thêm mục tiêu, động lực và lý do vào README
Thừa nhận Homebrew vẫn có thể được cải thiện và hoan nghênh các thử nghiệm mới
Đề xuất đổi tên dự án thành một cái tên ngắn hơn
Lập luận rằng viết lại phần mềm từ đầu không hiệu quả