# 乱七八糟:GFS项目考量笔记

2025-03-18
:: tags: #乱七八糟

前言 最近nekoray项目归档,考量新的singbox前端时发现这个项目不错,不过在Arch linux中运行有一些小问题,这里做个总结。

## 安装最新版:

安装gui-for-singbox的时候发现仓库的1.9.2版本release被作者删除,无法安装,于是：

- 在AUR仓库中下载aur-gui-for-singbox.tar.gz,解压进入aur-gui-for-singbox目录;
- 更改.SRCINFO文件,使其版本号为最新;
- 使用makepkg -si构建并安装这个包,缺少的png图片可以直接下载并放进目录;
- 如果有错误刷新密钥环（sudo pacman-key --refresh-keys）;

## 无法打开/无法使用TUN模式:

- 安装成功,进入`/opt/gui-for-singbox`,运行`sudo chown -R your_username:your_group /opt/gui-for-singbox`,使其可以被非root用户启动;
- 执行`sudo setcap cap_net_bind_service,cap_net_admin,cap_dac_override=+ep /opt/gui-for-singbox/your_executable`命令,并在设置-内核中点击盾牌-钥匙图标,使Tun模式可以有特权运行。

## 免密码运行TUN模式:

- 检查 polkit 服务是否正在运行

    systemctl status polkit

- 若返回状态为除 active (running) 之外的结果,运行

    sudo systemctl enable --now polkit

- 创建 polkit 策略

    sudo vi /etc/polkit-1/rules.d/99-nopassword.rules

- 添加以下内容并保存退出

    polkit.addRule(function (action, subject) {
      if (
        (action.id == "org.freedesktop.resolve1.set-domains" ||
          action.id == "org.freedesktop.resolve1.set-default-route" ||
          action.id == "org.freedesktop.resolve1.set-dns-servers") &&
        subject.local &&
        subject.active &&
        subject.isInGroup("wheel")
      ) {
        return polkit.Result.YES;
      }
    });

- 将当前用户添加至 wheel 组中,注意Debian 与衍生系统需要先创建 wheel 组,然后运行：

    sudo usermod -G wheel 当前用户

- 重新加载 polkit 使更改生效

    sudo systemctl restart polkit

Done.

Thanks for reading! Read other posts?

← 网络艺术:FRP使用指南 乱七八糟:Markdown使用快速教程 →