Bagi pegiat sistem operasi berbasis Arch Linux, manajemen perangkat lunak seringkali diidentikkan dengan antarmuka baris perintah yang kaku. Selama bertahun-tahun, utilitas visual seperti Octopi menjadi sandaran utama, meski tak jarang terasa ketinggalan zaman. Memasuki era yang lebih modern, lahir sebuah solusi ambisius bernama **Shelly-ALPM**. Dirancang ulang dari nol, aplikasi ini menantang dominasi *wrapper* konvensional dengan menawarkan antarmuka ramah pengguna berbasis GTK4 tanpa mengorbankan ketangguhan *native library*.

Tentang Shelly
Shelly adalah interpretasi ulang (*reimagination*) modern dari manajer paket Arch Linux. Tujuan utamanya adalah menjadi alternatif yang jauh lebih intuitif dan *user-friendly* dibandingkan `pacman` murni maupun `octopi`. Kesalahan fatal yang sering dilakukan *tool* sejenis adalah membangun program hanya sebagai *wrapper* atau perantara antarmuka untuk `pacman`. Shelly **BUKAN** sekadar *front-end* biasa; ia berinteraksi langsung secara *native* dengan sistem untuk menghadirkan pengalaman visual yang mulus dan terintegrasi penuh. Pencarian paket Standar, AUR, dan Flatpak terintegrasi di satu tempat. Tangkapan Layar (Screenshots)

Cara Instalasi Cepat
Metode pemasangan yang paling direkomendasikan adalah jika kamu menggunakan distribusi **CachyOS**, karena sistem sudah menyediakan repositori asali yang sangat teroptimasi.
sudo pacman -S shellyPerintah di atas akan mengunduh rilis terbaru yang mencakup baik antarmuka visual (UI) maupun perangkat baris perintah (CLI). Bagi pengguna Arch Linux reguler yang memanfaatkan asisten AUR seperti `yay` atau `paru`, eksekusi perintah berikut:
yay -S shelly
# atau
paru -S shellyProsedur Penghapusan (Uninstall)
Jika kamu ingin mencabut aplikasi ini hingga ke akar-akarnya (termasuk dependensi yang tak lagi dibutuhkan), jalankan tata cara standar berikut:
Untuk Paket Standar (Repositori Resmi)
sudo pacman -Rns shellyJika Dipasang Melalui AUR
yay -Rns shelly
# atau
paru -Rns shellyFitur Andalan
- **Modern-CLI**: Menyediakan antarmuka baris perintah bertenaga bagi *power user* dan otomatisasi sistem, namun tetap mengutamakan kemudahan pemakaian.
- **Native Arch Integration**: Melakukan injeksi instruksi langsung menuju `libalpm` sehingga akurasi dan kecepatan manajemen paket tak bisa dikompromi.
- **Native Wayland Support**: Antarmuka dibangun penuh menggunakan pustaka **GTK4** yang sangat responsif di ekosistem grafis modern.
- **Manajemen Paket**: Pencarian, penyaringan (*filtering*), instalasi, pembaruan, hingga penghapusan aplikasi.
- **Manajemen Repositori**: Sinkronisasi instan dengan repositori resmi untuk memastikan daftar (*mirror*) selalu mutakhir.
- **AUR Support**: Integrasi Arch User Repository tanpa kerumitan untuk katalog *software* yang nyaris tak terbatas.
- **Flatpak Support**: Mengelola aplikasi format Flatpak berdampingan secara harmonis dengan paket *native* Arch.
Peta Jalan Pengembangan (Roadmap)
Pengembang masih terus menggeber berbagai fitur kunci di masa mendatang:
- **Modifikasi Repositori**: Memungkinkan penyesuaian daftar repositori yang didukung secara langsung (*Dalam Pengerjaan*).
- **AppImage Support**: Perluasan dukungan integrasi AppImage layaknya utilitas AppLever (*Dalam Pengerjaan*).
- **Package Import**: Fasilitas mengimpor rekam jejak paket terdahulu untuk memulihkan sistem ke status *backup* semula (*Belum Dimulai*).
- **Dukungan Multi-Bahasa**: Lapisan translasi antarmuka di luar bahasa Inggris.
- **Pembaruan Luring (Offline)**: Mekanisme fungsional layaknya skrip `pacman-offline`.
- **Kustomisasi Tata Letak**: Opsi penyesuaian tata letak visual untuk setiap profil pengguna yang berbeda.
Persyaratan Sistem (Prerequisites)
- **Arch Linux** atau distribusi turunannya.
- **.NET 10.0 SDK** (Khusus untuk proses kompilasi manual).
- **libalpm** (Sudah disediakan otomatis oleh pustaka dasar `pacman`).
- **Flatpak** *(Opsional)*: Bisa diaktifkan mandiri melalui menu pengaturan Shelly.
Membangun dari Kode Sumber (Instalasi Manual)
Menggunakan PKGBUILD
Karena arsitekturnya dirakit khusus untuk Arch, kompilasi mandiri via `PKGBUILD` sangatlah ringkas:
git clone https://github.com/ZoeyErinBauer/Shelly-ALPM.git
cd Shelly-ALPM
makepkg -siMembangun Menggunakan .NET CLI
Sebagai opsi alternatif, proyek ini dapat dirakit mengandalkan lingkungan .NET murni:
dotnet publish Shelly.Gtk/Shelly.Gtk.csproj -c Release -o publish/shelly-ui
dotnet publish Shelly-CLI/Shelly-CLI.csproj -c Release -o publish/shelly-cli
dotnet publish Shelly-CLI/Shelly-CLI.csproj -c Release -o publish/shelly-notificationsAtau jalankan skrip asisten lokal untuk mengeksekusi otomatisasi direktori di `/opt/shelly`:
sudo ./local-install.shPanduan Penggunaan (Usage)
Setelah sukses bersarang di komputermu, panggil utilitasnya dari terminal:
- Versi antarmuka grafis (UI): ketik `shelly-ui`
- Versi baris perintah (CLI): ketik `shelly`
- Sistem notifikasi baki latar belakang: ketik `shelly-notifications`
Mendalami Shelly-CLI
Keberadaan komponen `shelly-cli` adalah oase bagi puritan terminal yang masih menginginkan logika manajemen cepat tanpa harus melepaskan format yang *scriptable*. Dokumentasi parameter seutuhnya bisa dibedah melalui Shelly CLI Reference.
Mesin CLI ini juga dikemudikan oleh sebuah berkas konfigurasi format JSON. Pada eksekusi perdananya, berkas bawaan otomatis tercipta di direktori: `~/.config/shelly/config.json`. Daftar parameternya tercantum pada halaman Shelly Configuration.
Anatomi Kode untuk Developer
Arsitektur repositori dipecah ke dalam beberapa subsistem mandiri:
- **Shelly.Gtk**: Jantung aplikasi antarmuka grafis untuk desktop.
- **Shelly-CLI**: Modul interaksi terminal bagi kaum puritan.
- **Shelly-Notifications**: Layanan area baki (tray) pelaporan status.
- **PackageManager**: Otak logika inti yang menyerap seluruh interaksi abstraksi `libalpm`.
- **PackageManager.Tests**: Serangkaian unit uji komprehensif bagi ketahanan program.
Siklus kompilasi harian dan pengujian unit cukup dipanggil dengan perintah `dotnet build` dilanjutkan `dotnet test`.
Seluruh ekosistem kode sumber terbuka (Open Source) revolusioner ini bernaung di bawah bendera **GPL-3.0 License**.