From 87d97c779e70b4bcc0aae36302b318a2a0879813 Mon Sep 17 00:00:00 2001 From: udeved Date: Mon, 21 Dec 2015 11:00:08 +0100 Subject: [PATCH] buildiso: fix bug when using buildiso; reset profile vars --- bin/buildiso.in | 29 ++++++++++++++++------------- lib/util-iso.sh | 14 ++++---------- lib/util.sh | 47 +++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 61 insertions(+), 29 deletions(-) diff --git a/bin/buildiso.in b/bin/buildiso.in index cb255be..e44bccd 100755 --- a/bin/buildiso.in +++ b/bin/buildiso.in @@ -23,27 +23,28 @@ show_profile(){ eval_edition "$1" load_profile "${run_dir}/${edition}/$1" msg2 "edition: ${edition}" + msg2 "initsys: ${initsys}" if ${verbose};then msg2 "work_dir: ${work_dir}" msg2 "iso_dir: ${iso_dir}" msg2 "iso_file: ${iso_file}" - msg2 "is_custom_pac_conf: ${is_custom_pac_conf}" - msg2 "initsys: ${initsys}" - if ${use_overlayfs};then - msg2 "mount system: overlayfs" - else - msg2 "mount system: aufs" - fi - [[ ${arch} == 'x86_64' ]] && msg2 "multilib: ${multilib}" + + msg2 "iso_fs: ${iso_fs}" msg2 "displaymanager: ${displaymanager}" msg2 "autologin: ${autologin}" msg2 "nonfree_xorg: ${nonfree_xorg}" - msg2 "kernel: ${kernel}" - msg2 "efi_boot_loader: ${efi_boot_loader}" - msg2 "efi_part_size: ${efi_part_size}" msg2 "pxe_boot: ${pxe_boot}" msg2 "plymouth_boot: ${plymouth_boot}" ${plymouth_boot} && msg2 "plymouth_theme: ${plymouth_theme}" + + [[ ${arch} == 'x86_64' ]] && msg2 "multilib: ${multilib}" + + msg2 "kernel: ${kernel}" + msg2 "efi_boot_loader: ${efi_boot_loader}" + msg2 "efi_part_size: ${efi_part_size}" + + + msg2 "hostname: ${hostname}" msg2 "username: ${username}" msg2 "password: ${password}" @@ -58,7 +59,9 @@ show_profile(){ msg2 "start_openrc_live: ${start_openrc_live[*]}" msg2 "disable_openrc: ${disable_openrc[*]}" fi + msg2 "is_custom_pac_conf: ${is_custom_pac_conf}" fi + unset_profile } display_settings(){ @@ -70,7 +73,7 @@ display_settings(){ msg2 "buildsets: $(list_sets ${sets_dir_iso})" msg2 "buildset_iso: ${buildset_iso}" msg2 "is_buildset: ${is_buildset}" -# msg2 "profile_repo: ${profile_repo}" + msg2 "run_dir: ${run_dir}" msg "OPTIONS:" msg2 "arch: ${arch}" @@ -108,7 +111,7 @@ load_config "${SYSCONFDIR}/manjaro-tools.conf" # to force old way to have buildiso run in iso-profiles dir # run_dir=$(pwd) -load_run_dir "manjaro-tools-iso-profiles" +load_run_dir "${profile_repo}" clean_first=true pretend=false diff --git a/lib/util-iso.sh b/lib/util-iso.sh index 64632ee..91fd0f3 100644 --- a/lib/util-iso.sh +++ b/lib/util-iso.sh @@ -14,14 +14,6 @@ import ${LIBDIR}/util-iso-boot.sh import ${LIBDIR}/util-iso-calamares.sh import ${LIBDIR}/util-pac-conf.sh -import_util_iso_fs(){ - if ${use_overlayfs};then - import ${LIBDIR}/util-iso-overlayfs.sh - else - import ${LIBDIR}/util-iso-aufs.sh - fi -} - # $1: image path squash_image_dir() { if [[ ! -d "$1" ]]; then @@ -613,9 +605,10 @@ build_images(){ make_profile(){ eval_edition "$1" - msg "Start building [$1]" load_profile "${run_dir}/${edition}/$1" - import_util_iso_fs + + msg "Start building [$1]" + import ${LIBDIR}/util-iso-${iso_fs}.sh ${clean_first} && chroot_clean "${work_dir}" if ${iso_only}; then [[ ! -d ${work_dir} ]] && die "Create images: buildiso -p $1 -i" @@ -630,6 +623,7 @@ make_profile(){ build_images compress_images fi + unset_profile msg "Finished building [$1]" msg3 "Time ${FUNCNAME}: $(elapsed_time ${timer_start}) minutes" } diff --git a/lib/util.sh b/lib/util.sh index 3aaa746..e1ec021 100644 --- a/lib/util.sh +++ b/lib/util.sh @@ -199,10 +199,11 @@ init_buildiso(){ [[ -z ${iso_checksum} ]] && iso_checksum='md5' [[ -z ${use_overlayfs} ]] && use_overlayfs='true' - used_kernel=$(uname -r | cut -d . -f1) - [[ ${used_kernel} -lt "4" ]] && use_overlayfs='false' -# [[ -z ${profile_repo} ]] && profile_repo='manjaro-tools-iso-profiles' + local used_kernel=$(uname -r) + [[ ${used_kernel%%*.} < "4" ]] && use_overlayfs='false' + + [[ -z ${profile_repo} ]] && profile_repo='manjaro-tools-iso-profiles' } init_deployiso(){ @@ -239,6 +240,33 @@ load_config(){ return 0 } +unset_profile(){ + unset initsys + unset displaymanager + unset autologin + unset multilib + unset pxe_boot + unset plymouth_boot + unset nonfree_xorg + unset default_desktop_executable + unset default_desktop_file + unset kernel + unset efi_boot_loader + unset efi_part_size + unset hostname + unset username + unset plymouth_theme + unset password + unset addgroups + unset start_systemd + unset disable_systemd + unset start_openrc + unset disable_openrc + unset start_systemd_live + unset start_openrc_live + unset use_overlayfs +} + load_profile_config(){ [[ -f $1 ]] || return 1 @@ -266,8 +294,15 @@ load_profile_config(){ [[ -z ${default_desktop_file} ]] && default_desktop_file="none" [[ -z ${kernel} ]] && kernel="linux41" - used_kernel=$(echo ${kernel} | cut -c 6) - [[ ${used_kernel} -lt "4" ]] && use_overlayfs='false' + + local used_kernel=${kernel:5:1} + [[ ${used_kernel} < "4" ]] && use_overlayfs='false' + + if ${use_overlayfs};then + iso_fs="overlayfs" + else + iso_fs="aufs" + fi [[ -z ${efi_boot_loader} ]] && efi_boot_loader="grub" @@ -322,7 +357,7 @@ clean_dir(){ write_repo_conf(){ local repos=$(find $USER_HOME -type f -name ".buildiso") local path name - [[ -z ${repos[@]} ]] && repos=(${DATADIR}/iso-profiles) + [[ -z ${repos[@]} ]] && run_dir=${DATADIR}/iso-profiles && return 1 for r in ${repos[@]}; do path=${r%/.*} name=${path##*/}