###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007-2013 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2022 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 #
include Config
-VER = 006
+VER = 056
THISAPP = dracut-$(VER)
-DL_FILE = $(THISAPP).tar.bz2
+DL_FILE = $(THISAPP).tar.xz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 016052b57001789ec2acf89d382a82f5
+$(DL_FILE)_BLAKE2 = e3e4fa3024b401cc954ba6069c54e95912691ff68a838e3c43bfc6a5b284bdee1669c782b30503c0246b7146c545ee8825febefcff93bae76ec46067cb7b87e1
install : $(TARGET)
download :$(patsubst %,$(DIR_DL)/%,$(objects))
-md5 : $(subst %,%_MD5,$(objects))
+b2 : $(subst %,%_BLAKE2,$(objects))
###############################################################################
-# Downloading, checking, md5sum
+# Downloading, checking, b2sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
-$(subst %,%_MD5,$(objects)) :
- @$(MD5)
+$(subst %,%_BLAKE2,$(objects)) :
+ @$(B2SUM)
###############################################################################
# Installation Details
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+ @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/dracut-006_lzma.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/dracut-006_remove_cdrom_wait.patch
+ # https://bugzilla.ipfire.org/show_bug.cgi?id=12842
+ cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dracut-059-fix-e2fsck-call.patch
+ cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dracut/dracut-056-fix_early_microcode_for_kernel_6.6.patch
- cd $(DIR_APP) && cp -vf $(DIR_SRC)/src/dracut/switch_root.c .
+ cd $(DIR_APP) && ./configure --prefix=/usr --sbindir=/sbin --sysconfdir=/etc
+ cd $(DIR_APP) && make $(MAKETUNING)
+ cd $(DIR_APP) && make install sbindir=/sbin sysconfdir=/etc
- cd $(DIR_APP) && make $(MAKETUNING) WITH_SWITCH_ROOT=1
- cd $(DIR_APP) && make install WITH_SWITCH_ROOT=1 \
- sbindir=/sbin sysconfdir=/etc
+ cp -vf $(DIR_SRC)/config/dracut/ipfire.conf \
+ /usr/lib/dracut/dracut.conf.d/ipfire.conf
- cp -vf $(DIR_SRC)/src/dracut/dracut.conf /etc/dracut.conf.d/
-
- rm -rf /usr/share/dracut/modules.d/*{dash,fips,redhat-i18n,rpmversion,network,ifcfg,plymouth,btrfs,crypt,dm,dmraid,dmsquash-live,lvm,mdraid,multipath,dasd,dasd_mod,fcoe,iscsi,nbd,nfs,resume,uswsusp,zfcp,znet,selinux}
-
- sed -e "s/--resolve-names=never//g" -i \
- /usr/share/dracut/modules.d/99base/init
-
- # Build initramdisk
- # Strip all binaries in that initrd, because no debugging code is
- # needed.
-
-ifeq "$(MACHINE_TYPE)" "arm"
- # kirkwood kernel
- /sbin/dracut --force --verbose --strip /boot/ipfirerd-$(KVER)-kirkwood.img $(KVER)-ipfire-kirkwood
- cd /boot && mkimage -A arm -T ramdisk -C lzma -d ipfirerd-$(KVER)-kirkwood.img uInit-ipfire-kirkwood
- # arm7 multi kernel
- /sbin/dracut --force --verbose --strip /boot/ipfirerd-$(KVER)-multi.img $(KVER)-ipfire-multi
- cd /boot && mkimage -A arm -T ramdisk -C lzma -d ipfirerd-$(KVER)-multi.img uInit-ipfire-multi
-# cd /boot && cp -f ipfirerd-$(KVER)-multi.img zInit-ipfire-multi
-else
- /sbin/dracut --force --verbose --strip /boot/ipfirerd-$(KVER).img $(KVER)-ipfire
-endif
@rm -rf $(DIR_APP)
@$(POSTBUILD)