The Noid Linux live image maker

classabbyamp 4e1edcfb88 build-x86-images, dracut/vmklive, installer: add support for brltty 1 år sedan
.github d5ef9ec033 .github/workflows/gen-images.yml: create CI workflow 1 år sedan
data e4cf0ea630 data, mklive.sh.in: remove void-vpkgs.conf 4 år sedan
dracut 4e1edcfb88 build-x86-images, dracut/vmklive, installer: add support for brltty 1 år sedan
grub b5a51edf94 grub: add menu entries for screenreader, memtest, efi fw setup, reboot, poweroff 1 år sedan
isolinux faa72f6a33 isolinux: add menu entries for screenreader, memtest, reboot, poweroff 1 år sedan
keys 30d9ebece4 Added musl.voidlinux.net RSA pubkey. 10 år sedan
packer 0c4a3222ce packer: Ensure cloud images generate new keys 2 år sedan
pxelinux.cfg 414ebf318f Add netboot generator script 7 år sedan
.gitignore 224d93b3e8 release.sh: replace with script that triggers CI 1 år sedan
COPYING bc5f40d51f COPYING: it's 2015. 10 år sedan
Makefile 50e541e326 Makefile: various changes to make CI easier 1 år sedan
README.md 3b113c5a29 dracut/vmklive: rename live.screenreader to live.accessibility 1 år sedan
build-x86-images.sh 4e1edcfb88 build-x86-images, dracut/vmklive, installer: add support for brltty 1 år sedan
installer.sh 4e1edcfb88 build-x86-images, dracut/vmklive, installer: add support for brltty 1 år sedan
lib.sh 8871805dc5 *.sh: refactor new version method into lib.sh 2 år sedan
mkimage.sh 8871805dc5 *.sh: refactor new version method into lib.sh 2 år sedan
mklive.sh cbe785bfba mklive: add memtest86+ to images 1 år sedan
mknet.sh 8871805dc5 *.sh: refactor new version method into lib.sh 2 år sedan
mkplatformfs.sh 8871805dc5 *.sh: refactor new version method into lib.sh 2 år sedan
mkrootfs.sh 8871805dc5 *.sh: refactor new version method into lib.sh 2 år sedan
release.sh 224d93b3e8 release.sh: replace with script that triggers CI 1 år sedan
version 8871805dc5 *.sh: refactor new version method into lib.sh 2 år sedan

README.md

The Void Linux image/live/rootfs maker and installer

This repository contains utilities for Void Linux:

  • installer (The Void Linux el-cheapo installer for x86)
  • mklive (The Void Linux live image maker for x86)

  • mkimage (The Void Linux image maker for ARM platforms)

  • mkplatformfs (The Void Linux filesystem tool to produce a rootfs for a particular platform)

  • mkrootfs (The Void Linux rootfs maker for ARM platforms)

  • mknet (Script to generate netboot tarballs for Void)

Dependencies

  • Compression type for the initramfs image
    • liblz4 (for lz4, xz) (default)
  • xbps>=0.45
  • qemu-user-static binaries (for mkrootfs)
  • bash

Usage

See the usage output:

$ ./mklive.sh -h
$ ./mkrootfs.sh -h
$ ./mkimage.sh -h

Examples

Build a native live image keyboard set to 'fr':

# ./mklive.sh -k fr

Build an i686 (on x86_64) live image with some additional packages:

# ./mklive.sh -a i686 -p 'vim rtorrent'

Build an x86_64 musl live image with packages stored in a local repository:

# ./mklive.sh -a x86_64-musl -r /path/to/host/binpkgs

See the usage output for more information :-)

Kernel Command-line Parameters

void-mklive-based live images support several kernel command-line arguments that can change the behavior of the live system:

  • live.autologin will skip the initial login screen on tty1.
  • live.user will change the username of the non-root user from the default anon. The password remains voidlinux.
  • live.shell sets the default shell for the non-root user in the live environment.
  • live.accessibility enables accessibility features like the console screenreader espeakup in the live environment.
  • console can be set to ttyS0, hvc0, or hvsi0 to enable agetty on that serial console.
  • locale.LANG will set the LANG environment variable. Defaults to en_US.UTF-8.
  • vconsole.keymap will set the console keymap. Defaults to us.

Examples:

  • live.autologin live.user=foo live.shell=/bin/bash would create the user foo with the default shell /bin/bash on boot, and log them in automatically on tty1
  • live.shell=/bin/bash would set the default shell for the anon user to /bin/bash
  • console=ttyS0 vconsole.keymap=cf would enable ttyS0 and set the keymap in the console to cf
  • locale.LANG=fr_CA.UTF-8 would set the live system's language to fr_CA.UTF-8