]> git.pld-linux.org Git - packages/geninitrd.git/blob - geninitrd.spec
104befdf05ab476f14fc20dfc5673c87380b5f9f
[packages/geninitrd.git] / geninitrd.spec
1 ### TODO:
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
5 #
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
8 Name:           geninitrd
9 Version:        10000.32
10 # leave rel 1 for ac
11 Release:        2
12 License:        GPL
13 Group:          Applications/System
14 Source0:        %{name}-%{version}.tar.gz
15 # Source0-md5:  9d75e347ff49312209e97ead93378f4a
16 Patch0:         %{name}-romfs.patch
17 Patch1:         %{name}-gzip-compressor.patch
18 BuildRequires:  xmlto >= 0:0.0.18-1
19 Requires:       /usr/bin/ldd
20 Requires:       awk
21 Requires:       busybox-initrd > 1.00-4
22 Requires:       coreutils
23 Requires:       cpio
24 Requires:       fileutils
25 Requires:       genromfs
26 Requires:       gzip
27 Requires:       mktemp >= 1.5-8
28 Requires:       module-init-tools >= 3.2.2-6
29 Requires:       mount
30 Requires:       pci-database >= 0.4
31 Requires:       rc-scripts >= 0.2.7
32 Requires:       tar
33 %if "%{pld_release}" == "ti"
34 Requires:       lvm2-initrd
35 Requires:       mdadm-initrd >= 1.12.0-1
36 %else
37 # otherwise LVM subsystem is not enabled in geninitrd
38 Suggests:       lvm2-initrd
39 # without this softraid installations of PLD fail
40 Suggests:       mdadm-initrd >= 1.12.0-1
41 %endif
42 # suggest for blkid
43 %if "%{pld_release}" != "ac"
44 Suggests:       util-linux-initrd
45 %endif
46 Obsoletes:      mkinitrd
47 %if "%{pld_release}" == "ac"
48 Conflicts:      grubby < 5.0.4-3.1
49 %else
50 Conflicts:      grubby < 6.0.24-3
51 %endif
52 Conflicts:      udev-initrd < 1:104
53 Conflicts:      xz < 4.999.9
54 BuildArch:      noarch
55 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56
57 %description
58 Geninitrd creates filesystem images for use as initial ramdisk
59 (initrd) images. These ramdisk images are often used to preload the
60 block device modules (SCSI or RAID) needed to access the root
61 filesystem.
62
63 In other words, generic kernels can be built without drivers for any
64 SCSI adapters which load the SCSI driver as a module. Since the kernel
65 needs to read those modules, but in this case it isn't able to address
66 the SCSI adapter, an initial ramdisk is used. The initial ramdisk is
67 loaded by the operating system loader (normally LILO) and is available
68 to the kernel as soon as the ramdisk is loaded. The ramdisk image
69 loads the proper SCSI adapter and allows the kernel to mount the root
70 filesystem. The geninitrd program creates such a ramdisk using
71 information found in the /etc/modules.conf file.
72
73 %description -l pl.UTF-8
74 Geninitrd służy do tworzenia obrazu systemu plikowego używanego jako
75 inicjalny ramdysk (initrd), z którego przy starcie systemu są ładowane
76 moduły kernela z obsługą urządzeń których obsługa nie jest
77 wkompilowana w kernel. Zazwyczaj modułami ładowanymi z inicjalnego
78 systemu plikowego są sterowniki SCSI, IDE czy też RAID po to żeby w
79 dalszej części inicjacji systemu był możliwy dostęp do głównego
80 systemu plikowego (root fs).
81
82 Dzięki initrd jest możliwe używanie dystrybucyjnego kernela w którym
83 wkompilowana jest minimalna ilość obsługi różnych urządzeń, a reszta
84 kodu obsługi sterowników SCSI, IDE czy RAID jest doczytywana w trakcie
85 startu z initrd. Skrypt geninitrd generuje obraz ramdysku na podstawie
86 bieżących informacji zawartych w /etc/modules.conf.
87
88 %prep
89 %setup -q
90 %if "%{pld_release}" == "ti"
91 %patch0 -p1
92 %patch1 -p1
93 %endif
94
95 %build
96 %{__make}
97
98 %install
99 rm -rf $RPM_BUILD_ROOT
100
101 %{__make} install \
102         DESTDIR=$RPM_BUILD_ROOT
103
104 %clean
105 rm -rf $RPM_BUILD_ROOT
106
107 %files
108 %defattr(644,root,root,755)
109 %doc ChangeLog
110 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/geninitrd
111 %attr(755,root,root) /sbin/geninitrd
112 %{_mandir}/man8/geninitrd.8*
113
114 %dir /lib/geninitrd
115 /lib/geninitrd/functions
116 /lib/geninitrd/mod-*.sh
117 %attr(755,root,root) /lib/geninitrd/extract-ikconfig
This page took 0.031498 seconds and 3 git commands to generate.