An opensource OpenWrt variant for mainland China users.
Go to file
Paul Spooren 62b44eccae build: ipkg-build use fakeroot with PKG_FILE_MODES
The `ipkg-build` script converts a folder into a `opkg` installable
package. Until now it would use root:root for all packages and try to
preserve file modes.

This has the two drawbacks of packages want to add non-root files or add
SUID files, like the `sudo` package does.

To give more flexibility regarding file modes and avoid init script
hacks, a new variable called `PKG_FILE_MODES`. The variable contains a
list of files modes in the format `path:owner:group:mode`.

An example for the `sudo` package below:

```
PKG_FILE_MODES:=\
        /usr/bin/sudo:root:root:4755 \
        /etc/sudoers:root:root:0440
```

The `ipkg-build` now runs within a fakeroot environment to set any mode
and directly store it in the resulting `ipk` package archive.

Both options `-o` and `-g` are no longer required due to the introduction
of the more flexible `-m` options, which takes the `PKG_FILE_MODES` as
input.

Lastly the option `-c` is removed as it's unused within the script.

Signed-off-by: Paul Spooren <mail@aparcar.org>
2020-09-01 17:24:55 +08:00
config kernel: add options needed for SELinux 2020-08-31 11:33:32 +08:00
include build: ipkg-build use fakeroot with PKG_FILE_MODES 2020-09-01 17:24:55 +08:00
package opkg: update to git HEAD 2020-09-01 17:24:16 +08:00
scripts build: ipkg-build use fakeroot with PKG_FILE_MODES 2020-09-01 17:24:55 +08:00
target kernel: add options needed for SELinux 2020-08-31 11:33:32 +08:00
toolchain uClibc-ng: refresh config and remove several legacy options 2020-08-25 12:18:11 +08:00
tools tools/squashfskit4: add xattr support to mksquashfs for SELinux 2020-08-31 11:13:28 +08:00
.gitattributes fix permisson 2019-08-16 15:09:42 +08:00
.gitignore gitignore: ignore patches in root directory 2020-02-25 15:39:25 +08:00
BSDmakefile packages: apply usign padding workarounds to package indexes if needed 2019-08-16 14:48:02 +08:00
Config.in packages: apply usign padding workarounds to package indexes if needed 2019-08-16 14:48:02 +08:00
CONTRIBUTED.md luci-theme-atmaterial: update source from yangsongli 2020-08-27 12:17:46 +08:00
feeds.conf.default feeds: switch to github official repo 2020-06-20 12:06:05 +08:00
LICENSE packages: apply usign padding workarounds to package indexes if needed 2019-08-16 14:48:02 +08:00
Makefile Makefile: sync with official source 2020-07-30 23:49:33 +08:00
README.md brook: bump to 20200701 2020-07-27 19:22:01 +08:00
rules.mk tools: add fakeroot 2020-08-10 21:14:32 +08:00

PROJECT OPENWRT

The Source Code of OpenWrt-Lean Modified by CTCGFW

Welcome to our Telegram Group: @ctcgfw_openwrt_discuss.


How to make it

Minimum requirements

Linux with case sensitive
2G DDR2 RAM
2 CPU Cores (AMD64, 1.4Ghz)
25G disk space left
Has access to both ChinaNet & Internet

Install the necessary packages (for Ubuntu user)

sudo apt-get update -y
sudo apt-get full-upgrade -y
sudo apt-get install -y build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib g++-multilib p7zip p7zip-full msmtp libssl-dev texinfo libreadline-dev libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint ccache curl wget vim nano python python3 python-pip python3-pip python-ply python3-ply haveged lrzsz device-tree-compiler scons antlr3 gperf intltool rsync

For mainland China & Ubuntu(16.04+) user, you may run the following command to setup quickly:

sudo bash -c "bash <(curl -s https://build-scripts.project-openwrt.eu.org/init_build_environment.sh)"

Clone the source

git clone -b openwrt-18.06 --single-branch https://github.com/project-openwrt/openwrt && cd openwrt
./scripts/feeds update -a && ./scripts/feeds install -a

For developer, you may use openwrt-18.06-dev branch instead of openwrt-18.06.

Configure your firmware

make menuconfig

Make it

make -j1 V=s

Tips

You'd better not use root to make it, or you may be not able to use.
Default login address: 192.168.1.1, username is root and password is password.

Contributed

See CONTRIBUTED.md.

License

GNU General Public License v3.0.