refactor(install): 移除 yay 依赖,decman 改为直接 makepkg 安装
This commit is contained in:
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
- **运行环境**:Arch Linux(主要面向 WSL,兼容裸机)
|
- **运行环境**:Arch Linux(主要面向 WSL,兼容裸机)
|
||||||
- **语言**:Python(配置)、Bash(引导脚本)
|
- **语言**:Python(配置)、Bash(引导脚本)
|
||||||
- **包管理器**:uv(开发依赖)、pacman/yay(系统包)
|
- **包管理器**:uv(开发依赖)、pacman(系统包)、decman AUR 插件(AUR 包)
|
||||||
|
|
||||||
## 仓库结构
|
## 仓库结构
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
├── system/etc/ # 系统配置文件源 → 部署到 /etc/
|
├── system/etc/ # 系统配置文件源 → 部署到 /etc/
|
||||||
├── home/ # 用户配置文件源 → 部署到 ~/
|
├── home/ # 用户配置文件源 → 部署到 ~/
|
||||||
├── scripts/
|
├── scripts/
|
||||||
│ ├── install.sh # 引导脚本(git → yay → decman → 首次 sync)
|
│ ├── install.sh # 引导脚本(git → decman → 首次 sync)
|
||||||
│ └── wsl-init.sh # WSL 首次初始化(创建用户)
|
│ └── wsl-init.sh # WSL 首次初始化(创建用户)
|
||||||
└── pyproject.toml # 开发依赖(decman + 插件,仅用于类型检查)
|
└── pyproject.toml # 开发依赖(decman + 插件,仅用于类型检查)
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -65,5 +65,4 @@ class BaseModule(Module):
|
|||||||
def aur_packages(self) -> set[str]:
|
def aur_packages(self) -> set[str]:
|
||||||
return {
|
return {
|
||||||
"decman",
|
"decman",
|
||||||
"yay-bin",
|
|
||||||
}
|
}
|
||||||
|
|||||||
+11
-17
@@ -7,8 +7,11 @@ CONFIG_DIR="$HOME/.config/archlinux-config"
|
|||||||
echo "==> 验证 sudo 权限..."
|
echo "==> 验证 sudo 权限..."
|
||||||
sudo -v < /dev/tty || { echo "错误:需要 sudo 权限,请确认当前用户已配置 sudo"; exit 1; }
|
sudo -v < /dev/tty || { echo "错误:需要 sudo 权限,请确认当前用户已配置 sudo"; exit 1; }
|
||||||
|
|
||||||
echo "==> 安装 git..."
|
echo "==> 更新系统..."
|
||||||
sudo pacman -S --needed --noconfirm git
|
sudo pacman -Syu --noconfirm
|
||||||
|
|
||||||
|
echo "==> 安装基础依赖..."
|
||||||
|
sudo pacman -S --needed --noconfirm git base-devel
|
||||||
|
|
||||||
echo "==> 克隆配置仓库..."
|
echo "==> 克隆配置仓库..."
|
||||||
mkdir -p "$(dirname "$CONFIG_DIR")"
|
mkdir -p "$(dirname "$CONFIG_DIR")"
|
||||||
@@ -21,22 +24,13 @@ else
|
|||||||
git clone "$REPO_URL" "$CONFIG_DIR"
|
git clone "$REPO_URL" "$CONFIG_DIR"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "==> 更新系统..."
|
|
||||||
sudo pacman -Syu --noconfirm
|
|
||||||
|
|
||||||
echo "==> 安装 base-devel..."
|
|
||||||
sudo pacman -S --needed --noconfirm base-devel
|
|
||||||
|
|
||||||
echo "==> 安装 yay-bin..."
|
|
||||||
if ! command -v yay &> /dev/null; then
|
|
||||||
rm -rf /tmp/yay-bin
|
|
||||||
git clone https://aur.archlinux.org/yay-bin.git /tmp/yay-bin
|
|
||||||
(cd /tmp/yay-bin && makepkg -si --noconfirm)
|
|
||||||
rm -rf /tmp/yay-bin
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "==> 安装 decman..."
|
echo "==> 安装 decman..."
|
||||||
yay -S --needed --noconfirm decman
|
if ! command -v decman &> /dev/null; then
|
||||||
|
rm -rf /tmp/decman
|
||||||
|
git clone https://aur.archlinux.org/decman.git /tmp/decman
|
||||||
|
(cd /tmp/decman && makepkg -si --noconfirm)
|
||||||
|
rm -rf /tmp/decman
|
||||||
|
fi
|
||||||
|
|
||||||
echo "==> 应用系统配置..."
|
echo "==> 应用系统配置..."
|
||||||
sudo decman --source "$CONFIG_DIR/source.py" < /dev/tty
|
sudo decman --source "$CONFIG_DIR/source.py" < /dev/tty
|
||||||
|
|||||||
Reference in New Issue
Block a user