67e465b32e
Changelog: 4d3079ad4 build-sys: release++ (v2.39.2) 9dc7d9808 docs: update v2.39.2-ReleaseNotes 4ffb7ac7c docs: update AUTHORS file 20781132f po-man: merge changes 76228ce1c po: merge changes 86c851c27 po-man: update sr.po (from translationproject.org) c695dce97 po: update sr.po (from translationproject.org) b168eef36 po: update ja.po (from translationproject.org) 83557da34 po: update hr.po (from translationproject.org) 5495eeb64 po: update es.po (from translationproject.org) 7de55c1ea setarch: add PER_LINUX_FDPIC fallback b101de3d0 libblkid: fix topology chain types mismatch 131098cc8 uuidd: improve man page for -cont-clock 112d2245e zramctl: add hint about supported algorithms f5b01cd95 meson: check for HAVE_STRUCT_STATX_STX_MNT_ID a1f803340 include: define pidfd syscalls if needed 032c502d5 wall: do not error for ttys that do not exist 140404e1f column: fix -l 1632bd6d4 lscpu: Even more Arm part numbers (early 2023) fc0a64480 chrt: (man) add note about --sched-period lower limit 073d02941 meson: add check for struct statx 9d54f7c99 meson: add check for linux/mount.h d14d39cbd libmount: improve EPERM interpretation ce266c9e1 libmount: ifdef statx() call a64cec15a libmount: check for struct statx 396798d6b libmount: check for linux/mount.h 03435a7c6 libmount: (utils) fix statx fallback 993581379 libmount: cleanup --fake mode 501227232 libmount: (python): work around python 3.12 bug 8950e9852 build-sys: add AX_COMPARE_VERSION 1e05167df libmount: update documentation for MNT_ERR_APPLYFLAGS e7c34902f libmount: fix typo e5858dbb6 libmount: use some MS_* flags as superblock flags f1875239b libmount: use mount(2) for remount on Linux < 5.14 58cb00c63 github: check apt-cache in more robust way 0a9bf6166 libmount: handle failure to apply flags as part of a mount operation e98ef85a8 build-sys: release++ (v2.39.1) 12169133e docs: update v2.39.1-ReleaseNotes 508e25110 docs: update AUTHORS file 6b865e1b0 po-man: merge changes aa4f94cb5 po: merge changes cad75b635 po-man: add ro.po (from translationproject.org) 8acfe93b7 po-man: add ko.po (from translationproject.org) 5f31e774c po-man: update uk.po (from translationproject.org) 29626b095 po: update hr.po (from translationproject.org) 90835e74a cal: fix long option name for -c 7826c3ebe cal: fix error message for bad -c argument 07e6b9a12 lib/strutils: fix typo cc99bfd06 build-sys: don't call pkg-config --static if unnecessary 3b59942da logger: initialize socket credentials contol union 4746cf936 unshare: fix error message for unexpected time offsets a34e6aced losetup: deduplicate find_unused() logic 423d9efab lib/loopdev: consistently return error values from loopcxt_find_unused() 8feec98a8 lib/loopdev: document function return values 36ce0c250 tests: (run.sh) detect builddir from working directory 1943ad6cd hardlink: (man) add missing comma 1a4522541 libmount: fix sync options between context and fs structs 3aba3fb95 tests: (lsfd) add a case for verifying ENDPOINTS column output in JSON mode c289c152a lsfd: use ARRAY_STRING for ENDPOINTS column in JSON output mode 665e28c30 lsfd: (filter) weakly support ARRAY_STRING and ARRAY_NUMBER json types d9fca2b62 sfdisk: add hint about duplicate UUIDs when use dump d84ee5a46 lib: remove pager.c from libcommon c50da4b07 lib/ include/: cleanup license headers d5adeed7a lib/color-names: fix license header 868f7f10c tests: fix update special mount test output 2278e2f91 tests: backport special mount script d8a4e680f libmount: always ignore user=<name> 22d0a6557 meson: check for _NL_TIME_WEEK_1STDAY in langinfo.h 205e88e51 meson: conditionalize waitpid aebfa97d5 meson: add conditionalization for test progs bbe24d5b1 meson: implement HAVE_PTY bc58e3b35 meson: install write setgid f5a411883 meson: install wall setgid 64e67f720 meson: install umount setuid 4c3c05006 meson: install mount setuid 58c107277 meson: install newgrp setuid 8549017af meson: install su setuid fa818dc8d meson: install chsh setuid 1e9fc724e meson: install chfn setuid 53ff0fcda libmount: introduce LIBMOUNT_FORCE_MOUNT2={always,never,auto} 61307a950 libmount: (optlist) correctly detect ro status 8c85b0805 tests: backport mount_setattr test 5004732d8 libblkid: jfs - avoid undefined shift c082e6182 build-sys: fix typo in waitpid check b04446bfd Update fsck.8.adoc 9429cc72b dmesg: make kmsg read() buffer big enough for kernel 198fd3fb2 Fix Blizzard-M2-Max 20c04a509 Add recent Apple ARM cores 9d4d768f2 libmount: don't call hooks after mount.<type> helper 98ed3edf8 meson: install symlink for vigr man page f25cc3372 meson: include bash-completion for write 760c01641 meson: include bash-completion for newgrp ddf48064f libmount: cleanup enosys returns from mount hoop 230459358 libmount: don't call mount.<type> helper with usernames 6fa034d0a libmount: fix options prepend/insert and merging f8c9ef62e libmount: check for availability of mount_setattr 9422991c9 libmount: don't pass option "defaults" to helper 2806759b5 build-sys: add --disable-waitpid 01e3ec515 mesg.1 cleanups/updates 00a19fb8c libblkid: (bcache) also calculate checksum over journal buckets 158639a2a libblkid: (bcache) extend superblock definition 43926e0b0 ci: prevent prompts during installation 01bb5d12d tools: (asciidoctor) explicitly require extensions module da22c179c build-sys: only pass --failure-level if supported 1bfc285fa lsfd: (tests) fix typo 66fac3e71 blkzone: don't take address of struct blk_zone d2e3ac959 enosys: add support for loongarch a369feacc meson: require 0.57 f084562c3 enosys: split audit arch detection into dedicated header 88f76e37a enosys: add support for sparc f65c49002 waitpid: only build when pidfd_open is available ddf9b36ea libsmartcols: (samples): fix format truncation warning 0d0766fbe test_uuidd: make pthread_t formatting more robust 873a896e0 mkfs.minix: handle 64bit time on 32bit system 69d8400e4 enosys: add support for MIPS, PowerPC and ARC 0ee8ac065 test_enosys: fix build on old kernels Remove upstreamed patches: - 0001-test_enosys-add-support-for-mips.patch - 200-meson-no-po.patch Backport patch: - 001-meson-properly-handle-gettext-non-existence.patch Signed-off-by: Nick Hainke <vincent@systemli.org> |
||
---|---|---|
.github | ||
config | ||
include | ||
LICENSES | ||
package | ||
scripts | ||
target | ||
toolchain | ||
tools | ||
.gitattributes | ||
.gitignore | ||
BSDmakefile | ||
Config.in | ||
COPYING | ||
feeds.conf.default | ||
Makefile | ||
README.md | ||
rules.mk |
OpenWrt Project is a Linux operating system targeting embedded devices. Instead of trying to create a single, static firmware, OpenWrt provides a fully writable filesystem with package management. This frees you from the application selection and configuration provided by the vendor and allows you to customize the device through the use of packages to suit any application. For developers, OpenWrt is the framework to build an application without having to build a complete firmware around it; for users this means the ability for full customization, to use the device in ways never envisioned.
Sunshine!
Download
Built firmware images are available for many architectures and come with a package selection to be used as WiFi home router. To quickly find a factory image usable to migrate from a vendor stock firmware to OpenWrt, try the Firmware Selector.
If your device is supported, please follow the Info link to see install instructions or consult the support resources listed below.
An advanced user may require additional or specific package. (Toolchain, SDK, ...) For everything else than simple firmware download, try the wiki download page:
Development
To build your own firmware you need a GNU/Linux, BSD or MacOSX system (case sensitive filesystem required). Cygwin is unsupported because of the lack of a case sensitive file system.
Requirements
You need the following tools to compile OpenWrt, the package names vary between distributions. A complete list with distribution specific packages is found in the Build System Setup documentation.
binutils bzip2 diff find flex gawk gcc-6+ getopt grep install libc-dev libz-dev
make4.1+ perl python3.7+ rsync subversion unzip which
Quickstart
-
Run
./scripts/feeds update -a
to obtain all the latest package definitions defined in feeds.conf / feeds.conf.default -
Run
./scripts/feeds install -a
to install symlinks for all obtained packages into package/feeds/ -
Run
make menuconfig
to select your preferred configuration for the toolchain, target system & firmware packages. -
Run
make
to build your firmware. This will download all sources, build the cross-compile toolchain and then cross-compile the GNU/Linux kernel & all chosen applications for your target system.
Related Repositories
The main repository uses multiple sub-repositories to manage packages of
different categories. All packages are installed via the OpenWrt package
manager called opkg
. If you're looking to develop the web interface or port
packages to OpenWrt, please find the fitting repository below.
-
LuCI Web Interface: Modern and modular interface to control the device via a web browser.
-
OpenWrt Packages: Community repository of ported packages.
-
OpenWrt Routing: Packages specifically focused on (mesh) routing.
-
OpenWrt Video: Packages specifically focused on display servers and clients (Xorg and Wayland).
Support Information
For a list of supported devices see the OpenWrt Hardware Database
Documentation
Support Community
- Forum: For usage, projects, discussions and hardware advise.
- Support Chat: Channel
#openwrt
on oftc.net.
Developer Community
- Bug Reports: Report bugs in OpenWrt
- Dev Mailing List: Send patches
- Dev Chat: Channel
#openwrt-devel
on oftc.net.
License
OpenWrt is licensed under GPL-2.0