URI: 
       tAdded explicit var to control boot fs type. - 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 68c90d1ae9ee8c1462594730f3c3b6009a7a0b28
   DIR parent 1fdbd917d8f92333f826491b6cecef078a0f5167
  HTML Author: Johny Mattsson <johny.mattsson+github@gmail.com>
       Date:   Mon,  2 Oct 2017 13:04:58 +1100
       
       Added explicit var to control boot fs type.
       
       Since use of GPT does not necessarily imply lack of wanting the boot
       partition formatted and mounted.
       
       Diffstat:
         M docs/creating_wrappers.7.md         |       6 ++++++
         M docs/helper_functions.7.md          |       2 +-
         M zlibs/imaging                       |      43 ++++++++++++++++++++++++-------
       
       3 files changed, 41 insertions(+), 10 deletions(-)
       ---
   DIR diff --git a/docs/creating_wrappers.7.md b/docs/creating_wrappers.7.md
       t@@ -84,6 +84,12 @@ the [zuper](https://github.com/dyne/zuper) zsh library.
          available space. again, see the `image_partition_raw_gpt()` function for a
          better understanding.
        
       +* `$bootfs`
       +  This variable controls the file system type of the boot partition. Recognised
       +  values are `none`, `vfat` (or the synonyms `fat` and `dos`), and `ext4`.
       +  When `none` is specified, the boot partition is left raw and not mounted,
       +  so /boot becomes part of the root partition.
       +
        * `$qemu_bin`  
          declare this if you are bootstrapping for an architecture different than
          yours. it should hold the path to `qemu-user-static` or a similarly named
   DIR diff --git a/docs/helper_functions.7.md b/docs/helper_functions.7.md
       t@@ -10,7 +10,7 @@ libdevuansdk to properly work as well.
        ## build_image_dist()  
        this function is kind of a wrapper function, mostly used in `arm-sdk` to build a
        complete "dd-able" image from start to end. to run, it requires `$arch`,
       -`$size`, `$parted_type`, `$workdir`, and `$strapdir` to be declared. as well as
       +`$size`, `$parted_type`, `$bootfs`, `$workdir`, and `$strapdir` to be declared. as well as
        `$parted_root`, `$parted_boot` if `$parted_type=dos`, or `$gpt_root`,
        `$gpt_boot` if `$parted_type=gpt`. see `creating_wrappers(7)` for insight on
        these variables.
   DIR diff --git a/zlibs/imaging b/zlibs/imaging
       t@@ -35,6 +35,34 @@ image_prepare_raw() {
                        count=$size
        }
        
       +image_format_partitions() {
       +        fn image_format_partitions
       +        req=(bootfs bootpart rootpart)
       +        ckreq || return 1
       +
       +        notice "formatting partitions..."
       +        case "$bootfs" in
       +                none)
       +                        act "skipping boot partition"
       +                        ;;
       +                vfat|fat|dos)
       +                        act "formatting boot as vfat"
       +                        sudo mkfs.vfat ${bootpart}
       +                        ;;
       +                ext4)
       +                        act "formatting boot as ext4"
       +                        sudo mkfs.ext4 ${bootpart}
       +                        ;;
       +                *)
       +                        error "unknown parted_bootfs type '$bootfs'"
       +                        zerr
       +                        ;;
       +        esac
       +
       +        act "formatting root as ext4"
       +        sudo mkfs.ext4 ${rootpart}
       +}
       +
        image_partition_raw_dos() {
                fn image_partition_raw_dos
                req=(workdir image_name parted_boot parted_root)
       t@@ -54,14 +82,12 @@ image_partition_raw_dos() {
                bootpart=${loopdevice}p1
                rootpart=${loopdevice}p2
        
       -        notice "formatting partitions..."
       -        sudo mkfs.vfat ${bootpart}
       -        sudo mkfs.ext4 ${rootpart}
       +        image_format_partitions
        }
        
        image_partition_raw_gpt() {
                fn image_partition_raw_gpt
       -        req=(workdir image_name)
       +        req=(workdir image_name gpt_boot gpt_root)
                ckreq || return 1
        
                notice "partitioning raw gpt image..."
       t@@ -84,8 +110,7 @@ image_partition_raw_gpt() {
                bootpart="${loopdevice}p1"
                rootpart="${loopdevice}p2"
        
       -        notice "formatting partitions..."
       -        sudo mkfs.ext4 -L rootfs ${rootpart}
       +        image_format_partitions
        }
        
        image_pack_dist() {
       t@@ -139,14 +164,14 @@ image_pack_dist() {
        
        image_raw_mount() {
                fn image_raw_mount
       -        req=(workdir bootpart rootpart)
       +        req=(workdir bootpart rootpart bootfs)
                ckreq || return 1
        
                mkdir -p $workdir/mnt
                sudo mount $rootpart $workdir/mnt && \
                        act "mounted root partition" || zerr
        
       -        [[ "$parted_type" == gpt ]] || {
       +        [[ "$bootfs" == none ]] || {
                        sudo mkdir $workdir/mnt/boot
                        sudo mount $bootpart $workdir/mnt/boot && \
                                act "mounted boot partition" || zerr
       t@@ -158,7 +183,7 @@ image_raw_umount() {
                req=(workdir bootpart rootpart)
                ckreq || return 1
        
       -        [[ "$parted_type" == gpt ]] || {
       +        [[ "$bootfs" == none ]] || {
                        sudo umount $workdir/mnt/boot && act "unmounted boot partition" || zerr
                        sleep 1
                }