X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=lfs%2Fflash-images;h=daf3ec1cc93477307f3032f8f557944fdb801e1d;hb=d66d6f88273637d34b649184543862f588a7d9e3;hp=99ed45f28457f1683098310af79da3dcbc9d742c;hpb=d3607d82438ceea775965895e03e80e8ee256269;p=people%2Fteissler%2Fipfire-2.x.git diff --git a/lfs/flash-images b/lfs/flash-images index 99ed45f28..daf3ec1cc 100644 --- a/lfs/flash-images +++ b/lfs/flash-images @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2011 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -44,15 +44,15 @@ md5 : ############################################################################### # Installation Details ############################################################################### -IMGinst := /install/images/$(SNAME)-$(VERSION).1gb-ext2.$(MACHINE)-$(ED)-core$(CORE).img -IMGinsts := /install/images/$(SNAME)-$(VERSION).1gb-ext2-scon.$(MACHINE)-$(ED)-core$(CORE).img +IMGinst := /install/images/$(SNAME)-$(VERSION).2gb-ext2.$(MACHINE)-full-core$(CORE).img +IMGinsts := /install/images/$(SNAME)-$(VERSION).2gb-ext2-scon.$(MACHINE)-full-core$(CORE).img MNThdd := /install/harddisk IMGpart := /install/images/part_area IMGboot := /install/images/bootfs # don't change SIZEboot this without checking Image size SIZEboot := 20 IMGroot := /install/images/rootfs -SIZEroot := 500 +SIZEroot := 1400 IMGvar := /install/images/varfs SIZEvar := 430 @@ -68,7 +68,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) dd bs=1M if=/dev/zero of=$(IMGvar) count=$(SIZEvar) # Format them +ifeq "$(MACHINE_TYPE)" "arm" + mkfs.vfat $(IMGboot) +else mkfs.ext2 -F $(IMGboot) +endif mkfs.ext2 -F $(IMGroot) mkfs.ext2 -F $(IMGvar) @@ -81,29 +85,40 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) mount -o loop $(IMGvar) $(MNThdd)/var # Install IPFire - tar -C $(MNThdd)/ -xvf /install/cdrom/$(SNAME)-$(VERSION).tlz --lzma + tar -C $(MNThdd)/ -xvaf /install/cdrom/$(SNAME)-$(VERSION).tlz echo "LANGUAGE=en" >> $(MNThdd)/var/ipfire/main/settings echo "HOSTNAME=$(SNAME)" >> $(MNThdd)/var/ipfire/main/settings echo "THEME=ipfire" >> $(MNThdd)/var/ipfire/main/settings - touch $(MNThdd)/lib/modules/$(KVER)-ipfire/modules.dep - mv $(MNThdd)/bin/uname.bak $(MNThdd)/bin/uname + -touch $(MNThdd)/lib/modules/$(KVER)-ipfire/modules.dep mkdir $(MNThdd)/proc mount --bind /proc $(MNThdd)/proc mount --bind /dev $(MNThdd)/dev mount --bind /sys $(MNThdd)/sys chroot $(MNThdd) /usr/bin/perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang" - sed -i -e "s|MOUNT|ro|g" $(MNThdd)/boot/grub/grub.conf - sed -i -e "s|KVER|$(KVER)|g" $(MNThdd)/boot/grub/grub.conf - sed -i -e "s|ROOT|UUID=$$(blkid -sUUID $(IMGroot) | cut -d'"' -f2)|g" $(MNThdd)/boot/grub/grub.conf - ln -s grub.conf $(MNThdd)/boot/grub/menu.lst sed -i -e "s|DEVICE1|UUID=$$(blkid -sUUID $(IMGboot) | cut -d'"' -f2)|g" $(MNThdd)/etc/fstab +ifeq "$(MACHINE_TYPE)" "arm" + # ARM flash images have a VFAT partition for /boot. + sed -i -e "s|ext2|vfat|" $(MNThdd)/etc/fstab +endif sed -i -e "s|DEVICE2|#DEVICE2|g" $(MNThdd)/etc/fstab sed -i -e "s|DEVICE3|UUID=$$(blkid -sUUID $(IMGroot) | cut -d'"' -f2)|g" $(MNThdd)/etc/fstab sed -i -e "s|DEVICE4|UUID=$$(blkid -sUUID $(IMGvar) | cut -d'"' -f2)|g" $(MNThdd)/etc/fstab sed -i -e "s|FSTYPE|ext2|g" $(MNThdd)/etc/fstab +ifneq "$(MACHINE_TYPE)" "arm" + sed -i -e "s|MOUNT|ro|g" $(MNThdd)/boot/grub/grub.conf + sed -i -e "s|KVER|$(KVER)|g" $(MNThdd)/boot/grub/grub.conf + sed -i -e "s|ROOT|UUID=$$(blkid -sUUID $(IMGroot) | cut -d'"' -f2)|g" $(MNThdd)/boot/grub/grub.conf + ln -s grub.conf $(MNThdd)/boot/grub/menu.lst + # Copy grub files manually cp -f $(MNThdd)/usr/share/grub/i386-pc/* $(MNThdd)/boot/grub/ +endif + + # Setup symlink for partresize at first boot... + ln -sf ../init.d/partresize $(MNThdd)/etc/rc.d/rcsysinit.d/S25partresize + # Setup symlink for fsresize at second boot... + ln -sf ../init.d/fsresize $(MNThdd)/etc/rc.d/rcsysinit.d/S26fsresize # Unmount umount $(MNThdd)/proc @@ -113,10 +128,18 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) umount $(MNThdd)/var umount $(MNThdd) - # zerofree the ext3 images to get better compression + # zerofree the ext2 images to get better compression +ifneq "$(MACHINE_TYPE)" "arm" zerofree $(IMGboot) + -fsck.ext2 -f -y $(IMGboot) + fsck.ext2 -f -y $(IMGboot) +endif zerofree $(IMGroot) + -fsck.ext2 -f -y $(IMGroot) + fsck.ext2 -f -y $(IMGroot) zerofree $(IMGvar) + -fsck.ext2 -f -y $(IMGvar) + fsck.ext2 -f -y $(IMGvar) # Cat to an image cat $(IMGpart) $(IMGboot) $(IMGroot) $(IMGvar) > $(IMGinst) @@ -124,6 +147,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) echo -e ",$(SIZEboot),L,*\n,0,0\n,$(SIZEroot),L\n,$(SIZEvar),L\n" \ | sfdisk -D -uM -H 64 -S 32 $(IMGinst) +ifneq "$(MACHINE_TYPE)" "arm" # Install grub echo "device (hd0) $(IMGinst)" > /tmp/grubinst.tmp echo "root (hd0,0)" >> /tmp/grubinst.tmp @@ -131,6 +155,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) echo "quit" >> /tmp/grubinst.tmp grub < /tmp/grubinst.tmp rm -f /tmp/grubinst.tmp +endif # Compress Image gzip -f9 $(IMGinst) @@ -140,10 +165,12 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) mount -o loop $(IMGroot) $(MNThdd) mount -o loop $(IMGboot) $(MNThdd)/boot +ifneq "$(MACHINE_TYPE)" "arm" sed -i -e "s|splashimage|#splashimage|g" $(MNThdd)/boot/grub/grub.conf sed -i -e "s|#serial|serial|g" $(MNThdd)/boot/grub/grub.conf sed -i -e "s|#terminal|terminal|g" $(MNThdd)/boot/grub/grub.conf - sed -i -e "s| panic=10 | console=ttyS0,38400n8 panic=10 |g" $(MNThdd)/boot/grub/grub.conf + sed -i -e "s| panic=10 | console=ttyS0,115200n8 panic=10 |g" $(MNThdd)/boot/grub/grub.conf +endif sed -i -e "s|1:2345:respawn:|#1:2345:respawn:|g" $(MNThdd)/etc/inittab sed -i -e "s|2:2345:respawn:|#2:2345:respawn:|g" $(MNThdd)/etc/inittab @@ -157,9 +184,17 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) umount $(MNThdd) # zerofree the ext3 images to get better compression +ifneq "$(MACHINE_TYPE)" "arm" zerofree $(IMGboot) + -fsck.ext2 -f -y $(IMGboot) + fsck.ext2 -f -y $(IMGboot) +endif zerofree $(IMGroot) + -fsck.ext2 -f -y $(IMGroot) + fsck.ext2 -f -y $(IMGroot) zerofree $(IMGvar) + -fsck.ext2 -f -y $(IMGvar) + fsck.ext2 -f -y $(IMGvar) # Cat to an image cat $(IMGpart) $(IMGboot) $(IMGroot) $(IMGvar) > $(IMGinsts) @@ -168,6 +203,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) echo -e ",$(SIZEboot),L,*\n,0,0\n,$(SIZEroot),L\n,$(SIZEvar),L\n" \ | sfdisk -D -uM -H 64 -S 32 $(IMGinsts) +ifneq "$(MACHINE_TYPE)" "arm" # Install grub echo "device (hd0) $(IMGinsts)" > /tmp/grubinst.tmp echo "root (hd0,0)" >> /tmp/grubinst.tmp @@ -175,6 +211,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) echo "quit" >> /tmp/grubinst.tmp grub < /tmp/grubinst.tmp rm -f /tmp/grubinst.tmp +endif # Compress Image gzip -f9 $(IMGinsts)