tinitial iso packing - libdevuansdk - common library for devuan's simple distro kits HTML git clone https://git.parazyd.org/libdevuansdk DIR Log DIR Files DIR Refs DIR Submodules DIR README DIR LICENSE --- DIR commit daae74bc00ef670007af5eceac371d6941a61440 DIR parent 25052a6a9a11137cd37306c8638a52d30024bc6c HTML Author: Jaromil <jaromil@dyne.org> Date: Wed, 8 Jun 2016 18:49:07 +0200 initial iso packing Diffstat: M README.md | 1 - A zlibs/iso | 70 +++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 1 deletion(-) --- DIR diff --git a/README.md b/README.md t@@ -45,7 +45,6 @@ Devuan SDK components are designed, written and maintained by: - Ivan J. <parazyd@dyne.org> - Denis Roio <jaromil@dyne.org> - Enzo Nicosia <katolaz@freaknet.org> -- Fred Smith <fsmithred@gmail.com> This source code is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by DIR diff --git a/zlibs/iso b/zlibs/iso t@@ -0,0 +1,70 @@ +#!/usr/bin/env zsh +# +# Copyright (c) 2016 Dyne.org Foundation +# libdevuansdk is written and maintained by +# Jaromil <jaromil@dyne.org> +# KatolaZ <katolaz@freaknet.org> +# parazyd <parazyd@dyne.org> +# +# This file is part of libdevuansdk +# +# This source code is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This software is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this source code. If not, see <http://www.gnu.org/licenses/>. + +vars+=(iso isodir) + +iso_prepare() { + fn iso_prepare + req=(strapdir os release version arch) + root=$strapdir + freq=($strapdir/bin/bash) + # freq=($R/chroot/$chroot_arch/$iso/initrd.gz) + reqck || return 1 + + iso=$os_$release_$version_$arch.iso + isodir=$workdir/iso_$os_$release_$version_$arch + notice "Preparing ISO in $isodir" + mkdir -p $isodir + + [[ -r /usr/lib/ISOLINUX/isolinux.bin ]] || { + error "Isolinux binary not found" + zerr; zshexit } + [[ -r /usr/lib/ISOLINUX/isohdpfx.bin ]] || { + error "Isolinux binary not found" + zerr; zshexit } + cp /usr/lib/ISOLINUX/isolinux.bin $isodir +} + +iso_mkinitrd() { + # TODO: mkinitrd here, Katolaz? +} + +iso_mkusr() { + # TODO: mkusr here, Katolaz? +} + +iso_make() { + fn iso_make + req=(iso isodir) + freq=($isodir/isolinux.bin) + ckreq || return 1 + + xorriso -as mkisofs -output $outdir/$iso \ + -iso-level 3 -full-iso9660-filenames -r -J -no-emul-boot -boot-load-size 4 \ + -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin -partition_offset 16 \ + -boot-info-table -b isolinux.bin -c boot.cat $isodir + + notice "$iso ready" + ls -lh $outdir/$iso +} +