README (1888B)
1 Minimal Reliable Reproducible Linux 2 =================================== 3 4 Intent of this project is to build robust, minimal Linux-based system that is 5 just enough to boot, start some containers (via unshare and pidns patch to s6), 6 and rebuild itself. 7 8 It should be fully compatible with installation as a software overlay over 9 existing Linux distributions. 10 11 The robustnes should come from two design decisions: 12 * packaging simple software that does it's job right 13 * using filesystem layout that supports fully parallel installation with atomic 14 switchover 15 16 See: 17 * https://ccx.te2000.cz/stagit/pthbs/ for package manager code 18 * https://ccx.te2000.cz/stagit/pthbs_genpkgpy/ for package generator 19 20 Requirements 21 ------------ 22 23 The bootstrap is done by compiling musl-cross-make. 24 Ideally you should not need anything above requirements of that project but 25 currently the reproducible build checks are implemented using explicit calls to 26 busybox binary. (TODO: sandbox.py needs to be rewritten to C and bootstrapped) 27 28 For regenerating the package build scripts from templates you will also need 29 Python3 and Jinja2. 30 31 Packages 32 -------- 33 34 Packaged software 35 ~~~~~~~~~~~~~~~~~ 36 37 * busybox 38 * execline 39 * gnu-make 40 * mdevd 41 * musl-cross-make 42 * including gmp, intl, mpc, mpfr, zlib 43 * s6 44 * s6-dns 45 * s6-linux-init 46 * s6-linux-utils 47 * s6-portable-utils 48 * s6-rc 49 * skalibs 50 * popt 51 * m4 52 * flex 53 * bison 54 * patch 55 * diffutils 56 * netbsd-curses 57 * s6-networking 58 * libressl 59 * curl 60 * zsh 61 * git 62 * apk 63 * xbps 64 * zstd 65 66 Work in progress 67 ~~~~~~~~~~~~~~~~ 68 69 * versioned system configuration including init 70 * statically link more modules 71 * rsync 72 * add acl and xattr support 73 * linux 74 * build fully-featured kernel for real hardware 75 * libelf 76 * consider openssl for env-specific certificate lists 77 78 Planned packages 79 ~~~~~~~~~~~~~~~~ 80 81 * TLS certificates 82 * cgroup-tools (cgconfigparser) 83 * libcap (execcap tool) 84 * ... more iff needed 85