Commit Graph

790 Commits

Author SHA1 Message Date
classabbyamp a1519c6953 .gitattributes: only root readme is generated 2025-01-01 14:52:10 -05:00
classabbyamp 71fabc67f8 .github/workflows/gen-images: add aarch64* live isos, matrixify jobs
also simplify environment prep and fix qemu dependencies

the matrix should ensure we never run out of space while building

unfortunately, github limits us to 10 inputs so we can't add a selector
for live iso platforms
2025-01-01 14:52:10 -05:00
classabbyamp 3d239df517 isolinux: add more rows to accomodate more entries 2025-01-01 14:52:10 -05:00
classabbyamp 568bb9da37 README: regenerate 2025-01-01 14:52:10 -05:00
classabbyamp 2c46e8d7e0 Makefile: add arm64 live isos 2025-01-01 14:52:10 -05:00
classabbyamp 0039e8ef38 mkiso: don't install void-installer on aarch64
aarch64 is full of special cases that void-installer doesn't know about,
especially for real platforms. Users should just do chroot installs for
now.
2025-01-01 14:52:10 -05:00
classabbyamp c99cafb613 mklive.sh: ensure dash is /bin/sh if installed 2025-01-01 14:52:10 -05:00
classabbyamp 06fe42b5f2 mklive.sh: use lib.sh more
but don't use it for everything, as some things seem a bit broken with
mklive specifically

closes: #322
2025-01-01 14:52:10 -05:00
classabbyamp 66d1c54261 lib.sh: update binfmt handling, add riscv
recent qemu updates mean we don't need to hardcode the binfmts, as they
are shipped as files generated by qemu, importable by update-binfmts.

ref: #386
2025-01-01 14:52:10 -05:00
classabbyamp 20b42c6218 platforms: add pinebookpro 2025-01-01 14:52:10 -05:00
classabbyamp 5931d6640b mklive, grub: add support for "platforms" in live isos
this can be used to define special platform-specific support things,
like extra packages, a device tree, and cmdline. This allows creating
live isos that support generic arm64 UEFI as well as ones that require
special care (like the x13s)
2025-01-01 14:52:10 -05:00
classabbyamp a78af02a01 mklive, mkiso: support aarch64 2025-01-01 14:52:10 -05:00
classabbyamp 41ccf5e202 build-x86-images: rename to mkiso 2025-01-01 14:52:10 -05:00
classabbyamp 04324be18e installer.sh: add post-installation menu for enabling services
chose to do it *post* install, just before syncing and unmounting,
because it's the easiest place to know exactly what services will be
available and which will be enabled in the target system in the mess
that is the el-cheapo installer.

filters out some important services that users shouldn't be messing with
at this point in the install, like some agettys, udevd, and sulogin.
2024-12-28 07:47:22 -05:00
classabbyamp e7f28f260e
build-x86-images: add tmux
it's only a MB, meh

fixes: #227
2024-12-21 13:21:13 -05:00
classabbyamp be5844985f
mklive: use xbps-query cmd and proper arch
fixes mistake in 6a56ad6
2024-12-21 12:44:09 -05:00
classabbyamp 76018f0a95
mklive: load dm-raid on boot if exists as a module
fixes: #239
2024-12-21 11:59:23 -05:00
classabbyamp 6a56ad61bb
mklive: fix inclusion of some dkms modules
dkms makes `/var/lib/dkms` during xbps's package configuration, so if
a dkms module comes *before dkms alphabetically*, it fails `dkms add`
with `Error! No write access to DKMS tree at /var/lib/dkms` (which is
silenced by the xbps trigger)... because `/var/lib/dkms` doesn't exist
yet.

fixes: #358
2024-12-21 10:34:27 -05:00
classabbyamp 5ae016556d mklive: don't install linux if -v is passed
also support passing linux metapackages

fixes: #128
fixes: #387
fixes: #388
2024-12-21 09:50:55 -05:00
classabbyamp 358a0dec24 installer.sh: put reconfigure output in a programbox
fixes: #172
2024-12-21 09:50:55 -05:00
classabbyamp 66616c9e48 installer.sh: don't install/remove grub packages if bootloader is none
fixes: #104
2024-12-21 09:50:55 -05:00
classabbyamp 380f0fd3c4 grub, isolinux: add nomodeset menuentries, more hotkeys
add hotkeys for:
- speech + nomodeset (g)
- memtest (m)
- uefi firmware (f)
- reboot (b)
- poweroff (p)

the nomodeset entry will be useful in cases like the nvidia 6.6 issue,
where boot fails due to graphics drivers issues.

dracut/vmklive: add hook that disables display manager services if
nomodeset is set

fixes: #160
2024-12-21 09:50:55 -05:00
classabbyamp f3d5188b7c installer.sh: update pre-partitioning message
reflow text and improve accuracy

fixes: #72
2024-12-21 09:50:55 -05:00
classabbyamp bb602252ca installer.sh: add users to default groups, ignore nogroup and pkg groups 2024-12-21 09:10:22 -05:00
meator 056412afef mklive.sh: Make default shell configurable
This commit add a -S option that changes the default root shell of
the iso. It also mentions the live.shell kernel option that changes
the shell of the unprivileged user (anon).
2024-12-20 00:27:00 -05:00
Piraty 1c819294d9
mklive: fix memtest86+ install
see void-packages/b46a87070cb ("memtest86+: update to 7.20.")
2024-12-06 22:07:28 +01:00
Tim Sandquist 85f8bcf2c6 Increase size of /boot for pinebookpro, rock64, and rockpro64
Size of two recent kernels and initramfs images exceeds 256M.
2024-08-06 17:16:08 -04:00
Tim Sandquist 9027ab13cd Add rockpro64 to image builder
Based on @tiemenwerkman's work on https://github.com/void-linux/void-mklive/pull/221
2024-08-06 17:16:08 -04:00
classabbyamp f5bdce3736 mkimage: reduce default total image size to 512 + 256 MiB
because growpart is now run at boot, we can make the base image smaller.
This does not provide any benefit when compressed (the image is still
81M compressed with xz 9), but this should be much faster to write to
the target SD card/USB drive for SBCs, where the throughput is rather
slow. Growpart will inflate the root partition to a reasonable size for
the user. Users who want more flexibility in partitioning should be
doing a chroot/PLATFORMFS install.
2024-07-25 21:21:49 -04:00
classabbyamp b9da2dc059 mkimage: include and enable growpart in images 2024-07-25 21:21:49 -04:00
classabbyamp 54b983f8e3 packer/scripts/cloud.sh: use packaged growpart and core-service 2024-07-25 21:21:49 -04:00
classabbyamp 9e31c2f262 packer/hcl2: update source ISOs 2024-07-25 21:21:49 -04:00
classabbyamp a0623c6bf6 packer: track lockfile 2024-07-25 21:21:49 -04:00
classabbyamp f68e200135 .gitignore: add entries 2024-07-25 21:21:49 -04:00
classabbyamp 5b6ef65055
build-x86-images: kde tree no longer depend on NetworkManager
so install it explicitly
2024-07-12 13:42:20 -04:00
classabbyamp 4c53797b27
.github/workflows/gen-images: fix release.sh commnand 2024-03-13 16:00:55 -04:00
classabbyamp a943fe36a1
Makefile: default to nproc COMPRESSOR_THREADS 2024-03-12 10:51:36 -04:00
classabbyamp 9c2ba38e14
build-x86-images.sh: don't enable the elogind service
this appears to cause XDG_RUNTIME_DIR to not be exported in the latest
xfce image, which causes pipewire to fail to launch.
2024-03-12 09:56:01 -04:00
classabbyamp 8c83981f0b
.github/workflows/gen-images: add summary 2024-03-12 07:57:37 -04:00
classabbyamp 6a2d3620f3
release.sh: add ability to select a run id for download 2024-03-12 07:29:12 -04:00
classabbyamp f9551cb9ae
release.sh: pass key passphrase on stdin 2024-02-26 14:36:57 -05:00
classabbyamp da202ebf75
release.sh: fix signing
minisign is the way to go
2024-02-23 23:52:46 -05:00
classabbyamp 7479e6d980
Makefile: add scripts and dependencies of images
so the makefile can be used more easily when editing the scripts
2024-02-22 22:46:06 -05:00
classabbyamp 9708d22136
mklive: check if pseudofs exists before umounting it 2024-02-22 21:48:45 -05:00
classabbyamp 63c1152489
version: bump 2024-02-17 05:23:50 -05:00
classabbyamp adc2d6b54b
.github/workflows/gen-images.yml: refactor
for whatever reason, the old workflow was running out of space on the
runner. splitting it up into different jobs and combining it at the end
fixes that. not 100% optimal because it doesn't reüse the ROOTFS when
building PLATFORMFS and PLATFORMFS when building SBC images. I couldn't
think of a good way to do that if e.g. generating ROOTFSes was not
done in the ROOTFS step.

also add checkboxes for each kind of image to make it more ergonomic to
generate a subset of images while still keeping the default strings.
unfortunately, this means we're at the max number of inputs so something
will have to change if we reënable netboot images or something.
2024-02-17 05:23:49 -05:00
classabbyamp 08651697b5
Makefile: no stderr for readme, set output filename, fix checksum dep 2024-02-17 05:23:48 -05:00
classabbyamp c4785dd957
README: clarify arm images slightly 2024-02-16 06:22:00 -05:00
classabbyamp a7698238e2
mkplatformfs, mkrootfs: show help if no args 2024-02-16 06:21:59 -05:00
classabbyamp 44a30c43f6
mklive.sh: fix issues with error handling and unmounting pseudofs
- add some error handling to `umount_pseudofs`
- disable the trap before running `error_out` to stop it running multiple times
- add `--one-file-system` to ensure that the `rm -rf` can't screw you

fixes #364
2024-02-16 06:21:57 -05:00