File dracut.spec of Package dracut.16003

#
# spec file for package dracut
#
# Copyright (c) 2020 SUSE LLC 
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


%define dracutlibdir %{_libexecdir}/dracut
%define _pkg_version 044

Name:           dracut
# Need minor increase for reliable conflicts by systemd, use %{_pkg_version} for real version
Version:        044.2
Release:        0
Summary:        Initramfs generator using udev
License:        GPL-2.0-or-later AND LGPL-2.1-or-later
Group:          System/Base
URL:            https://dracut.wiki.kernel.org/
Source0:        http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{_pkg_version}.tar.xz
Source1:        dracut-rpmlintrc
Source3:        mkinitrd_setup_dummy
Source4:        purge-kernels
Source5:        purge-kernels.service
Source6:        dracut-installkernel
Source7:        99-debug.conf
Source8:        s390x_persistent_device.conf

# Network
# Applied upstream as f0094476fd889b27b391e063f456bf8683670bf0
Patch12:        0012-40network-Fix-race-condition-when-wait-for-networks.patch
# None are upstream yet:
Patch13:        0013-40network-always-start-netroot-in-ifup.sh.patch
Patch15:        0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch
Patch17:        0017-45ifcfg-use-distro-specific-scripts.patch
Patch48:        0048-40network-Only-enable-network-interfaces-if-explicit.patch
Patch60:        0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch
Patch61:        0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch
Patch89:        0089-40network-create-var-lib-wicked-in-ifup.sh.patch
Patch94:        0094-Implement-shortcut-ip-ifname-static-for-static-confi.patch
Patch124:       0124-40network-Update-iBFT-scanning-code-to-handle-IPv6.patch
Patch125:       0125-40network-separate-mask-and-prefix.patch
Patch131:       0131-40network-handle-prefixed-IP-addresses-correctly.patch
Patch132:       0132-40network-fixup-static-network-configuration.patch
Patch133:       0133-Allow-multiple-configurations-per-network-interface-.patch
Patch142:       0142-40network-Don-t-report-error-for-etc-sysconfig-netwo.patch
Patch145:       0145-40network-handle-ip-ifname-static-correctly.patch
Patch159:       0159-network-Try-to-load-xennet.patch
Patch162:       0162-network-Request-DHCP-lease-instead-of-getting-applyi.patch
Patch169:       0169-network_set_mtu_macaddr_for_dhcp.patch
Patch170:       0170-iscsi-skip-ibft-invalid-dhcp.patch

#S390
# Applied upstream as 55c763b1ff37405da390ab1ef5765683f3a7838e
Patch16:        0016-Add-new-s390x-specific-rule-files.patch
# Submitted to upstream as d43cccf5885a84d688a3b526d5fc57865369da57
Patch21:        0021-95dcssblk-Add-new-module-for-DCSS-block-devices.patch
# Submitted to upstream as d0c97fdf4c33bb422f0a13a8752751d3054de143
Patch56:        0056-81cio_ignore-handle-cio_ignore-commandline.patch
# Applied upstream as 856d039ba4716ba080fc8d823b3329a4470a60ef
Patch75:        0075-95dasd_rules-enable-parsing-of-rd.dasd-commandline-p.patch
# Applied upstream as 5d1ea2d72616ec7ed9cf5e1f3bc99d7d5bc4f003
Patch76:        0076-Correctly-set-cio_ignore-for-dynamic-s390-rules.patch
# Applied upstream as e5d21b80c054235114c4167e0bf7769aa698b4d4
Patch79:        0079-95dasd_rules-fixup-rd.dasd-parsing.patch
# Applied upstream as 13626413107b67ab493ccfc4f6a1c6bef228a74e
Patch80:        0080-95dasd_rules-print-out-rd.dasd-commandline.patch
# Applied upstream as 6f1b5c0dabe57259d7e67ab9b643b11b70deb388
Patch81:        0081-95dasd_mod-do-not-set-module-parameters-if-dasd_cio_.patch
# Applied upstream as 9be4be7aa72af312c6b0588ddb008da7632612bc
Patch83:        0083-95zfcp_rules-Fixup-rd.zfcp-parsing.patch
# Applied upstream as 624f173cbd49b7389577aac10a887f16d4f89b7a
Patch85:        0085-95zfcp_rules-print-out-rd.zfcp-commandline-parameter.patch
# Applied upstream as c8e531239bf314ae532ca1bc820285250a3b35d7
Patch86:        0086-95zfcp_rules-Auto-generate-udev-rule-for-ipl-device.patch
# Applied upstream as bd355f8643555762acf02c6dd6179b683cd0a6aa
Patch87:        0087-95dasd_rules-Auto-generate-udev-rule-for-ipl-device.patch
# Submitted to upstream as 73f89bbadbd61ffb4cb485e11b630571185b7ef2 
Patch88:        0088-91zipl-Add-new-module-to-update-s390x-configuration.patch
# Applied upstream as 2600b54c187e5668f5b55d5d73f49e99c7b33212 
Patch107:       0107-Fixup-typo-firmare-instead-of-firmware.patch
# Submitted to upstream as 73f89bbadbd61ffb4cb485e11b630571185b7ef2
Patch108:       0108-91zipl-Store-commandline-correctly.patch
# Applied upstream as 05bf32097201c24c56dc6bb7a59a428293247d61
Patch109:       0109-95dasd_rules-Store-all-devices-in-commandline.patch
# Applied upstream as 3a8ba440265696ce1279dc12eb5a7acda14c1712
Patch110:       0110-95zfcp_rules-Store-all-devices-in-commandline.patch
# Submitted to upstream as d118e9d94050ea65cb4514dda5fda10ef30275fe
Patch113:       0113-91zipl-Install-script-as-executable.patch
# Submitted to upstream as 403f2c3e1dbb681c27b1279b9d023449cfc6d007
Patch114:       0114-91zipl-Translate-ext2-3-into-ext4.patch
# TODO: Apply upstream, already incorporated where original patches have been upstreamed
Patch116:       0116-Mark-scripts-as-executable.patch
# Applied upstream as cf9c8c5fe3fdb899b57c25867bf54b74adc3272f
Patch117:       0117-95dasd_rules-Enable-the-device-before-checking-devic.patch
# Applied upstream as 5e7bbe43a349a9d3ef0300c61f62a49a2e44c0a0
Patch118:       0118-95zfcp_rules-Enable-the-device-before-checking-devic.patch
# Applied upstream as 5f923256e33893bead8233852a741a4b0036f709
Patch123:       0123-95zfcp_rules-fix-typo-in-module_setup.patch
# Submitted to upstream as 33260dac6e0980da2d6577a29d83644b6637745c
Patch157:       0157-Add-boot-zipl-to-host-devs-if-it-is-a-mount-point.patch
# Submitted to upstream as 8bae047a4e096e69a34c520dae15458e210eecdb
Patch160:       0160-s390-update_active_devices_initrd.patch
# Applied upstream as c8aa1d949aecaf146b0a0e1ce269f69e6048dc5a
Patch161:       0161-95zfcp_rules-simplified-rd.zfcp-commandline-for-NPIV.patch
# Applied upstream as e5bf1cecd635897e5f2c8ae373494d33af3b1996
Patch188:       0188-95dasd_rules-Install-collect-udev-helper-binary.patch
# TODO: Apply upstream (??)
Patch506:       0506-Boot-on-s390x-with-fips-1-on-the-kernel-commnad-line.patch

#FIPS
Patch53:        0053-01fips-fixup-loading-issues.patch
Patch57:        0057-01fips-Include-some-more-hmacs.patch
Patch126:       0126-01fips-Add-drbg-module-to-force-loaded-modules.patch
Patch137:       0137-Switch-from-Mozilla-NSS-sha256hmac-checking-to-fipsc.patch
Patch138:       0138-fips_add_aesni-intel.patch
Patch139:       0139-fips-kernel-4.4-fixes.patch
Patch509:       0509-01fips-Remove-zlib-module-as-requirement.patch
Patch510:       0510-01fips-Some-modules-use-separators-other-than.patch
Patch511:       0511-01fips-ensure-fips-initialization-succeeds-on-s390-x.patch

# Others, partly SUSE specific. Not submitted unless annotated otherwise

# Submitted to upstream as 7ce2872be28a5463757651cc30049c3f4e81559a
Patch20:        0020-00warpclock-Set-correct-timezone.patch
Patch58:        0058-dracut-add-warning-when-including-unsupported-module.patch
Patch59:        0059-99suse-Add-SUSE-specific-initrd-parsing.patch
# TODO: This should not be a patch, but be removed in the install section
Patch90:        0090-dracut-caps-Remove-whole-caps-module.patch
Patch91:        0091-dracut-biosdevname-In-SUSE-biosdevname-package-is-in.patch
Patch121:       0121-Adjust-initramfs-kernel.img-to-SUSE-default-initrd-k.patch
Patch130:       0130-nfs-Always-add-all-kernel-modules-for-kdump.patch
# Applied upstream as c3b6970394ad677f05a42bef420bf34b1d0652e0
Patch144:       0144-90crypt-Fixed-crypttab_contains-to-also-work-with-de.patch
Patch150:       0150-Find-kernel-modules-in-extra-and-weak-updates-path-a.patch
Patch158:       0158-Add-SUSE-kernel-module-dependencies-in-etc-modprobe.patch
Patch163:       0163-Install-etc-sysconfig-console-to-see-specific-fonts.patch
# TODO: Verify: Should be obsolete due to fixes in systemd
Patch164:       0164-Fix-initramfs-ver.img-vs-initrd-ver-in-dracut-initra.patch
# Applied upstream as ed2cc8c9b96438be4527dbc9f5814196554abec4
Patch168:       0168-remove_plymouth_logo_file.patch
# Applied upstream as 251afd36b2be35b7b27011b6f90b5ab3bbbbff84
Patch180:       0180-i18n_add_correct_fontmaps.patch
# Applied upstream as dcacd2b072c301a51c114256e8bb696346879a2b
Patch182:       0182-fix-include-parsing.patch
# Applied upstream as d53bb5c01737270049fde82559ae72aae1943b81
Patch183:       0183-fix_add_drivers_hang.patch

# iscsiadm
# TODO: Apply all patches in this section upstream
Patch190:       0190-replace-iscsistart-with-systemd-service-files.patch
Patch191:       0191-static_network_setup_return_zero.patch
Patch192:       0192-iscsi_set_boot_protocol_from_ifcfg.patch
Patch193:       0193-95iscsi-Set-number-of-login-retries.patch
Patch196:       0196-ibft-wait-for-session-on-all-paths.patch
Patch197:       0197-95iscsi-Do-not-require-network-for-qla4xxx-flash-ses.patch
Patch198:       0198-95iscsi-set-rd.iscsi.firmware-for-qla4xxx-sessions.patch
Patch199:       0199-rd-iscsi-waitnet-default-false.patch

# Submit mainline asap

# Applied upstream as 5c84d51b3f258af9035a4031c6b482103adea4d9
Patch128:       0128-90lvm-Install-dm-snapshot-module.patch
# Applied upstream as d12ce1da8551c065616f81f158b6425b20ee191c
Patch200:       0200-dracut_fix_multipath_without_config.patch
# Applied upstream as f5c10673de18d84f3b054df9a68ffa8d43f9571c 
Patch201:       0201-fix_nfs_with_ip_instead_of_hostname.patch
# TODO: Apply upstream
Patch202:       0202-dracut_dmraid_use_udev.patch
# TODO: Check if still an issue with C-style insmod logic
Patch203:       0203-no-fail-builtin-module.patch
# Applied upstream as 51d2436c22d64e45376c64ad3b6c90c48cc88d78 
Patch204:       0204-mkinitrd-fix-monster.patch
# TODO: Apply upstream
Patch205:       0205-mdraid_ignore_hostonly.patch
# Applied upstream as 8602e5986702f6118f8b30f1053a45af1df892bd
Patch206:       0206-nfs_dns_alias.patch
# Applied upstream as 43819af68c7789ec932c25e699c56889fdf7276c
Patch207:       0207-handle_module_aliases.patch
# TODO: Possibly made redundant by changes done by upstream
Patch208:       0208-no_forced_virtnet.patch
# Applied upstream as 9fd3e045d5b41ba5cf9fb0c51db9750ce0e530d8
Patch209:       0209-fix_modules_load_d_hostonly.patch
# Applied upstream as 22836a092191c1abc0e04e4c6d68856f2603d6e8
Patch210:       0210-add_fcoe_uefi_check.patch
# Applied upstream as 6b96b50d2cd92d6598240e6061a81b29b889ecdd 
Patch212:       0212-fcoe_reorder_init_path.patch
# Applied upstream as 18729719a7091c35ffe377b21b860a60a352def8
Patch213:       0213-Fix-wrong-keymap-inclusion.patch
# Applied upstream as d066fcc3fb9080ffff412c8dc5177ca1dcc08e75
Patch214:       0214-95fcoe-Do-not-overwrite-FCoE-configuration.patch
# Applied upstream as 1279a9e1a0a28107e0a240ab344f700b465c96b3 by upstream
Patch215:       0215-95fcoe-Do-not-complain-about-missing-etc-hba.conf.patch
# Applied upstream as d71c9ee286def5d1a5e90f549b65e21d0f18c9ac 
Patch216:       0216-95fcoe-silence-lldpad-warnings.patch
# Applied upstream as c75196e11ec4325fc76bb11aeb884ceade62df48
Patch217:       0217-95fcoe-Allow-to-specify-the-FCoE-mode-via-the-fcoe-p.patch
# Probably not upstreamable?
Patch218:       0218-40network-allow-persistent-interface-names.patch
# Applied upstream as 164760f4b075ff564c349cb40d1fa308c139432d
Patch219:       0219-95fcoe-use-interface-names-instead-of-MAC-addresses.patch
# Applied upstream as 2aac3194100b903740bb9057aed71a35ce92a2e3
Patch220:       0220-95fcoe-always-set-AUTO_VLAN-for-fcoemon.patch
# Applied upstream as a3f91db4768451a10fbbc3e28270c29e1368df6c
Patch221:       0221-95fcoe-Add-shutdown-script.patch
# Applied upstream as 07e635748342aa70a76bc1a2237339f6a897d841
Patch222:       0222-90dm-Fixup-shutdown-script.patch
# Applied upstream as 870591acec41e854071129e7bf834cdfe43ae716
Patch223:       0223-90dm-fixup-dependency-cycle-between-MD-and-DM-shutdo.patch
# TODO: Apply upstream
Patch224:       0224-95iscsi-setup-bnx2i-offload-connections-properly.patch
# Applied upstream as part of 36a8b2e3058518255dbd39e33bf2c72b7889cfae
Patch225:       0225-95fcoe-do-not-start-fcoemon-twice.patch

# SUSE-specific fixes
Patch300:       0300-dracut_dont_use_dpkg_defaults_on_SUSE.patch
Patch301:       0301-include_sysconfig_language.patch
Patch302:       0302-Revert-90multipath-add-hostonly-multipath.conf-in-ca.patch
Patch303:       0303-fix_multipath_check_hostonly.patch
Patch304:       0304-90multipath-Start-daemon-after-udev-settle.patch
Patch305:       0305-90multipath-load-dm_multipath-module-during-startup.patch
Patch306:       0306-90multipath-add-shutdown-script.patch
Patch307:       0307-90multipath-parse-kernel-commandline-option-multipat.patch
Patch308:       0308-mdraid_add_IMSM_NO_PLATFORM_env.patch
Patch309:       0309-90dmraid-do-not-delete-partitions.patch
Patch310:       0310-95resume-Do-not-resume-on-iSCSI.patch
Patch311:       0311-95iscsi-ip-ibft-is-deprecated.patch
Patch312:       0312-40network-Do-not-print-message-about-tmp-net.ibft0.c.patch
Patch313:       0313-90mdraid-Use-stock-MD-rules-to-assemble-RAID-arrays.patch
Patch314:       0314-nfs_do_not_pass_ifname_for_bonding_devices.patch

# New features/improvements
# TODO: Apply upstream
Patch402:       0402-driver-fail-summary.patch
# Applied upstream as 10f06425a597ca797b8efbf45e8838c4d30651e9
Patch403:       0403-95lunmask-Add-module-to-handle-LUN-masking.patch
# Applied upstream as 1f8a7ae799effed1e57033167beca4281389391c
Patch404:       0404-dracut-emergency-optionally-print-fs-help.patch

# Workarounds/Patches no longer relevant in 045
Patch450:       0450-Strip-NUL-bytes-in-stream-before-push-in-string.patch
# Patch from upstream: d4efc0aeeecc470d9a267b7f3c130f472488905c
Patch451:       0451-systemd-initrd-add-initrd-root-device.target.patch
# Applied upstream as 9ffab3f3a5105691b4b640649c3a99e3cce39c1a
Patch452:       0452-Always-try-to-add-pinctrl-cherryview.patch
# Applied upstream as 7957bd01b097507a601495ed7cd2c8480c2af67b
Patch453:       0453-Resolve-symbolic-links-for-i-and-k-parameters-bsc-90.patch
# Applied upstream as e69da98de1a4175fb3c745570471fc3a7d567a33
Patch454:       0454-Add-md4-and-arc4-modules-for-ntlm.patch

# On top patches/fixes which have to be applied late
# Applied upstream as 8b0791fa010cf7e5fde3a37a8c2bb6d6f1264f59
Patch500:       0500-Reset-IFS-variable.patch
# Applied upstream as e0c3b0793f92c24d442f543a755aed8cc218ab20
Patch501:       0501-dasd_fix_ssid_bigger_zero.patch
# TODO: Apply upstream
Patch502:       0502-persistent_device_policy_param_enhance.patch
# Applied upstream as 0db98910a11c12a454eac4c8e86dc7a7bbc764a4 
Patch503:       0503-dracut.sh-create-the-initramfs-non-world-readable-al.patch
# TODO: Apply upstream
Patch504:       0504-ibft-fix-boot-flag-check.patch
# Applied upstream as f1c790495baa017ec48b266a33b0dd558e760dde
Patch505:       0505-Allow-booting-from-degraded-MD-RAID-arrays.patch
# Applied upstream as 649619f6a5775d1c94d9c4f3fec627c747633275
Patch507:       0507-Set-TaskMax-inifinite-for-the-emergency-shell.patch
# Applied upstream as 8008d47fafcecd27c456215e910be33a23546519
Patch508:       0508-90multipath-start-before-local-fs-pre.target.patch
# Applied upstream as 8b6d136e625cb538f8845e858b37e9f6c67a5f1c
Patch512:       0512-Make-binutils-optional-when-elfutils-are-available.patch
# TODO: Apply upstream
Patch513:       0513-Fix-regression-caused-by-6f9bf2b8ac436259bdccb110545.patch
# Applied upstream as 4a739be99c409719e76078ece55e7ba3c817b054 
Patch514:       0514-man-make-the-k-option-clear-using-mkinitrd.patch
# Reverted later. Do not submit! 
Patch515:       0515-90kernel-modules-also-add-block-device-driver-revers.patch
# Applied upstream as 7cf2c21798b537a5553ecc23df5ce8cfda631e9c
Patch516:       0516-mkinitrd-suse.sh-Fix-prefix-calculation.patch
# Applied upstream as fd13d5d4d50dd837be393c4b7dc1859237f6daac
Patch517:       0517-95fcoe-fixup-fcoe-genrules.sh-for-VN2VN-mode.patch
# Fixed more generically in upstream as feaaee4278077dd67fe24acebfbe47ba20738955
Patch518:       0518-90kernel-modules-Fix-backlight-on-Cherrytrail-device.patch
# TODO: Apply upstream if correct
Patch519:       0519-90kernel-modules-Ensure-phy-drivers-are-loaded-in-in.patch
# TODO: Check if still relevant and apply upstream
Patch520:       0520-Ignore-module-resolution-errors.patch
# TODO: Apply upstream
Patch521:       0521-Ensure-udev-persistent-storage-compat-rules-get-crea.patch
# TODO: belongs with FIPS commits
Patch522:       0522-Fix-typo-from-commit-3f1cdb520.patch
# Applied upstream as e3189ab1235748cda136b564668b697d1c87847b
Patch523:       0523-98dracut-systemd-Fix-module-force-loading-with-syste.patch
# Fixes SUSE Patch
Patch524:       0524-Suppress-nonsensical-error-message-bsc-1032029.patch
# Applied from upstream commit 106255afd46ea2be1d035aca0c5695186a3f2c41
Patch525:       0525-backport-bail-out-if-module-directory-does-not-exist.patch
# TODO: apply upstream
Patch526:       0526-iscsiroot-call-handle_firmware-only-for-non-iface-in.patch
# TODO: belongs with FIPS commits
Patch527:       0527-switch-fips-checking-to-use-the-libkcapi-based-fipsc.patch
# TODO: apply upstream
Patch528:       0528-Ensure-dracut.sh-responds-properly-to-hostonly_cmdli.patch
# Applied from upstream commit 8261d2367ee673e24d03306b9623f4f3070dae5b
Patch529:       0529-systemd-add-missing-.slice-unit.patch
# Applied from upstream commit eddca3c9c24e4cb9c5def0b98920e36b16fafaac
Patch530:       0530-dracut-systemd-dracut-cmdline-ask-fix-dracut-kernel-.patch
# Applied from upstream commit c000a21c25bd436f2b3cc2076cb7025cc82d2807
Patch531:       0531-dracut-systemd-.service-conflict-with-shutdown-targe.patch
# Do not submit, reverts bogus patch
Patch532:       0532-List-drivers-rather-than-looking-for-reverse-depende.patch
# TODO: check if still relevant
Patch533:       0533-instmods-check-modules.builtin-in-srcmods.patch
# Applied upstream as 348935e3b65b5058e65f66682df6a5b184eaacb2 
Patch534:       0534-ssh-client-Include-nss_-libraries.patch
# Applied upstream as e316ae0e4309726b2c067a70ac41f7b22011c063
Patch535:       0535-Sync-initramfs-after-creation.patch
# TODO: apply upstream
Patch536:       0536-90multipath-drop-67-kpartx-compat.rules.patch
# TODO: check how to submit upstream
Patch537:       0537-dracut-init.sh-ignore-crc32.ko-in-builtin-test.patch
# Applied upstream as afe4e2844ffa7c06160434430f0ce9e493c112e0 
Patch538:       0538-Enable-core-dumps-with-systemd-from-initrd.patch
# Not eligable for submit, unless specfile gets submitted
Patch539:       0539-Add-IMA-functionality-fate-323289.patch
# Applied from upstream commit 551cc3694e32be97084b1f198f76f4daf908d503 
Patch540:       0540-Check-the-proper-variable-for-a-custom-IMA-keys-dire.patch
# SLE and Leap have persistent net names, but not Factory/TW
%if 0%{?suse_version} && ! 0%{?sle_version}
# TODO: Unsure if this can be sumbmitted
Patch541:       0541-Make-sure-70-persistent-net.rules-is-included-in-ini.patch
%endif
# Applied upstream as 9f2916cce13d584610295e001394274e823c3f15
Patch542:       0542-Include-crc32c-intel-module-when-using-btrfs.patch
# Applied upstream as b36d322bd2ccb6ef4eb31384c86a75572184bba1
Patch543:       0543-Remove-00systemd-bootchart.patch
# TODO: Check if still relevant
Patch544:       0544-40network-Make-ip-dhcp-work.patch
# More generic fix upstream
Patch545:       0545-Add-early-microcode-support-for-AMD-family-16h.patch
# More generic fix upstream
Patch546:       0546-Support-Microcode-Updates-for-AMD-CPU-Family-0x17.patch
# Applied upstream as df96cccc8f562f8aeab7c09248c204f21ed42c4a
Patch547:       0547-Fix-task-limit-in-emergency.service-the-same-change-.patch
# Applied upstream as 36a8b2e3058518255dbd39e33bf2c72b7889cfae
Patch548:       0548-95fcoe-Switch-back-to-using-fipvlan-for-bnx2fc.patch
# Same patch applied by upstream: 3966a1e1ee0e3d27197258f446f54b683c415208
Patch549:       0549-fcoe-up-Increase-sleeptime-to-13s.patch
# Applied upstream as fd13d5d4d50dd837be393c4b7dc1859237f6daac
Patch550:       0550-95fcoe-add-timeout-initqueue-entries.patch
# Patch adopted from upstream commit 7c29d205f4bfb465f1618fdb8984798522c8eb4a
Patch551:       0551-fips-use-lib-modules-uname-r-modules.fips.patch
# Patch adopted from upstream commit 479b5cd94f16052cf6ea28d0e8abba2b926fff83
Patch552:       0552-98integrity-support-validating-the-IMA-policy-file-s.patch
# Patch submitted to upstream as 9e451d4770ec3a98816fcf97fdd745d6af135336
Patch553:       0553-98integrity-support-loading-x509-into-the-trusted-bu.patch
# Patch submitted to upstream as cb2c9a4338ddc15d55c6c524276a1807bec23485
Patch554:       0554-98integrity-support-X.509-only-EVM-configuration.patch
# Applied upstream as 94f61235d760337fdef692fac5ead589e8f3ab0e
Patch555:       0555-Avoid-executing-emergency-hooks-twice.patch
# Patch submitted to upstream as 62ceddfd3e3b9da8bdceb1be72dae55abdf35498
Patch556:       0556-95qeth_rules-Add-new-module-to-copy-qeth-rules.patch
# Patch not upstream, better fix depends on wicked
Patch557:       0557-40network-make-arping-optional.patch
# Applied upstream as 285495814becd9310bab3ab268a84ff54f43ed35
Patch558:       0558-40network-remove-brctl-dependency.patch
# Patch specific to SUSE, not upstream
Patch559:       0559-Add-wickedd-duid.xml-and-iaid.xml-if-available.patch
# Patch submitted to upstream as c68c28af2f140522e1dfae98ad62c56b01cbf175
Patch560:       0560-90kernel-modules-Ensure-PCI-host-modules-are-include.patch
# Patch submitted to upstream as 446c3bb2e25238f499bec875bbe4978a31d4e3d6
Patch561:       0561-Add-the-qedi-driver-to-driver-list-for-iscsi-boot.patch
# Patches taken from upstream (squashed)
Patch562:       0562-Adjust-driver-list-to-modern-kernels.patch
# Patch specific to SUSE, not upstream
Patch563:       0563-40network-collapse-arping-and-dhcp-calls-into-wicked.patch
# Patch specific to SUSE, not upstream
Patch564:       0564-40network-Always-set-the-gw-variable.patch
# Patch submitted to upstream as 774090d2223cc58db259f5670bde17bd37b286ea
Patch565:       0565-90kernel-modules-Include-Intel-Volume-Management-Dev.patch
# Patch specific to SUSE, not upstream
Patch566:       0566-95nfs-If-no-server-is-configured-read-BOOTSERVERADDR.patch
# Patch specific to SUSE, upstream only documentation
Patch567:       0567-Fix-booting-with-fips-1-on-SLES-15.patch
# Applied upstream as d000b9a2c7837be7d1c71fb730675f822cf96fc1
Patch568:       0568-95multipath-Pickup-files-in-etc-multipath-conf.d.patch
# Applied upstream as afd09c9a87ef09e2595f71fdae1d38ac00cfd071
Patch569:       0569-10i18n-Load-all-keymaps-for-a-given-locale.patch
# Applied upstream as a4e11a0e4d6fbed25244cc0f01732f81841bd642
Patch570:       0570-10i18n-Fix-possible-infinite-recursion.patch
Patch571:       0571-40network-Fix-static-network-setup.patch
# Patch adopted from upstream commit bce6823a19b3fc0be50ff5c29c5ef90fa58b3430
Patch572:       0572-lsinitrd-no-more-cat-write-error-Broken-pipe.patch
# Patch adopted from upstream commit 8379784a0e8e38b85f36cb605a323dce02fd76b5
Patch573:       0573-lsinitrd.sh-quote-filename-in-extract_files.patch
# Applied upstream as bfa4e45fa74fabf70ca0d80869e3b209f300ef6d
Patch574:       0574-s-find_btrfs_devs-btrfs_devs.patch
# Patch adopted from upstream commit 940169e8d8e500498a3f350b2b3f341ae6548492
Patch580:       0580-check_for_CONFIG_ACPI_TABLE_UPGRADE.patch
# Patch adopted from upstream commit 09ba1b289f2cba613c1950b03f0f549ebb7eb83f
Patch581:       0581-kernel-modules-add-nfit.patch
# Patch adopted from upstream commit e9a84e0a215fb5a79e563f665bc406c0ea177d32
Patch582:       0582-98dracut-systemd-Start-systemd-vconsole-setup-before.patch
# Patch adopted from upstream commit 7117bf627028298970d8a6a5e153e1942f3430f3
Patch583:       0583-99base-Allow-files-with-backslashes-in-hostonly-file.patch
# Patch adopted from upstream commit b38b7fef36333a59890233dccfbbb6d2c40ebe83
Patch584:       0584-95dasd_rules-mark-dasd-rules-host_only.patch
# Patch adopted from upstream commit 32f68c1f9ac3720e8ce4b95a09c0ce680d5da786 
Patch585:       0585-emergency-mode-use-sulogin.patch
# Patch adopted from git commit 69198cba654cb81093e36cca242481d26bec4b40
Patch586:       0586-95zfcp_rules-parse-zfcp.sh-remove-rule-existence-check.patch
# Patch adopted from upstream commit 58e0d2d5b5b3a5e7d6dbf74baa2f08f041de5a81
Patch587:       0587-Fix-a-missing-space-in-example-configs.patch
# Fix for 0562-Adjust-driver-list-to-modern-kernels.patch 
Patch588:       0588-Ensure-mmc-host-modules-get-included-properly.patch
# Patch adopted from upstream commit  0d08f43d7137e10cbbf7390809c4659128f8a2ea
Patch589:       0589-Fix-98dracut-systemd-dracut-emergency.sh.patch
# Patch adopted from upstream commit 38ccf7c8e5e19b1e7ef400ff0a77eb92531754c0
Patch591:       0591-91zipl-Don-t-use-contents-of-commented-lines.patch
# Patch submitted to upstream
Patch592:       0592-95iscsi-handle-qedi-like-bnx2i.patch
# Patch adopted from upstream commit e7ba1392e180eb6f5e19dfd28a340a98cf09a3cd
Patch593:       0593-dracut-only-copy-xattr-if-root.patch
# Patch specific to SUSE, not upstream
Patch594:       0594-Check-SUSE-kernel-module-dependencies-recursively.patch
# Patches 595-600 submitted upstream https://github.com/dracutdevs/dracut/pull/562
Patch595:       0595-iscsi-don-t-continue-waiting-if-the-root-device-is-p.patch
# Patch submitted upstream as 9aeceb14e010d68f8ee92f60664eef39d57552c2
Patch596:       0596-network-stop-waiting-for-interfaces-if-root-device-i.patch
# Patch submitted upstream as a9ef0960799ad8d95de2e13a9f8773e88826e83e
Patch597:       0597-iscsiroot-parse_iscsi_root-overwrites-command-line-a.patch
# Patch submitted upstream as 04657e60f00d53f52d47b7fd02b53618762340e4
Patch598:       0598-iscsiroot-there-s-never-more-than-one-target-per-cal.patch
# Patch submitted upstream as 1fd34ae26591701e27577e381dc284248e3bf6e2
Patch599:       0599-iscsiroot-try-targets-only-once.patch
# Patch submitted upstream as c14a550d54b408088fd0aa14a4f2088f8b45237e
Patch600:       0600-iscsiroot-remove-bashisms.patch
# Backported from upstream
Patch601:       0601-base-dracut-lib.sh-dev_unit_name-guard-against-dev-b.patch
# Backported from upstream
Patch602:       0602-95iscsi-decouple-iscsi-from-sysinit.target.patch
# Backported from upstream
Patch603:       0603-95iscsi-fix-a-typo-in-a-name-of-iscsiuio.patch
# Also submitted to upstream
Patch604:       0604-40network-Fix-spelling-error-while-parsing-and-addin.patch
# Backported from upstream
Patch605:       0605-Add-gpio-and-pinctrl-drivers-for-arm-aarch64.patch
Patch606:       0606-ucode-properly-include-early-only-ucode.patch
# Patch submitted to upstream
Patch607:       0607-95dasd-rules-95zfcp_rules-Look-for-correct-rule-name.patch
# Backported from upstream
Patch610:       0610-10i18n-Fix-keymaps-not-getting-included-sometimes.patch
# Backported from upstream b2909a5
Patch611:       0611-Dracut-only-login-to-one-target-at-a-time.patch
# SUSE specific patches
Patch613:       0613-dracut-init.sh-Support-xz-compressed-firmware-files.patch
# Fixes tracked in SUSE/044 from here
Patch614:       0614-35network-legacy-only-skip-waiting-for-interfaces-if.patch
Patch615:       0615-fixup-Dracut-only-login-to-one-target-at-a-time.patch
Patch616:       0616-ifup.sh-several-fixes-for-dhcp-calls-with-multiple-n.patch
Patch617:       0617-iscsiroot.sh-remove-fragments-of-obsolete-case-state.patch
Patch618:       0618-modules.d-fix-udev-rules-detection-of-multipath-devi.patch
Patch619:       0619-01fips-Use-correct-kernel-image-name-for-more-platfo.patch
Patch620:       0620-01fips-handle-SHA1-on-machines-without-AVX.patch
# No forward port, 049 and onwards handle this without a FATAL error
Patch621:       0621-dracut-init-downgrade-module-load-failure-to-warning.patch
# Patch adopted from upstream commit 54e09dfb72b557ac8ccd48f5d37089287d272ec7
Patch622:       0622-shutdown-guard-against-read-only-run.patch
# Patch adopted from upstream commit 4a17d08afbf5ff18fffb14580ddc20a895e5356a
Patch623:       0623-dmsquash-live-dmsquash-live-root.sh-fixed-typo.patch
Patch624:       0624-Dracut-handle-not-having-a-boot-target.patch
# Patch adopted from upstream commit 84c862d8f3993c93a3e90c70e7a05fdd8ca4a86f
Patch625:        0625-99base-enable-the-initqueue-in-both-dracut-add-devic.patch
Patch626:        0626-35network-legacy-correct-conditional-for-creating-di.patch
Patch627:       0627-40network-fix-typo-in-did-setup-conditional.patch

BuildRequires:  asciidoc
BuildRequires:  bash
BuildRequires:  docbook-xsl-stylesheets
BuildRequires:  libxslt
BuildRequires:  suse-module-tools
BuildRequires:  pkgconfig(systemd) >= 219
Requires:       %{_bindir}/get_kernel_version
Requires:       bash
# systemd-sysvinit provides: poweroff, reboot, halt
Requires:       coreutils
Requires(post): coreutils
Requires:       cpio
Requires:       elfutils
Requires:       file
Requires:       filesystem
Requires:       findutils
Requires:       grep
Requires:       hardlink
Requires:       modutils
Requires:       pigz
Requires:       sed
Requires:       systemd >= 219
Requires:       systemd-sysvinit
Requires:       udev > 166
Requires:       util-linux >= 2.21
Requires:       xz
# We use 'btrfs fi usage' that was not present before
Conflicts:      btrfsprogs < 3.18
Recommends:     logrotate
Obsoletes:      mkinitrd < 2.8.2
Provides:       mkinitrd = 2.8.2
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
%{?systemd_requires}

%description
Dracut contains tools to create a bootable initramfs for Linux kernels >= 2.6.
Dracut contains various modules which are driven by the event-based udev
and systemd. Having root on MD, DM, LVM2, LUKS is supported as well as
NFS, iSCSI, NBD, FCoE.

%package fips
Summary:        Dracut modules to build a dracut initramfs with an integrity check
Group:          System/Base
Requires(post): coreutils
Requires:       %{name} = %{version}-%{release}
Requires:       fipscheck
Requires:       libcryptsetup12-hmac
Requires:       libgcrypt20-hmac
Requires:       libkcapi-tools

%description fips
This package requires everything which is needed to build an
initramfs with dracut, which does an integrity check of the kernel
and its cryptography during startup.

%package ima
Summary:        Dracut modules to build a dracut initramfs with IMA
Group:          System/Base
Requires:       %{name} = %{version}-%{release}
Requires:       evmctl
Requires:       keyutils

%description ima
This package requires everything which is needed to build an
initramfs (using dracut) which tries to load an IMA policy during startup.

%package tools
Summary:        Tools to build a local initramfs
Group:          System/Base
Requires:       %{name}
# split-provides for upgrade from SLES12 SP1 to SLES12 SP2
Provides:       %{name}:%{_bindir}/dracut-catimages

%description tools
This package contains tools to assemble the local initrd and host configuration.

%prep
%setup -q -n dracut-%{_pkg_version}

%patch12 -p1
%patch13 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
%patch20 -p1
chmod a+x modules.d/00warpclock/module-setup.sh
%patch21 -p1
%patch48 -p1
%patch53 -p1
%patch56 -p1
%patch57 -p1
%patch58 -p1
%patch59 -p1
%patch60 -p1
chmod a+x modules.d/45ifcfg/write-ifcfg-suse.sh
%patch61 -p1
%patch75 -p1
%patch76 -p1
%patch79 -p1
%patch80 -p1
%patch81 -p1
%patch83 -p1
%patch85 -p1
%patch86 -p1
%patch87 -p1
%patch88 -p1
chmod a+x modules.d/91zipl/install_zipl_cmdline.sh
%patch89 -p1
%patch90 -p1
%patch91 -p1
%patch94 -p1
%patch107 -p1
%patch108 -p1
%patch109 -p1
%patch110 -p1
%patch113 -p1
%patch114 -p1
%patch116 -p1
%patch117 -p1
%patch118 -p1
%patch121 -p1
%patch123 -p1
%patch124 -p1
%patch125 -p1
%patch126 -p1
%patch128 -p1
%patch130 -p1
%patch131 -p1
%patch132 -p1
%patch133 -p1

%patch137 -p1
%patch138 -p1
%patch139 -p1

%patch142 -p1
%patch144 -p1
%patch145 -p1
%patch150 -p1
%patch157 -p1
%patch158 -p1
%patch159 -p1
%patch160 -p1
%patch161 -p1
%patch162 -p1
%patch163 -p1
%patch164 -p1
%patch168 -p1
%patch169 -p1
%patch170 -p1

%patch180 -p1
%patch182 -p1
%patch183 -p1
%patch188 -p1

%patch190 -p1
%patch191 -p1
%patch192 -p1
%patch193 -p1
%patch196 -p1
%patch197 -p1
%patch198 -p1
%patch199 -p1

%patch200 -p1
%patch201 -p1
%patch202 -p1
%patch203 -p1
%patch204 -p1
%patch205 -p1
%patch206 -p1
%patch207 -p1
%patch208 -p1
%patch209 -p1
%patch210 -p1
%patch212 -p1
%patch213 -p1
%patch214 -p1
%patch215 -p1
%patch216 -p1
%patch217 -p1
%patch218 -p1
%patch219 -p1
%patch220 -p1
%patch221 -p1
%patch222 -p1
%patch223 -p1
%patch224 -p1
%patch225 -p1

%patch300 -p1
%patch301 -p1
%patch302 -p1
%patch303 -p1
%patch304 -p1
%patch305 -p1
%patch306 -p1
%patch307 -p1
%patch308 -p1
%patch309 -p1
%patch310 -p1
%patch311 -p1
%patch312 -p1
%patch313 -p1
%patch314 -p1

%patch402 -p1
%patch403 -p1
%patch404 -p1

%patch450 -p1
%patch451 -p1
%patch452 -p1
%patch453 -p1
%patch454 -p1

%patch500 -p1
%patch501 -p1
%patch502 -p1
%patch503 -p1
%patch504 -p1
%patch505 -p1

%patch506 -p1
%patch507 -p1
%patch508 -p1
%patch509 -p1
%patch510 -p1
%patch511 -p1
%patch512 -p1
%patch513 -p1
%patch514 -p1
%patch515 -p1
%patch516 -p1
%patch517 -p1
%patch518 -p1
%patch519 -p1
%patch520 -p1
%patch521 -p1
%patch522 -p1
%patch523 -p1
%patch524 -p1
%patch525 -p1
%patch526 -p1
%patch527 -p1
%patch528 -p1
%patch529 -p1
%patch530 -p1
%patch531 -p1
%patch532 -p1
%patch533 -p1
%patch534 -p1
%patch535 -p1
%patch536 -p1
%patch537 -p1
%patch538 -p1
%patch539 -p1
%patch540 -p1
%if 0%{?suse_version} && ! 0%{?sle_version} 
%patch541 -p1
%endif
%patch542 -p1
%patch543 -p1
%patch544 -p1
%patch545 -p1
%patch546 -p1
%patch547 -p1
%patch548 -p1
%patch549 -p1
%patch550 -p1
%patch551 -p1
%patch552 -p1
%patch553 -p1
%patch554 -p1
%patch555 -p1
%patch556 -p1
chmod a+x modules.d/95qeth_rules/module-setup.sh
%patch557 -p1
%patch558 -p1
%patch559 -p1
%patch560 -p1
%patch561 -p1
%patch562 -p1
%patch563 -p1
%patch564 -p1
%patch565 -p1
%patch566 -p1
%patch567 -p1
%patch568 -p1
%patch569 -p1
%patch570 -p1
%patch571 -p1
%patch572 -p1
%patch573 -p1
%patch574 -p1
%patch580 -p1
%patch581 -p1
%patch582 -p1
%patch583 -p1
%patch584 -p1
%patch585 -p1
%patch586 -p1
%patch587 -p1
%patch588 -p1
%patch589 -p1
%patch591 -p1
%patch592 -p1
%patch593 -p1
%patch594 -p1
%patch595 -p1
%patch596 -p1
%patch597 -p1
%patch598 -p1
%patch599 -p1
%patch600 -p1
%patch601 -p1
%patch602 -p1
%patch603 -p1
%patch604 -p1
%patch605 -p1
%patch606 -p1
%patch607 -p1
%patch610 -p1
%patch611 -p1
%patch613 -p1
%patch614 -p1
%patch615 -p1
%patch616 -p1
%patch617 -p1
%patch618 -p1
%patch619 -p1
%patch620 -p1
%patch621 -p1
%patch622 -p1
%patch623 -p1
%patch624 -p1
%patch625 -p1
%patch626 -p1
%patch627 -p1

%build
%configure\
  --systemdsystemunitdir=%{_unitdir}\
  --bashcompletiondir=%{_sysconfdir}/bash_completion.d\
  --libdir=%{_prefix}/lib
make all CFLAGS="%{optflags}" %{?_smp_mflags}

%install
%make_install %{?_smp_mflags}

echo -e "#!/bin/bash\nDRACUT_VERSION=%{_pkg_version}-%{release}" > %{buildroot}/%{dracutlibdir}/dracut-version.sh

# no longer needed, use the (built-in) systemd-analyze instead
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/00bootchart

# not supported
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/00dash
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/05busybox

# Remove RH-specific s390 modules
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/95dasd
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/95zfcp
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/95znet

# remove gentoo specific modules
rm -fr %{buildroot}%{dracutlibdir}/modules.d/50gensplash

mkdir -p %{buildroot}/boot/dracut
mkdir -p %{buildroot}%{_localstatedir}/lib/dracut/overlay
mkdir -p %{buildroot}%{_localstatedir}/log
touch %{buildroot}%{_localstatedir}/log/dracut.log

install -D -m 0644 dracut.conf.d/suse.conf.example %{buildroot}/usr/lib/dracut/dracut.conf.d/01-dist.conf
install -m 0644 %{SOURCE7} %{buildroot}%{_sysconfdir}/dracut.conf.d/99-debug.conf
install -m 0644 dracut.conf.d/fips.conf.example %{buildroot}%{_sysconfdir}/dracut.conf.d/40-fips.conf
install -m 0644 dracut.conf.d/ima.conf.example %{buildroot}%{_sysconfdir}/dracut.conf.d/40-ima.conf
# bsc#915218
%ifarch s390 s390x
install -m 0644 %{SOURCE8} %{buildroot}%{_sysconfdir}/dracut.conf.d/10-s390x_persistent_device.conf
%endif

%ifarch %ix86 x86_64
echo 'early_microcode="yes"' > %{buildroot}%{_sysconfdir}/dracut.conf.d/02-early-microcode.conf
%endif

rm %{buildroot}%{_bindir}/mkinitrd
# moved to /sbin
mkdir -p %{buildroot}/sbin
install -m 0755 mkinitrd-suse.sh %{buildroot}/sbin/mkinitrd
mv %{buildroot}%{_mandir}/man8/mkinitrd-suse.8 %{buildroot}%{_mandir}/man8/mkinitrd.8
install -m 0755 %{SOURCE3} %{buildroot}/sbin/mkinitrd_setup

mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d
install -m 0644 dracut.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/dracut

install -D -m 0755 %{SOURCE4} %{buildroot}/sbin/purge-kernels
install -m 644 %{SOURCE5} %{buildroot}/%{_unitdir}/purge-kernels.service

install -D -m 0755 %{SOURCE6} %{buildroot}/sbin/installkernel

%if 0%{?suse_version}
rm -f %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg.sh
ln -s %{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-suse.sh %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg.sh
%else
mv %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg.sh %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-redhat.sh
ln -s %{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-redhat.sh %{buildroot}/%{dracutlibdir}/modules.d/45ifcfg/write-ifcfg.sh
%endif

%pre
%service_add_pre purge-kernels.service

%post
%service_add_post purge-kernels.service
%{?regenerate_initrd_post}
# Due to a bug in YaST and subsequent work by the migration script, /etc/vconsole.conf
# may contain "FONT_MAP=none" which is invalid. While systemd will silently ignore this,
# dracut will complain. Eliminate the entry (bsc#1096771, bsc#1013573).
test -f %{_sysconfdir}/vconsole.conf && sed -i '/^FONT_MAP=none/d' %{_sysconfdir}/vconsole.conf || :

%post fips
%{?regenerate_initrd_post}

%post ima
%{?regenerate_initrd_post}

%preun
%service_del_preun purge-kernels.service

%postun
%service_del_postun purge-kernels.service
%{?regenerate_initrd_post}

%postun fips
%{?regenerate_initrd_post}

%postun ima 
%{?regenerate_initrd_post}

%posttrans
%{?regenerate_initrd_posttrans}

%posttrans fips
%{?regenerate_initrd_posttrans}

%posttrans ima
%{?regenerate_initrd_posttrans}

%files fips
%defattr(-,root,root,0755)
%license COPYING
%config %{_sysconfdir}/dracut.conf.d/40-fips.conf
%{dracutlibdir}/modules.d/01fips
%{dracutlibdir}/modules.d/02fips-aesni

%files ima
%defattr(-,root,root,0755)
%license COPYING
%config %{_sysconfdir}/dracut.conf.d/40-ima.conf
%{dracutlibdir}/modules.d/96securityfs
%{dracutlibdir}/modules.d/97masterkey
%{dracutlibdir}/modules.d/98integrity

%files tools
%defattr(-,root,root,0755)
%{_bindir}/dracut-catimages
%{_mandir}/man8/dracut-catimages.8*
%dir /boot/dracut
%dir %{_localstatedir}/lib/dracut
%dir %{_localstatedir}/lib/dracut/overlay

%files
%defattr(-,root,root,0755)
%license COPYING
%doc README HACKING TODO AUTHORS NEWS dracut.html dracut.png dracut.svg
%{_bindir}/dracut
%{_bindir}/lsinitrd
/sbin/purge-kernels
/sbin/installkernel
/sbin/mkinitrd
/sbin/mkinitrd_setup
%config %{_sysconfdir}/bash_completion.d/lsinitrd
%{_datadir}/pkgconfig/dracut.pc

%config(noreplace) %{_sysconfdir}/dracut.conf
%dir %{_sysconfdir}/dracut.conf.d
%dir /usr/lib/dracut/dracut.conf.d
%config %{_sysconfdir}/dracut.conf.d/99-debug.conf
%if 0%{?fedora} || 0%{?suse_version} || 0%{?rhel}
/usr/lib/dracut/dracut.conf.d/01-dist.conf
%endif
%ifarch %ix86 x86_64
%config %{_sysconfdir}/dracut.conf.d/02-early-microcode.conf
%endif
%ifarch s390 s390x
%config %{_sysconfdir}/dracut.conf.d/10-s390x_persistent_device.conf
%endif

%{_mandir}/man8/dracut.8*
%{_mandir}/man8/mkinitrd.8*
%{_mandir}/man1/lsinitrd.1*
%{_mandir}/man7/dracut.kernel.7*
%{_mandir}/man7/dracut.cmdline.7*
%{_mandir}/man7/dracut.bootup.7*
%{_mandir}/man7/dracut.modules.7*
%{_mandir}/man8/dracut-cmdline.service.8*
%{_mandir}/man8/dracut-initqueue.service.8*
%{_mandir}/man8/dracut-pre-pivot.service.8*
%{_mandir}/man8/dracut-pre-trigger.service.8*
%{_mandir}/man8/dracut-pre-udev.service.8*
%{_mandir}/man8/dracut-mount.service.8.*
%{_mandir}/man8/dracut-pre-mount.service.8.*
%{_mandir}/man8/dracut-shutdown.service.8.*
%{_mandir}/man5/dracut.conf.5*

%dir %{_libexecdir}/kernel
%dir %{_libexecdir}/kernel/install.d
%{_libexecdir}/kernel/install.d/50-dracut.install
%{_libexecdir}/kernel/install.d/51-dracut-rescue.install

%dir %{dracutlibdir}
%{dracutlibdir}/skipcpio
%{dracutlibdir}/dracut-functions.sh
%{dracutlibdir}/dracut-init.sh
%{dracutlibdir}/dracut-functions
%{dracutlibdir}/dracut-version.sh
%{dracutlibdir}/dracut-logger.sh
%{dracutlibdir}/dracut-initramfs-restore
%{dracutlibdir}/dracut-install

%dir %{dracutlibdir}/modules.d
%{dracutlibdir}/modules.d/00bash
%{dracutlibdir}/modules.d/00warpclock
%{dracutlibdir}/modules.d/00systemd
%{dracutlibdir}/modules.d/01systemd-initrd
%{dracutlibdir}/modules.d/02systemd-networkd
%{dracutlibdir}/modules.d/03modsign
%{dracutlibdir}/modules.d/03rescue
%{dracutlibdir}/modules.d/04watchdog
%{dracutlibdir}/modules.d/10i18n
%{dracutlibdir}/modules.d/30convertfs
%{dracutlibdir}/modules.d/40network
%{dracutlibdir}/modules.d/45url-lib
%{dracutlibdir}/modules.d/45ifcfg
%{dracutlibdir}/modules.d/50drm
%{dracutlibdir}/modules.d/50plymouth
%{dracutlibdir}/modules.d/80cms
%{dracutlibdir}/modules.d/81cio_ignore
%{dracutlibdir}/modules.d/90livenet
%{dracutlibdir}/modules.d/90btrfs
%{dracutlibdir}/modules.d/90crypt
%{dracutlibdir}/modules.d/90dm
%{dracutlibdir}/modules.d/90dmraid
%{dracutlibdir}/modules.d/90dmsquash-live
%{dracutlibdir}/modules.d/90kernel-modules
%{dracutlibdir}/modules.d/90lvm
%{dracutlibdir}/modules.d/90mdraid
%{dracutlibdir}/modules.d/90multipath
%{dracutlibdir}/modules.d/90qemu
%{dracutlibdir}/modules.d/90kernel-network-modules
%{dracutlibdir}/modules.d/91crypt-gpg
%{dracutlibdir}/modules.d/91crypt-loop
%{dracutlibdir}/modules.d/91zipl
%{dracutlibdir}/modules.d/95fcoe-uefi
%{dracutlibdir}/modules.d/95nbd
%{dracutlibdir}/modules.d/95nfs
%{dracutlibdir}/modules.d/95ssh-client
%{dracutlibdir}/modules.d/95fcoe
%{dracutlibdir}/modules.d/95iscsi
%{dracutlibdir}/modules.d/95cifs
%{dracutlibdir}/modules.d/95debug
%{dracutlibdir}/modules.d/95resume
%{dracutlibdir}/modules.d/95rootfs-block
%{dracutlibdir}/modules.d/95dcssblk
%{dracutlibdir}/modules.d/95dasd_mod
%{dracutlibdir}/modules.d/95dasd_rules
%{dracutlibdir}/modules.d/95fstab-sys
%{dracutlibdir}/modules.d/95lunmask
%{dracutlibdir}/modules.d/95zfcp_rules
%{dracutlibdir}/modules.d/95qeth_rules
%{dracutlibdir}/modules.d/95terminfo
%{dracutlibdir}/modules.d/95udev-rules
%{dracutlibdir}/modules.d/95virtfs
%{dracutlibdir}/modules.d/97biosdevname
%{dracutlibdir}/modules.d/98ecryptfs
%{dracutlibdir}/modules.d/98pollcdrom
%{dracutlibdir}/modules.d/98selinux
%{dracutlibdir}/modules.d/98syslog
%{dracutlibdir}/modules.d/98dracut-systemd
%{dracutlibdir}/modules.d/98usrmount
%{dracutlibdir}/modules.d/99base
%{dracutlibdir}/modules.d/99fs-lib
%{dracutlibdir}/modules.d/99img-lib
%{dracutlibdir}/modules.d/99shutdown
%{dracutlibdir}/modules.d/99suse
%{dracutlibdir}/modules.d/99uefi-lib

# executable fixups
%attr(0755,root,root) %{dracutlibdir}/modules.d/00warpclock/warpclock.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/90livenet/livenet-generator.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/90multipath/multipath-shutdown.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95dcssblk/parse-dcssblk.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95dcssblk/module-setup.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95fcoe/cleanup-fcoe.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95fcoe/stop-fcoe.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/99suse/parse-suse-initrd.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/99suse/module-setup.sh

%attr(0755,root,root) %{dracutlibdir}/modules.d/95lunmask/sas_transport_scan_lun.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95lunmask/parse-lunmask.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95lunmask/fc_transport_scan_lun.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95lunmask/module-setup.sh

%config(noreplace) %{_sysconfdir}/logrotate.d/dracut
%attr(0640,root,root) %ghost %config(missingok,noreplace) %{_localstatedir}/log/dracut.log
%dir %{_unitdir}/initrd.target.wants
%dir %{_unitdir}/sysinit.target.wants
%{_unitdir}/*.service
%{_unitdir}/*/*.service
%config %{_sysconfdir}/bash_completion.d/dracut

%changelog