summaryrefslogtreecommitdiffstats
path: root/build_tools
diff options
context:
space:
mode:
Diffstat (limited to 'build_tools')
-rw-r--r--build_tools/archiso/mythvantage/aitab.netinstall6
-rwxr-xr-xbuild_tools/archiso/mythvantage/build.sh643
-rwxr-xr-xbuild_tools/archiso/mythvantage/build.sh.backup630
-rw-r--r--build_tools/archiso/mythvantage/core.exclude.i6864
-rw-r--r--build_tools/archiso/mythvantage/core.exclude.x86_646
-rw-r--r--build_tools/archiso/mythvantage/efiboot/EFI/boot/startup.nsh10
-rwxr-xr-xbuild_tools/archiso/mythvantage/go.sh76
-rw-r--r--build_tools/archiso/mythvantage/isolinux/isolinux.cfg5
-rw-r--r--build_tools/archiso/mythvantage/mkinitcpio.conf2
-rw-r--r--build_tools/archiso/mythvantage/old.cache41
-rw-r--r--build_tools/archiso/mythvantage/profile_files/local_disk_testing.pacman9
-rw-r--r--build_tools/archiso/mythvantage/profile_files/local_disk_testing.pngbin0 -> 145543 bytes
-rw-r--r--build_tools/archiso/mythvantage/profile_files/local_mirror_release.pacman7
-rw-r--r--build_tools/archiso/mythvantage/profile_files/local_mirror_release.pngbin0 -> 137444 bytes
-rw-r--r--build_tools/archiso/mythvantage/profile_files/local_mirror_testing.pacman7
-rw-r--r--build_tools/archiso/mythvantage/profile_files/local_mirror_testing.pngbin0 -> 130533 bytes
-rw-r--r--build_tools/archiso/mythvantage/profile_files/packages.i68646
-rw-r--r--build_tools/archiso/mythvantage/profile_files/packages.x86_64141
-rw-r--r--build_tools/archiso/mythvantage/profile_files/packages.x86_64.cache26
-rw-r--r--build_tools/archiso/mythvantage/profile_files/pacman.conf72
-rw-r--r--build_tools/archiso/mythvantage/profile_files/pristine.list2
-rw-r--r--build_tools/archiso/mythvantage/profile_files/remote_release.pacman7
-rw-r--r--build_tools/archiso/mythvantage/profile_files/remote_release.pngbin0 -> 154620 bytes
-rw-r--r--build_tools/archiso/mythvantage/profile_files/remote_testing.pacman7
-rw-r--r--build_tools/archiso/mythvantage/profile_files/remote_testing.pngbin0 -> 154620 bytes
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/arch-release1
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/archiso/functions20
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/conf.d/dhcpcd6
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/hostname1
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/hosts9
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/etc/hosts.allow8
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/etc/hosts.deny6
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/inittab48
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/issue5
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/locale.conf1
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/locale.gen462
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/nsswitch.conf19
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/pam.d/su6
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/rc.conf7
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/rc.d/functions.d/symlink_used_block_devices7
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/etc/rc.d/pacman-init34
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/etc/rc.local110
-rw-r--r--build_tools/archiso/mythvantage/root-image/etc/vconsole.conf1
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/root/.post_process/go.sh40
-rw-r--r--build_tools/archiso/mythvantage/root-image/root/.post_process/locale.py23
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/root/.post_process/menu.lst60
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/root/.post_process/rc.conf71
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/root/LinHES-install.sh38
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/root/startx37
-rwxr-xr-xbuild_tools/archiso/mythvantage/root-image/usr/bin/autologin2
-rw-r--r--build_tools/archiso/mythvantage/root-image/usr/bin/go.sh2
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso.cfg11
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_head.cfg25
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe32.cfg32
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe64.cfg32
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_32_inc.cfg3
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_both_inc.cfg4
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_choose.cfg11
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_sys32.cfg9
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_sys64.cfg9
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_32_inc.cfg3
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_both_inc.cfg4
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_choose.cfg11
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/archiso_tail.cfg27
-rw-r--r--build_tools/archiso/mythvantage/syslinux.dual/syslinux.cfg5
-rw-r--r--build_tools/archiso/mythvantage/syslinux/archiso.cfg11
-rw-r--r--build_tools/archiso/mythvantage/syslinux/archiso_head.cfg44
-rw-r--r--build_tools/archiso/mythvantage/syslinux/archiso_pxe_inc.cfg3
-rw-r--r--build_tools/archiso/mythvantage/syslinux/archiso_sys.cfg40
-rw-r--r--build_tools/archiso/mythvantage/syslinux/archiso_sys_inc.cfg3
-rw-r--r--build_tools/archiso/mythvantage/syslinux/archiso_tail.cfg27
-rw-r--r--build_tools/archiso/mythvantage/syslinux/hardsub.cfg58
-rw-r--r--build_tools/archiso/mythvantage/syslinux/splash.pngbin0 -> 130533 bytes
-rw-r--r--build_tools/archiso/mythvantage/syslinux/syslinux.cfg5
74 files changed, 3148 insertions, 0 deletions
diff --git a/build_tools/archiso/mythvantage/aitab.netinstall b/build_tools/archiso/mythvantage/aitab.netinstall
new file mode 100644
index 0000000..afab395
--- /dev/null
+++ b/build_tools/archiso/mythvantage/aitab.netinstall
@@ -0,0 +1,6 @@
+# <img> <mnt> <arch> <sfs_comp> <fs_type> <fs_size>
+root-image / %ARCH% xz ext4 50%
+lib-modules /lib/modules %ARCH% xz ext4 50%
+var-lib-pacman /var/lib/pacman %ARCH% xz ext4 50%
+data-storage-disk0-pacman-pkg /data/storage/disk0/pacman/pkg %ARCH% xz ext4 50%
+usr-share /usr/share any xz ext4 50%
diff --git a/build_tools/archiso/mythvantage/build.sh b/build_tools/archiso/mythvantage/build.sh
new file mode 100755
index 0000000..bf8e2ea
--- /dev/null
+++ b/build_tools/archiso/mythvantage/build.sh
@@ -0,0 +1,643 @@
+#!/bin/bash
+set -e -u
+iso_name=linhes.iso
+iso_label="linhes_$(date +%Y%m)"
+iso_version=$(date +%Y.%m.%d)
+install_dir=arch
+arch=$(uname -m)
+work_dir=/tmp/work
+out_dir=/tmp
+verbose=""
+cmd_args=""
+
+script_path=$(readlink -f ${0%/*})
+
+pacman_cache_files="data-storage-disk0-pacman-pkg"
+cache_dirs="/data/storage/disk0/pacman/pkg"
+pacman_cache=${cache_dirs}
+
+setup_workdir() {
+ #JM
+ #this is complicated way todo a mv ${script_path}/pacman.conf $work_dir/pacman.conf
+ #but we can't do a move because it's called at least 3 times.
+ #cache_dirs=($(pacman --config ${script_path}/pacman.conf -v 2>&1 | grep '^Cache Dirs:' | sed 's/Cache Dirs:\s*//g'))
+ #cache_dirs=($(pacman -C ${pacman_conf} -v 2>&1 | grep '^Cache Dirs:' | sed 's/Cache Dirs:\s*//g'))
+ mkdir -p "${work_dir}"
+
+ pacman_conf="${work_dir}/pacman.conf"
+
+ sed -r "s|^#?\\s*CacheDir.+|CacheDir = $(echo -n ${cache_dirs[@]})|g" \
+ "${script_path}/pacman.conf" > "${pacman_conf}"
+
+}
+
+# Base installation (root-image)
+make_basefs() {
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" init
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -p "memtest86+ mkinitcpio-nfs-utils nbd curl" install
+}
+
+# Additional packages (root-image)
+make_packages() {
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -p "$(grep -v ^# ${script_path}/packages.${arch})" install
+}
+
+# Copy mkinitcpio archiso hooks (root-image)
+make_setup_mkinitcpio() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _hook
+ for _hook in archiso archiso_shutdown archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs archiso_loop_mnt; do
+ cp /usr/lib/initcpio/hooks/${_hook} ${work_dir}/root-image/usr/lib/initcpio/hooks
+ cp /usr/lib/initcpio/install/${_hook} ${work_dir}/root-image/usr/lib/initcpio/install
+ done
+ cp /usr/lib/initcpio/install/archiso_kms ${work_dir}/root-image/usr/lib/initcpio/install
+ cp /usr/lib/initcpio/archiso_shutdown ${work_dir}/root-image/usr/lib/initcpio
+ cp /usr/lib/initcpio/archiso_pxe_nbd ${work_dir}/root-image/usr/lib/initcpio
+ cp ${script_path}/mkinitcpio.conf ${work_dir}/root-image/etc/mkinitcpio-archiso.conf
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare ${install_dir}/boot/
+make_boot() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _src=${work_dir}/root-image
+ local _dst_boot=${work_dir}/iso/${install_dir}/boot
+ mkdir -p ${_dst_boot}/${arch}
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \
+ -r 'mkinitcpio -c /etc/mkinitcpio-archiso.conf -k /boot/vmlinuz-linux -g /boot/archiso.img' \
+ run
+ mv ${_src}/boot/archiso.img ${_dst_boot}/${arch}/archiso.img
+ #mv ${_src}/boot/vmlinuz-linux ${_dst_boot}/${arch}/vmlinuz
+ #JM FINDME
+ cp ${_src}/boot/vmlinuz-linux ${_dst_boot}/${arch}/vmlinuz
+ cp ${_src}/boot/memtest86+/memtest.bin ${_dst_boot}/memtest
+ cp ${_src}/usr/share/licenses/common/GPL2/license.txt ${_dst_boot}/memtest.COPYING
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare EFI "El Torito" boot image (using Linux >= 3.3 EFI boot stub)
+make_boot_efi() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ if [[ ${arch} == "x86_64" ]]; then
+ mkdir -p ${work_dir}/iso/EFI/archiso
+ dd of=${work_dir}/iso/EFI/archiso/efiboot.img bs=1 seek=20M count=0
+ mkfs.vfat ${work_dir}/iso/EFI/archiso/efiboot.img
+
+ mkdir -p ${work_dir}/efiboot
+ mount ${work_dir}/iso/EFI/archiso/efiboot.img ${work_dir}/efiboot
+
+ mkdir -p ${work_dir}/efiboot/EFI/archiso
+ cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/archiso/vmlinuz.efi
+ cp ${work_dir}/iso/${install_dir}/boot/x86_64/archiso.img ${work_dir}/efiboot/EFI/archiso/archiso.img
+
+ # There are plans to support command line options via a config file (not yet in linux-3.3)
+ #cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/boot/bootx64.efi
+ #cp ${work_dir}/iso/${install_dir}/boot/x86_64/archiso.img ${work_dir}/efiboot/EFI/boot/linux.img
+ #echo "archisolabel=${iso_label} initrd=\EFI\boot\linux.img" | iconv -f ascii -t ucs2 > ${work_dir}/iso/EFI/boot/linux.conf
+
+ # For now, provide an EFI-shell until 'linux.conf' hits mainline.
+ mkdir -p ${work_dir}/efiboot/EFI/boot
+ # EFI Shell 2.0 for UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=UEFI_Shell )
+ #wget -O ${work_dir}/efiboot/EFI/boot/bootx64.efi https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/ShellBinPkg/UefiShell/X64/Shell.efi
+ # EFI Shell 1.0 for non UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=Efi-shell )
+ wget -O ${work_dir}/efiboot/EFI/boot/bootx64.efi https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/EdkShellBinPkg/FullShell/X64/Shell_Full.efi
+
+ # Add an EFI shell script for automatic boot if ESC-key is not pressed within 5 seconds timeout.
+ sed "s|%ARCHISO_LABEL%|${iso_label}|g;
+ s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/efiboot/EFI/boot/startup.nsh > ${work_dir}/efiboot/EFI/boot/startup.nsh
+
+ umount ${work_dir}/efiboot
+ fi
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare /${install_dir}/boot/syslinux
+make_syslinux() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _src_syslinux=${work_dir}/root-image/usr/lib/syslinux
+ local _dst_syslinux=${work_dir}/iso/${install_dir}/boot/syslinux
+ mkdir -p ${_dst_syslinux}
+ for _cfg in ${script_path}/syslinux/*.cfg; do
+ sed "s|%ARCHISO_LABEL%|${iso_label}|g;
+ s|%INSTALL_DIR%|${install_dir}|g;
+ s|%ARCH%|${arch}|g" ${_cfg} > ${_dst_syslinux}/${_cfg##*/}
+ done
+ cp ${script_path}/syslinux/splash.png ${_dst_syslinux}
+ cp ${_src_syslinux}/*.c32 ${_dst_syslinux}
+ cp ${_src_syslinux}/*.com ${_dst_syslinux}
+ cp ${_src_syslinux}/*.0 ${_dst_syslinux}
+ cp ${_src_syslinux}/memdisk ${_dst_syslinux}
+ mkdir -p ${_dst_syslinux}/hdt
+ cat ${work_dir}/root-image/usr/share/hwdata/pci.ids | gzip -9 > ${_dst_syslinux}/hdt/pciids.gz
+ cat ${work_dir}/root-image/lib/modules/*-ARCH/modules.alias | gzip -9 > ${_dst_syslinux}/hdt/modalias.gz
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare /isolinux
+make_isolinux() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mkdir -p ${work_dir}/iso/isolinux
+ sed "s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/isolinux/isolinux.cfg > ${work_dir}/iso/isolinux/isolinux.cfg
+ cp ${work_dir}/root-image/usr/lib/syslinux/isolinux.bin ${work_dir}/iso/isolinux/
+ cp ${work_dir}/root-image/usr/lib/syslinux/isohdpfx.bin ${work_dir}/iso/isolinux/
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+#JM FIND ME
+copy_pacman_root(){
+ cp -f "${pacman_conf}" ${work_dir}/root-image/etc
+}
+find_size(){
+ #find the size of the install.
+ #This is used to calculate progress on the install
+ tsize=`du -sm ${work_dir}/root-image | cut -f1`
+ echo "TOTALSIZE=$tsize" > ${work_dir}/root-image/root/.install_size
+ upsize=`du -sm --exclude data ${work_dir}/root-image |cut -f1`
+ echo "UPGRADESIZE=$upsize" >> ${work_dir}/root-image/root/.install_size
+}
+
+
+make_pristine_copy() {
+ echo "Creating copy of pristine file for later use"
+ cd $work_dir/root-image
+ pwd
+ cat ${script_path}/pristine.list | xargs tar -cf pristine.tar
+ cd -
+
+}
+
+make_cache_repo() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]
+ then
+ local _url _urls _pkg_name _dst _pkgs _cache_dir
+ mkdir -p ${work_dir}/root-image/${pacman_cache}
+ old_cache=${work_dir}/old_cache
+ mkdir -p "$old_cache"
+ pacman --config "${pacman_conf}" -Sy -r ${work_dir}/root-image
+ echo "------------------------------------------"
+ for i in $(cat $script_path/packages.${arch}.cache)
+ do
+ echo "Adding $i to pacman cache"
+ _urls=$(pacman --config "${pacman_conf}" -Sp -r ${work_dir}/root-image ${i})
+ cd $old_cache
+ for url in ${_urls}
+ do
+ echo "downloading $url"
+ wget -N ${url}
+ done
+ cd -
+
+ done
+ cp -rp $old_cache/* ${work_dir}/root-image/${pacman_cache}
+ fi
+ echo "------------------------------------------"
+
+ make_var_cache_pacman
+ make_var_lib_pacman
+}
+
+make_var_cache_pacman(){
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mv ${work_dir}/root-image/${pacman_cache} ${work_dir}/${pacman_cache_files}
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+
+}
+make_var_lib_pacman(){
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ cp -rp ${work_dir}/root-image/var/lib/pacman ${work_dir}/var-lib-pacman
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+
+
+# Customize installation (root-image)
+make_customize_root_image() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ cp -af ${script_path}/root-image ${work_dir}
+ chmod 750 ${work_dir}/root-image/etc/sudoers.d
+ chmod 440 ${work_dir}/root-image/etc/sudoers.d/g_wheel
+ mkdir -p ${work_dir}/root-image/etc/pacman.d
+ #JM
+ #mkdir -p ${work_dir}/storage/data/home
+ #wget -O ${work_dir}/root-image/etc/pacman.d/mirrorlist 'https://www.archlinux.org/mirrorlist/?country=all&protocol=http&use_mirror_status=on'
+ #sed -i "s/#Server/Server/g" ${work_dir}/root-image/etc/pacman.d/mirrorlist
+ #sed -i 's/#\(en_US\.UTF-8\)/\1/' ${work_dir}/root-image/etc/locale.gen
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \
+ -r 'locale-gen' \
+ run
+ #JM
+ #mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \
+ # -r 'useradd -b "/storage/data/home" -m -p "" -G "audio,disk,optical,wheel,storage,video,users" mythtv' \
+ # run
+ #: > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Split out /lib/modules from root-image (makes more "dual-iso" friendly)
+make_lib_modules() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mv ${work_dir}/root-image/lib/modules ${work_dir}/lib-modules
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Split out /usr/share from root-image (makes more "dual-iso" friendly)
+make_usr_share() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mv ${work_dir}/root-image/usr/share ${work_dir}/usr-share
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Make [core] repository, keep "any" pkgs in a separate fs (makes more "dual-iso" friendly)
+make_core_repo() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _url _urls _pkg_name _dst _pkgs _cache_dir
+ mkdir -p ${work_dir}/repo-core-any
+ mkdir -p ${work_dir}/repo-core-${arch}
+ mkdir -p ${work_dir}/pacman.db/var/lib/pacman
+ pacman --config "${pacman_conf}" -Sy -r ${work_dir}/pacman.db
+ _pkgs=$(comm -2 -3 <(pacman --config "${pacman_conf}" -Sql -r ${work_dir}/pacman.db core | sort | sed 's@^@core/@') \
+ <(grep -v ^# ${script_path}/core.exclude.${arch} | sort | sed 's@^@core/@'))
+ _urls=$(pacman --config "${pacman_conf}" -Sddp -r ${work_dir}/pacman.db ${_pkgs})
+ pacman --config "${pacman_conf}" -Swdd -r ${work_dir}/pacman.db --noprogressbar --noconfirm ${_pkgs}
+ for _url in ${_urls}; do
+ _pkg_name=${_url##*/}
+ _dst=${work_dir}/repo-core-${arch}/${_pkg_name}
+ for _cache_dir in ${cache_dirs[@]}; do
+ if [[ -e "${_cache_dir}/${_pkg_name}" ]]; then
+ cp "${_cache_dir}/${_pkg_name}" ${_dst}
+ fi
+ done
+ # download the package signature
+ #curl -sC - -f "${_url}.sig" > "${_dst}.sig"
+ repo-add -q ${work_dir}/repo-core-${arch}/core.db.tar.gz ${_dst}
+ # remove the signature file again as it is now included in the db file
+ rm -f "${_dst}.sig"
+ if [[ ${_pkg_name} == *any.pkg.tar* ]]; then
+ mv ${_dst} ${work_dir}/repo-core-any/${_pkg_name}
+ ln -sf ../any/${_pkg_name} ${_dst}
+ fi
+ done
+ # Remove old copy of db file
+ rm -f ${work_dir}/repo-core-${arch}/core.db.tar.gz.old
+ mkdir -p ${work_dir}/iso/${install_dir}
+ pacman --config "${pacman_conf}" -Sp -r ${work_dir}/pacman.db --print-format "%r/%n-%v" ${_pkgs} | sort > ${work_dir}/iso/${install_dir}/pkglist.repo-core.${arch}.txt
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Process aitab
+# args: $1 (core | netinstall)
+make_aitab() {
+ local _iso_type=${1}
+ if [[ ! -e ${work_dir}/build.${FUNCNAME}_${_iso_type} ]]; then
+ sed "s|%ARCH%|${arch}|g" ${script_path}/aitab.${_iso_type} > ${work_dir}/iso/${install_dir}/aitab
+ : > ${work_dir}/build.${FUNCNAME}_${_iso_type}
+ fi
+}
+
+# Build all filesystem images specified in aitab (.fs .fs.sfs .sfs)
+make_prepare() {
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" pkglist
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" prepare
+}
+
+# Build ISO
+# args: $1 (core | netinstall)
+make_iso() {
+ local _iso_type=${1}
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" checksum
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-${_iso_type}-${arch}.iso"
+ #JM
+ cd ${out_dir}
+ rm -f test3.iso
+ ln -s ${iso_name}-${iso_version}-${_iso_type}-${arch}.iso test3.iso
+ cd -
+}
+
+# Build dual-iso images from ${work_dir}/i686/iso and ${work_dir}/x86_64/iso
+# args: $1 (core | netinstall)
+make_dual() {
+ local _iso_type=${1}
+ if [[ ! -e ${work_dir}/dual/build.${FUNCNAME}_${_iso_type} ]]; then
+ if [[ ! -d ${work_dir}/i686/iso || ! -d ${work_dir}/x86_64/iso ]]; then
+ echo "ERROR: i686 or x86_64 builds does not exist."
+ _usage 1
+ fi
+ local _src_one _src_two _cfg
+ if [[ ${arch} == "i686" ]]; then
+ _src_one=${work_dir}/i686/iso
+ _src_two=${work_dir}/x86_64/iso
+ else
+ _src_one=${work_dir}/x86_64/iso
+ _src_two=${work_dir}/i686/iso
+ fi
+ mkdir -p ${work_dir}/dual/iso
+ cp -a -l -f ${_src_one} ${work_dir}/dual
+ cp -a -l -n ${_src_two} ${work_dir}/dual
+ rm -f ${work_dir}/dual/iso/${install_dir}/aitab
+ rm -f ${work_dir}/dual/iso/${install_dir}/boot/syslinux/*.cfg
+ if [[ ${_iso_type} == "core" ]]; then
+ if [[ ! -e ${work_dir}/dual/iso/${install_dir}/any/repo-core-any.sfs ||
+ ! -e ${work_dir}/dual/iso/${install_dir}/i686/repo-core-i686.sfs ||
+ ! -e ${work_dir}/dual/iso/${install_dir}/x86_64/repo-core-x86_64.sfs ]]; then
+ echo "ERROR: core_iso_single build is not found."
+ _usage 1
+ fi
+ else
+ rm -f ${work_dir}/dual/iso/${install_dir}/any/repo-core-any.sfs
+ rm -f ${work_dir}/dual/iso/${install_dir}/i686/repo-core-i686.sfs
+ rm -f ${work_dir}/dual/iso/${install_dir}/x86_64/repo-core-x86_64.sfs
+ rm -f ${work_dir}/dual/iso/${install_dir}/pkglist.repo-core.i686.txt
+ rm -f ${work_dir}/dual/iso/${install_dir}/pkglist.repo-core.x86_64.txt
+ fi
+ paste -d"\n" <(sed "s|%ARCH%|i686|g" ${script_path}/aitab.${_iso_type}) \
+ <(sed "s|%ARCH%|x86_64|g" ${script_path}/aitab.${_iso_type}) | uniq > ${work_dir}/dual/iso/${install_dir}/aitab
+ for _cfg in ${script_path}/syslinux.dual/*.cfg; do
+ sed "s|%ARCHISO_LABEL%|${iso_label}|g;
+ s|%INSTALL_DIR%|${install_dir}|g" ${_cfg} > ${work_dir}/dual/iso/${install_dir}/boot/syslinux/${_cfg##*/}
+ done
+ mkarchiso ${verbose} -w "${work_dir}/dual" -D "${install_dir}" checksum
+ mkarchiso ${verbose} -w "${work_dir}/dual" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-${_iso_type}-dual.iso"
+ : > ${work_dir}/dual/build.${FUNCNAME}_${_iso_type}
+ fi
+}
+
+purge_single ()
+{
+ if [[ -d ${work_dir} ]]; then
+ find ${work_dir} -mindepth 1 -maxdepth 1 \
+ ! -path ${work_dir}/iso -prune \
+ | xargs rm -rf
+ fi
+}
+
+purge_dual ()
+{
+ if [[ -d ${work_dir}/dual ]]; then
+ find ${work_dir}/dual -mindepth 1 -maxdepth 1 \
+ ! -path ${work_dir}/dual/iso -prune \
+ | xargs rm -rf
+ fi
+}
+
+clean_single ()
+{
+ rm -rf ${work_dir}
+ rm -f ${out_dir}/${iso_name}-${iso_version}-*-${arch}.iso
+}
+
+clean_dual ()
+{
+ rm -rf ${work_dir}/dual
+ rm -f ${out_dir}/${iso_name}-${iso_version}-*-dual.iso
+}
+
+make_common_single() {
+ make_basefs
+ make_packages
+ make_setup_mkinitcpio
+ make_boot
+ make_boot_efi
+ make_syslinux
+ make_isolinux
+
+ #JM FIND ME
+ make_cache_repo
+ make_pristine_copy
+ copy_pacman_root
+ find_size
+
+ make_customize_root_image
+ make_lib_modules
+ make_usr_share
+ make_aitab $1
+ make_prepare $1
+ make_iso $1
+}
+
+_usage ()
+{
+ echo "usage ${0} [options] command <command options>"
+ echo
+ echo " General options:"
+ echo " -N <iso_name> Set an iso filename (prefix)"
+ echo " Default: ${iso_name}"
+ echo " -V <iso_version> Set an iso version (in filename)"
+ echo " Default: ${iso_version}"
+ echo " -L <iso_label> Set an iso label (disk label)"
+ echo " Default: ${iso_label}"
+ echo " -D <install_dir> Set an install_dir (directory inside iso)"
+ echo " Default: ${install_dir}"
+ echo " -w <work_dir> Set the working directory"
+ echo " Default: ${work_dir}"
+ echo " -o <out_dir> Set the output directory"
+ echo " Default: ${out_dir}"
+ echo " -v Enable verbose output"
+ echo " -h This help message"
+ echo
+ echo " Commands:"
+ echo " build <mode> <type>"
+ echo " Build selected .iso by <mode> and <type>"
+ echo " purge <mode>"
+ echo " Clean working directory except iso/ directory of build <mode>"
+ echo " clean <mode>"
+ echo " Clean working directory and .iso file in output directory of build <mode>"
+ echo
+ echo " Command options:"
+ echo " <mode> Valid values 'single', 'dual' or 'all'"
+ echo " <type> Valid values 'netinstall', 'core' or 'all'"
+ exit ${1}
+}
+
+if [[ ${EUID} -ne 0 ]]; then
+ echo "This script must be run as root."
+ _usage 1
+fi
+
+while getopts 'N:V:L:D:w:o:vh' arg; do
+ case "${arg}" in
+ N)
+ iso_name="${OPTARG}"
+ cmd_args+=" -N ${iso_name}"
+ ;;
+ V)
+ iso_version="${OPTARG}"
+ cmd_args+=" -V ${iso_version}"
+ ;;
+ L)
+ iso_label="${OPTARG}"
+ cmd_args+=" -L ${iso_label}"
+ ;;
+ D)
+ install_dir="${OPTARG}"
+ cmd_args+=" -D ${install_dir}"
+ ;;
+ w)
+ work_dir="${OPTARG}"
+ cmd_args+=" -w ${work_dir}"
+ ;;
+ o)
+ out_dir="${OPTARG}"
+ cmd_args+=" -o ${out_dir}"
+ ;;
+ v)
+ verbose="-v"
+ cmd_args+=" -v"
+ ;;
+ h|?) _usage 0 ;;
+ *)
+ _msg_error "Invalid argument '${arg}'" 0
+ _usage 1
+ ;;
+ esac
+done
+
+shift $((OPTIND - 1))
+
+if [[ $# -lt 1 ]]; then
+ echo "No command specified"
+ _usage 1
+fi
+command_name="${1}"
+
+if [[ $# -lt 2 ]]; then
+ echo "No command mode specified"
+ _usage 1
+fi
+command_mode="${2}"
+
+if [[ ${command_name} == "build" ]]; then
+ if [[ $# -lt 3 ]]; then
+ echo "No build type specified"
+ _usage 1
+ fi
+command_type="${3}"
+fi
+
+if [[ ${command_mode} == "all" && ${arch} != "x86_64" ]]; then
+ echo "This mode <all> needs to be run on x86_64"
+ _usage 1
+fi
+
+if [[ ${command_mode} == "single" ]]; then
+ work_dir=${work_dir}/${arch}
+fi
+
+setup_workdir
+
+case "${command_name}" in
+ build)
+ case "${command_mode}" in
+ single)
+ case "${command_type}" in
+ netinstall)
+ #make_common_single netinstall
+ make_common_single netinstall
+ ;;
+ core)
+ make_core_repo
+ make_common_single core
+ ;;
+ all)
+ make_common_single netinstall
+ make_core_repo
+ make_common_single core
+ ;;
+ *)
+ echo "Invalid build type '${command_type}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ dual)
+ case "${command_type}" in
+ netinstall)
+ make_dual netinstall
+ ;;
+ core)
+ make_dual core
+ ;;
+ all)
+ make_dual netinstall
+ make_dual core
+ ;;
+ *)
+ echo "Invalid build type '${command_type}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ all)
+ case "${command_type}" in
+ netinstall|core|all)
+ $0 ${cmd_args} build single ${command_type}
+ $0 ${cmd_args} purge single
+ linux32 $0 ${cmd_args} build single ${command_type}
+ linux32 $0 ${cmd_args} purge single
+ $0 ${cmd_args} build dual ${command_type}
+ $0 ${cmd_args} purge dual
+ ;;
+ *)
+ echo "Invalid build type '${command_type}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Invalid build mode '${command_mode}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ purge)
+ case "${command_mode}" in
+ single)
+ purge_single
+ ;;
+ dual)
+ purge_dual
+ ;;
+ all)
+ $0 ${cmd_args} purge single
+ linux32 $0 ${cmd_args} purge single
+ $0 ${cmd_args} purge dual
+ ;;
+ *)
+ echo "Invalid purge mode '${command_mode}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ clean)
+ case "${command_mode}" in
+ single)
+ clean_single
+ ;;
+ dual)
+ clean_dual
+ ;;
+ all)
+ $0 ${cmd_args} clean single
+ linux32 $0 ${cmd_args} clean single
+ $0 ${cmd_args} clean dual
+ ;;
+ *)
+ echo "Invalid clean mode '${command_mode}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Invalid command name '${command_name}'"
+ _usage 1
+ ;;
+esac
diff --git a/build_tools/archiso/mythvantage/build.sh.backup b/build_tools/archiso/mythvantage/build.sh.backup
new file mode 100755
index 0000000..243762e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/build.sh.backup
@@ -0,0 +1,630 @@
+#!/bin/bash
+set -e -u
+iso_name=linhes.iso
+iso_label="linhes_$(date +%Y%m)"
+iso_version=$(date +%Y.%m.%d)
+install_dir=arch
+arch=$(uname -m)
+work_dir=work
+out_dir=out
+verbose=""
+cmd_args=""
+
+script_path=$(readlink -f ${0%/*})
+
+setup_workdir() {
+ cache_dirs=($(pacman -v 2>&1 | grep '^Cache Dirs:' | sed 's/Cache Dirs:\s*//g'))
+ mkdir -p "${work_dir}"
+ pacman_conf="${work_dir}/pacman.conf"
+ sed -r "s|^#?\\s*CacheDir.+|CacheDir = $(echo -n ${cache_dirs[@]})|g" \
+ "${script_path}/pacman.conf" > "${pacman_conf}"
+}
+
+# Base installation (root-image)
+make_basefs() {
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" init
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -p "memtest86+ mkinitcpio-nfs-utils nbd curl" install
+}
+
+# Additional packages (root-image)
+make_packages() {
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -p "$(grep -v ^# ${script_path}/packages.${arch})" install
+}
+
+# Copy mkinitcpio archiso hooks (root-image)
+make_setup_mkinitcpio() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _hook
+ for _hook in archiso archiso_shutdown archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs archiso_loop_mnt; do
+ cp /usr/lib/initcpio/hooks/${_hook} ${work_dir}/root-image/usr/lib/initcpio/hooks
+ cp /usr/lib/initcpio/install/${_hook} ${work_dir}/root-image/usr/lib/initcpio/install
+ done
+ cp /usr/lib/initcpio/install/archiso_kms ${work_dir}/root-image/usr/lib/initcpio/install
+ cp /usr/lib/initcpio/archiso_shutdown ${work_dir}/root-image/usr/lib/initcpio
+ cp /usr/lib/initcpio/archiso_pxe_nbd ${work_dir}/root-image/usr/lib/initcpio
+ cp ${script_path}/mkinitcpio.conf ${work_dir}/root-image/etc/mkinitcpio-archiso.conf
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare ${install_dir}/boot/
+make_boot() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _src=${work_dir}/root-image
+ local _dst_boot=${work_dir}/iso/${install_dir}/boot
+ mkdir -p ${_dst_boot}/${arch}
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \
+ -r 'mkinitcpio -c /etc/mkinitcpio-archiso.conf -k /boot/vmlinuz-linux -g /boot/archiso.img' \
+ run
+ mv ${_src}/boot/archiso.img ${_dst_boot}/${arch}/archiso.img
+ #mv ${_src}/boot/vmlinuz-linux ${_dst_boot}/${arch}/vmlinuz
+ #JM FINDME
+ cp ${_src}/boot/vmlinuz-linux ${_dst_boot}/${arch}/vmlinuz
+ cp ${_src}/boot/memtest86+/memtest.bin ${_dst_boot}/memtest
+ cp ${_src}/usr/share/licenses/common/GPL2/license.txt ${_dst_boot}/memtest.COPYING
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare EFI "El Torito" boot image (using Linux >= 3.3 EFI boot stub)
+make_boot_efi() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ if [[ ${arch} == "x86_64" ]]; then
+ mkdir -p ${work_dir}/iso/EFI/archiso
+ dd of=${work_dir}/iso/EFI/archiso/efiboot.img bs=1 seek=20M count=0
+ mkfs.vfat ${work_dir}/iso/EFI/archiso/efiboot.img
+
+ mkdir -p ${work_dir}/efiboot
+ mount ${work_dir}/iso/EFI/archiso/efiboot.img ${work_dir}/efiboot
+
+ mkdir -p ${work_dir}/efiboot/EFI/archiso
+ cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/archiso/vmlinuz.efi
+ cp ${work_dir}/iso/${install_dir}/boot/x86_64/archiso.img ${work_dir}/efiboot/EFI/archiso/archiso.img
+
+ # There are plans to support command line options via a config file (not yet in linux-3.3)
+ #cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/boot/bootx64.efi
+ #cp ${work_dir}/iso/${install_dir}/boot/x86_64/archiso.img ${work_dir}/efiboot/EFI/boot/linux.img
+ #echo "archisolabel=${iso_label} initrd=\EFI\boot\linux.img" | iconv -f ascii -t ucs2 > ${work_dir}/iso/EFI/boot/linux.conf
+
+ # For now, provide an EFI-shell until 'linux.conf' hits mainline.
+ mkdir -p ${work_dir}/efiboot/EFI/boot
+ # EFI Shell 2.0 for UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=UEFI_Shell )
+ #wget -O ${work_dir}/efiboot/EFI/boot/bootx64.efi https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/ShellBinPkg/UefiShell/X64/Shell.efi
+ # EFI Shell 1.0 for non UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=Efi-shell )
+ wget -O ${work_dir}/efiboot/EFI/boot/bootx64.efi https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/EdkShellBinPkg/FullShell/X64/Shell_Full.efi
+
+ # Add an EFI shell script for automatic boot if ESC-key is not pressed within 5 seconds timeout.
+ sed "s|%ARCHISO_LABEL%|${iso_label}|g;
+ s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/efiboot/EFI/boot/startup.nsh > ${work_dir}/efiboot/EFI/boot/startup.nsh
+
+ umount ${work_dir}/efiboot
+ fi
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare /${install_dir}/boot/syslinux
+make_syslinux() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _src_syslinux=${work_dir}/root-image/usr/lib/syslinux
+ local _dst_syslinux=${work_dir}/iso/${install_dir}/boot/syslinux
+ mkdir -p ${_dst_syslinux}
+ for _cfg in ${script_path}/syslinux/*.cfg; do
+ sed "s|%ARCHISO_LABEL%|${iso_label}|g;
+ s|%INSTALL_DIR%|${install_dir}|g;
+ s|%ARCH%|${arch}|g" ${_cfg} > ${_dst_syslinux}/${_cfg##*/}
+ done
+ cp ${script_path}/syslinux/splash.png ${_dst_syslinux}
+ cp ${_src_syslinux}/*.c32 ${_dst_syslinux}
+ cp ${_src_syslinux}/*.com ${_dst_syslinux}
+ cp ${_src_syslinux}/*.0 ${_dst_syslinux}
+ cp ${_src_syslinux}/memdisk ${_dst_syslinux}
+ mkdir -p ${_dst_syslinux}/hdt
+ cat ${work_dir}/root-image/usr/share/hwdata/pci.ids | gzip -9 > ${_dst_syslinux}/hdt/pciids.gz
+ cat ${work_dir}/root-image/lib/modules/*-ARCH/modules.alias | gzip -9 > ${_dst_syslinux}/hdt/modalias.gz
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Prepare /isolinux
+make_isolinux() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mkdir -p ${work_dir}/iso/isolinux
+ sed "s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/isolinux/isolinux.cfg > ${work_dir}/iso/isolinux/isolinux.cfg
+ cp ${work_dir}/root-image/usr/lib/syslinux/isolinux.bin ${work_dir}/iso/isolinux/
+ cp ${work_dir}/root-image/usr/lib/syslinux/isohdpfx.bin ${work_dir}/iso/isolinux/
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+#JM FIND ME
+copy_pacman_root(){
+ cp -f "${pacman_conf}" ${work_dir}/root-image/etc
+}
+find_size(){
+ #find the size of the install.
+ #This is used to calculate progress on the install
+ tsize=`du -sm ${work_dir}/root-image | cut -f1`
+ echo "TOTALSIZE=$tsize" > ${work_dir}/root-image/root/.install_size
+ upsize=`du -sm --exclude data ${work_dir}/root-image |cut -f1`
+ echo "UPGRADESIZE=$upsize" >> ${work_dir}/root-image/root/.install_size
+}
+
+
+make_pristine_copy() {
+ echo "Creating copy of pristine file for later use"
+ cd $work_dir/root-image
+ pwd
+ cat ${script_path}/pristine.list | xargs tar -cf pristine.tar
+ cd -
+
+}
+
+make_cache_repo() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]
+ then
+ local _url _urls _pkg_name _dst _pkgs _cache_dir
+ mkdir -p ${work_dir}/root-image/var/cache/pacman/pkg
+ old_cache=${work_dir}/old_cache
+ mkdir -p "$old_cache"
+ pacman --config "${pacman_conf}" -Sy -r ${work_dir}/root-image
+ echo "------------------------------------------"
+ for i in $(cat $script_path/packages.${arch}.cache)
+ do
+ echo "Adding $i to pacman cache"
+ _urls=$(pacman --config "${pacman_conf}" -Sp -r ${work_dir}/root-image ${i})
+ cd $old_cache
+ for url in ${_urls}
+ do
+ echo "downloading $url"
+ wget -N ${url}
+ done
+ cd -
+
+ done
+ cp -rp $old_cache/* ${work_dir}/root-image/var/cache/pacman/pkg
+ fi
+ echo "------------------------------------------"
+
+ make_var_cache_pacman
+ make_var_lib_pacman
+}
+
+make_var_cache_pacman(){
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mv ${work_dir}/root-image/var/cache/pacman ${work_dir}/var-cache-pacman
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+
+}
+make_var_lib_pacman(){
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ cp -rp ${work_dir}/root-image/var/lib/pacman ${work_dir}/var-lib-pacman
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+
+
+# Customize installation (root-image)
+make_customize_root_image() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ cp -af ${script_path}/root-image ${work_dir}
+ chmod 750 ${work_dir}/root-image/etc/sudoers.d
+ chmod 440 ${work_dir}/root-image/etc/sudoers.d/g_wheel
+ mkdir -p ${work_dir}/root-image/etc/pacman.d
+ wget -O ${work_dir}/root-image/etc/pacman.d/mirrorlist 'https://www.archlinux.org/mirrorlist/?country=all&protocol=http&use_mirror_status=on'
+ sed -i "s/#Server/Server/g" ${work_dir}/root-image/etc/pacman.d/mirrorlist
+ #sed -i 's/#\(en_US\.UTF-8\)/\1/' ${work_dir}/root-image/etc/locale.gen
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \
+ -r 'locale-gen' \
+ run
+ #JM
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \
+# -r 'useradd -m -p "" -G "audio,disk,optical,wheel,storage,video,users" mythtv' \
+ run
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Split out /lib/modules from root-image (makes more "dual-iso" friendly)
+make_lib_modules() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mv ${work_dir}/root-image/lib/modules ${work_dir}/lib-modules
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Split out /usr/share from root-image (makes more "dual-iso" friendly)
+make_usr_share() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ mv ${work_dir}/root-image/usr/share ${work_dir}/usr-share
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Make [core] repository, keep "any" pkgs in a separate fs (makes more "dual-iso" friendly)
+make_core_repo() {
+ if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then
+ local _url _urls _pkg_name _dst _pkgs _cache_dir
+ mkdir -p ${work_dir}/repo-core-any
+ mkdir -p ${work_dir}/repo-core-${arch}
+ mkdir -p ${work_dir}/pacman.db/var/lib/pacman
+ pacman --config "${pacman_conf}" -Sy -r ${work_dir}/pacman.db
+ _pkgs=$(comm -2 -3 <(pacman --config "${pacman_conf}" -Sql -r ${work_dir}/pacman.db core | sort | sed 's@^@core/@') \
+ <(grep -v ^# ${script_path}/core.exclude.${arch} | sort | sed 's@^@core/@'))
+ _urls=$(pacman --config "${pacman_conf}" -Sddp -r ${work_dir}/pacman.db ${_pkgs})
+ pacman --config "${pacman_conf}" -Swdd -r ${work_dir}/pacman.db --noprogressbar --noconfirm ${_pkgs}
+ for _url in ${_urls}; do
+ _pkg_name=${_url##*/}
+ _dst=${work_dir}/repo-core-${arch}/${_pkg_name}
+ for _cache_dir in ${cache_dirs[@]}; do
+ if [[ -e "${_cache_dir}/${_pkg_name}" ]]; then
+ cp "${_cache_dir}/${_pkg_name}" ${_dst}
+ fi
+ done
+ # download the package signature
+ #curl -sC - -f "${_url}.sig" > "${_dst}.sig"
+ repo-add -q ${work_dir}/repo-core-${arch}/core.db.tar.gz ${_dst}
+ # remove the signature file again as it is now included in the db file
+ rm -f "${_dst}.sig"
+ if [[ ${_pkg_name} == *any.pkg.tar* ]]; then
+ mv ${_dst} ${work_dir}/repo-core-any/${_pkg_name}
+ ln -sf ../any/${_pkg_name} ${_dst}
+ fi
+ done
+ # Remove old copy of db file
+ rm -f ${work_dir}/repo-core-${arch}/core.db.tar.gz.old
+ mkdir -p ${work_dir}/iso/${install_dir}
+ pacman --config "${pacman_conf}" -Sp -r ${work_dir}/pacman.db --print-format "%r/%n-%v" ${_pkgs} | sort > ${work_dir}/iso/${install_dir}/pkglist.repo-core.${arch}.txt
+ : > ${work_dir}/build.${FUNCNAME}
+ fi
+}
+
+# Process aitab
+# args: $1 (core | netinstall)
+make_aitab() {
+ local _iso_type=${1}
+ if [[ ! -e ${work_dir}/build.${FUNCNAME}_${_iso_type} ]]; then
+ sed "s|%ARCH%|${arch}|g" ${script_path}/aitab.${_iso_type} > ${work_dir}/iso/${install_dir}/aitab
+ : > ${work_dir}/build.${FUNCNAME}_${_iso_type}
+ fi
+}
+
+# Build all filesystem images specified in aitab (.fs .fs.sfs .sfs)
+make_prepare() {
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" pkglist
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" prepare
+}
+
+# Build ISO
+# args: $1 (core | netinstall)
+make_iso() {
+ local _iso_type=${1}
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" checksum
+ mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-${_iso_type}-${arch}.iso"
+ #JM
+ cd ${out_dir}
+ rm -f test3.iso
+ ln -s ${iso_name}-${iso_version}-${_iso_type}-${arch}.iso test3.iso
+ cd -
+}
+
+# Build dual-iso images from ${work_dir}/i686/iso and ${work_dir}/x86_64/iso
+# args: $1 (core | netinstall)
+make_dual() {
+ local _iso_type=${1}
+ if [[ ! -e ${work_dir}/dual/build.${FUNCNAME}_${_iso_type} ]]; then
+ if [[ ! -d ${work_dir}/i686/iso || ! -d ${work_dir}/x86_64/iso ]]; then
+ echo "ERROR: i686 or x86_64 builds does not exist."
+ _usage 1
+ fi
+ local _src_one _src_two _cfg
+ if [[ ${arch} == "i686" ]]; then
+ _src_one=${work_dir}/i686/iso
+ _src_two=${work_dir}/x86_64/iso
+ else
+ _src_one=${work_dir}/x86_64/iso
+ _src_two=${work_dir}/i686/iso
+ fi
+ mkdir -p ${work_dir}/dual/iso
+ cp -a -l -f ${_src_one} ${work_dir}/dual
+ cp -a -l -n ${_src_two} ${work_dir}/dual
+ rm -f ${work_dir}/dual/iso/${install_dir}/aitab
+ rm -f ${work_dir}/dual/iso/${install_dir}/boot/syslinux/*.cfg
+ if [[ ${_iso_type} == "core" ]]; then
+ if [[ ! -e ${work_dir}/dual/iso/${install_dir}/any/repo-core-any.sfs ||
+ ! -e ${work_dir}/dual/iso/${install_dir}/i686/repo-core-i686.sfs ||
+ ! -e ${work_dir}/dual/iso/${install_dir}/x86_64/repo-core-x86_64.sfs ]]; then
+ echo "ERROR: core_iso_single build is not found."
+ _usage 1
+ fi
+ else
+ rm -f ${work_dir}/dual/iso/${install_dir}/any/repo-core-any.sfs
+ rm -f ${work_dir}/dual/iso/${install_dir}/i686/repo-core-i686.sfs
+ rm -f ${work_dir}/dual/iso/${install_dir}/x86_64/repo-core-x86_64.sfs
+ rm -f ${work_dir}/dual/iso/${install_dir}/pkglist.repo-core.i686.txt
+ rm -f ${work_dir}/dual/iso/${install_dir}/pkglist.repo-core.x86_64.txt
+ fi
+ paste -d"\n" <(sed "s|%ARCH%|i686|g" ${script_path}/aitab.${_iso_type}) \
+ <(sed "s|%ARCH%|x86_64|g" ${script_path}/aitab.${_iso_type}) | uniq > ${work_dir}/dual/iso/${install_dir}/aitab
+ for _cfg in ${script_path}/syslinux.dual/*.cfg; do
+ sed "s|%ARCHISO_LABEL%|${iso_label}|g;
+ s|%INSTALL_DIR%|${install_dir}|g" ${_cfg} > ${work_dir}/dual/iso/${install_dir}/boot/syslinux/${_cfg##*/}
+ done
+ mkarchiso ${verbose} -w "${work_dir}/dual" -D "${install_dir}" checksum
+ mkarchiso ${verbose} -w "${work_dir}/dual" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-${_iso_type}-dual.iso"
+ : > ${work_dir}/dual/build.${FUNCNAME}_${_iso_type}
+ fi
+}
+
+purge_single ()
+{
+ if [[ -d ${work_dir} ]]; then
+ find ${work_dir} -mindepth 1 -maxdepth 1 \
+ ! -path ${work_dir}/iso -prune \
+ | xargs rm -rf
+ fi
+}
+
+purge_dual ()
+{
+ if [[ -d ${work_dir}/dual ]]; then
+ find ${work_dir}/dual -mindepth 1 -maxdepth 1 \
+ ! -path ${work_dir}/dual/iso -prune \
+ | xargs rm -rf
+ fi
+}
+
+clean_single ()
+{
+ rm -rf ${work_dir}
+ rm -f ${out_dir}/${iso_name}-${iso_version}-*-${arch}.iso
+}
+
+clean_dual ()
+{
+ rm -rf ${work_dir}/dual
+ rm -f ${out_dir}/${iso_name}-${iso_version}-*-dual.iso
+}
+
+make_common_single() {
+ make_basefs
+ make_packages
+ make_setup_mkinitcpio
+ make_boot
+ make_boot_efi
+ make_syslinux
+ make_isolinux
+
+ #JM FIND ME
+ make_cache_repo
+ make_pristine_copy
+ copy_pacman_root
+ find_size
+
+ make_customize_root_image
+ make_lib_modules
+ make_usr_share
+ make_aitab $1
+ make_prepare $1
+ make_iso $1
+}
+
+_usage ()
+{
+ echo "usage ${0} [options] command <command options>"
+ echo
+ echo " General options:"
+ echo " -N <iso_name> Set an iso filename (prefix)"
+ echo " Default: ${iso_name}"
+ echo " -V <iso_version> Set an iso version (in filename)"
+ echo " Default: ${iso_version}"
+ echo " -L <iso_label> Set an iso label (disk label)"
+ echo " Default: ${iso_label}"
+ echo " -D <install_dir> Set an install_dir (directory inside iso)"
+ echo " Default: ${install_dir}"
+ echo " -w <work_dir> Set the working directory"
+ echo " Default: ${work_dir}"
+ echo " -o <out_dir> Set the output directory"
+ echo " Default: ${out_dir}"
+ echo " -v Enable verbose output"
+ echo " -h This help message"
+ echo
+ echo " Commands:"
+ echo " build <mode> <type>"
+ echo " Build selected .iso by <mode> and <type>"
+ echo " purge <mode>"
+ echo " Clean working directory except iso/ directory of build <mode>"
+ echo " clean <mode>"
+ echo " Clean working directory and .iso file in output directory of build <mode>"
+ echo
+ echo " Command options:"
+ echo " <mode> Valid values 'single', 'dual' or 'all'"
+ echo " <type> Valid values 'netinstall', 'core' or 'all'"
+ exit ${1}
+}
+
+if [[ ${EUID} -ne 0 ]]; then
+ echo "This script must be run as root."
+ _usage 1
+fi
+
+while getopts 'N:V:L:D:w:o:vh' arg; do
+ case "${arg}" in
+ N)
+ iso_name="${OPTARG}"
+ cmd_args+=" -N ${iso_name}"
+ ;;
+ V)
+ iso_version="${OPTARG}"
+ cmd_args+=" -V ${iso_version}"
+ ;;
+ L)
+ iso_label="${OPTARG}"
+ cmd_args+=" -L ${iso_label}"
+ ;;
+ D)
+ install_dir="${OPTARG}"
+ cmd_args+=" -D ${install_dir}"
+ ;;
+ w)
+ work_dir="${OPTARG}"
+ cmd_args+=" -w ${work_dir}"
+ ;;
+ o)
+ out_dir="${OPTARG}"
+ cmd_args+=" -o ${out_dir}"
+ ;;
+ v)
+ verbose="-v"
+ cmd_args+=" -v"
+ ;;
+ h|?) _usage 0 ;;
+ *)
+ _msg_error "Invalid argument '${arg}'" 0
+ _usage 1
+ ;;
+ esac
+done
+
+shift $((OPTIND - 1))
+
+if [[ $# -lt 1 ]]; then
+ echo "No command specified"
+ _usage 1
+fi
+command_name="${1}"
+
+if [[ $# -lt 2 ]]; then
+ echo "No command mode specified"
+ _usage 1
+fi
+command_mode="${2}"
+
+if [[ ${command_name} == "build" ]]; then
+ if [[ $# -lt 3 ]]; then
+ echo "No build type specified"
+ _usage 1
+ fi
+command_type="${3}"
+fi
+
+if [[ ${command_mode} == "all" && ${arch} != "x86_64" ]]; then
+ echo "This mode <all> needs to be run on x86_64"
+ _usage 1
+fi
+
+if [[ ${command_mode} == "single" ]]; then
+ work_dir=${work_dir}/${arch}
+fi
+
+setup_workdir
+
+case "${command_name}" in
+ build)
+ case "${command_mode}" in
+ single)
+ case "${command_type}" in
+ netinstall)
+ #make_common_single netinstall
+ make_common_single netinstall
+ ;;
+ core)
+ make_core_repo
+ make_common_single core
+ ;;
+ all)
+ make_common_single netinstall
+ make_core_repo
+ make_common_single core
+ ;;
+ *)
+ echo "Invalid build type '${command_type}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ dual)
+ case "${command_type}" in
+ netinstall)
+ make_dual netinstall
+ ;;
+ core)
+ make_dual core
+ ;;
+ all)
+ make_dual netinstall
+ make_dual core
+ ;;
+ *)
+ echo "Invalid build type '${command_type}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ all)
+ case "${command_type}" in
+ netinstall|core|all)
+ $0 ${cmd_args} build single ${command_type}
+ $0 ${cmd_args} purge single
+ linux32 $0 ${cmd_args} build single ${command_type}
+ linux32 $0 ${cmd_args} purge single
+ $0 ${cmd_args} build dual ${command_type}
+ $0 ${cmd_args} purge dual
+ ;;
+ *)
+ echo "Invalid build type '${command_type}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Invalid build mode '${command_mode}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ purge)
+ case "${command_mode}" in
+ single)
+ purge_single
+ ;;
+ dual)
+ purge_dual
+ ;;
+ all)
+ $0 ${cmd_args} purge single
+ linux32 $0 ${cmd_args} purge single
+ $0 ${cmd_args} purge dual
+ ;;
+ *)
+ echo "Invalid purge mode '${command_mode}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ clean)
+ case "${command_mode}" in
+ single)
+ clean_single
+ ;;
+ dual)
+ clean_dual
+ ;;
+ all)
+ $0 ${cmd_args} clean single
+ linux32 $0 ${cmd_args} clean single
+ $0 ${cmd_args} clean dual
+ ;;
+ *)
+ echo "Invalid clean mode '${command_mode}'"
+ _usage 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Invalid command name '${command_name}'"
+ _usage 1
+ ;;
+esac
diff --git a/build_tools/archiso/mythvantage/core.exclude.i686 b/build_tools/archiso/mythvantage/core.exclude.i686
new file mode 100644
index 0000000..a04ceef
--- /dev/null
+++ b/build_tools/archiso/mythvantage/core.exclude.i686
@@ -0,0 +1,4 @@
+gcc-ada
+gcc-fortran
+gcc-go
+gcc-objc
diff --git a/build_tools/archiso/mythvantage/core.exclude.x86_64 b/build_tools/archiso/mythvantage/core.exclude.x86_64
new file mode 100644
index 0000000..a3f78d8
--- /dev/null
+++ b/build_tools/archiso/mythvantage/core.exclude.x86_64
@@ -0,0 +1,6 @@
+gcc-ada
+gcc-fortran
+gcc-go
+gcc-objc
+xf86-video-intel-sna
+xf86-video-intel-uxa
diff --git a/build_tools/archiso/mythvantage/efiboot/EFI/boot/startup.nsh b/build_tools/archiso/mythvantage/efiboot/EFI/boot/startup.nsh
new file mode 100644
index 0000000..f50aed2
--- /dev/null
+++ b/build_tools/archiso/mythvantage/efiboot/EFI/boot/startup.nsh
@@ -0,0 +1,10 @@
+@echo -off
+
+for %m run (0 9)
+ if exist fs%m:\EFI\archiso\vmlinuz.efi then
+ fs%m:
+ cd fs%m:\EFI\archiso
+ echo "Launching Arch Linux ISO Kernel fs%m:\EFI\archiso\vmlinuz.efi"
+ vmlinuz.efi archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% initrd=\EFI\archiso\archiso.img
+ endif
+endfor
diff --git a/build_tools/archiso/mythvantage/go.sh b/build_tools/archiso/mythvantage/go.sh
new file mode 100755
index 0000000..c5f07d2
--- /dev/null
+++ b/build_tools/archiso/mythvantage/go.sh
@@ -0,0 +1,76 @@
+#!/bin/bash
+
+function copy_custom(){
+ cp -f profile_files/$1.png syslinux/splash.png || exit 1
+ cp -f profile_files/pacman.conf . ||exit 1
+ cat profile_files/$1.pacman >> ./pacman.conf || exit 1
+
+ cp -f profile_files/packages.x86_64 . || exit 1
+ cp -f profile_files/packages.x86_64.cache . || exit 1
+ cp -f profile_files/pristine.list . || exit 1
+ }
+
+
+
+
+declare -a menuarray
+
+menuarray=( 'local_mirror_testing'
+ 'local_disk_testing'
+ 'remote_testing'
+ '-----------------'
+ 'local_mirror_release'
+ 'remote_release' )
+
+#echo ${array1[@]}
+
+element_count=${#menuarray[*]}
+element_count=`expr $element_count - 1`
+clear
+echo
+echo
+if [ x$1 = x ]
+then
+ for i in `seq 0 $element_count`
+ do
+ echo "$i ) ${menuarray[$i]}"
+ echo
+ done
+ echo "Select the profile to use:"
+ read a
+ if [ "x"$a = "x" ]
+ then
+ a="0"
+ fi
+ profile=${menuarray[$a]}
+
+ echo $profile
+ copy_custom $profile
+ echo "Creating ISO"
+
+ #rm -rf work/
+ ./build.sh clean all
+ ./build.sh -vv build single netinstall
+ status=$?
+ if [ $status = 0 ]
+ then
+# if [ -f /usr/bin/isohybrid ]
+# then
+# echo "Running isohybrid..."
+# /usr/bin/isohybrid /tmp/test2.iso
+# else
+# echo "Syslinux needs to be installed to run isohybrid"
+# fi
+
+ echo "*****************************************************"
+ echo "your $profile iso is complete (out/test3.iso)"
+ echo "*****************************************************"
+ rm -f pacman.conf
+ rm -f packages.x86_64
+ rm -f packages.x86_64.cache
+ rm -f pristine.list
+ fi
+
+ date
+ #cd $OLD
+fi \ No newline at end of file
diff --git a/build_tools/archiso/mythvantage/isolinux/isolinux.cfg b/build_tools/archiso/mythvantage/isolinux/isolinux.cfg
new file mode 100644
index 0000000..1040d3f
--- /dev/null
+++ b/build_tools/archiso/mythvantage/isolinux/isolinux.cfg
@@ -0,0 +1,5 @@
+DEFAULT loadconfig
+
+LABEL loadconfig
+ CONFIG /%INSTALL_DIR%/boot/syslinux/archiso.cfg
+ APPEND /%INSTALL_DIR%/
diff --git a/build_tools/archiso/mythvantage/mkinitcpio.conf b/build_tools/archiso/mythvantage/mkinitcpio.conf
new file mode 100644
index 0000000..b757b71
--- /dev/null
+++ b/build_tools/archiso/mythvantage/mkinitcpio.conf
@@ -0,0 +1,2 @@
+HOOKS="base udev memdisk archiso_shutdown archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs pata scsi sata virtio usb fw pcmcia filesystems usbinput"
+COMPRESSION="xz"
diff --git a/build_tools/archiso/mythvantage/old.cache b/build_tools/archiso/mythvantage/old.cache
new file mode 100644
index 0000000..2ab71d3
--- /dev/null
+++ b/build_tools/archiso/mythvantage/old.cache
@@ -0,0 +1,41 @@
+B#added from error log
+#mysql
+#mythnews
+#pycairo
+#pygobject
+#python-numeric
+#pygtk
+#fam
+#sqlite3
+#xe
+#romdb
+#gconf
+#gnome-keyring
+#gnome-mime-data
+#gnome-python
+#gnome-python-extras
+#gnome-vfs
+#hunspell
+#libbonobo
+#libbonoboui
+#libgnome
+#libgnomecanvas
+#libgnomeui
+#libidl2
+#miro
+#mozilla-common
+#nspr
+#nss
+#orbit2
+#polkit
+#pyorbit
+#pyrex
+#startup-notification
+#xulrunner
+
+B
+B
+B
+B
+B
+
diff --git a/build_tools/archiso/mythvantage/profile_files/local_disk_testing.pacman b/build_tools/archiso/mythvantage/profile_files/local_disk_testing.pacman
new file mode 100644
index 0000000..0c97f29
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/local_disk_testing.pacman
@@ -0,0 +1,9 @@
+[core-testing]
+SigLevel = Optional TrustedOnly
+Server = file:///data/pkg_repo/$arch/$repo/
+
+[extra-testing]
+SigLevel = Optional TrustedOnly
+Server = file:///data/pkg_repo/$arch/$repo/
+
+
diff --git a/build_tools/archiso/mythvantage/profile_files/local_disk_testing.png b/build_tools/archiso/mythvantage/profile_files/local_disk_testing.png
new file mode 100644
index 0000000..162d7aa
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/local_disk_testing.png
Binary files differ
diff --git a/build_tools/archiso/mythvantage/profile_files/local_mirror_release.pacman b/build_tools/archiso/mythvantage/profile_files/local_mirror_release.pacman
new file mode 100644
index 0000000..c822544
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/local_mirror_release.pacman
@@ -0,0 +1,7 @@
+[core]
+SigLevel = Optional TrustedOnly
+Server = http://localmirror.lan/repo/$arch/$repo/
+
+[extra]
+SigLevel = Optional TrustedOnly
+Server = http://localmirror.lan/repo/$arch/$repo/
diff --git a/build_tools/archiso/mythvantage/profile_files/local_mirror_release.png b/build_tools/archiso/mythvantage/profile_files/local_mirror_release.png
new file mode 100644
index 0000000..79952c3
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/local_mirror_release.png
Binary files differ
diff --git a/build_tools/archiso/mythvantage/profile_files/local_mirror_testing.pacman b/build_tools/archiso/mythvantage/profile_files/local_mirror_testing.pacman
new file mode 100644
index 0000000..24f06d6
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/local_mirror_testing.pacman
@@ -0,0 +1,7 @@
+[core-testing]
+SigLevel = Optional TrustedOnly
+Server = http://localmirror.lan/repo/$arch/$repo/
+
+[extra-testing]
+SigLevel = Optional TrustedOnly
+Server = http://localmirror.lan/repo/$arch/$repo/
diff --git a/build_tools/archiso/mythvantage/profile_files/local_mirror_testing.png b/build_tools/archiso/mythvantage/profile_files/local_mirror_testing.png
new file mode 100644
index 0000000..76a0777
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/local_mirror_testing.png
Binary files differ
diff --git a/build_tools/archiso/mythvantage/profile_files/packages.i686 b/build_tools/archiso/mythvantage/profile_files/packages.i686
new file mode 100644
index 0000000..6012e7c
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/packages.i686
@@ -0,0 +1,46 @@
+aif
+b43-fwcutter
+btrfs-progs
+crda
+darkhttpd
+ddrescue
+dhclient
+dialog
+dmraid
+dnsmasq
+dnsutils
+dosfstools
+efibootmgr
+elinks
+gnu-netcat
+gptfdisk
+haveged
+hdparm
+ipw2100-fw
+ipw2200-fw
+irssi
+lftp
+lilo
+linux-atm
+mtools
+netcfg
+nfs-utils
+nilfs-utils
+nmap
+ntfs-3g
+ntfsprogs
+ntp
+openconnect
+openssh
+openvpn
+parted
+pptpclient
+rp-pppoe
+rsync
+smartmontools
+speedtouch
+tcpdump
+vpnc
+wireless_tools
+wpa_actiond
+zd1211-firmware
diff --git a/build_tools/archiso/mythvantage/profile_files/packages.x86_64 b/build_tools/archiso/mythvantage/profile_files/packages.x86_64
new file mode 100644
index 0000000..3dd6269
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/packages.x86_64
@@ -0,0 +1,141 @@
+#b43-fwcutter
+acpid
+btrfs-progs
+crda
+#darkhttpd
+ddrescue
+#dhclient
+dhcpcd
+dialog
+dmraid
+#dnsmasq
+dnsutils
+dcron
+dosfstools
+efibootmgr
+#elinks
+#gnu-netcat
+gptfdisk
+#haveged
+hdparm
+ipw2100-fw
+ipw2200-fw
+iputils
+#irssi
+#lftp
+#lilo
+#linux-atm
+mtools
+#netcfg
+net-tools
+nfs-utils
+nilfs-utils
+#nmap
+#ntfs-3g
+#ntfsprogs
+ntp
+#openconnect
+openssh
+#openvpn
+parted
+#pptpclient
+#rp-pppoe
+rsync
+#smartmontools
+#speedtouch
+#tcpdump
+#vpnc
+wireless_tools
+wpa_actiond
+zd1211-firmware
+python2
+LinHES-config
+bc
+libstatgrab
+mysql-python
+expect
+curl
+dnsutils
+parted
+sg3_utils
+nmbscan
+squashfs-tools
+rsync
+python-parted
+python-pexpect
+python-netifaces
+python-iplib
+openssh
+xorg-apps
+xorg-fonts
+windowmaker
+xf86-video-vesa
+xorg-xinit
+xorg-server
+xorg-bdftopcf
+xorg-docs
+xorg-font-util
+xorg-fonts-100dpi
+#xorg-fonts-75dpi
+xorg-fonts-encodings
+xorg-iceauth
+xorg-luit
+xorg-mkfontdir
+xorg-mkfontscale
+#xorg-res-utils
+xorg-server
+xorg-sessreg
+xorg-setxkbmap
+xorg-x11perf
+xorg-xauth
+xorg-xbacklight
+xorg-xcmsdb
+xorg-xcursorgen
+xorg-xdpyinfo
+xorg-xdriinfo
+xorg-xev
+#xorg-xgamma
+xorg-xhost
+xorg-xinput
+xorg-xkbcomp
+xorg-xkbevd
+xorg-xkbutils
+xorg-xkill
+xorg-xlsatoms
+xorg-xlsclients
+xorg-xmodmap
+xorg-xpr
+xorg-xprop
+xorg-xrandr
+xorg-xrdb
+xorg-xrefresh
+xorg-xset
+xorg-xsetroot
+xorg-xvinfo
+xorg-xwd
+xorg-xwininfo
+xorg-xwud
+xterm
+xkeyboard-config
+grub-common
+grub-bios
+LinHES-config
+LinHES-system
+mythtv
+mysql
+etcnet
+alt_wm
+mlocate
+
+
+#mythtv-contrib
+mytharchive
+mythbrowser
+mythgallery
+mythgame
+mythmusic
+linhes-theme
+linhes-scripts
+
+ivtv-utils
+alsa-utils
diff --git a/build_tools/archiso/mythvantage/profile_files/packages.x86_64.cache b/build_tools/archiso/mythvantage/profile_files/packages.x86_64.cache
new file mode 100644
index 0000000..4de8d09
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/packages.x86_64.cache
@@ -0,0 +1,26 @@
+runit-scripts
+mythdb-initial
+tigervnc
+
+nvidia
+nvidia-utils
+vdpauinfo
+lighttpd
+local-website
+mythweb
+nfs-utils
+samba
+mplayer
+lcdproc
+mythappletrailers
+xscreensaver
+supplemental-web
+romdb
+miro
+oss
+xf86-input-vmmouse
+xf86-video-vmware
+xf86-video-vesa
+xf86-video-intel
+libgl
+svga-dri
diff --git a/build_tools/archiso/mythvantage/profile_files/pacman.conf b/build_tools/archiso/mythvantage/profile_files/pacman.conf
new file mode 100644
index 0000000..ef9acb6
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/pacman.conf
@@ -0,0 +1,72 @@
+#
+# /etc/pacman.conf
+#
+# See the pacman.conf(5) manpage for option and repository directives
+
+#
+# GENERAL OPTIONS
+#
+[options]
+# The following paths are commented out with their default values listed.
+# If you wish to use different paths, uncomment and update the paths.
+#RootDir = /
+#DBPath = /var/lib/pacman/
+CacheDir = /data/storage/disk0/pacman/pkg
+#LogFile = /var/log/pacman.log
+#GPGDir = /etc/pacman.d/gnupg/
+HoldPkg = pacman glibc
+# If upgrades are available for these packages they will be asked for first
+SyncFirst = pacman
+#XferCommand = /usr/bin/curl -C - -f %u > %o
+#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
+#CleanMethod = KeepInstalled
+Architecture = auto
+
+# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
+#IgnorePkg =
+#IgnoreGroup =
+
+#NoUpgrade =
+#NoExtract =
+
+# Misc options
+#UseSyslog
+#UseDelta
+#TotalDownload
+# We cannot check disk space from within a chroot environment
+#CheckSpace
+VerbosePkgLists
+
+# By default, pacman accepts packages signed by keys that its local keyring
+# trusts (see pacman-key and its man page), as well as unsigned packages.
+SigLevel = Optional TrustedOnly
+
+# NOTE: You must run `pacman-key --init` before first using pacman; the local
+# keyring can then be populated with the keys of all official Arch Linux
+# packagers with `pacman-key --populate archlinux`.
+
+#
+# REPOSITORIES
+# - can be defined here or included from another file
+# - pacman will search repositories in the order defined here
+# - local/custom mirrors can be added here or in separate files
+# - repositories listed first will take precedence when packages
+# have identical names, regardless of version number
+# - URLs will have $repo replaced by the name of the current repo
+# - URLs will have $arch replaced by the name of the architecture
+#
+# Repository entries are of the format:
+# [repo-name]
+# Server = ServerName
+# Include = IncludePath
+#
+# The header [repo-name] is crucial - it must be present and
+# uncommented to enable the repo.
+#
+
+# The testing repositories are disabled by default. To enable, uncomment the
+# repo name header and Include lines. You can add preferred servers immediately
+# after the header, and they will be used before the default mirrors.
+
+
+
diff --git a/build_tools/archiso/mythvantage/profile_files/pristine.list b/build_tools/archiso/mythvantage/profile_files/pristine.list
new file mode 100644
index 0000000..8d732d6
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/pristine.list
@@ -0,0 +1,2 @@
+./etc/hosts
+./etc/rc.local
diff --git a/build_tools/archiso/mythvantage/profile_files/remote_release.pacman b/build_tools/archiso/mythvantage/profile_files/remote_release.pacman
new file mode 100644
index 0000000..e9ace81
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/remote_release.pacman
@@ -0,0 +1,7 @@
+[core]
+SigLevel = Optional TrustedOnly
+Server = http://bits.linhes.org/repo/$arch/$repo/
+
+[extra]
+SigLevel = Optional TrustedOnly
+Server = http://bits.linhes.org/repo/$arch/$repo/
diff --git a/build_tools/archiso/mythvantage/profile_files/remote_release.png b/build_tools/archiso/mythvantage/profile_files/remote_release.png
new file mode 100644
index 0000000..92e8c7d
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/remote_release.png
Binary files differ
diff --git a/build_tools/archiso/mythvantage/profile_files/remote_testing.pacman b/build_tools/archiso/mythvantage/profile_files/remote_testing.pacman
new file mode 100644
index 0000000..000e6a1
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/remote_testing.pacman
@@ -0,0 +1,7 @@
+[core-testing]
+SigLevel = Optional TrustedOnly
+Server = http://bits.linhes.org/repo/$arch/$repo/
+
+[extra-testing]
+SigLevel = Optional TrustedOnly
+Server = http://bits.linhes.org/repo/$arch/$repo/
diff --git a/build_tools/archiso/mythvantage/profile_files/remote_testing.png b/build_tools/archiso/mythvantage/profile_files/remote_testing.png
new file mode 100644
index 0000000..92e8c7d
--- /dev/null
+++ b/build_tools/archiso/mythvantage/profile_files/remote_testing.png
Binary files differ
diff --git a/build_tools/archiso/mythvantage/root-image/etc/arch-release b/build_tools/archiso/mythvantage/root-image/etc/arch-release
new file mode 100644
index 0000000..d899e29
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/arch-release
@@ -0,0 +1 @@
+MythVantage Live/Installation
diff --git a/build_tools/archiso/mythvantage/root-image/etc/archiso/functions b/build_tools/archiso/mythvantage/root-image/etc/archiso/functions
new file mode 100644
index 0000000..9fffdcb
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/archiso/functions
@@ -0,0 +1,20 @@
+# vim: set ft=sh:
+
+# kernel_cmdline <param> <default>
+# Looks for a parameter on the kernel's boot-time command line.
+#
+# returns: 0 if param was found. Also prints its value if it was a K=V param.
+# 1 if it was not. Also prints value passed as <default>
+#
+kernel_cmdline ()
+{
+ for param in $(/bin/cat /proc/cmdline); do
+ case "${param}" in
+ $1=*) echo "${param##*=}"; return 0 ;;
+ $1) return 0 ;;
+ *) continue ;;
+ esac
+ done
+ [ -n "${2}" ] && echo "${2}"
+ return 1
+}
diff --git a/build_tools/archiso/mythvantage/root-image/etc/conf.d/dhcpcd b/build_tools/archiso/mythvantage/root-image/etc/conf.d/dhcpcd
new file mode 100644
index 0000000..ab53c30
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/conf.d/dhcpcd
@@ -0,0 +1,6 @@
+#
+# Arguments to be passed to the DHCP client daemon
+#
+
+DHCPCD_ARGS="-t 10 -h $HOSTNAME"
+
diff --git a/build_tools/archiso/mythvantage/root-image/etc/hostname b/build_tools/archiso/mythvantage/root-image/etc/hostname
new file mode 100644
index 0000000..a616f6e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/hostname
@@ -0,0 +1 @@
+apheleia
diff --git a/build_tools/archiso/mythvantage/root-image/etc/hosts b/build_tools/archiso/mythvantage/root-image/etc/hosts
new file mode 100644
index 0000000..d23291e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/hosts
@@ -0,0 +1,9 @@
+#
+# /etc/hosts: static lookup table for host names
+#
+
+#<ip-address> <hostname.domain.org> <hostname>
+127.0.0.1 localhost.localdomain localhost archiso
+::1 localhost.localdomain localhost archiso
+
+# End of file
diff --git a/build_tools/archiso/mythvantage/root-image/etc/hosts.allow b/build_tools/archiso/mythvantage/root-image/etc/hosts.allow
new file mode 100755
index 0000000..f6cf005
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/hosts.allow
@@ -0,0 +1,8 @@
+#
+# /etc/hosts.allow
+#
+ALL: 192.168.
+ALL: 10.
+ALL: 127.0.0.1
+ALL: 172.16.
+# End of file
diff --git a/build_tools/archiso/mythvantage/root-image/etc/hosts.deny b/build_tools/archiso/mythvantage/root-image/etc/hosts.deny
new file mode 100755
index 0000000..ca30ab4
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/hosts.deny
@@ -0,0 +1,6 @@
+#
+# /etc/hosts.deny
+#
+ALL
+
+# End of file
diff --git a/build_tools/archiso/mythvantage/root-image/etc/inittab b/build_tools/archiso/mythvantage/root-image/etc/inittab
new file mode 100644
index 0000000..1e65b5e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/inittab
@@ -0,0 +1,48 @@
+#
+# /etc/inittab
+#
+
+# Runlevels:
+# 0 Halt
+# 1(S) Single-user
+# 2 Not used
+# 3 Multi-user
+# 4 Not used
+# 5 X11
+# 6 Reboot
+
+## Only one of the following two lines can be uncommented!
+# Boot to console
+id:3:initdefault:
+# Boot to X11
+#id:5:initdefault:
+
+rc::sysinit:/etc/rc.sysinit
+rs:S1:wait:/etc/rc.single
+rm:2345:wait:/etc/rc.multi
+rh:06:wait:/etc/rc.shutdown
+su:S:wait:/sbin/sulogin -p
+
+# -8 options fixes umlauts problem on login
+#c1:2345:respawn:/sbin/agetty -8 -s -n -l /usr/bin/autologin 38400 tty1 linux
+c2:2345:respawn:/sbin/agetty -8 -s 38400 tty2 linux
+c3:2345:respawn:/sbin/agetty -8 -s 38400 tty3 linux
+c4:2345:respawn:/sbin/agetty -8 -s 38400 tty4 linux
+c5:2345:respawn:/sbin/agetty -8 -s 38400 tty5 linux
+c6:2345:respawn:/sbin/agetty -8 -s 38400 tty6 linux
+
+# Serial Virtual Console for KVM and others VMs
+#s0:2345:respawn:/sbin/agetty -8 -s 9600 ttyS0 linux
+
+# Hypervisor Virtual Console for Xen and KVM
+#h0:2345:respawn:/sbin/agetty -8 -s 38400 hvc0 linux
+
+ca::ctrlaltdel:/sbin/shutdown -t3 -r now
+
+# Example lines for starting a login manager
+x:5:respawn:/usr/bin/xdm -nodaemon
+#x:5:respawn:/usr/sbin/gdm -nodaemon
+#x:5:respawn:/usr/bin/kdm -nodaemon
+#x:5:respawn:/usr/bin/slim >/dev/null 2>&1
+
+# End of file
diff --git a/build_tools/archiso/mythvantage/root-image/etc/issue b/build_tools/archiso/mythvantage/root-image/etc/issue
new file mode 100644
index 0000000..9b082c4
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/issue
@@ -0,0 +1,5 @@
+
+MythVantage Live ISO (\l)
+\s-\r \m.
+Default logins "root" and "mythtv" have no password.
+To begin installation, login as root.
diff --git a/build_tools/archiso/mythvantage/root-image/etc/locale.conf b/build_tools/archiso/mythvantage/root-image/etc/locale.conf
new file mode 100644
index 0000000..a8e6e6f
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/locale.conf
@@ -0,0 +1 @@
+LOCALE="en_US.UTF-8"
diff --git a/build_tools/archiso/mythvantage/root-image/etc/locale.gen b/build_tools/archiso/mythvantage/root-image/etc/locale.gen
new file mode 100644
index 0000000..9fe42e0
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/locale.gen
@@ -0,0 +1,462 @@
+## Configuration file for locale-gen
+##
+## lists of locales that are to be generated by the locale-gen command.
+##
+## Each line is of the form:
+##
+## <locale> <charset>
+##
+## where <locale> is one of the locales given in /usr/share/i18n/locales
+## and <charset> is one of the character sets listed in /usr/share/i18n/charmaps
+##
+## Examples:
+en_US ISO-8859-1
+en_US.UTF-8 UTF-8
+de_DE ISO-8859-1
+de_DE@euro ISO-8859-15
+##
+## The locale-gen command will generate all the locales,
+## placing them in /usr/lib/locale.
+##
+## A list of supported locales is included in this file.
+## Uncomment the ones you need.
+##
+## This file names the currently supported and somewhat tested locales.
+## If you have any additions please file a glibc bug report.
+#
+#aa_DJ.UTF-8 UTF-8
+#aa_DJ ISO-8859-1
+#aa_ER UTF-8
+#aa_ER@saaho UTF-8
+#aa_ET UTF-8
+#af_ZA.UTF-8 UTF-8
+#af_ZA ISO-8859-1
+#am_ET UTF-8
+#an_ES.UTF-8 UTF-8
+#an_ES ISO-8859-15
+#ar_AE.UTF-8 UTF-8
+#ar_AE ISO-8859-6
+#ar_BH.UTF-8 UTF-8
+#ar_BH ISO-8859-6
+#ar_DZ.UTF-8 UTF-8
+#ar_DZ ISO-8859-6
+#ar_EG.UTF-8 UTF-8
+#ar_EG ISO-8859-6
+#ar_IN UTF-8
+#ar_IQ.UTF-8 UTF-8
+#ar_IQ ISO-8859-6
+#ar_JO.UTF-8 UTF-8
+#ar_JO ISO-8859-6
+#ar_KW.UTF-8 UTF-8
+#ar_KW ISO-8859-6
+#ar_LB.UTF-8 UTF-8
+#ar_LB ISO-8859-6
+#ar_LY.UTF-8 UTF-8
+#ar_LY ISO-8859-6
+#ar_MA.UTF-8 UTF-8
+#ar_MA ISO-8859-6
+#ar_OM.UTF-8 UTF-8
+#ar_OM ISO-8859-6
+#ar_QA.UTF-8 UTF-8
+#ar_QA ISO-8859-6
+#ar_SA.UTF-8 UTF-8
+#ar_SA ISO-8859-6
+#ar_SD.UTF-8 UTF-8
+#ar_SD ISO-8859-6
+#ar_SY.UTF-8 UTF-8
+#ar_SY ISO-8859-6
+#ar_TN.UTF-8 UTF-8
+#ar_TN ISO-8859-6
+#ar_YE.UTF-8 UTF-8
+#ar_YE ISO-8859-6
+#az_AZ UTF-8
+#as_IN UTF-8
+#ast_ES.UTF-8 UTF-8
+#ast_ES ISO-8859-15
+#be_BY.UTF-8 UTF-8
+#be_BY CP1251
+#be_BY@latin UTF-8
+#bem_ZM UTF-8
+#ber_DZ UTF-8
+#ber_MA UTF-8
+#bg_BG.UTF-8 UTF-8
+#bg_BG CP1251
+#bho_IN UTF-8
+#bn_BD UTF-8
+#bn_IN UTF-8
+#bo_CN UTF-8
+#bo_IN UTF-8
+#br_FR.UTF-8 UTF-8
+#br_FR ISO-8859-1
+#br_FR@euro ISO-8859-15
+#brx_IN UTF-8
+#bs_BA.UTF-8 UTF-8
+#bs_BA ISO-8859-2
+#byn_ER UTF-8
+#ca_AD.UTF-8 UTF-8
+#ca_AD ISO-8859-15
+#ca_ES.UTF-8 UTF-8
+#ca_ES ISO-8859-1
+#ca_ES@euro ISO-8859-15
+#ca_FR.UTF-8 UTF-8
+#ca_FR ISO-8859-15
+#ca_IT.UTF-8 UTF-8
+#ca_IT ISO-8859-15
+#crh_UA UTF-8
+#cs_CZ.UTF-8 UTF-8
+#cs_CZ ISO-8859-2
+#csb_PL UTF-8
+#cv_RU UTF-8
+#cy_GB.UTF-8 UTF-8
+#cy_GB ISO-8859-14
+#da_DK.UTF-8 UTF-8
+#da_DK ISO-8859-1
+#de_AT.UTF-8 UTF-8
+#de_AT ISO-8859-1
+#de_AT@euro ISO-8859-15
+#de_BE.UTF-8 UTF-8
+#de_BE ISO-8859-1
+#de_BE@euro ISO-8859-15
+#de_CH.UTF-8 UTF-8
+#de_CH ISO-8859-1
+#de_DE.UTF-8 UTF-8
+#de_DE ISO-8859-1
+#de_DE@euro ISO-8859-15
+#de_LU.UTF-8 UTF-8
+#de_LU ISO-8859-1
+#de_LU@euro ISO-8859-15
+#dv_MV UTF-8
+#dz_BT UTF-8
+#el_GR.UTF-8 UTF-8
+#el_GR ISO-8859-7
+#el_CY.UTF-8 UTF-8
+#el_CY ISO-8859-7
+#en_AG UTF-8
+#en_AU.UTF-8 UTF-8
+#en_AU ISO-8859-1
+#en_BW.UTF-8 UTF-8
+#en_BW ISO-8859-1
+#en_CA.UTF-8 UTF-8
+#en_CA ISO-8859-1
+#en_DK.UTF-8 UTF-8
+#en_DK ISO-8859-1
+#en_GB.UTF-8 UTF-8
+#en_GB ISO-8859-1
+#en_HK.UTF-8 UTF-8
+#en_HK ISO-8859-1
+#en_IE.UTF-8 UTF-8
+#en_IE ISO-8859-1
+#en_IE@euro ISO-8859-15
+#en_IN UTF-8
+#en_NG UTF-8
+#en_NZ.UTF-8 UTF-8
+#en_NZ ISO-8859-1
+#en_PH.UTF-8 UTF-8
+#en_PH ISO-8859-1
+#en_SG.UTF-8 UTF-8
+#en_SG ISO-8859-1
+#en_US.UTF-8 UTF-8
+#en_US ISO-8859-1
+#en_ZA.UTF-8 UTF-8
+#en_ZA ISO-8859-1
+#en_ZM UTF-8
+#en_ZW.UTF-8 UTF-8
+#en_ZW ISO-8859-1
+#es_AR.UTF-8 UTF-8
+#es_AR ISO-8859-1
+#es_BO.UTF-8 UTF-8
+#es_BO ISO-8859-1
+#es_CL.UTF-8 UTF-8
+#es_CL ISO-8859-1
+#es_CO.UTF-8 UTF-8
+#es_CO ISO-8859-1
+#es_CR.UTF-8 UTF-8
+#es_CR ISO-8859-1
+#es_CU UTF-8
+#es_DO.UTF-8 UTF-8
+#es_DO ISO-8859-1
+#es_EC.UTF-8 UTF-8
+#es_EC ISO-8859-1
+#es_ES.UTF-8 UTF-8
+#es_ES ISO-8859-1
+#es_ES@euro ISO-8859-15
+#es_GT.UTF-8 UTF-8
+#es_GT ISO-8859-1
+#es_HN.UTF-8 UTF-8
+#es_HN ISO-8859-1
+#es_MX.UTF-8 UTF-8
+#es_MX ISO-8859-1
+#es_NI.UTF-8 UTF-8
+#es_NI ISO-8859-1
+#es_PA.UTF-8 UTF-8
+#es_PA ISO-8859-1
+#es_PE.UTF-8 UTF-8
+#es_PE ISO-8859-1
+#es_PR.UTF-8 UTF-8
+#es_PR ISO-8859-1
+#es_PY.UTF-8 UTF-8
+#es_PY ISO-8859-1
+#es_SV.UTF-8 UTF-8
+#es_SV ISO-8859-1
+#es_US.UTF-8 UTF-8
+#es_US ISO-8859-1
+#es_UY.UTF-8 UTF-8
+#es_UY ISO-8859-1
+#es_VE.UTF-8 UTF-8
+#es_VE ISO-8859-1
+#et_EE.UTF-8 UTF-8
+#et_EE ISO-8859-1
+#et_EE.ISO-8859-15 ISO-8859-15
+#eu_ES.UTF-8 UTF-8
+#eu_ES ISO-8859-1
+#eu_ES@euro ISO-8859-15
+#fa_IR UTF-8
+#ff_SN UTF-8
+#fi_FI.UTF-8 UTF-8
+#fi_FI ISO-8859-1
+#fi_FI@euro ISO-8859-15
+#fil_PH UTF-8
+#fo_FO.UTF-8 UTF-8
+#fo_FO ISO-8859-1
+#fr_BE.UTF-8 UTF-8
+#fr_BE ISO-8859-1
+#fr_BE@euro ISO-8859-15
+#fr_CA.UTF-8 UTF-8
+#fr_CA ISO-8859-1
+#fr_CH.UTF-8 UTF-8
+#fr_CH ISO-8859-1
+#fr_FR.UTF-8 UTF-8
+#fr_FR ISO-8859-1
+#fr_FR@euro ISO-8859-15
+#fr_LU.UTF-8 UTF-8
+#fr_LU ISO-8859-1
+#fr_LU@euro ISO-8859-15
+#fur_IT UTF-8
+#fy_NL UTF-8
+#fy_DE UTF-8
+#ga_IE.UTF-8 UTF-8
+#ga_IE ISO-8859-1
+#ga_IE@euro ISO-8859-15
+#gd_GB.UTF-8 UTF-8
+#gd_GB ISO-8859-15
+#gez_ER UTF-8
+#gez_ER@abegede UTF-8
+#gez_ET UTF-8
+#gez_ET@abegede UTF-8
+#gl_ES.UTF-8 UTF-8
+#gl_ES ISO-8859-1
+#gl_ES@euro ISO-8859-15
+#gu_IN UTF-8
+#gv_GB.UTF-8 UTF-8
+#gv_GB ISO-8859-1
+#ha_NG UTF-8
+#he_IL.UTF-8 UTF-8
+#he_IL ISO-8859-8
+#hi_IN UTF-8
+#hne_IN UTF-8
+#hr_HR.UTF-8 UTF-8
+#hr_HR ISO-8859-2
+#hsb_DE ISO-8859-2
+#hsb_DE.UTF-8 UTF-8
+#ht_HT UTF-8
+#hu_HU.UTF-8 UTF-8
+#hu_HU ISO-8859-2
+#hy_AM UTF-8
+#hy_AM.ARMSCII-8 ARMSCII-8
+#id_ID.UTF-8 UTF-8
+#id_ID ISO-8859-1
+#ig_NG UTF-8
+#ik_CA UTF-8
+#is_IS.UTF-8 UTF-8
+#is_IS ISO-8859-1
+#it_CH.UTF-8 UTF-8
+#it_CH ISO-8859-1
+#it_IT.UTF-8 UTF-8
+#it_IT ISO-8859-1
+#it_IT@euro ISO-8859-15
+#iu_CA UTF-8
+#iw_IL.UTF-8 UTF-8
+#iw_IL ISO-8859-8
+#ja_JP.EUC-JP EUC-JP
+#ja_JP.UTF-8 UTF-8
+#ka_GE.UTF-8 UTF-8
+#ka_GE GEORGIAN-PS
+#kk_KZ.UTF-8 UTF-8
+#kk_KZ PT154
+#kl_GL.UTF-8 UTF-8
+#kl_GL ISO-8859-1
+#km_KH UTF-8
+#kn_IN UTF-8
+#ko_KR.EUC-KR EUC-KR
+#ko_KR.UTF-8 UTF-8
+#kok_IN UTF-8
+#ks_IN UTF-8
+#ks_IN@devanagari UTF-8
+#ku_TR.UTF-8 UTF-8
+#ku_TR ISO-8859-9
+#kw_GB.UTF-8 UTF-8
+#kw_GB ISO-8859-1
+#ky_KG UTF-8
+#lb_LU UTF-8
+#lg_UG.UTF-8 UTF-8
+#lg_UG ISO-8859-10
+#li_BE UTF-8
+#li_NL UTF-8
+#lij_IT UTF-8
+#lo_LA UTF-8
+#lt_LT.UTF-8 UTF-8
+#lt_LT ISO-8859-13
+#lv_LV.UTF-8 UTF-8
+#lv_LV ISO-8859-13
+#mai_IN UTF-8
+#mg_MG.UTF-8 UTF-8
+#mg_MG ISO-8859-15
+#mhr_RU UTF-8
+#mi_NZ.UTF-8 UTF-8
+#mi_NZ ISO-8859-13
+#mk_MK.UTF-8 UTF-8
+#mk_MK ISO-8859-5
+#ml_IN UTF-8
+#mn_MN UTF-8
+#mr_IN UTF-8
+#ms_MY.UTF-8 UTF-8
+#ms_MY ISO-8859-1
+#mt_MT.UTF-8 UTF-8
+#mt_MT ISO-8859-3
+#my_MM UTF-8
+#nan_TW@latin UTF-8
+#nb_NO.UTF-8 UTF-8
+#nb_NO ISO-8859-1
+#nds_DE UTF-8
+#nds_NL UTF-8
+#ne_NP UTF-8
+#nl_AW UTF-8
+#nl_BE.UTF-8 UTF-8
+#nl_BE ISO-8859-1
+#nl_BE@euro ISO-8859-15
+#nl_NL.UTF-8 UTF-8
+#nl_NL ISO-8859-1
+#nl_NL@euro ISO-8859-15
+#nn_NO.UTF-8 UTF-8
+#nn_NO ISO-8859-1
+#nr_ZA UTF-8
+#nso_ZA UTF-8
+#oc_FR.UTF-8 UTF-8
+#oc_FR ISO-8859-1
+#om_ET UTF-8
+#om_KE.UTF-8 UTF-8
+#om_KE ISO-8859-1
+#or_IN UTF-8
+#os_RU UTF-8
+#pa_IN UTF-8
+#pa_PK UTF-8
+#pap_AN UTF-8
+#pl_PL.UTF-8 UTF-8
+#pl_PL ISO-8859-2
+#ps_AF UTF-8
+#pt_BR.UTF-8 UTF-8
+#pt_BR ISO-8859-1
+#pt_PT.UTF-8 UTF-8
+#pt_PT ISO-8859-1
+#pt_PT@euro ISO-8859-15
+#ro_RO.UTF-8 UTF-8
+#ro_RO ISO-8859-2
+#ru_RU.KOI8-R KOI8-R
+#ru_RU.UTF-8 UTF-8
+#ru_RU ISO-8859-5
+#ru_UA.UTF-8 UTF-8
+#ru_UA KOI8-U
+#rw_RW UTF-8
+#sa_IN UTF-8
+#sc_IT UTF-8
+#sd_IN UTF-8
+#sd_IN@devanagari UTF-8
+#se_NO UTF-8
+#shs_CA UTF-8
+#si_LK UTF-8
+#sid_ET UTF-8
+#sk_SK.UTF-8 UTF-8
+#sk_SK ISO-8859-2
+#sl_SI.UTF-8 UTF-8
+#sl_SI ISO-8859-2
+#so_DJ.UTF-8 UTF-8
+#so_DJ ISO-8859-1
+#so_ET UTF-8
+#so_KE.UTF-8 UTF-8
+#so_KE ISO-8859-1
+#so_SO.UTF-8 UTF-8
+#so_SO ISO-8859-1
+#sq_AL.UTF-8 UTF-8
+#sq_AL ISO-8859-1
+#sq_MK UTF-8
+#sr_ME UTF-8
+#sr_RS UTF-8
+#sr_RS@latin UTF-8
+#ss_ZA UTF-8
+#st_ZA.UTF-8 UTF-8
+#st_ZA ISO-8859-1
+#sv_FI.UTF-8 UTF-8
+#sv_FI ISO-8859-1
+#sv_FI@euro ISO-8859-15
+#sv_SE.UTF-8 UTF-8
+#sv_SE ISO-8859-1
+#sw_KE UTF-8
+#sw_TZ UTF-8
+#ta_IN UTF-8
+#ta_LK UTF-8
+#te_IN UTF-8
+#tg_TJ.UTF-8 UTF-8
+#tg_TJ KOI8-T
+#th_TH.UTF-8 UTF-8
+#th_TH TIS-620
+#ti_ER UTF-8
+#ti_ET UTF-8
+#tig_ER UTF-8
+#tk_TM UTF-8
+#tl_PH.UTF-8 UTF-8
+#tl_PH ISO-8859-1
+#tn_ZA UTF-8
+#tr_CY.UTF-8 UTF-8
+#tr_CY ISO-8859-9
+#tr_TR.UTF-8 UTF-8
+#tr_TR ISO-8859-9
+#ts_ZA UTF-8
+#tt_RU UTF-8
+#tt_RU@iqtelif UTF-8
+#ug_CN UTF-8
+#uk_UA.UTF-8 UTF-8
+#uk_UA KOI8-U
+#unm_US UTF-8
+#ur_IN UTF-8
+#ur_PK UTF-8
+#uz_UZ ISO-8859-1
+#uz_UZ@cyrillic UTF-8
+#ve_ZA UTF-8
+#vi_VN.TCVN TCVN5712-1
+#vi_VN UTF-8
+#wa_BE ISO-8859-1
+#wa_BE@euro ISO-8859-15
+#wa_BE.UTF-8 UTF-8
+#wae_CH UTF-8
+#wal_ET UTF-8
+#wo_SN UTF-8
+#xh_ZA.UTF-8 UTF-8
+#xh_ZA ISO-8859-1
+#yi_US.UTF-8 UTF-8
+#yi_US CP1255
+#yo_NG UTF-8
+#yue_HK UTF-8
+#zh_CN.GB18030 GB18030
+#zh_CN.GBK GBK
+#zh_CN.UTF-8 UTF-8
+#zh_CN GB2312
+#zh_HK.UTF-8 UTF-8
+#zh_HK BIG5-HKSCS
+#zh_SG.UTF-8 UTF-8
+#zh_SG.GBK GBK
+#zh_SG GB2312
+#zh_TW.EUC-TW EUC-TW
+#zh_TW.UTF-8 UTF-8
+#zh_TW BIG5
+#zu_ZA.UTF-8 UTF-8
+#zu_ZA ISO-8859-1
diff --git a/build_tools/archiso/mythvantage/root-image/etc/nsswitch.conf b/build_tools/archiso/mythvantage/root-image/etc/nsswitch.conf
new file mode 100644
index 0000000..2c66b68
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/nsswitch.conf
@@ -0,0 +1,19 @@
+# Begin /etc/nsswitch.conf
+
+passwd: files
+group: files
+shadow: files
+
+publickey: files
+
+hosts: files mdns4_minimal dns mdns4
+networks: files
+
+protocols: files
+services: files
+ethers: files
+rpc: files
+
+netgroup: files
+
+# End /etc/nsswitch.conf
diff --git a/build_tools/archiso/mythvantage/root-image/etc/pam.d/su b/build_tools/archiso/mythvantage/root-image/etc/pam.d/su
new file mode 100644
index 0000000..a291042
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/pam.d/su
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth sufficient pam_rootok.so
+auth sufficient pam_wheel.so trust use_uid
+auth required pam_unix.so
+account required pam_unix.so
+session required pam_unix.so
diff --git a/build_tools/archiso/mythvantage/root-image/etc/rc.conf b/build_tools/archiso/mythvantage/root-image/etc/rc.conf
new file mode 100644
index 0000000..b4a9e46
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/rc.conf
@@ -0,0 +1,7 @@
+USECOLOR="no"
+LOCALE_DEFAULT="en_US.UTF-8"
+DAEMON_LOCALE_DEFAULT="no"
+CLOCK_DEFAULT="UTC"
+TIMEZONE_DEFAULT="UTC"
+KEYMAP_DEFAULT="us"
+USECOLOR_DEFAULT="no"
diff --git a/build_tools/archiso/mythvantage/root-image/etc/rc.d/functions.d/symlink_used_block_devices b/build_tools/archiso/mythvantage/root-image/etc/rc.d/functions.d/symlink_used_block_devices
new file mode 100644
index 0000000..f6b6062
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/rc.d/functions.d/symlink_used_block_devices
@@ -0,0 +1,7 @@
+symlink_used_block_devices()
+{
+ mkdir /run/aif
+ ln -s /run/archiso/used_block_devices /run/aif/ignore_block_devices
+}
+
+add_hook multi_end symlink_used_block_devices
diff --git a/build_tools/archiso/mythvantage/root-image/etc/rc.d/pacman-init b/build_tools/archiso/mythvantage/root-image/etc/rc.d/pacman-init
new file mode 100755
index 0000000..bbbd719
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/rc.d/pacman-init
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+case "$1" in
+ start)
+ stat_busy "Initializing pacman keyring"
+ if { pacman-key --init && pacman-key --populate archlinux; } &>/dev/null; then
+ add_daemon pacman-init
+ stat_done
+ else
+ stat_fail
+ exit 1
+ fi
+ ;;
+
+ stop)
+ stat_busy "Removing pacman keyring"
+ rm -rf /etc/pacman.d/gnupg
+ rm_daemon pacman-init
+ stat_done
+ ;;
+
+ restart)
+ $0 stop
+ $0 start
+ ;;
+
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+
+exit 0
diff --git a/build_tools/archiso/mythvantage/root-image/etc/rc.local b/build_tools/archiso/mythvantage/root-image/etc/rc.local
new file mode 100755
index 0000000..b6ea57e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/rc.local
@@ -0,0 +1,110 @@
+#!/bin/bash
+#
+# /etc/rc.local: Local multi-user startup script.
+#
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/profile
+. ${MV_ROOT}/bin/install_functions.sh
+
+function mysql_check {
+ mysql -e "show databases;" 2>/dev/null >/dev/null
+ return $?
+}
+
+function mythconverg_check {
+ mysql mythconverg -e "describe settings;" 2>/dev/null >/dev/null
+ return $?
+}
+
+function install_db {
+ pacman --noconfirm -R mythdb-initial 2>/dev/null > /dev/null
+ pacman -S --noconfirm mythdb-initial 2>/dev/null > /dev/null
+}
+
+
+
+
+#check to see if mysql is running
+stat_busy "Checking Mysql"
+ATTEMPT=0
+mysql_check && printhl " Installing the initial database" &&install_db
+mythconverg_check
+status=$?
+while [ ! $status = 0 ]
+do
+ /etc/rc.d/mysqld start
+ mysqlstatus=$?
+ if [ $mysqlstatus = 0 ]
+ then
+ mysql_check && install_db
+ mythconverg_check
+ status=$?
+ else
+ ((ATTEMPT=ATTEMPT+1))
+ /etc/rc.d/mysqld stop
+ sleep 2
+ fi
+ if [ $ATTEMPT = 20 ]
+ then
+ printhl " Could not start mysql or install mythconverg within 20 attempts"
+ printhl " Aborting install"
+ exit 20
+ fi
+done
+stat_done
+
+#check network parms
+stat_busy "Checking network"
+init_network
+stat_done
+
+stat_busy "Probing network"
+request_dhcp &
+stat_done
+
+#save some cmdline options
+stat_busy "Parsing command line"
+parse_cmdline_2_db
+bootsplash_setup
+stat_done
+
+#search for remote
+stat_busy "Checking for remote"
+init_remote
+stat_done
+printhl "Finished"
+
+#creating /myth for live cd
+. /usr/MythVantage/bin/mv_config.py
+HDIR=`dirname $MYTHHOME`
+mkdir -p $HDIR
+useradd -b $HDIR -m -p "" -G "audio,disk,optical,wheel,storage,video,users" mythtv
+chown -R mythtv.mythtv $MYTHHOME
+#creating mountpoint for live cd
+mkdir -p $DATAMOUNT
+create_media_dirs.sh $DATAMOUNT
+chown -R mythtv.mythtv $DATAMOUNT/media
+
+
+
+printhl "Finished"
+/etc/rc.d/dbus start
+/etc/rc.d/avahi-daemon start
+echo $CMDLINE | grep -qi NoX
+if [ $? = 0 ]
+then
+ echo ""
+ printhl "No auto X option found"
+ # /usr/bin/chvt 2
+else
+ /root/startx &
+fi
+
+# Set up automatically logged in user
+if [ -f /.livesys/autologin ]; then
+ cp /.livesys/autologin /tmp/newuser
+fi
+
+#sh /usr/bin/go.sh &
+
diff --git a/build_tools/archiso/mythvantage/root-image/etc/vconsole.conf b/build_tools/archiso/mythvantage/root-image/etc/vconsole.conf
new file mode 100644
index 0000000..d89ef8a
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/etc/vconsole.conf
@@ -0,0 +1 @@
+CONSOLEMAP="8859-1"
diff --git a/build_tools/archiso/mythvantage/root-image/root/.post_process/go.sh b/build_tools/archiso/mythvantage/root-image/root/.post_process/go.sh
new file mode 100755
index 0000000..a87ca0c
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/root/.post_process/go.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+#This script is run after data is copied, but before configuration.
+
+. /usr/MythVantage/bin/mv_config.py
+
+PD="/root/.post_process"
+pacman -Sff --noconfirm runit-scripts
+
+HDIR=`dirname $MYTHHOME`
+mkdir -p $HDIR
+useradd -b $HDIR -m -p "" -G "audio,disk,optical,wheel,storage,video,users" mythtv
+
+
+
+chown -R mythtv.mythtv $MYTHHOME
+
+#creating /myth for live cd
+mkdir -p $DATAMOUNT
+create_media_dirs.sh $DATAMOUNT
+chown -R mythtv.mythtv $DATAMOUNT/media
+
+
+
+python2 /root/.post_process/locale.py
+echo "generating locales"
+/usr/sbin/locale-gen
+
+rm -f /etc/issue
+ln -s /etc/LinHES-release /etc/issue
+
+#remove files
+rm -f /root/LinHES-install.sh
+rm -f /root/startx
+rm -f /root/.directory
+
+
+#cp -rvpf /.post_process/home/mythtv /home/
+#cp -rvpf /.post_process/home/mythtv/.fluxbox /root
+#cp -vpf /.post_process/nouveau.conf /etc/modprobe.d/nouveau.conf
+mv $PD $PD.old
diff --git a/build_tools/archiso/mythvantage/root-image/root/.post_process/locale.py b/build_tools/archiso/mythvantage/root-image/root/.post_process/locale.py
new file mode 100644
index 0000000..70cfcbd
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/root/.post_process/locale.py
@@ -0,0 +1,23 @@
+def genlocale():
+ #logging.info("Generating locales")
+ locale_list=[ "en_US ISO-8859-1", "en_US.UTF-8 UTF-8" , "de_DE.UTF-8", "da_DK.utf8", "en_DK.utf8", "it_IT.utf8", "de_DE.UTF-8"]
+ #locale_list=['UTF-8', 'en_US ISO-8859-1']
+
+ localefile="/etc/locale.gen"
+ f = open(localefile)
+ lines = f.readlines()
+ f.close()
+
+ f = open(localefile,'w')
+
+ for line in lines:
+ outline = line
+ for locale in locale_list:
+ #print locale, line
+ if locale in line:
+ outline = line.replace('#','')
+ f.write(outline)
+
+ f.close
+
+genlocale()
diff --git a/build_tools/archiso/mythvantage/root-image/root/.post_process/menu.lst b/build_tools/archiso/mythvantage/root-image/root/.post_process/menu.lst
new file mode 100755
index 0000000..0ecc2a7
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/root/.post_process/menu.lst
@@ -0,0 +1,60 @@
+# Config file for GRUB - The GNU GRand Unified Bootloader
+# /boot/grub/menu.lst
+
+# DEVICE NAME CONVERSIONS
+#
+# Linux Grub
+# -------------------------
+# /dev/fd0 (fd0)
+# /dev/hda (hd0)
+# /dev/hdb2 (hd1,1)
+# /dev/hda3 (hd0,2)
+#
+
+# FRAMEBUFFER RESOLUTION SETTINGS
+# +-------------------------------------------------+
+# | 640x480 800x600 1024x768 1280x1024
+# ----+--------------------------------------------
+# 256 | 0x301=769 0x303=771 0x305=773 0x307=775
+# 32K | 0x310=784 0x313=787 0x316=790 0x319=793
+# 64K | 0x311=785 0x314=788 0x317=791 0x31A=794
+# 16M | 0x312=786 0x315=789 0x318=792 0x31B=795
+# +-------------------------------------------------+
+
+# general configuration:
+timeout 5
+default 0
+#color light-blue/black light-cyan/blue
+
+# boot sections follow
+# each is implicitly numbered from 0 in the order of appearance below
+#
+# TIP: If you want a 1024x768 framebuffer, add "vga=773" to your kernel line.
+#
+#-*
+hiddenmenu
+
+# (0) normal
+title LinHes
+root (hd0,0)
+kernel /boot/vmlinuz26 root=/dev/hda1 ro init=/sbin/runit vmalloc=192M console=tty1
+initrd /boot/kernel26.img
+
+# (1) bootsplash
+title LinHes-splashy
+root (hd0,0)
+kernel /boot/vmlinuz26 root=/dev/hda1 ro init=/sbin/runit vmalloc=192M quiet vga=0x314 splash=silent,theme:linhes console=tty1
+initrd /boot/kernel26.img
+
+# (2) noautologin
+title LinHES-nologin
+root (hd0,0)
+kernel /boot/vmlinuz26 root=/dev/hda1 ro init=/sbin/runit quiet vga=0x314 splash=silent,theme:linhes console=tty1 nox
+initrd /boot/kernel26.img
+
+
+# (3) normal
+title LinHes-init
+root (hd0,0)
+kernel /boot/vmlinuz26 root=/dev/hda1 ro console=tty1
+initrd /boot/kernel26.img
diff --git a/build_tools/archiso/mythvantage/root-image/root/.post_process/rc.conf b/build_tools/archiso/mythvantage/root-image/root/.post_process/rc.conf
new file mode 100755
index 0000000..43a275f
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/root/.post_process/rc.conf
@@ -0,0 +1,71 @@
+#
+# /etc/rc.conf - Main Configuration for Arch Linux
+#
+
+#
+# -----------------------------------------------------------------------
+# LOCALIZATION
+# -----------------------------------------------------------------------
+#
+# LOCALE: available languages can be listed with the 'locale -a' command
+# HARDWARECLOCK: set to "UTC" or "localtime"
+# TIMEZONE: timezones are found in /usr/share/zoneinfo
+# KEYMAP: keymaps are found in /usr/share/kbd/keymaps
+# CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
+# CONSOLEMAP: found in /usr/share/kbd/consoletrans
+# USECOLOR: use ANSI color sequences in startup messages
+#
+LOCALE="en_US.utf-8"
+HARDWARECLOCK="UTC"
+TIMEZONE="US/Central"
+KEYMAP="us"
+CONSOLEFONT=
+CONSOLEMAP=
+USECOLOR="yes"
+
+#
+# -----------------------------------------------------------------------
+# HARDWARE
+# -----------------------------------------------------------------------
+#
+# Scan hardware and load required modules at bootup
+MOD_AUTOLOAD="yes"
+if [ -f /etc/systemconfig ]
+then
+ . /etc/systemconfig
+fi
+
+if [ x$Audiotype = xOSS -a ! -f /tmp/.alsatest ]
+then
+ ALSABLACKLIST="!soundcore"
+else
+ if [ x$Audiotype = xOSS ]
+ then
+ ALSABLACKLIST="!soundcore"
+ else
+ ALSABLACKLIST=""
+ fi
+fi
+
+# Module Blacklist - modules in this list will never be loaded by udev
+MOD_BLACKLIST_=($ALSABLACKLIST !snd-pcsp !nouveau)
+#
+# Modules to load at boot-up (in this order)
+# - prefix a module with a ! to blacklist it
+#
+MODULES=($MOD_BLACKLIST_)
+# Scan for LVM volume groups at startup, required if you use LVM
+USELVM="no"
+
+#
+# -----------------------------------------------------------------------
+# NETWORKING
+# -----------------------------------------------------------------------
+#
+HOSTNAME=`cat /etc/hostname`
+
+#The following is only used on the install. After the first boot everything is set from /etc/net.
+
+#DAEMONS=(syslog-ng network netfs crond)
+DAEMONS=(fbsplash !syslog-ng !hotplug !pcmcia !network !mysqld dbus avahi-daemon)
+# End of file
diff --git a/build_tools/archiso/mythvantage/root-image/root/LinHES-install.sh b/build_tools/archiso/mythvantage/root-image/root/LinHES-install.sh
new file mode 100755
index 0000000..a4f8bd7
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/root/LinHES-install.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+#redirect stderr to stdout, then rediret stdout to file
+. /etc/profile
+exec 2>&1
+exec > /tmp/mythvantage_install.log
+#/usr/bin/nvidia-settings -a InitialPixmapPlacement=2
+#keylaunch &
+#/usr/bin/tilda &
+#/usr/X11R6/bin/unclutter -root -idle 0 -jitter 400 -noevents &
+export MALLOC_CHECK_=0
+xset s off
+xset -dpms
+xhost +
+
+CMDLINE=$(cat /proc/cmdline)
+echo $CMDLINE |grep -q nfsroot
+NFSROOT=$?
+echo $CMDLINE |grep -q clean_upgrade
+if [ $? = 0 ]
+then
+ export CLEAN_UPGRADE=YES
+else
+ export CLEAN_UPGRADE=NO
+fi
+MythVantage -r
+
+if [ x$NFSROOT = x1 ]
+then
+ unbuffer MythVantage &
+else
+ NETBOOT=YES MythVantage &
+fi
+cp -f /etc/keylaunchrc /root/.keylaunchrc
+/usr/bin/keylaunch &
+
+#exec fluxbox > /var/log/fluxbox.log 2>&1
+export GNUSTEP_USER_ROOT=/usr/share/wm_data/GNUstep
+exec wmaker
diff --git a/build_tools/archiso/mythvantage/root-image/root/startx b/build_tools/archiso/mythvantage/root-image/root/startx
new file mode 100755
index 0000000..ca11cdc
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/root/startx
@@ -0,0 +1,37 @@
+#!/bin/bash
+. /etc/profile
+
+export USER=root
+export HOME=/root
+
+CMDLINE=$(cat /proc/cmdline)
+TEMPVAR=${CMDLINE#*ip=}
+IP=${TEMPVAR%% *}
+echo $CMDLINE |grep -q vnc
+USEVNC=$?
+
+if [ x$USEVNC = x1 ]
+then
+ $MV_ROOT/bin/xconfig.sh 2>/dev/null
+# cat /etc/X11/xorg.conf | sed -e 's/dev\/mouse/dev\/psaux/g'> /root/xorg.conf.install
+ #startx /root/LinHES-install.sh -- -logverbose 6 -config /root/xorg.conf.install -allowMouseOpenFail 2>/tmp/x.log
+ startx /root/LinHES-install.sh -- -logverbose 6 -allowMouseOpenFail 2>/tmp/x.log
+ else
+ #VNC
+ pacman -Sf --noconfirm tigervnc
+ /etc/rc.d/dbus start
+ cp -f $TEMPLATES/vnc.service /etc/avahi/services/
+ /etc/rc.d/avahi-daemon start
+ cd /root
+ mkdir .vnc
+ echo 54321 |vncpasswd -f > /root/.vnc/passwd
+ chmod 500 /root/.vnc/passwd
+ rm -f /root/.vnc/xstartup 2>/dev/null
+ ln -s /root/LinHES-install.sh /root/.vnc/xstartup
+ vncserver
+ echo "The VNC server password is: 54321"
+ echo "Please connect to one of these ip's"
+ echo "-------------------------------------------"
+ ip addr show |grep "inet" |grep -v inet6|cut -d\/ -f1
+ echo "-------------------------------------------"
+fi
diff --git a/build_tools/archiso/mythvantage/root-image/usr/bin/autologin b/build_tools/archiso/mythvantage/root-image/usr/bin/autologin
new file mode 100755
index 0000000..c124f9e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/usr/bin/autologin
@@ -0,0 +1,2 @@
+#!/bin/bash
+/bin/login -f root
diff --git a/build_tools/archiso/mythvantage/root-image/usr/bin/go.sh b/build_tools/archiso/mythvantage/root-image/usr/bin/go.sh
new file mode 100644
index 0000000..e6222e4
--- /dev/null
+++ b/build_tools/archiso/mythvantage/root-image/usr/bin/go.sh
@@ -0,0 +1,2 @@
+#!/bin/bash
+/usr/MythVantage/bin/mv_install.py --rootdisk=sda --rootfs=ext3 --rootsize=5000 --datafs=ext3 --datasize=50 --datadisk=sda --swapsize=2 -c full_install
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso.cfg
new file mode 100644
index 0000000..d1817af
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso.cfg
@@ -0,0 +1,11 @@
+DEFAULT select
+
+LABEL select
+COM32 boot/syslinux/whichsys.c32
+APPEND -pxe- pxe -sys- sys -iso- sys
+
+LABEL pxe
+CONFIG boot/syslinux/archiso_pxe_choose.cfg
+
+LABEL sys
+CONFIG boot/syslinux/archiso_sys_choose.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_head.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_head.cfg
new file mode 100644
index 0000000..81ad26e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_head.cfg
@@ -0,0 +1,25 @@
+SERIAL 0 38400
+UI boot/syslinux/vesamenu.c32
+MENU TITLE Arch Linux
+MENU BACKGROUND boot/syslinux/splash.png
+
+MENU WIDTH 78
+MENU MARGIN 4
+MENU ROWS 7
+MENU VSHIFT 10
+MENU TABMSGROW 14
+MENU CMDLINEROW 14
+MENU HELPMSGROW 16
+MENU HELPMSGENDROW 29
+
+# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu
+
+MENU COLOR border 30;44 #40ffffff #a0000000 std
+MENU COLOR title 1;36;44 #9033ccff #a0000000 std
+MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all
+MENU COLOR unsel 37;44 #50ffffff #a0000000 std
+MENU COLOR help 37;40 #c0ffffff #a0000000 std
+MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std
+MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std
+MENU COLOR msg07 37;40 #90ffffff #a0000000 std
+MENU COLOR tabmsg 31;40 #30ffffff #00000000 std
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe32.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe32.cfg
new file mode 100644
index 0000000..4bdeefa
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe32.cfg
@@ -0,0 +1,32 @@
+LABEL arch32_nbd
+TEXT HELP
+Boot the Arch Linux (i686) live medium (Using NBD). It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (i686) (NBD)
+LINUX boot/i686/vmlinuz
+INITRD boot/i686/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% archiso_nbd_srv=${pxeserver}
+IPAPPEND 3
+
+LABEL arch32_nfs
+TEXT HELP
+Boot the Arch Linux (i686) live medium (Using NFS). It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (i686) (NFS)
+LINUX boot/i686/vmlinuz
+INITRD boot/i686/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archiso_nfs_srv=${pxeserver}:/run/archiso/bootmnt
+IPAPPEND 3
+
+LABEL arch32_http
+TEXT HELP
+Boot the Arch Linux (i686) live medium (Using HTTP). It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (i686) (HTTP)
+LINUX boot/i686/vmlinuz
+INITRD boot/i686/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/
+IPAPPEND 3
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe64.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe64.cfg
new file mode 100644
index 0000000..1676236
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe64.cfg
@@ -0,0 +1,32 @@
+LABEL arch64_nbd
+TEXT HELP
+Boot the Arch Linux (x86_64) live medium (Using NBD). It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (x86_64) (NBD)
+LINUX boot/x86_64/vmlinuz
+INITRD boot/x86_64/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% archiso_nbd_srv=${pxeserver}
+IPAPPEND 3
+
+LABEL arch64_nfs
+TEXT HELP
+Boot the Arch Linux (x86_64) live medium (Using NFS). It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (x86_64) (NFS)
+LINUX boot/x86_64/vmlinuz
+INITRD boot/x86_64/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archiso_nfs_srv=${pxeserver}:/run/archiso/bootmnt
+IPAPPEND 3
+
+LABEL arch64_http
+TEXT HELP
+Boot the Arch Linux (x86_64) live medium (Using HTTP). It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (x86_64) (HTTP)
+LINUX boot/x86_64/vmlinuz
+INITRD boot/x86_64/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/
+IPAPPEND 3
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_32_inc.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_32_inc.cfg
new file mode 100644
index 0000000..e4115df
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_32_inc.cfg
@@ -0,0 +1,3 @@
+INCLUDE boot/syslinux/archiso_head.cfg
+INCLUDE boot/syslinux/archiso_pxe32.cfg
+INCLUDE boot/syslinux/archiso_tail.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_both_inc.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_both_inc.cfg
new file mode 100644
index 0000000..324523e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_both_inc.cfg
@@ -0,0 +1,4 @@
+INCLUDE boot/syslinux/archiso_head.cfg
+INCLUDE boot/syslinux/archiso_pxe32.cfg
+INCLUDE boot/syslinux/archiso_pxe64.cfg
+INCLUDE boot/syslinux/archiso_tail.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_choose.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_choose.cfg
new file mode 100644
index 0000000..6296065
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_pxe_choose.cfg
@@ -0,0 +1,11 @@
+DEFAULT choose
+
+LABEL choose
+COM32 boot/syslinux/ifcpu64.c32
+APPEND have64 -- nohave64
+
+LABEL have64
+CONFIG boot/syslinux/archiso_pxe_both_inc.cfg
+
+LABEL nohave64
+CONFIG boot/syslinux/archiso_pxe_32_inc.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys32.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys32.cfg
new file mode 100644
index 0000000..261579e
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys32.cfg
@@ -0,0 +1,9 @@
+LABEL arch32
+TEXT HELP
+Boot the Arch Linux (i686) live medium. It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (i686)
+LINUX boot/i686/vmlinuz
+INITRD boot/i686/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys64.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys64.cfg
new file mode 100644
index 0000000..eb89813
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys64.cfg
@@ -0,0 +1,9 @@
+LABEL arch64
+TEXT HELP
+Boot the Arch Linux (x86_64) live medium. It allows you to install Arch Linux or
+perform system maintenance.
+ENDTEXT
+MENU LABEL Boot Arch Linux (x86_64)
+LINUX boot/x86_64/vmlinuz
+INITRD boot/x86_64/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_32_inc.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_32_inc.cfg
new file mode 100644
index 0000000..9e37093
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_32_inc.cfg
@@ -0,0 +1,3 @@
+INCLUDE boot/syslinux/archiso_head.cfg
+INCLUDE boot/syslinux/archiso_sys32.cfg
+INCLUDE boot/syslinux/archiso_tail.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_both_inc.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_both_inc.cfg
new file mode 100644
index 0000000..4ed6b39
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_both_inc.cfg
@@ -0,0 +1,4 @@
+INCLUDE boot/syslinux/archiso_head.cfg
+INCLUDE boot/syslinux/archiso_sys32.cfg
+INCLUDE boot/syslinux/archiso_sys64.cfg
+INCLUDE boot/syslinux/archiso_tail.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_choose.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_choose.cfg
new file mode 100644
index 0000000..24c597a
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_sys_choose.cfg
@@ -0,0 +1,11 @@
+DEFAULT choose
+
+LABEL choose
+COM32 boot/syslinux/ifcpu64.c32
+APPEND have64 -- nohave64
+
+LABEL have64
+CONFIG boot/syslinux/archiso_sys_both_inc.cfg
+
+LABEL nohave64
+CONFIG boot/syslinux/archiso_sys_32_inc.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/archiso_tail.cfg b/build_tools/archiso/mythvantage/syslinux.dual/archiso_tail.cfg
new file mode 100644
index 0000000..a55548c
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/archiso_tail.cfg
@@ -0,0 +1,27 @@
+LABEL existing
+TEXT HELP
+Boot an existing operating system. Press TAB to edit the disk and partition
+number to boot.
+ENDTEXT
+MENU LABEL Boot existing OS
+COM32 boot/syslinux/chain.c32
+APPEND hd0 0
+
+# http://www.memtest.org/
+LABEL memtest
+MENU LABEL Run Memtest86+ (RAM test)
+LINUX boot/memtest
+
+# http://hdt-project.org/
+LABEL hdt
+MENU LABEL Hardware Information (HDT)
+COM32 boot/syslinux/hdt.c32
+APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz
+
+LABEL reboot
+MENU LABEL Reboot
+COM32 boot/syslinux/reboot.c32
+
+LABEL poweroff
+MENU LABEL Power Off
+COMBOOT boot/syslinux/poweroff.com
diff --git a/build_tools/archiso/mythvantage/syslinux.dual/syslinux.cfg b/build_tools/archiso/mythvantage/syslinux.dual/syslinux.cfg
new file mode 100644
index 0000000..3ee98de
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux.dual/syslinux.cfg
@@ -0,0 +1,5 @@
+DEFAULT loadconfig
+
+LABEL loadconfig
+ CONFIG archiso.cfg
+ APPEND ../../
diff --git a/build_tools/archiso/mythvantage/syslinux/archiso.cfg b/build_tools/archiso/mythvantage/syslinux/archiso.cfg
new file mode 100644
index 0000000..126fc77
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/archiso.cfg
@@ -0,0 +1,11 @@
+DEFAULT select
+
+LABEL select
+COM32 boot/syslinux/whichsys.c32
+APPEND -pxe- pxe -sys- sys -iso- sys
+
+LABEL pxe
+CONFIG boot/syslinux/archiso_pxe_inc.cfg
+
+LABEL sys
+CONFIG boot/syslinux/archiso_sys_inc.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux/archiso_head.cfg b/build_tools/archiso/mythvantage/syslinux/archiso_head.cfg
new file mode 100644
index 0000000..25911a1
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/archiso_head.cfg
@@ -0,0 +1,44 @@
+SERIAL 0 38400
+UI boot/syslinux/vesamenu.c32
+MENU TITLE LinHES: The Linux Home Entertainment System
+MENU BACKGROUND boot/syslinux/splash.png
+
+prompt 1
+TIMEOUT 300
+TOTALTIMEOUT 9000
+DEFAULT linux
+
+#MENU WIDTH 78
+#MENU MARGIN 4
+#MENU ROWS 6
+#MENU VSHIFT 10
+#MENU TABMSGROW 14
+#MENU CMDLINEROW 14
+MENU HELPMSGROW 19
+MENU HELPMSGENDROW 29
+
+MENU SEPARATOR
+
+MENU ROWS 10
+MENU CMDLINEROW 17
+MENU TIMEOUTROW 15
+MENU TABMSGROW 17
+MENU WIDTH 78
+
+menu color border 30;44 #00000000 #00000000 none
+menu color sel 7 #ff000000 #ffebb91c rev
+menu color title 0 #ffffffff #ff0072BB
+menu color tabmsg 0 #ff000000 #00000000 none
+menu color unsel 0 #ffffffff #ff0072BB
+
+menu color hotsel 0 #ff000000 #ffffffff
+menu color hotkey 7 #ffffffff #ff000000
+#menu color timeout_msg 0 #fffffff #ffffffff
+#menu color timeout 0 #fffffff #ffffffff
+menu color cmdline 0 #ff000000 #00000000 none
+
+
+menu COLOR timeout_msg 37;40 #80ffffff #00000000 std
+menu COLOR timeout 1;37;40 #c0ffffff #00000000 std
+
+# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu
diff --git a/build_tools/archiso/mythvantage/syslinux/archiso_pxe_inc.cfg b/build_tools/archiso/mythvantage/syslinux/archiso_pxe_inc.cfg
new file mode 100644
index 0000000..b2b6887
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/archiso_pxe_inc.cfg
@@ -0,0 +1,3 @@
+INCLUDE boot/syslinux/archiso_head.cfg
+INCLUDE boot/syslinux/archiso_pxe.cfg
+INCLUDE boot/syslinux/archiso_tail.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux/archiso_sys.cfg b/build_tools/archiso/mythvantage/syslinux/archiso_sys.cfg
new file mode 100644
index 0000000..6185fc2
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/archiso_sys.cfg
@@ -0,0 +1,40 @@
+
+MENU TITLE LinHES: The Linux Home Entertainment System
+
+label linux
+MENU LABEL LinHES (default).
+TEXT HELP
+Boot the LinHES live medium. It allows you to install LinHES or
+perform system maintenance. Add NoX to skip xwindows
+ENDTEXT
+LINUX boot/%ARCH%/vmlinuz
+INITRD boot/%ARCH%/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% quiet splash=silent,theme:linhes console=tty1
+
+
+label linux-nosplash
+MENU LABEL LinHES without splash screen.
+TEXT HELP
+Boot the LinHES live medium. It allows you to install LinHES or
+perform system maintenance. Add NoX to skip xwindows
+ENDTEXT
+LINUX boot/%ARCH%/vmlinuz
+INITRD boot/%ARCH%/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% console=tty1
+
+label linux-vnc
+MENU LABEL LinHES VNC install.
+TEXT HELP
+Boot the LinHES live medium. It allows you to install LinHES or
+perform system maintenance over vnc. DHCP will be used for the network
+ENDTEXT
+LINUX boot/%ARCH%/vmlinuz
+INITRD boot/%ARCH%/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% console=tty1 vnc cip=dhcp
+
+label special
+MENU LABEL Special Hardware
+KERNEL boot/syslinux/vesamenu.c32
+APPEND boot/syslinux/hardsub.cfg
+
+MENU SEPARATOR
diff --git a/build_tools/archiso/mythvantage/syslinux/archiso_sys_inc.cfg b/build_tools/archiso/mythvantage/syslinux/archiso_sys_inc.cfg
new file mode 100644
index 0000000..56c6a17
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/archiso_sys_inc.cfg
@@ -0,0 +1,3 @@
+INCLUDE boot/syslinux/archiso_head.cfg
+INCLUDE boot/syslinux/archiso_sys.cfg
+INCLUDE boot/syslinux/archiso_tail.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux/archiso_tail.cfg b/build_tools/archiso/mythvantage/syslinux/archiso_tail.cfg
new file mode 100644
index 0000000..a55548c
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/archiso_tail.cfg
@@ -0,0 +1,27 @@
+LABEL existing
+TEXT HELP
+Boot an existing operating system. Press TAB to edit the disk and partition
+number to boot.
+ENDTEXT
+MENU LABEL Boot existing OS
+COM32 boot/syslinux/chain.c32
+APPEND hd0 0
+
+# http://www.memtest.org/
+LABEL memtest
+MENU LABEL Run Memtest86+ (RAM test)
+LINUX boot/memtest
+
+# http://hdt-project.org/
+LABEL hdt
+MENU LABEL Hardware Information (HDT)
+COM32 boot/syslinux/hdt.c32
+APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz
+
+LABEL reboot
+MENU LABEL Reboot
+COM32 boot/syslinux/reboot.c32
+
+LABEL poweroff
+MENU LABEL Power Off
+COMBOOT boot/syslinux/poweroff.com
diff --git a/build_tools/archiso/mythvantage/syslinux/hardsub.cfg b/build_tools/archiso/mythvantage/syslinux/hardsub.cfg
new file mode 100644
index 0000000..73a9b45
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/hardsub.cfg
@@ -0,0 +1,58 @@
+SERIAL 0 38400
+UI boot/syslinux/vesamenu.c32
+prompt 0
+#timeout 300
+INCLUDE boot/syslinux/archiso_head.cfg
+
+MENU TITLE Systems menu
+
+label atomic
+MENU LABEL LinHES on Atomic Ant!
+kernel /boot/vmlinuz26
+append initrd=/boot/larch.img vga=792 quiet splash=silent,theme:linhes console=tty1 disablemodules=agpart,intel_agp
+
+
+label linux-serial
+MENU LABEL use serial port ttyS0 for ir receiver
+TEXT HELP
+Boot the LinHES live medium. It allows you to install LinHES or
+perform system maintenance.
+ENDTEXT
+LINUX boot/%ARCH%/vmlinuz
+INITRD boot/%ARCH%/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% console=tty1 remoteport=ttyS0 remotebucket=common remote=mceusb
+
+label linux-vesa
+MENU LABEL Force use of vesa driver
+TEXT HELP
+Boot the LinHES live medium. It allows you to install LinHES or
+perform system maintenance. Force the use of the xorg vesa driver
+ENDTEXT
+LINUX boot/%ARCH%/vmlinuz
+INITRD boot/%ARCH%/archiso.img
+APPEND archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL% console=tty1 forceXvesa
+
+#label dragon
+#MENU LABEL Dragon Version 1
+#kernel /boot/vmlinuz26
+#append initrd=/boot/larch.img type=dragon vga=0x314 quiet splash=silent,theme:linhes console=tty1
+
+#label dragon2
+#MENU LABEL Dragon Version 2
+#kernel /boot/vmlinuz26
+#append initrd=/boot/larch.img type=dragon2 vga=0x314 quiet splash=silent,theme:linhes console=tty1
+
+#label ausdragon
+#MENU LABEL Australian Dragon
+#kernel /boot/vmlinuz26
+#append initrd=/boot/larch.img type=ausdragon vga=0x314 quiet splash=silent,theme:linhes console=tty1
+
+#label 8400
+#MENU LABEL For the Nvidia 8400 chipset.
+#kernel /boot/vmlinuz26
+#append initrd=/boot/larch.img vga=792 quiet splash=silent,theme:linhes console=tty1 disablemodules=agpart
+
+label goback
+MENU LABEL Back
+kernel boot/syslinux/vesamenu.c32
+append menu boot/syslinux/archiso_sys_inc.cfg
diff --git a/build_tools/archiso/mythvantage/syslinux/splash.png b/build_tools/archiso/mythvantage/syslinux/splash.png
new file mode 100644
index 0000000..76a0777
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/splash.png
Binary files differ
diff --git a/build_tools/archiso/mythvantage/syslinux/syslinux.cfg b/build_tools/archiso/mythvantage/syslinux/syslinux.cfg
new file mode 100644
index 0000000..3ee98de
--- /dev/null
+++ b/build_tools/archiso/mythvantage/syslinux/syslinux.cfg
@@ -0,0 +1,5 @@
+DEFAULT loadconfig
+
+LABEL loadconfig
+ CONFIG archiso.cfg
+ APPEND ../../