Arch Linux 個人桌面與純伺服器設定,使用 GNU Stow 與 just 管理。僅支援已完成基本安裝、可連線網路且可使用 sudo 的 Arch Linux。
sudo pacman -S --needed git just stow base-devel桌面環境需要 AUR 的 yay。先閱讀 yay 安裝說明 與 PKGBUILD,確認後以一般使用者執行:
git clone https://aur.archlinux.org/yay.git /tmp/yay
cd /tmp/yay
makepkg -siRustup 會安裝 Rust toolchain 與 Cargo。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"cargo install \
cargo-binstall \
cargo-expand \
cargo-audit \
cargo-watch \
cargo-updategit clone https://github.com/HellHBBD/dotfiles.git ~/dotfiles
cd ~/dotfilescd ~/dotfiles
just all
just login-managerjust all 會安裝 Bash、Git、Neovim、locale 與 Hyprland。just login-manager 僅安裝 greetd 套件,不會寫入 greetd 設定或啟用服務。
不帶參數執行 just 會顯示所有頂層 target 的靜態依賴樹。也可查看特定
target 的子樹:
just
just tree hyprland
just tree server一般節點是 Just 宣告的前置依賴;[本體呼叫] 表示 recipe 執行到該行時才會
遞迴呼叫的 just target。just --list 保留原有平面 recipe 清單。
dolphin Stow 套件管理固定偏好,包括 ~/.config/dolphinrc、
~/.config/kdeglobals 的 Dolphin 相關項目,以及全域檢視範本。套用前請關閉
所有 Dolphin 視窗:
just dolphin首次套用時,既有檔案會備份為 .pre-stow。全域檢視偏好以
~/.config/dolphin/view-properties-global.ini 為來源;Dolphin 支援延伸屬性
時會將實際設定儲存在 ~/.local/share/dolphin/view_properties/global 的 xattr,
由套用腳本更新。Places 書籤 (~/.local/share/user-places.xbel)、資料夾個別
檢視狀態與工具列/右鍵選單不納管。從 GUI 修改固定偏好後,使用 git diff
檢查是否要保留變更;修改全域檢視後,請同步更新範本。
先在 /etc/pacman.conf 取消註解:
[multilib]
Include = /etc/pacman.d/mirrorlist此 target 適用於 Intel + NVIDIA 混合顯示卡,會安裝 Steam、XWayland、兩張顯示卡的 32-bit Vulkan driver 與 NTSync:
cd ~/dotfiles
just steam首次啟動後,在 Steam -> Settings -> Compatibility 啟用 Steam Play,並以 Proton Experimental 為預設。個別遊戲的 Proton 版本與相容性可參考 ProtonDB。
cd ~/dotfiles
just serverserver 安裝 Bash、Git、headless Neovim、tmux 與個人 scripts;不安裝 GUI、AUR、Herdr、OpenCode、locale 或桌面服務。
Tmux Plugin Manager 是選用項目:
git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpmjust herdr
just spotify
just steam
just systemd-oomd
just boot-compatibility
just opencode
just --listboot-compatibility 僅適用於 x86_64 UEFI、GRUB 與 ESP 掛載在 /boot 的系統。
- Desktop recipes 需要先安裝
yay。 - Stow 前請備份可能衝突的既有設定。
just all與just server會管理/etc/bash.bashrc;既有檔案會備份為.pre-stow。- Steam 需要
multilib與en_US.UTF-8;just system-locale會產生zh_TW.UTF-8和en_US.UTF-8,但不會將系統預設語言改為英文。 - Git 設定強制 GPG signing;提交前需自行匯入對應的 private key。
- Neovim 首次啟動需要網路下載 plugins 與 Mason tools。
- 使用 Hyprland 前,請檢查螢幕、鍵盤與觸控板設定。
tmux-init.sh會建立預設 tmux sessions;缺少的專案目錄會略過。