]> git.ipfire.org Git - ipfire-3.x.git/blob - pakfire/pakfire.nm
Merge remote-tracking branch 'stevee/transmission-update'
[ipfire-3.x.git] / pakfire / pakfire.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = pakfire
7 version = 0.9.25
8 release = 3
9
10 maintainer = Michael Tremer <michael.tremer@ipfire.org>
11 groups = System/Packaging
12 url = http://www.ipfire.org/
13 license = GPLv3+
14 summary = Package installer/updater.
15
16 description
17 Pakfire optains package lists from the mirrors and can install and update
18 packages.
19 end
20
21 source_dl = http://source.ipfire.org/releases/pakfire/
22
23 build
24 requires
25 beecrypt-devel
26 elfutils-devel
27 gettext
28 libcap-devel
29 libsolv-devel >= 0.0.0-4
30 popt-devel
31 python-devel
32 systemd-units
33 xz-devel
34 end
35
36 # libgomp was broken in earlier releases.
37 requires += gcc >= 4.6.2-4
38 requires += beecrypt >= 4.2.1-2
39
40 CFLAGS += -fno-strict-aliasing
41
42 test
43 # Check, if the binary modules are loadable.
44 cd %{DIR_APP}/python/src/ && python -c "import _pakfire"
45 cd %{DIR_APP}/python/src/ && python -c "import _lzma"
46 end
47
48 install_cmds
49 # Remove all example repository definitions.
50 # Those will be solely provided by system-release.
51 rm -rfv %{BUILDROOT}%{sysconfdir}/pakfire/repos/*
52 end
53 end
54
55 packages
56 package %{name}
57 groups += Base
58
59 requires = pakfire-common = %{thisver}
60 end
61
62 package %{name}-common
63 requires
64 libsolv >= 0.0.0-4
65 pygpgme
66 python-progressbar
67 python-urlgrabber
68 system-release
69 end
70
71 files
72 %{sysconfdir}/pakfire/general.conf
73 %{bindir}/pakfire-key
74 /usr/lib/pakfire/pakfire-multicall.py
75 %{libdir}/python*/site-packages/pakfire*
76 /usr/share/locale
77 end
78 configfiles = %{sysconfdir}/pakfire/general.conf
79 end
80
81 package %{name}-builder
82 summary = The Pakfire builder.
83 description
84 The tools that are needed to build new pakfire packages.
85 end
86 groups += Build
87
88 requires
89 # For --rpm-requires.
90 bash >= 4.2-7
91
92 %{name} = %{thisver}
93 quality-agent = %{thisver}
94 cpio
95 elfutils
96 end
97 provides = pakfire-build = %{thisver}
98 obsoletes = pakfire-build < %{thisver}
99
100 conflicts
101 build-essentials
102 systemd-devel < 38
103 end
104
105 configfiles
106 /etc/pakfire/builder.conf
107 /etc/pakfire/distros
108 end
109
110 files
111 /etc/pakfire/builder.conf
112 /etc/pakfire/distros
113 %{libdir}/libpakfire_preload.so
114 %{bindir}/pakfire-builder
115 %{bindir}/pakfire-server
116 /usr/lib/pakfire/*
117 !/usr/lib/pakfire/pakfire-multicall.py
118 end
119 end
120
121 package %{name}-client
122 summary = The Pakfire Hub client.
123 description
124 The pakfire client has the power to create build jobs
125 and communicate with the Pakfire Build Service.
126 end
127
128 requires
129 pakfire-common = %{thisver}
130 end
131
132 files
133 %{sysconfdir}/pakfire/client.conf
134 %{bindir}/pakfire-client
135 end
136 configfiles = %{sysconfdir}/pakfire/client.conf
137 end
138
139 package %{name}-daemon
140 summary = The Pakfire daemon.
141 description
142 The Pakfire daemon takes build jobs from the
143 Pakfire Build Service and compiles them.
144 end
145
146 requires
147 pakfire-builder = %{thisver}
148 end
149
150 files
151 %{sysconfdir}/pakfire/daemon.conf
152 %{bindir}/pakfire-daemon
153 end
154 configfiles = %{sysconfdir}/pakfire/daemon.conf
155
156 script postin
157 systemctl daemon-reload >/dev/null 2>&1 || :
158 end
159
160 script preun
161 systemctl --no-reload disable pakfire-daemon.service > /dev/null 2>&1 || :
162 systemctl stop pakfire-daemon.service > /dev/null 2>&1 || :
163 end
164
165 script postun
166 systemctl daemon-reload >/dev/null 2>&1 || :
167 end
168
169 script postup
170 systemctl daemon-reload 2>&1 || :
171 systemctl reload-or-try-restart pakfire-daemon.service >/dev/null 2>&1 || :
172 end
173 end
174
175 package quality-agent
176 arch = noarch
177
178 summary = The pakfire quality agent.
179 description
180 The quality agent tests resulting packages that come out
181 of the build service.
182 It is a collection of scripts that check if everything is
183 working right.
184 end
185
186 files
187 /usr/lib/pakfire/quality-agent
188 /usr/lib/quality-agent*
189 end
190
191 requires
192 gawk
193 binutils
194 coreutils
195 findutils
196 file
197 grep
198 sed
199 end
200 end
201
202 package %{name}-debuginfo
203 template DEBUGINFO
204 end
205 end