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