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