Skip to content

编译更新OpenWrt PassWall和SSR-plus插件

下面文章是轉載的,內容有價值 保留一下:

前面写了自编译 OpenWRT 固件,本来玩的好好的,结果最主要的两个插件据说开发者删库了,只能重新找办法升级了。
如果只要更新 Passwall 和 SSR-plus,还有 Clash,那就直接到这里下载 ipk 吧:
https://share.mianao.info/Router/X86-64/
可以在 系统->文件传输,直接上传安装 ipk 软件包,如果 openwrt 固件没有这个,那就自行上传了 ssh 命令安装吧。
下面就可以不用看了。

本地自编译

编译 Lienol 源

如果用的源码:https://github.com/Lienol/openwrt

方法一

都说是 Lienol 是把他的 openwrt-package 删了,但我看了下回退也是有的,所以一个办法是修改 feeds.conf.default 文件,将最后一行修改为我回退的库 src-git lienol https://github.com/harry3633/openwrt-package
然后执行:

./scripts/feeds clean
./scripts/feeds update -a
./scripts/feeds install -a

ShellCopy

接着编译就有最终版 Passwall 了。

方法二

不过我觉得另一个办法更好,因为这个源里有很多常用软件包,大家可以去 fork 下:https://github.com/kenzok8/openwrt-packages

cd openwrt/package
git clone https://github.com/kenzok8/openwrt-packages.git

ShellCopy

然后执行:

./scripts/feeds update -a
./scripts/feeds install -a

ShellCopy

接着编译 Passwall 和 SSR-plus 就都有了。

Lean’s 源

如果用的源码:https://github.com/coolsnowwolf/lede

方法一

修改 feeds.conf.default 文件,将最后一行的注释 # 删除, src-git lienol https://github.com/fw876/helloworld
然后执行:

./scripts/feeds clean
./scripts/feeds update -a
./scripts/feeds install -a

ShellCopy

然后编译就有最终版 SSR-plus 了。

方法二

同样的,也可以直接下载这个源的软件包,small 是依赖包:

cd lede/package
git clone https://github.com/kenzok8/openwrt-packages.git
git clone https://github.com/kenzok8/small.git

ShellCopy

然后执行:

./scripts/feeds update -a
./scripts/feeds install -a

ShellCopy

接着编译 Passwall 和 SSR-plus 就都有了。

注:
如果 feeds update 出现一堆类似下面的警告:

WARNING: Makefile 'package/lean/shadowsocksR-libev-full/Makefile' has a dependency on 'libpcre', which does not exist

ShellCopy

解决办法就是删掉 feeds 整个文件夹,在 lede 或 openwrt 目录下执行 rm -rf ./feeds,然后再 update。

个人感觉 Lean’s 的源码编译不是很好用,时而成功时而不行,原因根本不知道为什么,而 Lienol 的源基本网络没问题就编译没问题。

GitHub 在线编译

参考:https://p3terx.com/archives/build-openwrt-with-github-actions.html

上面这篇文章写得很详细了,我简单描述下我的操作:

  1. 在本地电脑上搭建编译环境中使用 Lean’s OpenWrt 源码按照前文的编译操作,直到选择配置后保存生成的 .config 文件,一般位于 lede 或 openwrt 目录下。
  2. 项目地址:https://github.com/P3TERX/Actions-OpenWrt,点击页面中的 Use this template 按钮。
  3. 填一个仓库名称,点击 Create repository from template 按钮,这样就按模板复制了一个自己的库。
  4. 上传修改好的 feeds.conf.default 文件,拖放入仓库根目录,它会自动覆盖 Open­Wrt 源码目录下的相关文件。

  5. 点击 Create new file 按钮,创建一个新文件,文件名填写为 .config,把第一步生成的 .config 文件打开,把里面的内容粘贴到下面的文本框中。点击 Commit new file 按钮创建。

  6. 后续编译工作会自动开始,等几个小时后可以在 Actions 页面进行查看编译的固件了。

说明:

  1. 默认情况下触发编译工作流程有两种方式,发布 release 和修改 .config 文件,所以无论是点发布还是修改 .config 都会自动开始编译。当发现仓库源码有更新时,在 releases 页面发布一个版本就会触发编译的工作流程,使用最新源码进行编译最新固件了。
  2. 这是我的编译配置文件 .config 和 feeds.conf.default 供参考:https://share.mianao.info/Router/X86-64/lede-config
  3. 本方法实际上就是将前面的步骤在本地电脑进行,到最后一步编译命令 make V=s 时交给了 GitHub 自动操作,适合网络问题多的情况,后续更新编译也方便。可以看参考文章自定义更多内容。

Comments are closed, but trackbacks and pingbacks are open.