mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-11 19:55:52 +02:00
Because of the locale switch, no locales have been included in the installer initrd and no characters other than the ASCII characters could be shown.
108 lines
4.2 KiB
Plaintext
108 lines
4.2 KiB
Plaintext
###############################################################################
|
|
# #
|
|
# IPFire.org - A linux based firewall #
|
|
# 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 #
|
|
# the Free Software Foundation, either version 3 of the License, or #
|
|
# (at your option) any later version. #
|
|
# #
|
|
# This program is distributed in the hope that it will be useful, #
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
|
# GNU General Public License for more details. #
|
|
# #
|
|
# You should have received a copy of the GNU General Public License #
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
|
# #
|
|
###############################################################################
|
|
|
|
###############################################################################
|
|
# Definitions
|
|
###############################################################################
|
|
|
|
include Config
|
|
|
|
VER = ipfire
|
|
|
|
THISAPP = initrd
|
|
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
|
TARGET = $(DIR_INFO)/$(THISAPP)
|
|
|
|
SUP_ARCH = i586
|
|
|
|
###############################################################################
|
|
# Top-level Rules
|
|
###############################################################################
|
|
|
|
install : $(TARGET)
|
|
|
|
check :
|
|
|
|
download :
|
|
|
|
md5 :
|
|
|
|
###############################################################################
|
|
# Installation Details
|
|
###############################################################################
|
|
|
|
$(TARGET) :
|
|
@$(PREBUILD)
|
|
rm -f /install/images/initrd
|
|
|
|
# Finish up initrd directory
|
|
-mkdir -p /install/initrd/{dev,etc,mnt,root,lib/modules/$(KVER)-ipfire/kernel/drivers,cdrom,dev,harddisk,proc,tmp,usr/share/terminfo/l,var/run,sys}
|
|
cd /install/initrd && lzma -d -c /boot/ipfirerd-$(KVER).img | cpio -i
|
|
|
|
# Copy Files packages for installer
|
|
find $(DIR_SRC)/config/rootfiles/installer/* -maxdepth 1 | xargs cat | grep -v "^#" > /tmp/ROOTFILES
|
|
|
|
# Patch Kernel Version to rootfiles
|
|
sed -e "s/KVER/$(KVER)/g" -i /tmp/ROOTFILES
|
|
|
|
-cd / && cpio -d -p /install/initrd < /tmp/ROOTFILES
|
|
|
|
# Copy hid and network modules
|
|
cp -aRf /lib/modules/$(KVER)-ipfire/kernel/drivers/hid \
|
|
/install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/
|
|
cp -aRf /lib/modules/$(KVER)-ipfire/kernel/drivers/net \
|
|
/install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/
|
|
|
|
cd /install/initrd/etc && rm -f fstab
|
|
cp -aRf $(DIR_SRC)/config/install/* /install/initrd/etc/
|
|
rm -rf /install/initrd/usr/share/man
|
|
chmod 755 /install/initrd/etc/halt /install/initrd/etc/rc_installer
|
|
|
|
cd /install/initrd/ && patch -Np0 < $(DIR_SRC)/src/patches/dracut-init_start_ipfireinstaller.patch
|
|
|
|
# Hide udev messages
|
|
sed -i -e "s|err|none|g" /install/initrd/etc/udev/udev.conf
|
|
|
|
# make new dependencies
|
|
depmod -a -F /boot/System.map-$(KVER)-ipfire $(KVER)-ipfire
|
|
|
|
-mkdir -p /install/{images,mnt}
|
|
rm -rf /install/mnt/*
|
|
|
|
#Build Module deps for installer.
|
|
depmod -a -b /install/initrd/ -F /boot/System.map-$(KVER)-ipfire $(KVER)-ipfire
|
|
|
|
#Name service from dhcpcd
|
|
cp -f /etc/nsswitch.conf /install/initrd/etc/
|
|
cp -f $(DIR_SRC)/config/initrd/dhcpc/* /install/initrd/var/ipfire/dhcpc/dhcpcd-hooks/
|
|
|
|
# Install needed locales.
|
|
-mkdir -pv /install/initrd/usr/lib/locale
|
|
for lang in $(DIR_SRC)/langs/*; do \
|
|
for path in /usr/lib/locale/$${lang##*/}*; do \
|
|
[ -d "$${path}" ] && cp -lrvf "$${path}" /install/initrd/usr/lib/locale/; \
|
|
done; \
|
|
done
|
|
|
|
cd /install/initrd && find . | cpio -o -H newc | lzma > /install/images/initrd
|
|
cd /install/initrd && find ./ -ls > $(DIR_INFO)/_build.initrd.log
|
|
|
|
@$(POSTBUILD)
|