spec: drop support for legacy distributions
rhel <= 7 has its own branch and there is no point in supporting the old fedoramaster
parent
d23f32dd4b
commit
0bb9a683d4
|
@ -1,68 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
export LANG=C
|
|
||||||
|
|
||||||
KERNEL_VERSION="$1"
|
|
||||||
KERNEL_IMAGE="$2"
|
|
||||||
|
|
||||||
[[ -f /etc/os-release ]] && . /etc/os-release
|
|
||||||
|
|
||||||
if [[ ! -f /etc/machine-id ]] || [[ ! -s /etc/machine-id ]]; then
|
|
||||||
systemd-machine-id-setup
|
|
||||||
fi
|
|
||||||
|
|
||||||
[[ -f /etc/machine-id ]] && read MACHINE_ID < /etc/machine-id
|
|
||||||
|
|
||||||
[[ $MACHINE_ID ]] || exit 1
|
|
||||||
[[ -f $KERNEL_IMAGE ]] || exit 1
|
|
||||||
|
|
||||||
INITRDFILE="/boot/initramfs-0-rescue-${MACHINE_ID}.img"
|
|
||||||
NEW_KERNEL_IMAGE="${KERNEL_IMAGE%/*}/vmlinuz-0-rescue-${MACHINE_ID}"
|
|
||||||
|
|
||||||
[[ -f $INITRDFILE ]] && [[ -f $NEW_KERNEL_IMAGE ]] && exit 0
|
|
||||||
|
|
||||||
dropindirs_sort()
|
|
||||||
{
|
|
||||||
suffix=$1; shift
|
|
||||||
args=("$@")
|
|
||||||
files=$(
|
|
||||||
while (( $# > 0 )); do
|
|
||||||
for i in ${1}/*${suffix}; do
|
|
||||||
[[ -f $i ]] && echo ${i##*/}
|
|
||||||
done
|
|
||||||
shift
|
|
||||||
done | sort -Vu
|
|
||||||
)
|
|
||||||
|
|
||||||
for f in $files; do
|
|
||||||
for d in "${args[@]}"; do
|
|
||||||
if [[ -f "$d/$f" ]]; then
|
|
||||||
echo "$d/$f"
|
|
||||||
continue 2
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
# source our config dir
|
|
||||||
for f in $(dropindirs_sort ".conf" "/etc/dracut.conf.d" "/usr/lib/dracut/dracut.conf.d"); do
|
|
||||||
[[ -e $f ]] && . "$f"
|
|
||||||
done
|
|
||||||
|
|
||||||
[[ $dracut_rescue_image != "yes" ]] && exit 0
|
|
||||||
|
|
||||||
if [[ ! -f $INITRDFILE ]]; then
|
|
||||||
dracut --no-hostonly -a "rescue" "$INITRDFILE" "$KERNEL_VERSION"
|
|
||||||
((ret+=$?))
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ! -f $NEW_KERNEL_IMAGE ]]; then
|
|
||||||
cp --reflink=auto "$KERNEL_IMAGE" "$NEW_KERNEL_IMAGE"
|
|
||||||
((ret+=$?))
|
|
||||||
fi
|
|
||||||
|
|
||||||
new-kernel-pkg --install "$KERNEL_VERSION" --kernel-image "$NEW_KERNEL_IMAGE" --initrdfile "$INITRDFILE" --banner "$NAME $VERSION_ID Rescue $MACHINE_ID"
|
|
||||||
|
|
||||||
((ret+=$?))
|
|
||||||
|
|
||||||
exit $ret
|
|
75
dracut.spec
75
dracut.spec
|
@ -5,15 +5,6 @@
|
||||||
# strip the automatically generated dep here and instead co-own the
|
# strip the automatically generated dep here and instead co-own the
|
||||||
# directory.
|
# directory.
|
||||||
%global __requires_exclude pkg-config
|
%global __requires_exclude pkg-config
|
||||||
|
|
||||||
# Variables must be defined
|
|
||||||
%define with_nbd 1
|
|
||||||
|
|
||||||
# nbd in Fedora only
|
|
||||||
%if 0%{?rhel} >= 6
|
|
||||||
%define with_nbd 0
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%define dist_free_release xxx
|
%define dist_free_release xxx
|
||||||
|
|
||||||
Name: dracut
|
Name: dracut
|
||||||
|
@ -46,6 +37,7 @@ BuildRequires: gcc
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel}
|
%if 0%{?fedora} || 0%{?rhel}
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
|
BuildRequires: systemd
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?fedora}
|
%if 0%{?fedora}
|
||||||
BuildRequires: bash-completion
|
BuildRequires: bash-completion
|
||||||
|
@ -63,31 +55,11 @@ BuildRequires: docbook-style-xsl docbook-dtds libxslt
|
||||||
BuildRequires: asciidoc
|
BuildRequires: asciidoc
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?fedora} > 12 || 0%{?rhel}
|
|
||||||
# no "provides", because dracut does not offer
|
|
||||||
# all functionality of the obsoleted packages
|
|
||||||
Obsoletes: mkinitrd < 6.0.94
|
|
||||||
Obsoletes: mkinitrd-devel < 6.0.94
|
|
||||||
Obsoletes: nash < 6.0.94
|
|
||||||
Obsoletes: libbdevid-python < 6.0.94
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?fedora} > 16 || 0%{?rhel} > 6
|
|
||||||
BuildRequires: systemd-units
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?suse_version} > 9999
|
%if 0%{?suse_version} > 9999
|
||||||
Obsoletes: mkinitrd < 2.6.1
|
Obsoletes: mkinitrd < 2.6.1
|
||||||
Provides: mkinitrd = 2.6.1
|
Provides: mkinitrd = 2.6.1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Obsoletes: dracut-kernel < 005
|
|
||||||
Provides: dracut-kernel = %{version}-%{release}
|
|
||||||
|
|
||||||
Obsoletes: dracut < 030
|
|
||||||
Obsoletes: dracut-norescue < 030
|
|
||||||
Provides: dracut-norescue = %{version}-%{release}
|
|
||||||
|
|
||||||
Requires: bash >= 4
|
Requires: bash >= 4
|
||||||
Requires: coreutils
|
Requires: coreutils
|
||||||
Requires: cpio
|
Requires: cpio
|
||||||
|
@ -99,33 +71,23 @@ Requires: sed
|
||||||
Requires: xz
|
Requires: xz
|
||||||
Requires: gzip
|
Requires: gzip
|
||||||
|
|
||||||
%if 0%{?fedora} > 22 || 0%{?rhel} > 7
|
%if 0%{?fedora} || 0%{?rhel}
|
||||||
Recommends: grubby
|
Recommends: grubby
|
||||||
Recommends: hardlink
|
Recommends: hardlink
|
||||||
Recommends: pigz
|
Recommends: pigz
|
||||||
Recommends: kpartx
|
Recommends: kpartx
|
||||||
%else
|
|
||||||
Requires: hardlink
|
|
||||||
Requires: gzip
|
|
||||||
Requires: kpartx
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 6
|
|
||||||
Requires: util-linux >= 2.21
|
Requires: util-linux >= 2.21
|
||||||
Requires: systemd >= 219
|
Requires: systemd >= 219
|
||||||
Requires: systemd-udev >= 219
|
Requires: systemd-udev >= 219
|
||||||
Requires: procps-ng
|
Requires: procps-ng
|
||||||
Conflicts: grubby < 8.23
|
|
||||||
Conflicts: initscripts < 8.63-1
|
|
||||||
Conflicts: plymouth < 0.8.0-0.2009.29.09.19.1
|
|
||||||
Conflicts: bcache-tools < 0-0.14.20130909git
|
|
||||||
%else
|
%else
|
||||||
|
Requires: hardlink
|
||||||
|
Requires: gzip
|
||||||
|
Requires: kpartx
|
||||||
Requires: udev > 166
|
Requires: udev > 166
|
||||||
Requires: util-linux-ng >= 2.21
|
Requires: util-linux-ng >= 2.21
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Conflicts: mdadm < 3.2.6-14
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
dracut contains tools to create bootable initramfses for the Linux
|
dracut contains tools to create bootable initramfses for the Linux
|
||||||
kernel. Unlike previous implementations, dracut hard-codes as little
|
kernel. Unlike previous implementations, dracut hard-codes as little
|
||||||
|
@ -155,17 +117,12 @@ Provides: dracut-generic = %{version}-%{release}
|
||||||
This package requires everything which is needed to build a generic
|
This package requires everything which is needed to build a generic
|
||||||
all purpose initramfs with network support with dracut.
|
all purpose initramfs with network support with dracut.
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} >= 6 || 0%{?suse_version}
|
%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
|
||||||
%package fips
|
%package fips
|
||||||
Summary: dracut modules to build a dracut initramfs with an integrity check
|
Summary: dracut modules to build a dracut initramfs with an integrity check
|
||||||
Requires: %{name} = %{version}-%{release}
|
Requires: %{name} = %{version}-%{release}
|
||||||
Requires: hmaccalc
|
Requires: hmaccalc
|
||||||
%if 0%{?rhel} > 5
|
|
||||||
# For Alpha 3, we want nss instead of nss-softokn
|
|
||||||
Requires: nss
|
Requires: nss
|
||||||
%else
|
|
||||||
Requires: nss-softokn
|
|
||||||
%endif
|
|
||||||
Requires: nss-softokn-freebl
|
Requires: nss-softokn-freebl
|
||||||
|
|
||||||
%description fips
|
%description fips
|
||||||
|
@ -250,9 +207,6 @@ cp %{SOURCE1} .
|
||||||
make %{?_smp_mflags}
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%if 0%{?fedora} || 0%{?rhel}
|
|
||||||
rm -rf -- $RPM_BUILD_ROOT
|
|
||||||
%endif
|
|
||||||
make %{?_smp_mflags} install \
|
make %{?_smp_mflags} install \
|
||||||
DESTDIR=$RPM_BUILD_ROOT \
|
DESTDIR=$RPM_BUILD_ROOT \
|
||||||
libdir=%{_prefix}/lib
|
libdir=%{_prefix}/lib
|
||||||
|
@ -314,16 +268,12 @@ install -m 0644 dracut.conf.d/suse.conf.example $RPM_BUILD_ROOT%{dracutlibdir}
|
||||||
install -m 0644 dracut.conf.d/fips.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/40-fips.conf
|
install -m 0644 dracut.conf.d/fips.conf.example $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/40-fips.conf
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?fedora} <= 12 && 0%{?rhel} < 6 && 0%{?suse_version} <= 9999
|
%if 0%{?fedora} == 0 && 0%{?rhel} == 0 && 0%{?suse_version} <= 9999
|
||||||
rm -f -- $RPM_BUILD_ROOT%{_bindir}/mkinitrd
|
rm -f -- $RPM_BUILD_ROOT%{_bindir}/mkinitrd
|
||||||
rm -f -- $RPM_BUILD_ROOT%{_bindir}/lsinitrd
|
rm -f -- $RPM_BUILD_ROOT%{_bindir}/lsinitrd
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 6
|
%if 0%{?fedora} || 0%{?rhel}
|
||||||
# FIXME: remove after F19
|
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/kernel/postinst.d
|
|
||||||
install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kernel/postinst.d/51-dracut-rescue-postinst.sh
|
|
||||||
|
|
||||||
echo 'hostonly="no"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-generic-image.conf
|
echo 'hostonly="no"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-generic-image.conf
|
||||||
echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
||||||
%endif
|
%endif
|
||||||
|
@ -342,7 +292,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
|
||||||
%{_bindir}/dracut
|
%{_bindir}/dracut
|
||||||
%{_datadir}/bash-completion/completions/dracut
|
%{_datadir}/bash-completion/completions/dracut
|
||||||
%{_datadir}/bash-completion/completions/lsinitrd
|
%{_datadir}/bash-completion/completions/lsinitrd
|
||||||
%if 0%{?fedora} > 12 || 0%{?rhel} >= 6 || 0%{?suse_version} > 9999
|
%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version} > 9999
|
||||||
%{_bindir}/mkinitrd
|
%{_bindir}/mkinitrd
|
||||||
%{_bindir}/lsinitrd
|
%{_bindir}/lsinitrd
|
||||||
%endif
|
%endif
|
||||||
|
@ -368,7 +318,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
|
||||||
%if %{with doc}
|
%if %{with doc}
|
||||||
%{_mandir}/man8/dracut.8*
|
%{_mandir}/man8/dracut.8*
|
||||||
%{_mandir}/man8/*service.8*
|
%{_mandir}/man8/*service.8*
|
||||||
%if 0%{?fedora} > 12 || 0%{?rhel} >= 6 || 0%{?suse_version} > 9999
|
%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version} > 9999
|
||||||
%{_mandir}/man8/mkinitrd.8*
|
%{_mandir}/man8/mkinitrd.8*
|
||||||
%{_mandir}/man1/lsinitrd.1*
|
%{_mandir}/man1/lsinitrd.1*
|
||||||
%endif
|
%endif
|
||||||
|
@ -462,7 +412,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
|
||||||
%{_unitdir}/initrd.target.wants/dracut-pre-udev.service
|
%{_unitdir}/initrd.target.wants/dracut-pre-udev.service
|
||||||
|
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 6
|
%if 0%{?fedora} || 0%{?rhel}
|
||||||
%{_prefix}/lib/kernel/install.d/50-dracut.install
|
%{_prefix}/lib/kernel/install.d/50-dracut.install
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
@ -527,9 +477,8 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
|
||||||
%files config-rescue
|
%files config-rescue
|
||||||
%defattr(-,root,root,0755)
|
%defattr(-,root,root,0755)
|
||||||
%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 6
|
%if 0%{?fedora} || 0%{?rhel}
|
||||||
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
|
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
|
||||||
%{_sysconfdir}/kernel/postinst.d/51-dracut-rescue-postinst.sh
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|
Loading…
Reference in New Issue