Lean's LEDE source
Go to file
breakings 8b40102d46
ucode: update to latest Git HEAD (#9230)
33f1e0b treewide: move json-c compat shims into internal header file
e0e9431 vm: move unhandled exception reporting out of `uc_vm_execute_chunk()`
2b59140 vm: fix callframe double free on unhanded exceptions
7d7e950 main: abort when failing to load a preload library
1032a67 lib: let `json()` accept input objects implementing `read()` method
5ee68d5 fs: implement `fs.readfile()` and `fs.writefile()`
df6b861 ci: debian: change path before attempting to invoke Git operations
dfaf05a ci: debian: automatically update changelog from Git tag
34f3c45 ci: fix YAML syntax of Debian workflow
e956bcf fs: fix off-by-one in fs.dirname() function
6fc4b6c .gitignore: fix overmatching patterns, blacklist cram .venv
7c2e082 build: remove legacy json-c check
77942af build: add polyfills for older libjson-c versions
0b4aaa3 CI: build Debian package
f404285 debian: Add package definition
a37f654 types: fix escape sequence encoding of high byte values in JSON strings
aae5312 Update README.md
8134e25 build: fix symlink install target
87c7296 treewide: replace some leftover "utpl" occurrences, update .gitignore
7d27ad5 build: only stage ucc symlink if compile support is enabled
171402f lib: add date and time related functions
8b5dc60 lib: provide API function to obtain stdlib function implementations
eb0d2f1 main: turn ucode into multicall executable
28ee7e1 uloop: add support for tasks
753dea9 CI: build on macOS
668c5c0 lib: add argument position support (`%m$`) to `sprintf()` and `printf()`
ab46fdf treewide: remove legacy json-c include directives
b8f49b1 tests: 21_regex_literals: generalize syntax error test case
fd2e5e7 tests: 16_sort: fix logic flaw exposed on OS X
2c71bf2 tests: run_tests.sh: pass dummy value to `-T` flag
55c4a90 lib: disallow zero padding for %s formats
0d05cb5 tests: run_tests.sh: use greadlink if available
271e520 resolv: make OS X compatible
d13c320 fs: avoid Linux specific sys/sysmacros.h include on OS X
33397a3 uloop: use execvp() on OS X
bafdc8f lib: add naive sigtimedwait() stub for OS X
ada1585 build: consolidate CMakeLists.txt and cover OS X deviations
befbb69 include: add OS X compatible endian.h header
49838a8 include: rename include guards to avoid clashes with system headers
91f65de nl80211: add missing attributes and correct some attribute flags
b4a1fd5 lib: adjust require(), render() and include() raw mode semantics
4618807 main: rework CLI frontend
73dcd78 lib: fix potential integer underflow on empty render output
c402551 vm: fix crash on object literals with non-string computed properties
efe8a02 syntax: support add new operators
078d686 ubus: add event support
6c66c83 ubus: refactor error and argument handling
1cb04f9 ubus: add object publishing, notify and subscribe support
0e85974 uloop: clear errno before integer conversion attempts
05bd7ed types: treat resource type prototypes as GC roots
a2a26ca lib: introduce uloop binding
6b6d01f vm: release this context on exception in managed method call
1af23a9 tests: fix proto() testcase
4ce69a8 fs: implement access(), mkstemp(), file.flush() and proc.flush()

Signed-off-by: Jo-Philipp Wich <jo@mein.io>

Co-authored-by: Jo-Philipp Wich <jo@mein.io>
2022-04-12 11:26:17 +08:00
.github CI: fix 'alternatives for my.cnf' problem (#8436) 2021-12-16 12:54:14 +08:00
config x86: added support to generate VHDX images (#8399) 2021-12-08 16:10:18 +08:00
doc add Xiaoma v1 small photo 2020-05-14 15:30:44 +08:00
include kernel: bump 5.15 to 5.15.33 (#9224) 2022-04-11 14:35:37 +08:00
LICENSES LICENSES: include all used licenses in LICENSES directory 2021-06-17 20:11:04 +08:00
package ucode: update to latest Git HEAD (#9230) 2022-04-12 11:26:17 +08:00
scripts scripts/diffconfig.sh: ensure config/conf is built 2022-02-26 16:06:10 +00:00
target kernel-5.10: fix offset and fuzz for patches (#9238) 2022-04-12 11:24:00 +08:00
toolchain toolchain: add llvm-bpf 2022-04-07 01:01:05 +08:00
tools toolchain: add llvm-bpf 2022-04-07 01:01:05 +08:00
.gitattributes Merge branch 'master' of https://github.com/lede-project/source 2017-09-12 01:07:20 +08:00
.gitignore gitignore: sync upstream source 2022-02-24 11:20:06 +08:00
BSDmakefile add kernel 5.10 support and sync with upstream 2021-06-14 18:30:08 +08:00
Config.in add kernel 5.10 support and sync with upstream 2021-06-14 18:30:08 +08:00
COPYING add kernel 5.10 support and sync with upstream 2021-06-14 18:30:08 +08:00
feeds.conf.default Revert "feeds: use git-src-full to allow Git versioning" 2022-02-16 13:47:04 +08:00
Makefile add kernel 5.10 support and sync with upstream 2021-06-14 18:30:08 +08:00
README Update README (#6252) 2021-01-25 16:32:26 +08:00
README_EN.md Update README 2021-06-30 20:46:32 +08:00
README.md Update README.md 2022-03-28 21:36:42 +08:00
rules.mk build: change PYTHON to python3 2022-03-10 08:56:14 +08:00

Welcome to Lean's git source of OpenWrt and packages

How to build your Openwrt firmware.

Note:

  1. DO NOT USE root USER FOR COMPILING!!!

  2. Users within China should prepare proxy before building.

  3. Web admin panel default IP is 192.168.1.1 and default password is "password".

Let's start!

  1. First, install Ubuntu 64bit (Ubuntu 20.04 LTS x86 is recommended).

  2. Run sudo apt-get update in the terminal, and then run sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget curl swig rsync

  3. Run git clone https://github.com/coolsnowwolf/lede to clone the source code, and then cd lede to enter the directory

  4. ./scripts/feeds update -a
    ./scripts/feeds install -a
    make menuconfig
    
  5. Run make -j8 download V=s to download libraries and dependencies (user in China should use global proxy when possible)

  6. Run make -j1 V=s (integer following -j is the thread count, single-thread is recommended for the first build) to start building your firmware.

This source code is promised to be compiled successfully.

You can use this source code freely, but please link this GitHub repository when redistributing. Thank you for your cooperation!

Rebuild:

cd lede
git pull
./scripts/feeds update -a && ./scripts/feeds install -a
make defconfig
make -j8 download
make -j$(($(nproc) + 1)) V=s

If reconfiguration is need:

rm -rf ./tmp && rm -rf .config
make menuconfig
make -j$(($(nproc) + 1)) V=s

Build result will be produced to bin/targets directory.

Special tips:

  1. This source code doesn't contain any backdoors or close source applications that can monitor/capture your HTTPS traffic, SSL is the final castle of cyber security. Safety is what a firmware should achieve.

  2. If you have any technical problem, you may join the QQ discussion group: 297253733, link: click here

  3. Want to learn OpenWrt development but don't know how? Can't motivate yourself for self-learning? Not enough fundamental knowledge? Learn OpenWrt development with Mr. Zuo through his Beginner OpenWrt Training Course. Click here to register.

Router Recommendation

Not Sponsored: If you are finding a low power consumption, small and performance promising x86/x64 router, I personally recommend the EZPROv1 Alumium Edition (N3710 4000M): Details

xm1 xm2

Donation

If this project does help you, please consider donating to support the development of this project.

Alipay

alipay

WeChat

wechat

Note: Addition Lean's private package source code in ./package/lean directory. Use it under GPL v3.

GPLv3 is compatible with more licenses than GPLv2: it allows you to make combinations with code that has specific kinds of additional requirements that are not in GPLv3 itself. Section 7 has more information about this, including the list of additional requirements that are permitted.