###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2012 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2014 IPFire Team <info@ipfire.org> #
# #
# 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 #
DEVICE = $(shell losetup -f)
PART_BOOT = /dev/mapper/$(patsubst /dev/%,%,$(DEVICE))p1
-PART_ROOT = /dev/mapper/$(patsubst /dev/%,%,$(DEVICE))p2
+PART_ROOT = /dev/mapper/$(patsubst /dev/%,%,$(DEVICE))p3
ifeq "$(SCON)" "1"
IMAGE_FILE = /install/images/$(SNAME)-$(VERSION).1gb-ext4-scon.$(MACHINE)-full-core$(CORE).img.gz
S_BOOT := $(shell echo $$(( 131072 - $(S_OFFSET) )))
S_ROOT := 1433600
+PADDING = 100 # MB
+
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
# Stop if $(MNThdd) is still mounted
mountpoint $(MNThdd) && exit 1 || exit 0
losetup $(DEVICE) $(IMG)
# Write Partition table
- echo -e "$(S_OFFSET),$(S_BOOT),$(PART_TYPE),*\n$$(( $(S_BOOT) + $(S_OFFSET) )),$(S_ROOT),L\n" \
+ echo -e "$(S_OFFSET),$(S_BOOT),$(PART_TYPE),*\n,0,0\n$$(( $(S_BOOT) + $(S_OFFSET) )),$(S_ROOT),L\n" \
| sfdisk -D -uS -H 64 -S 32 $(DEVICE)
kpartx -v -a $(DEVICE)
endif
# Install IPFire
+ifneq "$(MACHINE_TYPE)" "arm"
tar -x --lzma -C $(MNThdd)/ -f /install/cdrom/distro.img
-
+else
+ tar -x -C $(MNThdd)/ -f /install/cdrom/distro.img
+endif
echo "LANGUAGE=en" >> $(MNThdd)/var/ipfire/main/settings
echo "HOSTNAME=$(SNAME)" >> $(MNThdd)/var/ipfire/main/settings
echo "THEME=ipfire" >> $(MNThdd)/var/ipfire/main/settings
ifeq "$(BOOTLOADER)" "grub"
ifeq "$(SCON)" "1"
# Enable serial console on GRUB
- echo "GRUB_TERMINAL=\"serial console\"" >> $(MNThdd)/etc/default/grub
+ echo "GRUB_TERMINAL=\"serial\"" >> $(MNThdd)/etc/default/grub
echo "GRUB_SERIAL_COMMAND=\"serial --unit=0 --speed=115200\"" >> $(MNThdd)/etc/default/grub
sed -i -e "s|panic=10|& console=ttyS0,115200n8|g" $(MNThdd)/etc/default/grub
kpartx -d -v $(DEVICE)
losetup -d $(DEVICE)
+ # Add padding at the end of the image (to fix alignment issues if the image is
+ # not copied to a block device)
+ dd if=/dev/zero bs=1M count=$(PADDING) >> $(IMG)
+
# Compress Image
pigz -f9 < $(IMG) > $(IMAGE_FILE)
rm -rf $(IMG) $(MNThdd)