Skip to content
This repository has been archived by the owner on Feb 18, 2023. It is now read-only.

建议将脚本定制部分提取出来 #21

Closed
kiddin9 opened this issue Dec 10, 2019 · 5 comments
Closed

建议将脚本定制部分提取出来 #21

kiddin9 opened this issue Dec 10, 2019 · 5 comments

Comments

@kiddin9
Copy link

kiddin9 commented Dec 10, 2019

建议把脚本定制部分的内容提出来放到根目录某个文件中,好处:
1.脚本文件更简洁清晰, 不再需要cat >> .config <<EOF之类的语法,不再需要考虑格式,对齐等,以后同步更新本项目.yml文件也不用考虑定制部分,根目录的配置文件直接按照.config的语法即可,只需要添加需要定制的部分,无需拷贝整个.config文件
2.更方便的编译和管理多个设备的不同固件,只需要在根目录添加几个配置文件即可.

另外建议引入diy.sh,为高阶用户提供更多玩法, 比如https://github.com/garypang13/lede/raw/master/diy.sh

@KFERMercer
Copy link
Owner

@kiddin9
Copy link
Author

kiddin9 commented Dec 10, 2019

coolsnowwolf/lede#2288 (comment)

根目录配置文件中只添加了定制的内容,仅仅只是把.yml中定制部分提取出来了而已,并不会造成任何后期依赖混乱

根目录配置文件不需要命名为.config,任何名字都可以,在.yml中重命名为.config即可,并不会随着克隆到本地而取代默认配置.

@KFERMercer
Copy link
Owner

脚本文件更简洁清晰, 不再需要cat >> .config <<EOF之类的语法,根目录的配置文件直接按照.config的语法即可,只需要添加需要定制的部分,也不用拷贝整个.config文件

你不觉得这种做法是南辕北辙绕了一圈又回来了吗?

更方便的编译和管理多个设备的不同固件,只需要在根目录添加几个配置文件即可.

为什么不直接多部署几个flow?

另外建议引入diy.sh,为高阶用户提供更多玩法, 比如https://github.com/garypang13/lede/raw/master/diy.sh

耦合度太高. 高阶用户会直接修改源码.

根目录配置文件中只添加了定制的内容,仅仅只是把.yml中定制部分提取出来了而已,并不会造成任何后期依赖混乱

同第一条

根目录配置文件不需要命名为.config,任何名字都可以,在.yml中重命名为.config即可,并不会随着克隆到本地而取代默认配置.

然后你的库里就会多出一堆没用的文件

@KFERMercer KFERMercer pinned this issue Dec 11, 2019
@kiddin9
Copy link
Author

kiddin9 commented Dec 14, 2019

另外建议引入diy.sh,为高阶用户提供更多玩法, 比如https://github.com/garypang13/lede/raw/master/diy.sh

耦合度太高. 高阶用户会直接修改源码.

直接修改源码的话,如果lede的源码有更新,自己修改过的文件就没办法pull过来了,会造成很多不可控的问题.

@peter-tank
Copy link

peter-tank commented Dec 18, 2019

正如我做的:依官版,做了些hot patch源码和feeds的工作,目前正尝试cache
问题:更新package/feeds的link,好像不管用?
我是打算替换shadowsocks-libev为bleeding,看起来链接修改成功了,但结果出来还是feeds/下的官版。


到底是需要cache哪些目录呢?
看编译后的目录结构,好像相当多关键目录超大,无法全部cache加速。


@KFERMercer 你这V2ray编译要多久?https://github.com/KFERMercer/openwrt-v2ray


  • ubnuntu-18.04 链接的实际版本就是上面的V2Ray
2019-12-18T06:01:17.6645777Z go: extracting golang.org/x/text v0.3.0
2019-12-18T06:01:19.0236241Z 
2019-12-18T06:01:19.0236986Z Building targets
2019-12-18T06:01:19.0350814Z flag provided but not defined: -trimpath
2019-12-18T06:01:19.0351240Z usage: go install [-i] [build flags] [packages]
2019-12-18T06:01:19.7138662Z Run 'go help install' for details.
2019-12-18T06:01:19.7138854Z 
2019-12-18T06:01:19.7144282Z go: finding v2ray.com/core/.go_work/build latest
2019-12-18T06:01:19.7144424Z Cleaning module download cache (golang/go#27455)
2019-12-18T06:01:20.4424169Z go: finding v2ray.com/core/.go_work latest
2019-12-18T06:01:20.4568705Z can't load package: package v2ray.com/core/.go_work/build: unknown import path "v2ray.com/core/.go_work/build": cannot find module providing package v2ray.com/core/.go_work/build
2019-12-18T06:01:20.6308571Z 
2019-12-18T06:01:20.6317246Z make[2]: *** [/home/runner/work/openwrt/openwrt/build_dir/target-mips_24kc_musl/v2ray-core-4.21.3/.built] Error 2
2019-12-18T06:01:20.6317942Z Makefile:305: recipe for target '/home/runner/work/openwrt/openwrt/build_dir/target-mips_24kc_musl/v2ray-core-4.21.3/.built' failed
2019-12-18T06:01:20.6353095Z make[1]: *** [package/feeds/lienol/v2ray/compile] Error 2
2019-12-18T06:01:20.6353638Z make[2]: Leaving directory '/home/runner/work/openwrt/openwrt/custom/openwrt-packages/v2ray'
2019-12-18T06:01:20.6354598Z make: *** [package/v2ray/compile] Error 2
2019-12-18T06:01:20.6359017Z time: package/feeds/lienol/v2ray/compile#23.46#3.75#24.82
2019-12-18T06:01:20.6359842Z package/Makefile:111: recipe for target 'package/feeds/lienol/v2ray/compile' failed

需要指定golang版本

    - name: Set up Go 1.13
      uses: actions/setup-go@v1
      with:
        go-version: 1.13

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants