diff --git a/lib/util-iso-boot.sh b/lib/util-iso-boot.sh index 113d10d..f48f0d8 100644 --- a/lib/util-iso-boot.sh +++ b/lib/util-iso-boot.sh @@ -265,13 +265,13 @@ update_isolinux_msg(){ } write_isomounts(){ - local file=$2/isomounts + local file=$1/isomounts echo '# syntax: ' > ${file} echo '# Sample kernel argument in syslinux: overlay=extra,extra2' >> ${file} echo '' >> ${file} msg2 "Writing livecd entry ..." echo "${arch}/livecd-image.sqfs ${arch} / squashfs" >> ${file} - if [[ -f $1/Packages-Mhwd ]] ; then + if [[ -f ${packages_mhwd} ]] ; then msg2 "Writing mhwd entry ..." echo "${arch}/mhwd-image.sqfs ${arch} / squashfs" >> ${file} fi diff --git a/lib/util-iso.sh b/lib/util-iso.sh index 1313da4..264bcd0 100644 --- a/lib/util-iso.sh +++ b/lib/util-iso.sh @@ -359,7 +359,7 @@ make_isolinux() { make_isomounts() { if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then msg "Creating [isomounts]" - write_isomounts "${profile_dir}" "${work_dir}/iso/${iso_name}" + write_isomounts "${work_dir}/iso/${iso_name}" : > ${work_dir}/build.${FUNCNAME} msg "Done creating [isomounts]" fi @@ -472,6 +472,12 @@ check_custom_pacman_conf(){ fi } +eval_custom(){ + local name=${1##*/} + name=${name#*-} + custom=${name,,} +} + # $1: profile check_profile_sanity(){ local keyfiles=("$1/profile.conf" "$1/mkinitcpio.conf" "$1/Packages-Root" "$1/Packages-Livecd") @@ -496,6 +502,18 @@ check_profile_sanity(){ if ! ${has_keyfiles} && ! ${has_keydirs};then die "Profile [$1] sanity check failed!" fi + + local files=$(ls $1/Packages*) + for f in ${files[@]};do + case $f in + $1/Packages-Root|$1/Packages-Livecd|$1/Packages-Mhwd) continue ;; + *) packages_custom="$f" ;; + esac + done + + eval_custom "${packages_custom}" + + [[ -f "$1/Packages-Mhwd" ]] && packages_mhwd=$1/Packages-Mhwd } check_requirements(){ @@ -529,28 +547,14 @@ check_profile_vars(){ fi } -eval_custom(){ - local files=$(ls $1/Packages*) name - for f in ${files[@]};do - case $f in - $1/Packages-Root|$1/Packages-Livecd|$1/Packages-Mhwd) continue ;; - *) packages_custom="$f" ;; - esac - done - name=${packages_custom##*/} - name=${name#*-} - custom=${name,,} -} - # $1: profile load_profile(){ profile_dir=$1 local prof=${1##*/} msg3 "Profile: [$prof]" check_profile_sanity "${profile_dir}" - load_profile_config "${profile_dir}/profile.conf" || die "${profile_dir} is not a valid profile!" + load_profile_config "${profile_dir}" || die "${profile_dir} is not a valid profile!" check_profile_vars - eval_custom "${profile_dir}" iso_file=$(gen_iso_fn).iso diff --git a/lib/util.sh b/lib/util.sh index 81e723c..56ca5b4 100644 --- a/lib/util.sh +++ b/lib/util.sh @@ -242,7 +242,7 @@ load_profile_config(){ [[ -f $1 ]] || return 1 - profile_conf="$1" + profile_conf="$1/profile.conf" [[ -r ${profile_conf} ]] && source ${profile_conf}