Tiny initramfs written in POSIX shell
- Shell 97%
- Makefile 3%
| .github/workflows | meta: add shellcheck | |
| doc | doc/tinyramfs.5{,scd}: Add more information regarding usage of hooks | |
| hook | hook/uki: new hook for generating a uki | |
| lib | lib/init.sh: fix parsing kernel cmdline ( #42 ) | |
| test | test/*: increase memory in qemu vm | |
| LICENSE | Initial commit | |
| Makefile | doc/*: add man pages | |
| README.md | README.md: Document objcopy or llvm-objcopy dependency for UKI | |
| tinyramfs | tinyramfs: add support for late (after initramfs generation) hooks | |
Tinyramfs
Tiny initramfs written in POSIX shell
Features
- No
local's, no bashisms, only POSIX shell - Portable, not distro specific
- Easy to use configuration
- Make time and init time hooks
- ZFS + native encryption support
- LUKS (detached header, key), LVM
- mdev, mdevd, eudev, systemd-udevd
- Resume from swap partition
Dependencies
- POSIX make (build time)
- POSIX utilities
- POSIX shell
switch_rootmountcpioldd- Optional. Required for copying binary dependencies
strip- Optional. Required for reducing image size by stripping binaries
blkid- Optional. Required for UUID, LABEL, PARTUUID support
mdevORmdevdOReudevORsystemd-udevdOR CONFIG_UEVENT_HELPER- Optional. Required for modular kernel, /dev/mapper/* and /dev/disk/* creation
zfs- Optional. Required for ZFS support
lvm2- Optional. Required for LVM support
cryptsetup- Optional. Required for LUKS support
busybox loadkmap- Optional. Required for keymap support
kmodORbusybox modutilswith patch (already included in KISS Linux)- Optional. Required if kernel compiled with loadable external modules
objcopyandobjdumpORllvm-objcopy- Optional. Required for UKI support
Installation
make PREFIX=/usr install
Documentation
Thanks
Donate
You can donate if you like this project
BTC: 1BwrcsgtWZeLVvNeEQSg4A28a3yrGN3FpK