Files
oxpoe 5dab8b0cce fix: pasang ncurses + git, dan pakai lpnh/fg untuk plugin Yazi
Tiga sebab "Lua runtime failed" tiap kali yazi dibuka:

- ncurses tidak ada di daftar paket dasar, jadi `clear` tidak ada di image
  minimal (Fedora/Debian container).
- git tidak ada, sehingga `ya pkg add` gagal. Kegagalan itu tersembunyi
  karena run_as_user memakai `2>/dev/null` + `|| true`, jadi script tetap
  melaporkan "selesai" padahal init.lua memanggil plugin yang tak pernah ada.
- fg.yazi di-clone dari github.com/DreamMaoMao/fg.yazi, padahal repo itu
  hanya ada di Gitee sehingga 404 lalu meminta kredensial.

- tambah ncurses + git pada kelima package manager
- hapus 2>/dev/null di run_as_user supaya kegagalan kelihatan
- ganti clone manual fg.yazi -> `ya pkg add lpnh/fg`
2026-10-16 08:27:17 +07:00

77 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# temp-own
Installer sekali jalan untuk terminal dev environment:
**fish** (shell default) + **starship** (polos) + **yazi** (+ plugin & metadata media) +
**micro** (editor) + **lazydocker** + **fastfetch** (greeting) + **mediainfo** + **ouch** (arsip).
- **Auto-deteksi distro** (pacman / apt / dnf / zypper / apk) — pakai paket distro bila ada, kalau tidak ambil dari sumber resmi.
- **fish jadi default shell** + config global di `/etc/fish/conf.d/`.
- **Yazi**: editor default **micro**, pratinjau **metadata media** (mediainfo), pratinjau & ekstrak **arsip** (ouch), plus keybind `fg` / `zoxide` / `chmod`.
- Hanya butuh **sudo**. Idempotent (aman diulang).
## Instal (satu perintah)
```sh
curl -fsSL https://gitea.oxpoe.qzz.io/oxpoe/temp-own/raw/branch/main/install.sh | sudo bash
```
## Yang dipasang
| Tool | Fungsi | Sumber |
|---|---|---|
| fish | shell | repo distro |
| starship | prompt (polos) | repo distro / starship.rs |
| yazi | file manager | repo distro / release GitHub |
| micro | editor | repo distro / getmic.ro |
| lazydocker | TUI Docker | repo distro / script resmi |
| fastfetch | greeting | repo distro |
| mediainfo | metadata media (yazi) | repo distro |
| ouch | arsip zip/tar/7z/… (yazi) | repo distro / release GitHub |
Paket dasar yang selalu dipasang: `curl`, `unzip`, `tar`, `gzip`, `bash`, `ca-certificates`, `ncurses`, `git`
(NCurses menyediakan `clear`, `tput`, dan utilitas terminal lain — tanpa itu `clear` tidak ada di image minimal.
`git` dibutuhkan `ya pkg add` untuk meng-clone plugin Yazi.)
Yang tak tersedia di repo distro dipasang ke `/usr/local/bin`.
## Yang diubah di sistem
- `/etc/shells` → menambah path `fish`.
- `/etc/fish/conf.d/temp-own.fish` → config fish **semua user**:
`EDITOR`/`VISUAL=micro`, `starship init fish`, dan **greeting `fastfetch`**.
- default shell user (SUDO_USER) & `root` → fish (`chsh`).
- `~/.config/yazi/` (user + root) → `yazi.toml` (editor micro, previewer mediainfo/ouch, ekstrak ouch), `keymap.toml`, `init.lua` — file lama di-backup `.bak-<ts>`.
- Plugin Yazi: `full-border`, `smart-filter`, `chmod`, `ouch`, `mediainfo`, `fg` (`lpnh/fg`).
## Keybind Yazi
| Tombol | Fungsi |
|---|---|
| `C` | kompres (ouch) |
| `Enter` pada arsip | ekstrak (ouch) |
| `f` `g` / `f` `G` / `f` `f` | cari isi (fuzzy/ripgrep) / cari nama |
| `Z` | lompat direktori (zoxide) |
| `c` `h` | chmod |
## Setelah install
Logout–login (atau buka terminal baru) agar shell fish aktif. Cek:
```sh
echo $SHELL
starship --version; yazi --version; micro --version
lazydocker --version; fastfetch --version; mediainfo --version; ouch --version
```
## Catatan
- `chsh` untuk user lain (uid ≥ 1000) bisa manual:
`sudo chsh -s "$(command -v fish)" <user>`
- Untuk menghapus: balikkan shell ke bash, hapus `/etc/fish/conf.d/temp-own.fish`,
dan `~/.config/yazi/` bila perlu.
## Lisensi
MIT