From 6390f533dc01006c90fde332bdaa91dccf4d4748 Mon Sep 17 00:00:00 2001 From: JKANetwork Date: Mon, 16 Jan 2017 16:26:18 +0100 Subject: [PATCH] Fixes in iso script --- ISOCreateScripts/totalisocreate.sh | 69 ++++++++++++++++++------------ 1 file changed, 42 insertions(+), 27 deletions(-) diff --git a/ISOCreateScripts/totalisocreate.sh b/ISOCreateScripts/totalisocreate.sh index c921467..607ea9f 100755 --- a/ISOCreateScripts/totalisocreate.sh +++ b/ISOCreateScripts/totalisocreate.sh @@ -12,16 +12,21 @@ sfslocate="/tmp/sfsfile" #Donde se harĂ¡n las modificaciones temporales (El chro function modifyimage { sudo arch-chroot $sfslocate/ /usr/bin/pacman-key --init sudo arch-chroot $sfslocate/ /usr/bin/pacman-key --populate + + #Add JKANetwork mirrorlist (needed for localepurge, and needs to be added before updating databases) + sudo arch-chroot $sfslocate/ /usr/bin/wget https://mirror.jkanetwork.com/Arch-repository/jkarch-mirrorlist -O /etc/pacman.d/jkarch-mirrorlist + sudo chmod 777 $sfslocate/etc/pacman.conf + sudo echo "#JKArch Repository" >> $sfslocate/etc/pacman.conf + sudo echo "[jkanetwork]" >> $sfslocate/etc/pacman.conf + sudo echo "SigLevel = Optional TrustAll" >> $sfslocate/etc/pacman.conf + sudo echo "Include = /etc/pacman.d/jkarch-mirrorlist" >> $sfslocate/etc/pacman.conf + sudo chmod 644 $sfslocate/etc/pacman.conf + sudo arch-chroot $sfslocate/ /usr/bin/pacman -Sy archlinux-keyring --noconfirm sudo arch-chroot $sfslocate/ /usr/bin/pacman -S reflector --noconfirm sudo arch-chroot $sfslocate/ /usr/bin/reflector --verbose -l 6 --sort rate --save /etc/pacman.d/mirrorlist - #Add JKANetwork mirrorlist (needed for localepurge) - sudo arch-chroot $sfslocate/ /usr/bin/wget https://mirror.jkanetwork.com/Arch-repository/jkarch-mirrorlist -O /etc/pacman.d/jkarch-mirrorlist - sudo arch-chroot $sfslocate/ /usr/bin/echo "#JKArch Repository" >> /etc/pacman.conf - sudo arch-chroot $sfslocate/ /usr/bin/echo "[jkanetwork]" >> /etc/pacman.conf - sudo arch-chroot $sfslocate/ /usr/bin/echo "SigLevel = Optional TrustAll" >> /etc/pacman.conf - sudo arch-chroot $sfslocate/ /usr/bin/echo "Include = /etc/pacman.d/jkarch-mirrorlist" >> /etc/pacman.conf + #Delete packages not needed from official iso sudo arch-chroot $sfslocate/ /usr/bin/pacman -R clonezilla darkhttpd diffutils grml-zsh-config irssi linux-atm lvm2 man-db man-pages mc ndisc6 nmap smartmontools testdisk vi vim vim-runtime zsh openconnect pcsclite python2 --noconfirm @@ -30,13 +35,16 @@ function modifyimage { #Install new sudo arch-chroot $sfslocate/ /usr/bin/pacman -Su gparted xf86-video-vesa xorg-xinit lwm localepurge --noconfirm --ignore linux #Do not upgrade kernel automatically #For gparted to work - sudo rm $sfslocate/etc/X11/xinit/xinitrc - sudo echo "#Start gparted with startx command" > $sfslocate/etc/X11/xinit/xinitrc - sudo echo "lwm & gparted" >> $sfslocate/etc/X11/xinit/xinitrc + sudo rm $sfslocate/etc/X11/xinit/xinitrc + sudo touch $sfslocate/etc/X11/xinit/xinitrc + sudo chmod 777 $sfslocate/etc/X11/xinit/xinitrc + sudo echo "#Start gparted with startx command" > $sfslocate/etc/X11/xinit/xinitrc + sudo echo "lwm & gparted" >> $sfslocate/etc/X11/xinit/xinitrc + sudo chmod 644 $sfslocate/etc/X11/xinit/xinitrc sudo rm -rf $sfslocate/var/cache/pacman/pkg/* sudo rm $sfslocate/root/.bash_history - #Localepurge (freeing more space) + #Use localepurge (freeing more space) sudo arch-chroot $sfslocate/ /usr/bin/sed -i '8c#NEEDSCONFIGFIRST' /etc/locale.nopurge sudo arch-chroot $sfslocate/ /usr/bin/echo "es" >> /etc/locale.nopurge sudo arch-chroot $sfslocate/ /usr/bin/echo "es_ES" >> /etc/locale.nopurge @@ -117,7 +125,7 @@ function createOnline { modifyimage #Creamos la ISO - mkisofs -b isolinux/isolinux.bin -r -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "JKARCH-ISO" -o output-Online.iso iso/ + mkisofs -b isolinux/isolinux.bin -r -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "JKARCH-ISO" -o JKArch-Online-$yearmonth.iso iso/ sudo rm -rf iso/ echo "ISO Online creada" } @@ -155,22 +163,34 @@ function createOffline { rm -rf repoofflinejkarch/ #Creamos la ISO - mkisofs -b isolinux/isolinux.bin -r -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "JKARCH-ISO" -o output-Offline.iso iso/ + mkisofs -b isolinux/isolinux.bin -r -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "JKARCH-ISO" -o JKArch-Offline-$yearmonth.iso iso/ sudo rm -rf iso/ echo "ISO Offline creada" } -#Borramos carpeta temporal -rm -rf temp/ -mkdir temp +#Date for builds +today=$(date +%y%m%d) +yearmonth=$(date +%y%m) -#Download necessary files -wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/x86_64/archiso.img -O temp/archiso.img -wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/x86_64/vmlinuz -O temp/vmlinuz -wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/intel_ucode.img -O temp/intel_ucode.img -wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/intel_ucode.LICENSE -O temp/intel_ucode.LICENSE -wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/x86_64/airootfs.sfs -O temp/airootfs.sfs -# +mkdir temp +lastdownload=$(< temp/datedownload) +if [[ $today != $lastdownload ]];then #Only download one time at day + #Borramos carpeta temporal + rm -rf temp/* + #Download necessary files and verify its downloaded + wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/x86_64/archiso.img -O temp/archiso.img + if [[ $? != 0 ]]; then exit; fi + wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/x86_64/vmlinuz -O temp/vmlinuz + if [[ $? != 0 ]]; then exit; fi + wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/intel_ucode.img -O temp/intel_ucode.img + if [[ $? != 0 ]]; then exit; fi + wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/boot/intel_ucode.LICENSE -O temp/intel_ucode.LICENSE + if [[ $? != 0 ]]; then exit; fi + wget http://sunsite.rediris.es/mirror/archlinux/iso/latest/arch/x86_64/airootfs.sfs -O temp/airootfs.sfs + if [[ $? != 0 ]]; then exit; fi + # + echo $today > temp/datedownload +fi #Switch del argumento $1 para ver si solo se quiere crear una de las dos imagenes iso @@ -182,9 +202,4 @@ case $1 in createOffline ;; esac - - -#Borramos carpeta temporal antes de finalizar -rm -rf temp/ -mkdir temp echo "Script terminado" \ No newline at end of file