helper functions ================ These functions focus on the installation of devuan directly to disk using the zfs filesystem as the root fs. you can find these blend helper functions in `blends/${blend_name}/helpers`. additional or overridden helper functions to add or test functionality or workarounds specific to the blend to avoid changes to the sdk. ## build_metal_dist() defines the sequence of calls that will result in a devuan install with root and boot zfs to one or two disks (mirrored) using either grub-pc or grub-efi to boot. ## blend_bootstrap_setup() * Overide the post 'debootstrap stage 2' placeholder function of zlib/debootstrap bootstrap_complete_base. * The default is return 0 ## install-custdebs() Override the helper function: * takes the 'apt-get -f' out of the loop so that dependency provided by other debs can be resolved. * inside the loop it just uninstalls the deb because of unfullfilled deps. ## install-deb-from-dsc() : WIP * In the style of install-custdebs above but building from the source package using dsc * takes a list of package names, looks up the corresponding dsc using it to build and install. ## install-deb-from-git_gbp() : WIP * take a list of package names and for each select the appropriate salsa/devuan git repo * pull in sources, build using gbp * place the resulting debs in the custdebs location. ## install-custscripts() Added function: * In the style of install-custdebs above but for a collection of arbitrary scripts placed in a * directory alongside the blend custom debs called automate. * The scripts are copied from the blends scripts directory to extra/custom-scripts in blend_preinst() above. * Called after install-customdebs because some need checkinstall which disappears from archives. ## add-user() Override the helper function: * Allow an alternative skel directory ## enable_apt-proxy() ## disable_apt-proxy() ## bootstrap_cpio_unpack() Overide the sdk version of this function to prevent deletion prior to unpacking the cpio as we have mountpoints in place. ## image_partition_disk_zfs() * partition available disks using sgdisk ## image_format_partitions_zfs() * format the efi partions to fat32 * make the swap partitions * create the zfs root and boot pools ## use_swap_partition() * calls swapon on the new swap partitions ## image_zfs_mount() * mounts the zfs pools to the bootstrap directory * mounts the efi partition to the bootstrap /boot * mounts dev proc and sys ## image_zfs_umount() * the reverse of image_zfs_mount ## get_selections() * gets dpkg selections and places three files in /var/tmp: * /var/tmp/packages.list * /var/tmp/pkgs_auto.lst * /var/tmp/pkgs_manual.lst ## set_selections() uses three files to replicate the installed packages of another system. * /var/tmp/packages.list * /var/tmp/pkgs_auto.lst * /var/tmp/pkgs_manual.lst ## enablessh() this function will allow a root or user login in the bootstrapped root using: * ssh-copy-id default@192.168.1.x ## install_kernel_headers() could go in blends/devuan-desktop-live/config $extra_packages and remove headers in blends/devuan-desktop-live/chimaera/config $purge_packages ## install_zfs() installs zfs and supporting packages and sets some parameters. ## install_grub() installs grub related packages, configures and runs the approprate grub for the install type pc or efi.