]> git.ipfire.org Git - thirdparty/dracut.git/blame_incremental - dracut.spec
add missing editor format commands
[thirdparty/dracut.git] / dracut.spec
... / ...
CommitLineData
1# Variables must be defined
2%define with_nbd 1
3
4# nbd in Fedora only
5%if 0%{?rhel} >= 6
6%define with_nbd 0
7%endif
8
9%if %{defined gittag}
10%define rdist .git%{gittag}%{?dist}
11%define dashgittag -%{gittag}
12%else
13%define rdist %{?dist}
14%endif
15
16Name: dracut
17Version: 008
18%define release_prefix 1%{?rdist}
19Release: %{release_prefix}
20
21Summary: Initramfs generator using udev
22%if 0%{?fedora}
23Group: System Environment/Base
24%endif
25%if 0%{?suse_version}
26Group: System/Base
27%endif
28License: GPLv2+
29URL: http://apps.sourceforge.net/trac/dracut/wiki
30# Source can be generated by
31# http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=snapshot;h=%{?dashgittag};sf=tgz
32Source0: dracut-%{version}%{?dashgittag}.tar.bz2
33BuildArch: noarch
34
35%if 0%{?fedora}
36BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
37%endif
38%if 0%{?suse_version}
39BuildRoot: %{_tmppath}/%{name}-%{version}-build
40%endif
41
42%if 0%{?fedora}
43BuildRequires: docbook-style-xsl docbook-dtds libxslt
44%endif
45
46%if 0%{?suse_version}
47BuildRequires: docbook-xsl-stylesheets libxslt
48%endif
49
50%if 0%{?fedora} > 12 || 0%{?rhel} >= 6
51# no "provides", because dracut does not offer
52# all functionality of the obsoleted packages
53Obsoletes: mkinitrd <= 6.0.93
54Obsoletes: mkinitrd-devel <= 6.0.93
55Obsoletes: nash <= 6.0.93
56Obsoletes: libbdevid-python <= 6.0.93
57%endif
58
59%if 0%{?suse_version} > 9999
60Obsoletes: mkinitrd < 2.6.1
61Provides: mkinitrd = 2.6.1
62%endif
63
64Obsoletes: dracut-kernel < 005
65Provides: dracut-kernel = %{version}-%{release}
66
67Requires: bash
68Requires: bzip2
69Requires: coreutils
70Requires: cpio
71Requires: dash
72Requires: filesystem >= 2.1.0
73Requires: findutils
74Requires: grep
75Requires: gzip
76Requires: kbd
77Requires: mktemp >= 1.5-5
78Requires: module-init-tools >= 3.7-9
79Requires: sed
80Requires: tar
81Requires: udev
82
83%if 0%{?fedora}
84Requires: util-linux >= 2.16
85Requires: initscripts >= 8.63-1
86Requires: plymouth >= 0.8.0-0.2009.29.09.19.1
87%endif
88
89%if 0%{?suse_version}
90Requires: util-linux >= 2.16
91%endif
92
93
94%description
95Dracut contains tools to create a bootable initramfs for 2.6 Linux kernels.
96Unlike existing implementations, dracut does hard-code as little as possible
97into the initramfs. Dracut contains various modules which are driven by the
98event-based udev. Having root on MD, DM, LVM2, LUKS is supported as well as
99NFS, iSCSI, NBD, FCoE with the dracut-network package.
100
101%package network
102Summary: Dracut modules to build a dracut initramfs with network support
103Requires: %{name} = %{version}-%{release}
104Requires: rpcbind
105%if %{with_nbd}
106Requires: nbd
107%endif
108Requires: net-tools iproute
109Requires: bridge-utils
110
111%if 0%{?fedora}
112Requires: iscsi-initiator-utils
113Requires: nfs-utils
114Requires: dhclient
115%endif
116
117%if 0%{?suse_version}
118Requires: dhcp-client
119Requires: nfs-client
120Requires: vlan
121%endif
122Obsoletes: dracut-generic < 008
123Provides: dracut-generic = %{version}-%{release}
124
125%description network
126This package requires everything which is needed to build a generic
127all purpose initramfs with network support with dracut.
128
129%if 0%{?fedora}
130%package fips
131Summary: Dracut modules to build a dracut initramfs with an integrity check
132Requires: %{name} = %{version}-%{release}
133Requires: hmaccalc
134%if 0%{?rhel} > 5
135# For Alpha 3, we want nss instead of nss-softokn
136Requires: nss
137%else
138Requires: nss-softokn
139%endif
140Requires: nss-softokn-freebl
141
142%description fips
143This package requires everything which is needed to build an
144all purpose initramfs with dracut, which does an integrity check.
145%endif
146
147%package tools
148Summary: Dracut tools to build the local initramfs
149Requires: %{name} = %{version}-%{release}
150
151%description tools
152This package contains tools to assemble the local initrd and host configuration.
153
154%prep
155%setup -q -n %{name}-%{version}%{?dashgittag}
156
157%build
158make WITH_SWITCH_ROOT=0%{?with_switch_root}
159
160%install
161%if 0%{?fedora}
162rm -rf $RPM_BUILD_ROOT
163%endif
164make install DESTDIR=$RPM_BUILD_ROOT sbindir=/sbin \
165 sysconfdir=/etc mandir=%{_mandir} WITH_SWITCH_ROOT=0%{?with_switch_root}
166
167echo %{name}-%{version}-%{release} > $RPM_BUILD_ROOT/%{_datadir}/dracut/modules.d/10rpmversion/dracut-version
168
169%if 0%{?fedora} == 0
170rm -fr $RPM_BUILD_ROOT/%{_datadir}/dracut/modules.d/01fips
171%endif
172
173# remove gentoo specific modules
174rm -fr $RPM_BUILD_ROOT/%{_datadir}/dracut/modules.d/50gensplash
175
176mkdir -p $RPM_BUILD_ROOT/boot/dracut
177mkdir -p $RPM_BUILD_ROOT/var/lib/dracut/overlay
178mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log
179touch $RPM_BUILD_ROOT%{_localstatedir}/log/dracut.log
180
181%if 0%{?fedora}
182install -m 0644 dracut.conf.d/fedora.conf.example $RPM_BUILD_ROOT/etc/dracut.conf.d/01-dist.conf
183%endif
184
185%if 0%{?suse_version}
186install -m 0644 dracut.conf.d/suse.conf.example $RPM_BUILD_ROOT/etc/dracut.conf.d/01-dist.conf
187%endif
188
189%if 0%{?fedora} <= 12 && 0%{?rhel} < 6 && 0%{?suse_version} <= 9999
190rm $RPM_BUILD_ROOT/sbin/mkinitrd
191rm $RPM_BUILD_ROOT/sbin/lsinitrd
192%endif
193
194%clean
195rm -rf $RPM_BUILD_ROOT
196
197%files
198%defattr(-,root,root,0755)
199%doc README HACKING TODO COPYING AUTHORS NEWS dracut.html dracut.png dracut.svg
200/sbin/dracut
201%if 0%{?with_switch_root}
202/sbin/switch_root
203%endif
204%if 0%{?fedora} > 12 || 0%{?rhel} >= 6 || 0%{?suse_version} > 9999
205/sbin/mkinitrd
206/sbin/lsinitrd
207%endif
208%dir %{_datadir}/dracut
209%dir %{_datadir}/dracut/modules.d
210%{_datadir}/dracut/dracut-functions
211%config(noreplace) /etc/dracut.conf
212%if 0%{?fedora} || 0%{?suse_version}
213%config(noreplace) /etc/dracut.conf.d/01-dist.conf
214%endif
215%dir /etc/dracut.conf.d
216%{_mandir}/man8/dracut.8*
217%{_mandir}/man7/dracut.kernel.7*
218%{_mandir}/man5/dracut.conf.5*
219%{_datadir}/dracut/modules.d/00bootchart
220%{_datadir}/dracut/modules.d/00dash
221%{_datadir}/dracut/modules.d/05busybox
222%{_datadir}/dracut/modules.d/10i18n
223%{_datadir}/dracut/modules.d/10rpmversion
224%{_datadir}/dracut/modules.d/50plymouth
225%{_datadir}/dracut/modules.d/60xen
226%{_datadir}/dracut/modules.d/90btrfs
227%{_datadir}/dracut/modules.d/90crypt
228%{_datadir}/dracut/modules.d/90dm
229%{_datadir}/dracut/modules.d/90dmraid
230%{_datadir}/dracut/modules.d/90dmsquash-live
231%{_datadir}/dracut/modules.d/90kernel-modules
232%{_datadir}/dracut/modules.d/90lvm
233%{_datadir}/dracut/modules.d/90mdraid
234%{_datadir}/dracut/modules.d/90multipath
235%{_datadir}/dracut/modules.d/95debug
236%{_datadir}/dracut/modules.d/95resume
237%{_datadir}/dracut/modules.d/95rootfs-block
238%{_datadir}/dracut/modules.d/95dasd
239%{_datadir}/dracut/modules.d/95dasd_mod
240%{_datadir}/dracut/modules.d/95fstab-sys
241%{_datadir}/dracut/modules.d/95zfcp
242%{_datadir}/dracut/modules.d/95terminfo
243%{_datadir}/dracut/modules.d/95udev-rules
244%{_datadir}/dracut/modules.d/96insmodpost
245%{_datadir}/dracut/modules.d/97biosdevname
246%{_datadir}/dracut/modules.d/98selinux
247%{_datadir}/dracut/modules.d/98syslog
248%{_datadir}/dracut/modules.d/99base
249# logfile needs no logrotate, because it gets overwritten
250# for every dracut run
251%attr(0644,root,root) %ghost %config(missingok,noreplace) %{_localstatedir}/log/dracut.log
252
253%files network
254%defattr(-,root,root,0755)
255%{_datadir}/dracut/modules.d/40network
256%{_datadir}/dracut/modules.d/95fcoe
257%{_datadir}/dracut/modules.d/95iscsi
258%{_datadir}/dracut/modules.d/95nbd
259%{_datadir}/dracut/modules.d/95nfs
260%{_datadir}/dracut/modules.d/45ifcfg
261%{_datadir}/dracut/modules.d/95znet
262
263%if 0%{?fedora}
264%files fips
265%defattr(-,root,root,0755)
266%{_datadir}/dracut/modules.d/01fips
267%endif
268
269%files tools
270%defattr(-,root,root,0755)
271%{_mandir}/man8/dracut-gencmdline.8*
272%{_mandir}/man8/dracut-catimages.8*
273/sbin/dracut-gencmdline
274/sbin/dracut-catimages
275%dir /boot/dracut
276%dir /var/lib/dracut
277%dir /var/lib/dracut/overlay
278
279%changelog