Files
rocky/bin/make-rocky
T
Bart Sjerps 052a88cd3b update
2026-07-10 10:18:21 +02:00

36 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
#============================================================================
# Title : make-iso
# Description : Make a custom Rocky Linux installable ISO
# ---------------------------------------------------------------------------
# requires lorax, genisoimage: dnf install lorax genisoimage
die() { echo "$(basename $0): [die] $@" >&2 ; exit 1 ; }
test $(id -u) == 0 || die "Run as root (sudo $(basename $0) <opts>"
rpm -q --quiet lorax || die "lorax not installed"
rpm -q --quiet genisoimage || die "genisoimage not installed"
# Setup temp working directory - clean it up when program ends
readonly WORKDIR=$(/bin/mktemp --tmpdir -d)
cleanup() { /bin/rm -rf ${WORKDIR:-/none} ; }
trap "cleanup" INT TERM HUP EXIT
topdir=$(git rev-parse --show-toplevel)
echo $topdir
isopath=/nfs/sw/os/rocky/Rocky-9.7-x86_64-minimal.iso
target=/nfs/pve/template/iso/custom.iso
ks=$topdir/kickstart/rocky-9.cfg
custom=$topdir/custom
cp -r $custom $WORKDIR
cp $ks $WORKDIR
test -f $target && sudo rm -f $target
$topdir/bin/mkksiso -a $WORKDIR/custom --ks=$WORKDIR/$(basename $ks) --custom_cfg $topdir/kickstart/isolinux.cfg $isopath $target