From d826082f2b1b7e374468b5766e23bc391cf62020 Mon Sep 17 00:00:00 2001 From: r00t Date: Sun, 10 Jan 2016 14:34:49 -0500 Subject: [PATCH 01/12] ipxe update, packages update --- extra/packages.both | 2 +- src/ipxe | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/extra/packages.both b/extra/packages.both index b9c5982..dda5f6f 100644 --- a/extra/packages.both +++ b/extra/packages.both @@ -107,6 +107,7 @@ gptfdisk gst-libav gst-plugins-ugly hashcat +hashdeep hddtemp hdparm hexcurse @@ -156,7 +157,6 @@ magicrescue mbr mbuffer mcelog -md5deep mdadm mdcrack # superseded by storcli diff --git a/src/ipxe b/src/ipxe index 0a4805b..0af0888 160000 --- a/src/ipxe +++ b/src/ipxe @@ -1 +1 @@ -Subproject commit 0a4805bf943be5b573b0560ecfcc88ff9999fd95 +Subproject commit 0af08888329e29541d8525732d48e75ab1eebecc From f43ceb501fe0143cc4505bcd6e837abb388fe0ca Mon Sep 17 00:00:00 2001 From: r00t Date: Thu, 25 Feb 2016 08:27:16 -0500 Subject: [PATCH 02/12] updating package list with some temporary workarounds (my customizepkg-scripting might be causing some to fail?), updated some embedded confs, cleaned up some functions, updated ipxe patches --- bin/build.sh | 16 ++++++++ extra/bootstrap/apacman-1.9-1-any.pkg.tar.xz | Bin 28048 -> 0 bytes extra/bootstrap/apacman-2.3-1-any.pkg.tar.xz | Bin 0 -> 44888 bytes extra/packages.both | 11 +++--- extra/pre-build.d/etc/apacman.conf | 37 +++++++++--------- extra/pre-build.d/etc/mkinitcpio.conf | 2 +- extra/pre-build.d/etc/pacman.d/mirrorlist | 13 +++--- lib/01-mk.chroot.func.sh | 4 +- lib/10-yo_dj.func.sh | 2 +- src/ipxe | 2 +- src/ipxe_local/patches/ipxe-0002-banner.patch | 16 ++++---- .../patches/ipxe-0003-iso-efi.patch | 20 +++++----- 12 files changed, 69 insertions(+), 54 deletions(-) delete mode 100644 extra/bootstrap/apacman-1.9-1-any.pkg.tar.xz create mode 100644 extra/bootstrap/apacman-2.3-1-any.pkg.tar.xz diff --git a/bin/build.sh b/bin/build.sh index 3547fc1..f164a46 100755 --- a/bin/build.sh +++ b/bin/build.sh @@ -155,6 +155,22 @@ then exit 0 fi +# implement for future, needs tweaking- JUST rebuild the ISO. +#if [[ ${1} == "respin" ]]; +#then +# if [[ "${MULTIARCH}" == "y" ]]; +# then +# centos_is_stupid +# yo_dj any +# else +# centos_is_stupid +# yo_dj 64 +# centos_is_stupid +# yo_dj 32 +# fi +#fi +# + # or are we just building? if [[ ${1} == "build" || -z ${1} || ${1} == "all" ]]; then diff --git a/extra/bootstrap/apacman-1.9-1-any.pkg.tar.xz b/extra/bootstrap/apacman-1.9-1-any.pkg.tar.xz deleted file mode 100644 index 37272eca707cd59b272407b8aa1efcaadbaf68d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28048 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 diff --git a/extra/bootstrap/apacman-2.3-1-any.pkg.tar.xz b/extra/bootstrap/apacman-2.3-1-any.pkg.tar.xz new file mode 100644 index 0000000000000000000000000000000000000000..1a2918e6aa764e86d6d4f2241ea592d3bae2f31c GIT binary patch literal 44888 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

P`x*z$q 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 literal 0 HcmV?d00001 diff --git a/extra/packages.both b/extra/packages.both index dda5f6f..cb91296 100644 --- a/extra/packages.both +++ b/extra/packages.both @@ -54,7 +54,7 @@ dd_rescue dd_rhelp debianutils debootstrap -dialog +#dialog #giving a weird dependency issue diffutils djohn dmidecode @@ -141,8 +141,7 @@ keyutils kismet-allplugins lftp links -#logkeys -logkeys-keymaps +logkeys-git lm_sensors lrzsz lshw @@ -254,7 +253,7 @@ smartmontools smbclient s-nail socat -#star ## do people even USE tape packups anymore? +#star ## do people even USE tape backups anymore? storcli strace stress @@ -271,7 +270,7 @@ thttpd tmon tmux tre -truecrack-svn +truecrack-git truecrypt tor udftools @@ -296,7 +295,7 @@ vncrack vnstat vpnc weplab -whdd +#whdd #currently depends on dialog, which is broke as shit whois wifite-mod-pixiewps-git wipe diff --git a/extra/pre-build.d/etc/apacman.conf b/extra/pre-build.d/etc/apacman.conf index 3723234..f9e124a 100644 --- a/extra/pre-build.d/etc/apacman.conf +++ b/extra/pre-build.d/etc/apacman.conf @@ -11,27 +11,26 @@ #buildonly=1 #cachevcs=1 #ignorearch=1 -#needed=1 +#keepkeys=1 +needed=1 +#noaur=1 noconfirm=1 noedit=1 -#noaur=1 -#noconfirm=1 -#noedit=1 -#nofail=1 +nofail=1 #preview=1 -#purgebuild=1 +progress=1 +purgebuild=1 #quiet=1 -#skipcache=1 -skipinteg=1 +skipcache=1 +#skipinteg=1 #skiptest=1 #warn=1 -#tmpdir=/var/tmp/apacman -#TMPDIR=/var/tmp/apacman # # CONFIGURATION # +#builddir="/tmp/pkgbuild-$UID" #tmpdir="/tmp/apacmantmp-$UID" #makepkgconf="/etc/makepkg.conf" #usermakepkgconf="$HOME/.makepkg.conf" @@ -39,19 +38,21 @@ skipinteg=1 #downdir="/var/cache/pacman/pkg" #savedir="/var/cache/apacman/pkg" #editor="nano -w" -editor="vim" +#pager="less -R" #RPCURL="https://aur.archlinux.org/rpc.php?type" #PKGURL="https://aur.archlinux.org" +#WEBURL="https://www.archlinux.org" #ABSURL="rsync.archlinux.org" # # COLORIZATION # -COLOR1='\e[1;39m' -COLOR2='\e[1;32m' -COLOR3='\e[1;35m' -COLOR4='\e[1;36m' -COLOR5='\e[1;34m' -COLOR6='\e[1;33m' -COLOR7='\e[1;31m' +#COLOR1='\e[1;39m' +#COLOR2='\e[1;32m' +#COLOR3='\e[1;35m' +#COLOR4='\e[1;36m' +#COLOR5='\e[1;34m' +#COLOR6='\e[1;33m' +#COLOR7='\e[1;31m' + diff --git a/extra/pre-build.d/etc/mkinitcpio.conf b/extra/pre-build.d/etc/mkinitcpio.conf index f151ea1..22c7305 100644 --- a/extra/pre-build.d/etc/mkinitcpio.conf +++ b/extra/pre-build.d/etc/mkinitcpio.conf @@ -64,4 +64,4 @@ COMPRESSION="xz" # COMPRESSION_OPTIONS # Additional options for the compressor -#COMPRESSION_OPTIONS="" +COMPRESSION_OPTIONS="-9" diff --git a/extra/pre-build.d/etc/pacman.d/mirrorlist b/extra/pre-build.d/etc/pacman.d/mirrorlist index 6fefe45..0d60fc3 100644 --- a/extra/pre-build.d/etc/pacman.d/mirrorlist +++ b/extra/pre-build.d/etc/pacman.d/mirrorlist @@ -1,7 +1,6 @@ -# Server list generated by rankmirrors on 2014-11-10 -Server = http://mirror.rit.edu/archlinux/$repo/os/$arch -Server = http://mirror.cc.columbia.edu/pub/linux/archlinux/$repo/os/$arch -Server = http://mirrors.acm.wpi.edu/archlinux/$repo/os/$arch -Server = http://mirror.jmu.edu/pub/archlinux/$repo/os/$arch -Server = http://mirror.cs.pitt.edu/archlinux/$repo/os/$arch -Server = http://mirror.vtti.vt.edu/archlinux/$repo/os/$arch +Server = http://mirrors.advancedhosters.com/archlinux/$repo/os/$arch +Server = http://mirrors.gigenet.com/archlinux/$repo/os/$arch +Server = http://il.mirrors.linaxe.net/archlinux/$repo/os/$arch +Server = http://mirror.grig.io/archlinux/$repo/os/$arch +Server = http://arch.mirrors.ionfish.org/$repo/os/$arch +Server = http://cosmos.cites.illinois.edu/pub/archlinux/$repo/os/$arch diff --git a/lib/01-mk.chroot.func.sh b/lib/01-mk.chroot.func.sh index 37694de..c6545a2 100755 --- a/lib/01-mk.chroot.func.sh +++ b/lib/01-mk.chroot.func.sh @@ -179,7 +179,7 @@ EOF for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done echo "Done." echo -n "...Upgrading any outdated packages..." - ${CHROOTCMD} ${i}/ pacman -Syyu --noconfirm >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${i}/ pacman -Syyu --force --noconfirm >> "${LOGFILE}.${FUNCNAME}" 2>&1 ${CHROOTCMD} ${i}/ pacman-key --refresh-keys >> "${LOGFILE}.${FUNCNAME}" 2>&1 for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done echo "Done. Finishing/cleaning up..." @@ -196,7 +196,7 @@ EOF #${CHROOTCMD} ${i} "pacman --noconfirm -U /var/tmp/pkg/apacman.tar.xz" >> "${LOGFILE}.${FUNCNAME}" 2>&1 ${CHROOTCMD} ${i} bash -c "pacman --noconfirm -U /var/tmp/pkg/apacman.tar.xz && mkdir /var/tmp/apacman && chmod 0750 /var/tmp/apacman && chown root:aurbuild /var/tmp/apacman " >> "${LOGFILE}.${FUNCNAME}" 2>&1 for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done - ${CHROOTCMD} ${i} bash -c "apacman -S --noconfirm --noedit --skipinteg -S apacman-deps expac" >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${i} bash -c "apacman -S --noconfirm --noedit --skipinteg -S apacman apacman-deps expac" >> "${LOGFILE}.${FUNCNAME}" 2>&1 #rm -rf ${i}/var/tmp/pkg #${CHROOTCMD} ${i}/ pacman -S --noconfirm --needed yaourt >> "${LOGFILE}.${FUNCNAME}" 2>&1 for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done diff --git a/lib/10-yo_dj.func.sh b/lib/10-yo_dj.func.sh index adcd6cc..a8f4701 100644 --- a/lib/10-yo_dj.func.sh +++ b/lib/10-yo_dj.func.sh @@ -379,8 +379,8 @@ EOF mv -f ${BASEDIR}/src/ipxe/src/bin/ipxe.eiso ${ISODIR}/${MINIFILENAME} make clean >> "${LOGFILE}.${FUNCNAME}" 2>&1 cd ${BASEDIR}/src/ipxe - git reset --hard >> "${LOGFILE}.${FUNCNAME}" 2>&1 git clean -xdf > /dev/null 2>&1 + git reset --hard >> "${LOGFILE}.${FUNCNAME}" 2>&1 git checkout master . > /dev/null 2>&1 #git reset --hard HEAD > /dev/null 2>&1 echo diff --git a/src/ipxe b/src/ipxe index 0af0888..6143057 160000 --- a/src/ipxe +++ b/src/ipxe @@ -1 +1 @@ -Subproject commit 0af08888329e29541d8525732d48e75ab1eebecc +Subproject commit 614305743031bdfc02cb4ce346e450cd1d476e17 diff --git a/src/ipxe_local/patches/ipxe-0002-banner.patch b/src/ipxe_local/patches/ipxe-0002-banner.patch index 6db1e86..d54b959 100644 --- a/src/ipxe_local/patches/ipxe-0002-banner.patch +++ b/src/ipxe_local/patches/ipxe-0002-banner.patch @@ -1,5 +1,5 @@ ---- a/src/usr/autoboot.c 2015-06-29 04:18:17.055394598 -0400 -+++ b/src/usr/autoboot.c 2015-06-29 22:04:28.692916217 -0400 +--- a/src/usr/autoboot.c ++++ b/src/usr/autoboot.c @@ -71,6 +71,7 @@ #define NORMAL "\033[0m" #define BOLD "\033[1m" @@ -8,16 +8,16 @@ /** The "scriptlet" setting */ const struct setting scriptlet_setting __setting ( SETTING_MISC, scriptlet ) = { -@@ -560,9 +561,9 @@ +@@ -538,11 +539,10 @@ * do so. * */ - printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME " %s" -- NORMAL " -- " PRODUCT_TAG_LINE " -- " -- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version ); + printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME + NORMAL " -- " PRODUCT_TAG_LINE " -- " +- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version ); + CYAN PRODUCT_URI NORMAL "\n" -+ BOLD BLUE "http://bdisk.square-r00t.net/" NORMAL "\n" ); - for_each_table_entry ( feature, FEATURES ) - printf ( " %s", feature->name ); ++ BOLD BLUE "https://bdisk.square-r00t.net/" NORMAL "\n" ); printf ( "\n" ); + + /* Boot system */ diff --git a/src/ipxe_local/patches/ipxe-0003-iso-efi.patch b/src/ipxe_local/patches/ipxe-0003-iso-efi.patch index b2aacb2..830a58b 100644 --- a/src/ipxe_local/patches/ipxe-0003-iso-efi.patch +++ b/src/ipxe_local/patches/ipxe-0003-iso-efi.patch @@ -5,21 +5,21 @@ Subject: [PATCH 1/1] allow to build ISO image with EFI support (ipxe.eiso) Signed-off-by: Christian Hesse --- - src/arch/i386/Makefile.pcbios | 6 +++++ + src/arch/x86/Makefile.pcbios | 6 ++++++ src/util/geniso | 52 +++++++++++++++++++++++++++++++++---------- 2 files changed, 46 insertions(+), 12 deletions(-) -diff --git a/src/arch/i386/Makefile.pcbios b/src/arch/i386/Makefile.pcbios -index ff82373..c7a58eb 100644 ---- a/src/arch/i386/Makefile.pcbios -+++ b/src/arch/i386/Makefile.pcbios -@@ -59,6 +59,12 @@ NON_AUTO_MEDIA += iso - $(QM)$(ECHO) " [GENISO] $@" - $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) VERSION="$(VERSION)" bash util/geniso -o $@ $< +diff --git a/src/arch/x86/Makefile.pcbios b/src/arch/x86/Makefile.pcbios +index 18a6f75..9cb3e0b 100644 +--- a/src/arch/x86/Makefile.pcbios ++++ b/src/arch/x86/Makefile.pcbios +@@ -82,6 +82,12 @@ NON_AUTO_MEDIA += iso + $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) LDLINUX_C32=$(LDLINUX_C32) \ + VERSION="$(VERSION)" bash util/geniso -o $@ $< +# rule to make a non-emulation ISO boot image with EFI support -+NON_AUTO_MEDIA += eiso -+%eiso: %lkrn bin-i386-efi/ipxe.efi bin-x86_64-efi/ipxe.efi util/geniso ++NON_AUTO_MEDIA += eiso ++%eiso: %lkrn bin-i386-efi/ipxe.efi bin-x86_64-efi/ipxe.efi util/geniso + $(QM)$(ECHO) " [GENISO] $@" + $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) VERSION="$(VERSION)" bash util/geniso -e -o $@ $< + From e95c4f3cff364707ce36098c33cd30cbd6b46af2 Mon Sep 17 00:00:00 2001 From: r00t Date: Tue, 1 Mar 2016 22:15:03 -0500 Subject: [PATCH 03/12] updating patch... --- .../apacman-2.3-1-any.FIXED.pkg.tar.xz | Bin 0 -> 45152 bytes extra/bootstrap/apacman-2.3-1-any.pkg.tar.xz | Bin 44888 -> 0 bytes extra/packages.both | 4 +- .../pre-build.d/etc/customizepkg.d/etc-update | 3 ++ extra/pre-build.d/etc/customizepkg.d/fang | 3 ++ extra/pre-build.d/etc/customizepkg.d/libnfc | 3 ++ src/ipxe | 2 +- src/ipxe_local/patches/ipxe-0002-banner.patch | 48 +++++++++++------- 8 files changed, 42 insertions(+), 21 deletions(-) create mode 100644 extra/bootstrap/apacman-2.3-1-any.FIXED.pkg.tar.xz delete mode 100644 extra/bootstrap/apacman-2.3-1-any.pkg.tar.xz create mode 100755 extra/pre-build.d/etc/customizepkg.d/etc-update create mode 100755 extra/pre-build.d/etc/customizepkg.d/fang create mode 100755 extra/pre-build.d/etc/customizepkg.d/libnfc diff --git a/extra/bootstrap/apacman-2.3-1-any.FIXED.pkg.tar.xz b/extra/bootstrap/apacman-2.3-1-any.FIXED.pkg.tar.xz new file mode 100644 index 0000000000000000000000000000000000000000..4705468ea28d7efab3b816453e6f6abc831b6e82 GIT binary patch literal 45152 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

P`x*z$q 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 diff --git a/extra/packages.both b/extra/packages.both index cb91296..df52b94 100644 --- a/extra/packages.both +++ b/extra/packages.both @@ -141,11 +141,11 @@ keyutils kismet-allplugins lftp links -logkeys-git +#logkeys-git # requires a /dev/input, which apparently isn't included in the chroots lm_sensors lrzsz lshw -lsiutil +#lsiutil # 404'ing on source url at the moment lsof lsscsi lxde diff --git a/extra/pre-build.d/etc/customizepkg.d/etc-update b/extra/pre-build.d/etc/customizepkg.d/etc-update new file mode 100755 index 0000000..a762691 --- /dev/null +++ b/extra/pre-build.d/etc/customizepkg.d/etc-update @@ -0,0 +1,3 @@ +#!/bin/bash + +sed -i -re 's/^(url=)\((.*)\)$/\1\2/g' ${1} diff --git a/extra/pre-build.d/etc/customizepkg.d/fang b/extra/pre-build.d/etc/customizepkg.d/fang new file mode 100755 index 0000000..a762691 --- /dev/null +++ b/extra/pre-build.d/etc/customizepkg.d/fang @@ -0,0 +1,3 @@ +#!/bin/bash + +sed -i -re 's/^(url=)\((.*)\)$/\1\2/g' ${1} diff --git a/extra/pre-build.d/etc/customizepkg.d/libnfc b/extra/pre-build.d/etc/customizepkg.d/libnfc new file mode 100755 index 0000000..a762691 --- /dev/null +++ b/extra/pre-build.d/etc/customizepkg.d/libnfc @@ -0,0 +1,3 @@ +#!/bin/bash + +sed -i -re 's/^(url=)\((.*)\)$/\1\2/g' ${1} diff --git a/src/ipxe b/src/ipxe index 6143057..99b5216 160000 --- a/src/ipxe +++ b/src/ipxe @@ -1 +1 @@ -Subproject commit 614305743031bdfc02cb4ce346e450cd1d476e17 +Subproject commit 99b5216b1c71dba22dab734e0945887525493cde diff --git a/src/ipxe_local/patches/ipxe-0002-banner.patch b/src/ipxe_local/patches/ipxe-0002-banner.patch index d54b959..1107f90 100644 --- a/src/ipxe_local/patches/ipxe-0002-banner.patch +++ b/src/ipxe_local/patches/ipxe-0002-banner.patch @@ -1,23 +1,35 @@ ---- a/src/usr/autoboot.c -+++ b/src/usr/autoboot.c +--- a/usr/autoboot.c ++++ b/usr/autoboot.c @@ -71,6 +71,7 @@ - #define NORMAL "\033[0m" - #define BOLD "\033[1m" - #define CYAN "\033[36m" -+#define BLUE "\033[34m" + #define NORMAL "\033[0m" + #define BOLD "\033[1m" + #define CYAN "\033[36m" ++#define BLUE "\033[34m" /** The "scriptlet" setting */ const struct setting scriptlet_setting __setting ( SETTING_MISC, scriptlet ) = { -@@ -538,11 +539,10 @@ - * do so. - * - */ -- printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME " %s" -+ printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME - NORMAL " -- " PRODUCT_TAG_LINE " -- " -- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version ); -+ CYAN PRODUCT_URI NORMAL "\n" -+ BOLD BLUE "https://bdisk.square-r00t.net/" NORMAL "\n" ); - printf ( "\n" ); +@@ -521,7 +522,6 @@ + * @ret rc Return status code + */ + int ipxe ( struct net_device *netdev ) { +- struct feature *feature; + struct image *image; + char *scriptlet; + int rc; +@@ -538,11 +538,11 @@ + * do so. + * + */ +- printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME " %s" ++ printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME + NORMAL " -- " PRODUCT_TAG_LINE " -- " +- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version ); +- for_each_table_entry ( feature, FEATURES ) +- printf ( " %s", feature->name ); ++ CYAN PRODUCT_URI NORMAL "\n" ++ BOLD "BDisk" BLUE "LiveDistro" NORMAL " -- Welp, Yer Boned!(TM) -- " ++ BOLD BLUE "https://bdisk.square-r00t.net/" NORMAL "\n" ); + printf ( "\n" ); - /* Boot system */ + /* Boot system */ + From 001fdf99d3b24bc59be8e695cf73dfbc8ba632d5 Mon Sep 17 00:00:00 2001 From: r00t Date: Wed, 2 Mar 2016 01:29:05 -0500 Subject: [PATCH 04/12] fixing this stupid fucking patch. gorram whitespace tabs gorram it --- lib/10-yo_dj.func.sh | 2 +- src/ipxe_local/patches/ipxe-0002-banner.patch | 53 ++++++++++--------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/lib/10-yo_dj.func.sh b/lib/10-yo_dj.func.sh index a8f4701..7c1a8da 100644 --- a/lib/10-yo_dj.func.sh +++ b/lib/10-yo_dj.func.sh @@ -298,7 +298,7 @@ EOF ## Apply our patches. for i in $(find ${BASEDIR}/src/ipxe_local/patches/ -type f -iname "*.patch" -printf '%P\n' | sort); do - patch -Np2 < ${BASEDIR}/src/ipxe_local/patches/${i} >> "${LOGFILE}.${FUNCNAME}" 2>&1 + patch --verbose -Np2 < ${BASEDIR}/src/ipxe_local/patches/${i} >> "${LOGFILE}.${FUNCNAME}" 2>&1 done ## SSL SSLDIR="${BASEDIR}/src/ipxe_local/ssl" diff --git a/src/ipxe_local/patches/ipxe-0002-banner.patch b/src/ipxe_local/patches/ipxe-0002-banner.patch index 1107f90..aaead6d 100644 --- a/src/ipxe_local/patches/ipxe-0002-banner.patch +++ b/src/ipxe_local/patches/ipxe-0002-banner.patch @@ -1,35 +1,36 @@ ---- a/usr/autoboot.c -+++ b/usr/autoboot.c -@@ -71,6 +71,7 @@ - #define NORMAL "\033[0m" - #define BOLD "\033[1m" - #define CYAN "\033[36m" -+#define BLUE "\033[34m" +diff --git a/src/usr/autoboot.c b/src/usr/autoboot.c +index e93b015..758e187 100644 +--- a/src/usr/autoboot.c ++++ b/src/usr/autoboot.c +@@ -71,6 +71,7 @@ static int ( * is_autoboot_device ) ( struct net_device *netdev ); + #define NORMAL "\033[0m" + #define BOLD "\033[1m" + #define CYAN "\033[36m" ++#define BLUE "\033[34m" /** The "scriptlet" setting */ const struct setting scriptlet_setting __setting ( SETTING_MISC, scriptlet ) = { -@@ -521,7 +522,6 @@ - * @ret rc Return status code +@@ -521,7 +522,6 @@ static int shell_banner ( void ) { + * @ret rc Return status code */ int ipxe ( struct net_device *netdev ) { -- struct feature *feature; - struct image *image; - char *scriptlet; - int rc; -@@ -538,11 +538,11 @@ - * do so. - * - */ -- printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME " %s" -+ printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME - NORMAL " -- " PRODUCT_TAG_LINE " -- " -- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version ); -- for_each_table_entry ( feature, FEATURES ) -- printf ( " %s", feature->name ); +- struct feature *feature; + struct image *image; + char *scriptlet; + int rc; +@@ -538,11 +538,11 @@ int ipxe ( struct net_device *netdev ) { + * do so. + * + */ +- printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME " %s" ++ printf ( NORMAL "\n\n" PRODUCT_NAME "\n" BOLD PRODUCT_SHORT_NAME + NORMAL " -- " PRODUCT_TAG_LINE " -- " +- CYAN PRODUCT_URI NORMAL "\nFeatures:", product_version ); +- for_each_table_entry ( feature, FEATURES ) +- printf ( " %s", feature->name ); + CYAN PRODUCT_URI NORMAL "\n" + BOLD "BDisk" BLUE "LiveDistro" NORMAL " -- Welp, Yer Boned!(TM) -- " + BOLD BLUE "https://bdisk.square-r00t.net/" NORMAL "\n" ); - printf ( "\n" ); + printf ( "\n" ); - /* Boot system */ - + /* Boot system */ From 4e2a2fecb12c67e07ca6fcfdb59109f26486ce2e Mon Sep 17 00:00:00 2001 From: r00t Date: Thu, 7 Apr 2016 00:35:52 -0400 Subject: [PATCH 05/12] adding key for my packages --- lib/01-mk.chroot.func.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/01-mk.chroot.func.sh b/lib/01-mk.chroot.func.sh index c6545a2..4ba8eeb 100755 --- a/lib/01-mk.chroot.func.sh +++ b/lib/01-mk.chroot.func.sh @@ -168,6 +168,7 @@ EOF echo "Done." echo -n "...Importing keys..." ${CHROOTCMD} ${i}/ pacman-key --populate archlinux >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${i}/ pacman-key -r 93481F6B >> "${LOGFILE}.${FUNCNAME}" 2>&1 # add developer's keys echo "Done." # Prep base building system echo -n "...Installing base packages..." From 3cbf32be3047735e6b81e9442951b9a198afa99f Mon Sep 17 00:00:00 2001 From: r00t Date: Wed, 27 Apr 2016 20:49:56 -0400 Subject: [PATCH 06/12] updating docs --- docs/README | 47 +++++++++++++++++++++++++++++++++++------------ src/ipxe | 2 +- 2 files changed, 36 insertions(+), 13 deletions(-) diff --git a/docs/README b/docs/README index 35ec9dc..11dbdb8 100644 --- a/docs/README +++ b/docs/README @@ -16,6 +16,9 @@ It should be fine over ethernet, since hardware switches are much faster and eff Future versions, once this project has a dumping ground, will fetch highly compressed snapshotted chroot filesystems instead of dynamically building the entire install chroots (both x86_64 and i686) instead (with the option of building fresh locally, disabled by default). + +Maybe. + Till then, sorry for the inconvenience. !!!!!!!!!!!!!!!!!!!!!! @@ -56,11 +59,6 @@ All commands below should be issued in the root working directory of this git re but also disk space for working, the finished ISO(s), etc.) -The following packages installed on the build host: -(NOTE: future versions will have dependencies checked automatically and installed if necessary, -depending on distro your host build machine is. the OS detection and package installation component of that isn't -done yet though. 2014.10.31) -(NOTE2: Make sure all the packages you specify are valid package names. A mistyped package name will cause the chroot creation to -break and everything else will break as a result.) curl dosfstools @@ -72,9 +70,24 @@ squashfs-tools xorriso (in RPMForge repo for CentOS 7) xz -and *probably* a few others. The scripts run with set -e for the most part, so if something's missed, you'll know. +and maybe a few others. The scripts run with set -e for the most part, so if something's missed, you'll know. Oh, you will know. +If these packages are missing, they will be automatically installed. Currently, the following distros as host build systems +are supported (assumes most recent release): + +Antergos +Arch +CentOS +Debian +Fedora +Gentoo +Mageia +Manjaro +openSUSE +RHEL +SUSE +Ubuntu ## Configuration ## See extra/build.conf.sample. Copy to /build.conf if you wish to modify any of the values, otherwise the defaults @@ -105,6 +118,18 @@ Also note the following files/paths: --/mirror.lst.sh: Builds a fresh mirror list. Note that it is US based. +-docs: + Documentation for BDisk. +--/COPYING: + See LICENSE. +--/README: + This file. +--/LICENSE: + The license file. +--/FAQ: + Several quick questions you might have. +--/TODO: + Some features, bug fixes, etc. I have planned. -examples: Included recommendation for how to lay things out, etc. --/HTTP: @@ -112,7 +137,7 @@ Also note the following files/paths: -extra: Supporting files for the base building system (mirrorlist, etc.). --/${UXNAME}.png: - A 640x480 8-bit RGBA colour PNG which will be used as the background for the bootsplash (if booting via BIOS and not UEFI) +L A 640x480 8-bit RGBA colour PNG which will be used as the background for the bootsplash (if booting via BIOS and not UEFI) --/bootstrap/apacman-*.tar.xz: An AUR-enabled package manager. Necessary for AUR support. --/build.conf.sample: @@ -130,6 +155,8 @@ Also note the following files/paths: --/pre-build.d: Contains files injected into the system. Both 64-bit and 32-bit environments. Note: be sure to place them in hierarchical order (e.g. if you wish to have a file at /usr/foo/bar, you will need to place it in /extra/pre-build.d/usr/foo/bar) + (NOTE: Make sure all the packages you specify are valid package names. A mistyped or nonexistent package name will cause the chroot + creation to break and everything else will break as a result.) --/pre-build.d/32: Same as above, but only for 32-bit environments. --/pre-build.d/64: @@ -143,8 +170,6 @@ Also note the following files/paths: Here you can find full output of the runs. They are prefixed with run's PID number, and named after the function they occur in. -overlay: These files are applied AFTER the initial setup of the chroots. Same hierarchy rules as extra/pre-build.d. --README: - This file. -src: Supporting source code/source code from other projects. --ipxe/: @@ -153,14 +178,12 @@ Also note the following files/paths: Various patches and supporting configs to tweak the iPXE build. -tftpboot: Files to be served via TFTP for PXE booting. This directory is wiped out during any bin/clean.sh operation. --TODO: - This is just what I'm using to track stuff I want to add. You may notice other files come and go; they're mostly there for extra goodies/used to determine other things. ## (Re)Building ## -Building must be done as root, and on an Arch x86_64 system (future versions will allow for non-Arch distros). +Building must be done as root, and on a supported distro (see Prerequisites for a list). # bin/build.sh diff --git a/src/ipxe b/src/ipxe index 99b5216..55e409b 160000 --- a/src/ipxe +++ b/src/ipxe @@ -1 +1 @@ -Subproject commit 99b5216b1c71dba22dab734e0945887525493cde +Subproject commit 55e409b14fdfc6bcd51cdcdaf1ee20ad5258215d From 91b8edcc26a4337cc16ae45846b01ccded5cd248 Mon Sep 17 00:00:00 2001 From: r00t Date: Sat, 30 Apr 2016 06:49:05 -0400 Subject: [PATCH 07/12] updating, adding some package fixes --- extra/pre-build.d/etc/customizepkg.d/autopsy | 4 ++++ extra/pre-build.d/etc/customizepkg.d/ms-sys | 4 ++++ src/ipxe | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100755 extra/pre-build.d/etc/customizepkg.d/autopsy create mode 100755 extra/pre-build.d/etc/customizepkg.d/ms-sys diff --git a/extra/pre-build.d/etc/customizepkg.d/autopsy b/extra/pre-build.d/etc/customizepkg.d/autopsy new file mode 100755 index 0000000..024dbcf --- /dev/null +++ b/extra/pre-build.d/etc/customizepkg.d/autopsy @@ -0,0 +1,4 @@ +#!/bin/bash + +# original URL at sourceforge chokes out +sed -re 's@^(source=\(").*$@\1ftp://ftp.gnome.org/mirror/temp/sf2015/a/au/autopsy/autopsy/2.24/autopsy-2.24.tar.gz")@g' ${1} diff --git a/extra/pre-build.d/etc/customizepkg.d/ms-sys b/extra/pre-build.d/etc/customizepkg.d/ms-sys new file mode 100755 index 0000000..4addea7 --- /dev/null +++ b/extra/pre-build.d/etc/customizepkg.d/ms-sys @@ -0,0 +1,4 @@ +#!/bin/bash + +# original URL at sourceforge chokes out +sed -re 's@^(source=\(").*$@\1http://fossies.org/linux/privat/${pkgname}-${pkgver}.tar.gz")@g' ${1} diff --git a/src/ipxe b/src/ipxe index 55e409b..2d42d3c 160000 --- a/src/ipxe +++ b/src/ipxe @@ -1 +1 @@ -Subproject commit 55e409b14fdfc6bcd51cdcdaf1ee20ad5258215d +Subproject commit 2d42d3cff6e941c4e04d15dc29ea670f2fdb7b0c From a08ae5dd0696ff78603c9f6e36974f972c104d58 Mon Sep 17 00:00:00 2001 From: r00t Date: Mon, 4 Jul 2016 06:23:52 -0400 Subject: [PATCH 08/12] updating patches, tweaks, etc. --- extra/packages.both | 28 +++++++++++---- lib/09-stuffy.func.sh | 17 ++++++---- lib/10-yo_dj.func.sh | 9 +++-- lib/prereqs/iso.pkgs.lst | 2 +- src/ipxe | 2 +- ...003-iso-efi.patch => ipxe-0004-eiso.patch} | 27 ++++++--------- .../ipxe-0004-fix-no-pie-workaround.patch | 34 ------------------- 7 files changed, 53 insertions(+), 66 deletions(-) rename src/ipxe_local/patches/{ipxe-0003-iso-efi.patch => ipxe-0004-eiso.patch} (84%) delete mode 100644 src/ipxe_local/patches/ipxe-0004-fix-no-pie-workaround.patch diff --git a/extra/packages.both b/extra/packages.both index df52b94..908e1d2 100644 --- a/extra/packages.both +++ b/extra/packages.both @@ -43,7 +43,7 @@ cpio cpuburn cpupower crackpkcs12 -#cryptcat +cryptcat cryptsetup csync2 customizepkg-scripting @@ -148,12 +148,29 @@ lshw #lsiutil # 404'ing on source url at the moment lsof lsscsi -lxde +#lxde # apacman currently doesn't like package groups, so... +gpicview +lxappearance +lxappearance-obconf +lxde-common +lxde-icon-theme +lxdm +lxinput +lxlauncher +lxmusic +lxpanel +lxrandr +lxsession +lxtask +lxterminal +openbox +pcmanfm +# end lxde lynx #lzip macchanger magicrescue -mbr +#mbr # doesn't seem to build anymore mbuffer mcelog mdadm @@ -163,7 +180,7 @@ mdcrack memtester mfoc minicom -mondo +#mondo mtd-utils mtr mtree @@ -213,14 +230,13 @@ pkgfile pkgtools ppp pptpclient -prebootloader procinfo-ng procps-ng progsreiserfs psmisc pwgen pixz -pyrit-svn +pyrit python2-gnuplot python2-pyx rarcrack diff --git a/lib/09-stuffy.func.sh b/lib/09-stuffy.func.sh index e0d3015..1686743 100644 --- a/lib/09-stuffy.func.sh +++ b/lib/09-stuffy.func.sh @@ -15,8 +15,12 @@ function stuffy { mkdir -p ${TEMPDIR}/{EFI/{${DISTNAME},boot},loader/entries} # this stuff comes from the prebootloader pkg and systemd-boot. lets us boot on UEFI machines with secureboot still enabled. - cp ${BASEDIR}/root.x86_64/usr/lib/prebootloader/PreLoader.efi ${TEMPDIR}/EFI/boot/bootx64.efi - cp ${BASEDIR}/root.x86_64/usr/lib/prebootloader/HashTool.efi ${TEMPDIR}/EFI/boot/. + # the signed prebootloader binaries, however, have been replaced by non-signed ones. so we need to fetch them. + # fetched from http://blog.hansenpartnership.com/linux-foundation-secure-boot-system-released/ + curl -so ${TEMPDIR}/EFI/boot/bootx64.efi "http://blog.hansenpartnership.com/wp-uploads/2013/PreLoader.efi" # MD5: 4f7a4f566781869d252a09dc84923a82 TODO: implement checksumming check + curl -so ${TEMPDIR}/EFI/boot/HashTool.efi http://blog.hansenpartnership.com/wp-uploads/2013/HashTool.efi + #cp ${BASEDIR}/root.x86_64/usr/lib/prebootloader/PreLoader.efi ${TEMPDIR}/EFI/boot/bootx64.efi + #cp ${BASEDIR}/root.x86_64/usr/lib/prebootloader/HashTool.efi ${TEMPDIR}/EFI/boot/. cp ${BASEDIR}/root.x86_64/usr/lib/systemd/boot/efi/systemd-bootx64.efi ${TEMPDIR}/EFI/boot/loader.efi # TODO: can i use syslinux.efi instead? echo "Checking/fetching UEFI shells..." @@ -69,8 +73,9 @@ EOF # now we need to calculate the space for various files we're going to include... FATSIZE=$(stat --format="%s" ${TEMPDIR}/boot/${UXNAME}.64.kern) # EFI/BDISK/bdisk.efi FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${TEMPDIR}/boot/${UXNAME}.64.img))) # EFI/BDISK/bdisk.img - FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${BASEDIR}/root.x86_64/usr/lib/prebootloader/PreLoader.efi))) # EFI/boot/bootx64.efi - FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${BASEDIR}/root.x86_64/usr/lib/prebootloader/HashTool.efi))) # EFI/boot/HashTool.efi + #FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${BASEDIR}/root.x86_64/usr/lib/prebootloader/PreLoader.efi))) # EFI/boot/bootx64.efi + FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${TEMPDIR}/EFI/boot/bootx64.efi))) # EFI/boot/bootx64.efi + FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${TEMPDIR}/EFI/boot/HashTool.efi))) # EFI/boot/HashTool.efi FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${BASEDIR}/root.x86_64/usr/lib/systemd/boot/efi/systemd-bootx64.efi))) # EFI/boot/loader.efi FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${TEMPDIR}/EFI/shellx64_v1.efi))) FATSIZE=$((${FATSIZE} + $(stat --format="%s" ${TEMPDIR}/EFI/shellx64_v2.efi))) @@ -110,8 +115,8 @@ title UEFI Shell (v1) efi /EFI/shellx64_v1.efi EOF - cp ${BASEDIR}/root.x86_64/usr/lib/prebootloader/PreLoader.efi ${SRCDIR}/efiboot/EFI/boot/bootx64.efi - cp ${BASEDIR}/root.x86_64/usr/lib/prebootloader/HashTool.efi ${SRCDIR}/efiboot/EFI/boot/. + cp ${TEMPDIR}/EFI/boot/bootx64.efi ${SRCDIR}/efiboot/EFI/boot/bootx64.efi + cp ${TEMPDIR}/EFI/boot/HashTool.efi ${SRCDIR}/efiboot/EFI/boot/. cp ${BASEDIR}/root.x86_64/usr/lib/systemd/boot/efi/systemd-bootx64.efi ${SRCDIR}/efiboot/EFI/boot/loader.efi # TODO: can i use syslinux.efi instead? cp ${TEMPDIR}/EFI/shellx64_v{1,2}.efi ${SRCDIR}/efiboot/EFI/. umount ${SRCDIR}/efiboot diff --git a/lib/10-yo_dj.func.sh b/lib/10-yo_dj.func.sh index 7c1a8da..db221ce 100644 --- a/lib/10-yo_dj.func.sh +++ b/lib/10-yo_dj.func.sh @@ -288,14 +288,19 @@ EOF git submodule init >> "${LOGFILE}.${FUNCNAME}" 2>&1 git submodule update >> "${LOGFILE}.${FUNCNAME}" 2>&1 cd ${BASEDIR}/src/ipxe/src + git checkout master . git clean -xdf > /dev/null 2>&1 git reset --hard HEAD >> "${LOGFILE}.${FUNCNAME}" 2>&1 git checkout master >> "${LOGFILE}.${FUNCNAME}" 2>&1 git pull >> "${LOGFILE}.${FUNCNAME}" 2>&1 git checkout master >> "${LOGFILE}.${FUNCNAME}" 2>&1 # It will not build if we don't do this. Apparently we *need* libiberty. - git revert -n 40a9a0f0 + # ...or do we? + #git revert -n 40a9a0f0 ## Apply our patches. + # This replaces the 0003 and 0004 patches. + # curl -s https://patch-diff.githubusercontent.com/raw/ipxe/ipxe/pull/49.patch > ${BASEDIR}/src/ipxe_local/patches/ipxe-0003-no-PIE.patch 2>/dev/null # this isn't really necessary, I think? If you're dying right around this step, uncomment. + curl -s https://patch-diff.githubusercontent.com/raw/ipxe/ipxe/pull/50.patch > ${BASEDIR}/src/ipxe_local/patches/ipxe-0004-eiso.patch 2>/dev/null for i in $(find ${BASEDIR}/src/ipxe_local/patches/ -type f -iname "*.patch" -printf '%P\n' | sort); do patch --verbose -Np2 < ${BASEDIR}/src/ipxe_local/patches/${i} >> "${LOGFILE}.${FUNCNAME}" 2>&1 @@ -379,9 +384,9 @@ EOF mv -f ${BASEDIR}/src/ipxe/src/bin/ipxe.eiso ${ISODIR}/${MINIFILENAME} make clean >> "${LOGFILE}.${FUNCNAME}" 2>&1 cd ${BASEDIR}/src/ipxe + git checkout master . > /dev/null 2>&1 git clean -xdf > /dev/null 2>&1 git reset --hard >> "${LOGFILE}.${FUNCNAME}" 2>&1 - git checkout master . > /dev/null 2>&1 #git reset --hard HEAD > /dev/null 2>&1 echo fi diff --git a/lib/prereqs/iso.pkgs.lst b/lib/prereqs/iso.pkgs.lst index b879181..d7eba67 100644 --- a/lib/prereqs/iso.pkgs.lst +++ b/lib/prereqs/iso.pkgs.lst @@ -8,6 +8,7 @@ dhcp dhcpcd dosfstools efibootmgr +efitools efivar ethtool file @@ -27,7 +28,6 @@ netctl networkmanager openssh openvpn -prebootloader pv rsync sed diff --git a/src/ipxe b/src/ipxe index 2d42d3c..3bb61c3 160000 --- a/src/ipxe +++ b/src/ipxe @@ -1 +1 @@ -Subproject commit 2d42d3cff6e941c4e04d15dc29ea670f2fdb7b0c +Subproject commit 3bb61c33c2d77ac9a1a512d809576f3444b6b1ed diff --git a/src/ipxe_local/patches/ipxe-0003-iso-efi.patch b/src/ipxe_local/patches/ipxe-0004-eiso.patch similarity index 84% rename from src/ipxe_local/patches/ipxe-0003-iso-efi.patch rename to src/ipxe_local/patches/ipxe-0004-eiso.patch index 830a58b..2105776 100644 --- a/src/ipxe_local/patches/ipxe-0003-iso-efi.patch +++ b/src/ipxe_local/patches/ipxe-0004-eiso.patch @@ -1,19 +1,18 @@ -From d2092664b3cf866b2ab338fe056149d3266d0acc Mon Sep 17 00:00:00 2001 +From 189652b03032305a2db860e76fb58e81e3420c4d Mon Sep 17 00:00:00 2001 From: Christian Hesse -Date: Sun, 19 Apr 2015 13:16:09 +0200 -Subject: [PATCH 1/1] allow to build ISO image with EFI support (ipxe.eiso) +Date: Wed, 24 Feb 2016 09:16:51 +0100 +Subject: [PATCH] allow to build ISO image with EFI support (ipxe.eiso) -Signed-off-by: Christian Hesse --- - src/arch/x86/Makefile.pcbios | 6 ++++++ - src/util/geniso | 52 +++++++++++++++++++++++++++++++++---------- + src/arch/x86/Makefile.pcbios | 6 +++++ + src/util/geniso | 52 ++++++++++++++++++++++++++++++++++---------- 2 files changed, 46 insertions(+), 12 deletions(-) diff --git a/src/arch/x86/Makefile.pcbios b/src/arch/x86/Makefile.pcbios -index 18a6f75..9cb3e0b 100644 +index f8c2253..1e01636 100644 --- a/src/arch/x86/Makefile.pcbios +++ b/src/arch/x86/Makefile.pcbios -@@ -82,6 +82,12 @@ NON_AUTO_MEDIA += iso +@@ -86,6 +86,12 @@ NON_AUTO_MEDIA += iso $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) LDLINUX_C32=$(LDLINUX_C32) \ VERSION="$(VERSION)" bash util/geniso -o $@ $< @@ -27,7 +26,7 @@ index 18a6f75..9cb3e0b 100644 NON_AUTO_MEDIA += liso %liso: %lkrn util/geniso diff --git a/src/util/geniso b/src/util/geniso -index 521c929..9e8588c 100755 +index ff090d4..7694036 100755 --- a/src/util/geniso +++ b/src/util/geniso @@ -6,16 +6,21 @@ function help() { @@ -89,7 +88,7 @@ index 521c929..9e8588c 100755 fi dir=$(mktemp -d bin/iso.dir.XXXXXX) -@@ -122,6 +135,21 @@ case "${LEGACY}" in +@@ -122,13 +135,28 @@ case "${LEGACY}" in # copy isolinux bootloader cp ${ISOLINUX_BIN} ${dir} @@ -109,9 +108,8 @@ index 521c929..9e8588c 100755 + fi + # syslinux 6.x needs a file called ldlinux.c32 - LDLINUX_C32=$(dirname ${ISOLINUX_BIN})/ldlinux.c32 - if [ -s ${LDLINUX_C32} ]; then -@@ -129,7 +157,7 @@ case "${LEGACY}" in + if [ -n "${LDLINUX_C32}" -a -s "${LDLINUX_C32}" ]; then + cp ${LDLINUX_C32} ${dir} fi # generate the iso image @@ -120,6 +118,3 @@ index 521c929..9e8588c 100755 # isohybrid will be used if available if isohybrid --version >/dev/null 2>/dev/null; then --- -2.3.5 - diff --git a/src/ipxe_local/patches/ipxe-0004-fix-no-pie-workaround.patch b/src/ipxe_local/patches/ipxe-0004-fix-no-pie-workaround.patch deleted file mode 100644 index 6d76601..0000000 --- a/src/ipxe_local/patches/ipxe-0004-fix-no-pie-workaround.patch +++ /dev/null @@ -1,34 +0,0 @@ -From a4f7e3ba395af4cd0a706df635309d4ef837ecf8 Mon Sep 17 00:00:00 2001 -From: Christian Hesse -Date: Wed, 8 Apr 2015 09:51:41 +0200 -Subject: [PATCH 2/2] Fix no-PIE workaround for i386 builds - -This workaround did not work for my version of gcc (4.9.2 20150304) as -no option -nopie exists. - -We take another way: Let's check whether or not the macro __PIE__ is defined -and add -fno-PIE if it is. - -Signed-off-by: Christian Hesse ---- - src/arch/i386/Makefile | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/arch/i386/Makefile b/src/arch/i386/Makefile -index 99f8753..897081b 100644 ---- a/src/arch/i386/Makefile -+++ b/src/arch/i386/Makefile -@@ -75,8 +75,8 @@ CFLAGS += -Ui386 - # output on stderr instead of checking the exit status. - # - ifeq ($(CCTYPE),gcc) --PIE_TEST = [ -z "`$(CC) -fno-PIE -nopie -x c -c /dev/null -o /dev/null 2>&1`" ] --PIE_FLAGS := $(shell $(PIE_TEST) && $(ECHO) '-fno-PIE -nopie') -+PIE_TEST = $(CC) -dM -E - < /dev/null | grep -q '__PIE__' -+PIE_FLAGS := $(shell $(PIE_TEST) && $(ECHO) '-fno-PIE') - WORKAROUND_CFLAGS += $(PIE_FLAGS) - endif - --- -2.3.5 - From 2d6384e15d85624a0057cac3f18225dad935e715 Mon Sep 17 00:00:00 2001 From: r00t Date: Sat, 9 Jul 2016 01:09:27 -0400 Subject: [PATCH 09/12] updating mirrorlist --- extra/mirrorlist | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/extra/mirrorlist b/extra/mirrorlist index c06c32d..e71b908 100644 --- a/extra/mirrorlist +++ b/extra/mirrorlist @@ -1,7 +1,7 @@ -# Server list generated by rankmirrors on 2015-02-26 +# Server list generated by rankmirrors on 2016-07-09 +Server = http://mirror.us.leaseweb.net/archlinux/$repo/os/$arch Server = http://mirrors.advancedhosters.com/archlinux/$repo/os/$arch -Server = http://mirror.umd.edu/archlinux/$repo/os/$arch -Server = http://mirror.vtti.vt.edu/archlinux/$repo/os/$arch -Server = http://mirror.jmu.edu/pub/archlinux/$repo/os/$arch -Server = http://mirror.es.its.nyu.edu/archlinux/$repo/os/$arch +Server = http://ftp.osuosl.org/pub/archlinux/$repo/os/$arch Server = http://mirrors.rutgers.edu/archlinux/$repo/os/$arch +Server = http://mirror.jmu.edu/pub/archlinux/$repo/os/$arch +Server = http://arch.mirrors.ionfish.org/$repo/os/$arch From c418fca548c909c6243b5ef6b20944a1173b46f8 Mon Sep 17 00:00:00 2001 From: r00t Date: Sat, 9 Jul 2016 14:15:39 -0400 Subject: [PATCH 10/12] added instructions for submitting patch --- docs/README | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/README b/docs/README index 11dbdb8..20d9a77 100644 --- a/docs/README +++ b/docs/README @@ -191,3 +191,10 @@ Yeah. It's that easy. The finished product is in iso/. If you want more verbosity, check out the logs/ directory. + + +## Submitting Patches ## +If you have a fix or feature you'd like added, please follow the same pull request process for the kernel +(https://www.kernel.org/doc/Documentation/SubmittingPatches) and email to bts@square-r00t.net + +Alternatively, file a bug at https://bugs.square-r00t.net/index.php?project=2 with a patch attached. From 6d9f24ee28544a585c400bae949182be4fb6d94e Mon Sep 17 00:00:00 2001 From: r00t Date: Mon, 26 Sep 2016 05:06:04 -0400 Subject: [PATCH 11/12] updating package list, minor tweak to mk chroot --- extra/packages.both | 12 ++++++------ lib/01-mk.chroot.func.sh | 4 ++-- src/ipxe | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/extra/packages.both b/extra/packages.both index 908e1d2..a8344bf 100644 --- a/extra/packages.both +++ b/extra/packages.both @@ -145,7 +145,7 @@ links lm_sensors lrzsz lshw -#lsiutil # 404'ing on source url at the moment +#lsiutil # giving intermittent errors when trying to fetch source lsof lsscsi #lxde # apacman currently doesn't like package groups, so... @@ -169,8 +169,8 @@ pcmanfm lynx #lzip macchanger -magicrescue -#mbr # doesn't seem to build anymore +#magicrescue # no longer maintained, upstream down +mbr mbuffer mcelog mdadm @@ -180,11 +180,10 @@ mdcrack memtester mfoc minicom -#mondo +#mondo # mindi-busybox fails to build 09.23.2016 mtd-utils mtr mtree -#mtx multipath-tools myrescue nbd @@ -224,7 +223,7 @@ php php-fpm php-gd php-mcrypt -#phrasendrescher +phrasendrescher pigz pkgfile pkgtools @@ -254,6 +253,7 @@ rsnapshot rygel safecopy samba +scalpel-git scapy screen scrounge-ntfs diff --git a/lib/01-mk.chroot.func.sh b/lib/01-mk.chroot.func.sh index 4ba8eeb..ab3a889 100755 --- a/lib/01-mk.chroot.func.sh +++ b/lib/01-mk.chroot.func.sh @@ -261,7 +261,7 @@ EOF set +e ${CHROOTCMD} ${i}/ /usr/bin/bash -c "apacman --noconfirm --noedit --skipinteg -S --needed linux" >> "${LOGFILE}.${FUNCNAME}" 2>&1 cp -a ${i}/boot/vmlinuz-linux ${i}/boot/vmlinuz-linux-${DISTNAME} - #cp -a ${i}/boot/initramfs-linux.img ${i}/boot/initramfs-linux-${DISTNAME}.img + cp -af ${i}/boot/initramfs-linux.img ${i}/boot/initramfs-linux-${DISTNAME}.img set -e for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done # Uncomment if you wish to use the mkpasswd binary from within the chroot... @@ -309,7 +309,7 @@ EOF set +e for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%.pacorig} ; done ${CHROOTCMD} ${i}/ /usr/bin/bash -c "mkinitcpio -p linux" >> "${LOGFILE}.${FUNCNAME}" 2>&1 - cp -a ${i}/boot/initramfs-linux.img ${i}/boot/initramfs-linux-${DISTNAME}.img + cp -af ${i}/boot/initramfs-linux.img ${i}/boot/initramfs-linux-${DISTNAME}.img set -e done diff --git a/src/ipxe b/src/ipxe index 3bb61c3..827dd1b 160000 --- a/src/ipxe +++ b/src/ipxe @@ -1 +1 @@ -Subproject commit 3bb61c33c2d77ac9a1a512d809576f3444b6b1ed +Subproject commit 827dd1bfee67daa683935ce65316f7e0f057fe1c From ef2790eb68300baabf39a2bd18b14400129c65f6 Mon Sep 17 00:00:00 2001 From: r00t Date: Mon, 14 Nov 2016 03:41:27 -0500 Subject: [PATCH 12/12] minor modifications --- lib/01-mk.chroot.func.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/01-mk.chroot.func.sh b/lib/01-mk.chroot.func.sh index ab3a889..1814b4f 100755 --- a/lib/01-mk.chroot.func.sh +++ b/lib/01-mk.chroot.func.sh @@ -198,6 +198,7 @@ EOF ${CHROOTCMD} ${i} bash -c "pacman --noconfirm -U /var/tmp/pkg/apacman.tar.xz && mkdir /var/tmp/apacman && chmod 0750 /var/tmp/apacman && chown root:aurbuild /var/tmp/apacman " >> "${LOGFILE}.${FUNCNAME}" 2>&1 for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done ${CHROOTCMD} ${i} bash -c "apacman -S --noconfirm --noedit --skipinteg -S apacman apacman-deps expac" >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${i} bash -c "apacman --gendb" >> "${LOGFILE}.${FUNCNAME}" 2>&1 #rm -rf ${i}/var/tmp/pkg #${CHROOTCMD} ${i}/ pacman -S --noconfirm --needed yaourt >> "${LOGFILE}.${FUNCNAME}" 2>&1 for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done @@ -224,6 +225,7 @@ EOF for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done set -e ${CHROOTCMD} ${i}/ bash -c "yes '' | apacman --noconfirm --noedit --skipinteg -S --needed ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${i}/ "apacman --gendb" >> "${LOGFILE}.${FUNCNAME}" 2>&1 set +e for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done set -e @@ -233,6 +235,7 @@ EOF if [ -n "${PKGLIST}" ]; then ${CHROOTCMD} ${CHROOTDIR32}/ /usr/bin/bash -c "apacman --noconfirm --noedit --skipinteg -S --needed ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${CHROOTDIR32}/ "apacman --gendb" >> "${LOGFILE}.${FUNCNAME}" 2>&1 fi set +e for x in $(find ${CHROOTDIR32}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%.pacorig} ; done @@ -242,6 +245,7 @@ EOF if [ -n "${PKGLIST}" ]; then ${CHROOTCMD} ${CHROOTDIR64}/ /usr/bin/bash -c "apacman --noconfirm --noedit --skipinteg -S --needed ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${CHROOTDIR64}/ "apacman --gendb" >> "${LOGFILE}.${FUNCNAME}" 2>&1 fi set +e for x in $(find ${CHROOTDIR64}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%.pacorig} ; done @@ -260,6 +264,7 @@ EOF for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done set +e ${CHROOTCMD} ${i}/ /usr/bin/bash -c "apacman --noconfirm --noedit --skipinteg -S --needed linux" >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${i}/ "apacman --gendb" >> "${LOGFILE}.${FUNCNAME}" 2>&1 cp -a ${i}/boot/vmlinuz-linux ${i}/boot/vmlinuz-linux-${DISTNAME} cp -af ${i}/boot/initramfs-linux.img ${i}/boot/initramfs-linux-${DISTNAME}.img set -e @@ -269,6 +274,7 @@ EOF #for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done echo -n "Regular packages..." ${CHROOTCMD} ${i}/ bash -c "yes '' | apacman --noconfirm --noedit --skipinteg -S --needed ${PKGLIST}" >> "${LOGFILE}.${FUNCNAME}" 2>&1 + ${CHROOTCMD} ${i}/ "apacman --gendb" >> "${LOGFILE}.${FUNCNAME}" 2>&1 set +e for x in $(find ${i}/etc/ -type f -iname "*.pacorig");do mv -f ${x} ${x%%.pacorig} ; done set -e