The Noid Linux live image maker

classabbyamp f5ef8795a8 README.md: add documentation of live iso kcl vars %!s(int64=2) %!d(string=hai) anos
data e4cf0ea630 data, mklive.sh.in: remove void-vpkgs.conf %!s(int64=4) %!d(string=hai) anos
dracut 129aa5cbc6 dracut/vmklive: enable espeakup if live.screenreader is in kcl %!s(int64=2) %!d(string=hai) anos
grub 749ed6c3c4 mklive: add a new entry to load image into RAM (grub, syslinux). %!s(int64=10) %!d(string=hai) anos
isolinux 749ed6c3c4 mklive: add a new entry to load image into RAM (grub, syslinux). %!s(int64=10) %!d(string=hai) anos
keys 30d9ebece4 Added musl.voidlinux.net RSA pubkey. %!s(int64=10) %!d(string=hai) anos
packer 0c4a3222ce packer: Ensure cloud images generate new keys %!s(int64=2) %!d(string=hai) anos
pxelinux.cfg 414ebf318f Add netboot generator script %!s(int64=7) %!d(string=hai) anos
.gitignore 5859e79c29 packer: Initial packer config %!s(int64=6) %!d(string=hai) anos
COPYING bc5f40d51f COPYING: it's 2015. %!s(int64=10) %!d(string=hai) anos
Makefile b53cb28dce Makefile: remove masterdir docker infrastructure %!s(int64=2) %!d(string=hai) anos
README.md f5ef8795a8 README.md: add documentation of live iso kcl vars %!s(int64=2) %!d(string=hai) anos
build-x86-images.sh.in 98ab76eeb7 build-x86-images: include console screenreader %!s(int64=2) %!d(string=hai) anos
installer.sh.in 1ff636a1c5 installer.sh.in: remove espeakup from local install if not enabled %!s(int64=2) %!d(string=hai) anos
lib.sh.in eb8167df6c Use --make-rslave to avoid stuck mounts %!s(int64=2) %!d(string=hai) anos
mkimage.sh.in a1ef2ae762 mk*.sh: use UTC date %!s(int64=2) %!d(string=hai) anos
mklive.sh.in a1ef2ae762 mk*.sh: use UTC date %!s(int64=2) %!d(string=hai) anos
mknet.sh.in a1ef2ae762 mk*.sh: use UTC date %!s(int64=2) %!d(string=hai) anos
mkplatformfs.sh.in c820517fbc mkrootfs,mkplatformfs: preserve xattrs when compressing/extracting %!s(int64=2) %!d(string=hai) anos
mkrootfs.sh.in c820517fbc mkrootfs,mkplatformfs: preserve xattrs when compressing/extracting %!s(int64=2) %!d(string=hai) anos
release.sh.in 4c66390467 various: switch from rpi{,2,3,4} to rpi-$ARCH for rpi images %!s(int64=2) %!d(string=hai) anos

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)

Build Dependencies

  • make

Dependencies

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

Usage

Type

$ make

and then 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.screenreader enables 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