2 # - BUG: you can't set in /etc/mdadm.conf:
3 # DEVICE partitions containers
4 # (which is default BTW if none set). Generation of initrd will fail
6 Summary: Creates an initial ramdisk image for preloading modules
7 Summary(pl.UTF-8): Narzędzie do tworzenia inicjalnego ramdysku używanego przy starcie systemu
12 Group: Applications/System
13 Source0: %{name}-%{version}.tar.gz
14 # Source0-md5: 3fb153489c3c245e5c1ee4bbc333acb4
15 Patch0: %{name}-git.patch
16 URL: http://git.pld-linux.org/?p=projects/geninitrd.git
17 BuildRequires: xmlto >= 0:0.0.18-1
18 Requires: /usr/bin/ldd
20 Requires: busybox-initrd >= 1.22.1-2
26 Requires: mktemp >= 1.5-8
28 Requires: pci-database >= 0.4
29 Requires: rc-scripts >= 0.2.7
31 Requires: virtual(module-tools)
37 %if "%{pld_release}" == "ac"
38 # otherwise LVM subsystem is not enabled in geninitrd
40 # without this softraid installations of PLD fail
41 Suggests: mdadm-initrd >= 1.12.0-1
42 Conflicts: grubby < 5.0.4-3.1
44 Conflicts: grubby < 6.0.24-3
47 Conflicts: module-init-tools < 3.2.2-6
48 Conflicts: pciutils < 2.2.9
49 Conflicts: udev-initrd < 1:168
50 Conflicts: xz < 4.999.9
52 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55 Geninitrd creates filesystem images for use as initial ramdisk
56 (initrd) images. These ramdisk images are often used to preload the
57 block device modules (SCSI or RAID) needed to access the root
60 In other words, generic kernels can be built without drivers for any
61 SCSI adapters which load the SCSI driver as a module. Since the kernel
62 needs to read those modules, but in this case it isn't able to address
63 the SCSI adapter, an initial ramdisk is used. The initial ramdisk is
64 loaded by the operating system loader (normally LILO) and is available
65 to the kernel as soon as the ramdisk is loaded. The ramdisk image
66 loads the proper SCSI adapter and allows the kernel to mount the root
67 filesystem. The geninitrd program creates such a ramdisk using
68 information found in the /etc/modules.conf file.
70 %description -l pl.UTF-8
71 Geninitrd służy do tworzenia obrazu systemu plikowego używanego jako
72 inicjalny ramdysk (initrd), z którego przy starcie systemu są ładowane
73 moduły kernela z obsługą urządzeń których obsługa nie jest
74 wkompilowana w kernel. Zazwyczaj modułami ładowanymi z inicjalnego
75 systemu plikowego są sterowniki SCSI, IDE czy też RAID po to żeby w
76 dalszej części inicjacji systemu był możliwy dostęp do głównego
77 systemu plikowego (root fs).
79 Dzięki initrd jest możliwe używanie dystrybucyjnego kernela w którym
80 wkompilowana jest minimalna ilość obsługi różnych urządzeń, a reszta
81 kodu obsługi sterowników SCSI, IDE czy RAID jest doczytywana w trakcie
82 startu z initrd. Skrypt geninitrd generuje obraz ramdysku na podstawie
83 bieżących informacji zawartych w /etc/modules.conf.
87 mv %{name}-%{version}*/* .
94 rm -rf $RPM_BUILD_ROOT
96 DESTDIR=$RPM_BUILD_ROOT
99 rm -rf $RPM_BUILD_ROOT
102 %defattr(644,root,root,755)
104 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/geninitrd
105 %attr(755,root,root) /sbin/geninitrd
106 %{_mandir}/man8/geninitrd.8*
109 /lib/geninitrd/functions
110 /lib/geninitrd/mod-*.sh
111 %attr(755,root,root) /lib/geninitrd/extract-ikconfig
113 %dir /lib/geninitrd/udev-rules
114 /lib/geninitrd/udev-rules/*.rules