SSR 科学上网软件
Clone this repo:
rm -rf package/helloworld
git clone --depth=1 https://github.com/fw876/helloworld.git package/helloworld
Pull upstream commits:
git -C package/helloworld pull
Remove
rm -rf package/helloworld
Add new submodule:
rm -rf package/helloworld
git submodule add -f --name helloworld https://github.com/fw876/helloworld.git package/helloworld
Pull upstream commits:
git submodule update --remote package/helloworld
Remove
git submodule deinit -f package/helloworld
git rm -f package/helloworld
git reset HEAD .gitmodules
rm -rf .git/modules{/,/package/}helloworld
Add new feed:
sed -i "/helloworld/d" "feeds.conf.default"
echo "src-git helloworld https://github.com/fw876/helloworld.git" >> "feeds.conf.default"
Pull upstream commits:
./scripts/feeds update helloworld
./scripts/feeds install -a -f -p helloworld
Remove
sed -i "/helloworld/d" "feeds.conf.default"
./scripts/feeds clean
./scripts/feeds update -a
./scripts/feeds install -a
If you want to use this repo with official OpenWrt source tree, the following tools and packages need to be added manually:
tools:
packages:
You may use svn
to check them out, e.g.:
mkdir -p package/helloworld
for i in "dns2socks" "microsocks" "ipt2socks" "pdnsd-alt" "redsocks2"; do \
svn checkout "https://github.com/immortalwrt/packages/trunk/net/$i" "package/helloworld/$i"; \
done
You should manually add the following code into tools/Makefile, make sure to add code before the compile command:
tools-y += ucl upx
$(curdir)/upx/compile := $(curdir)/ucl/compile
e.g.:
svn checkout https://github.com/coolsnowwolf/lede/trunk/tools/ucl tools/ucl
svn checkout https://github.com/coolsnowwolf/lede/trunk/tools/upx tools/upx
sed -i 'N;24a\tools-y += ucl upx' tools/Makefile
sed -i 'N;40a\$(curdir)/upx/compile := $(curdir)/ucl/compile' tools/Makefile
You should note that hard-coding the line number is not an ideal solution. It may destroy the structure of the original file due to the update of the openwrt source code and cause unexpected problems.