Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ Tiny initramfs written in POSIX shell
- Optional. Required for keymap support
* `kmod` OR `busybox modutils` with [patch](https://gist.github.com/illiliti/ef9ee781b5c6bf36d9493d99b4a1ffb6) (already included in KISS Linux)
- Optional. Required if kernel compiled with loadable external modules
* `objcopy` and `objdump` OR `llvm-objcopy`
- Optional. Required for UKI support

## Installation

Expand Down
169 changes: 105 additions & 64 deletions doc/tinyramfs.5
Original file line number Diff line number Diff line change
@@ -1,184 +1,225 @@
.\" Generated by scdoc 1.11.2
.\" Generated by scdoc 1.11.3
.\" Complete documentation for this program is not available as a GNU info page
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.nh
.ad l
.\" Begin generated content:
.TH "tinyramfs" "5" "2022-05-11" "tinyramfs" "2022-05-09"
.P
.TH "tinyramfs" "5" "2025-07-22" "tinyramfs" "2022-05-09"
.PP
.SH NAME
.P
.PP
tinyramfs - configuration file
.P
.PP
.SH DESCRIPTION
.P
.PP
A tinyramfs configuration file is written in POSIX sh.\& Configuration is done
via variable asignment (eg.\& \fBoption=value\fR).\& Special characters and whitespace
must be quoted or escaped, more info: \fBsh\fR(1).\& By default tinyramfs looks to
\fB/etc/tinyramfs/config\fR for a configuration file.\&
.P
.PP
.SH OPTIONS
.P
.PP
Option marked with \fB(bool)\fR can hold a value of true or false.\& False if the
variable is unset or empty, true otherwise.\&
.P
.PP
Some options only apply to certain hooks and have been categorized accordingly.\&
.P
.PP
Options which expect a device as a value can also refer to the device via
\fBUUID\fR, \fBLABEL\fR, and \fBPARTUUID\fR (eg.\& LABEL=<label>).\& This requires a blkid
utility which supports that identifier.\&
.P
.PP
root
.P
.PP
.RS 4
The device your root filesystem is located on.\&
.P
.PP
.RE
hooks
.P
.PP
.RS 4
A comma separated list of hooks to include in the initramfs.\& Hooks can
be found in /lib/tinyramfs/hook.\&d/.\&
.P
A comma separated list of hooks to include in the
initramfs.\& Hooks can be found in /lib/tinyramfs/hook.\&d/.\& \fBThe
order in which hooks appear is significant\fR; a device manager
hook (e.\&g.\& the '\&eudev'\& hook) should be the first element of
the list, the '\&ucode'\& hook should be placed before the '\&uki'\&
hook, if both are used.\&
.PP
.RE
monolith
.P
.PP
.RS 4
(bool) Instructs tinyramfs whether or not to include kernel modules in
the initramfs.\&
.P
.PP
.RE
compress
.P
.PP
.RS 4
The utility to use for compressing the initramfs.\& The option accepts
arbitrary commands (eg.\& '\&gzip -9'\&).\& Use '\&cat'\& for an uncompressed
initramfs.\&
.P
.PP
.RE
hostonly
.P
.PP
.RS 4
(bool) Whether or not to only copy modules specific to your system.\&
.P
.PP
.RE
root_type
.P
.PP
.RS 4
The filesystem you'\&re using for your root device (eg.\& ext4).\&
.P
.PP
.RE
.SS KEYMAP
.P
.PP
keymap_path
.P
.PP
.RS 4
Path to your keymap.\&
.P
.PP
.RE
.SS LUKS
.P
.PP
luks_discard
.P
.PP
.RS 4
(bool) Allow the use of discard (TRIM) requests for your luks device.\&
.P
.PP
\fBWARNING\fR: This option may have a negative security impact.\& For more info
read \fBcryptsetup\fR(8).\&
.P
.PP
.RE
luks_header
.P
.PP
.RS 4
Path to your LUKS header.\&
.P
.PP
.RE
luks_root
.P
.PP
.RS 4
The device your LUKS volume is located on.\&
.P
.PP
.RE
luks_name
.P
.PP
.RS 4
The name to map your LUKS device to.\&
.P
.PP
.RE
luks_key
.P
.PP
.RS 4
Path to your LUKS keyfile.\&
.P
.PP
.RE
.SS LVM
.P
.PP
lvm_config
.P
.PP
.RS 4
Path to your LVM configuration file.\&
.P
.PP
.RE
lvm_discard
.P
.PP
.RS 4
(bool) Allow the use of discard (TRIM) requests for your LVM device.\&
.P
.PP
.RE
lvm_group
.P
.PP
.RS 4
The name of your LVM volume group.\&
.P
.PP
.RE
lvm_name
.P
.PP
.RS 4
The name of your LVM logical volume.\&
.P
.PP
.RE
lvm_tag
.P
.PP
.RS 4
The tag of your LVM logical volume.\&
.P
.PP
.RE
.SS RESUME
.P
.PP
resume
.P
.PP
.RS 4
The location of your swap partition.\&
.P
.PP
.RE
.SS ZFS
.P
.PP
zfs_key
.P
.PP
.RS 4
Path to your ZFS keyfile.\&
.P
.PP
.RE
zfs_root
.P
.PP
.RS 4
The device your ZFS volume is located on.\&
.P
.PP
.RE
.SS UCODE
.PP
ucode_image
.PP
.RS 4
Path to a pre-built microcode image (optional, will be
generated if not specified).\&
.PP
.RE
.SS UKI
.PP
uki_cmdline
.PP
.RS 4
Kernel command line to include in the image.\&
.PP
.RE
uki_efistub
.PP
.RS 4
Path to an EFI Stub loader.\& Will try to use
/lib/systemd/boot/efi/linuxx64.\&efi.\&stub if unset.\&
.PP
.RE
uki_kernel
.PP
.RS 4
Path to the kernel.\& $kernel holds the kernel version passed to tinyramfs.\&
.PP
.RE
uki_only
.PP
.RS 4
(bool) Whether or not to remove the initramfs image after
using it to generate the UKI.\&
.PP
.RE
.SH FILES
.P
.PP
/lib/tinyramfs/hook.\&d/
.RS 4
tinyramfs hooks
.P
.PP
.RE
.SH SEE ALSO
.P
.PP
\fBtinyramfs\fR(8)
.P
.PP
.SH AUTHORS
.P
.PP
tinyramfs by illiliti \fBhttps://github.\&com/illiliti\fR
.br
man page by fluorescent_haze \fBhttps://github.\&com/fluorescent-haze\fR
37 changes: 34 additions & 3 deletions doc/tinyramfs.5.scd
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tinyramfs(5) "tinyramfs" "2022-05-09"
tinyramfs(5) "tinyramfs" "2025-07-22"

# NAME

Expand Down Expand Up @@ -28,8 +28,12 @@ root

hooks

A comma separated list of hooks to include in the initramfs. Hooks can
be found in /lib/tinyramfs/hook.d/.
A comma separated list of hooks to include in the
initramfs. Hooks can be found in /lib/tinyramfs/hook.d/. *The
order in which hooks appear is significant*; a device manager
hook (e.g. the 'eudev' hook) should be the first element of
the list, the 'ucode' hook should be placed before the 'uki'
hook, if both are used.

monolith

Expand Down Expand Up @@ -119,6 +123,33 @@ zfs_root

The device your ZFS volume is located on.

## UCODE

ucode_image

Path to a pre-built microcode image (optional, will be
generated if not specified).

## UKI

uki_cmdline

Kernel command line to include in the image.

uki_efistub

Path to an EFI Stub loader. Will try to use
/lib/systemd/boot/efi/linuxx64.efi.stub if unset.

uki_kernel

Path to the kernel. $kernel holds the kernel version passed to tinyramfs.

uki_only

(bool) Whether or not to remove the initramfs image after
using it to generate the UKI.

# FILES

/lib/tinyramfs/hook.d/
Expand Down
Loading