1 |
# local RH-friendly definition of %mkrel, so we can assume it works and drop |
2 |
# other release hacking macros |
3 |
%{?!mkrel: %define mkrel(c:) %{-c: 0.%{-c*}.}%{1}%{?distsuffix:.%distsuffix}%{?distversion}} |
4 |
%{?!makeinstall_std: %define makeinstall_std() make DESTDIR=%{?buildroot:%{buildroot}} install} |
5 |
|
6 |
|
7 |
%define compat_perl_vendorlib %(perl -MConfig -e 'print "%{?perl_vendorlib:1}" ? "%{perl_vendorlib}" : "$Config{installvendorlib}"') |
8 |
%global allow_gurpmi %(perl -e 'print "%_vendor" =~ /\\bmag/i ? 1 : 0') |
9 |
%define req_webfetch %(perl -e 'print "%_vendor" =~ /\\bmag/i ? "webfetch" : "curl wget"') |
10 |
|
11 |
%global __requires_exclude perl\\((standalone\\) |
12 |
|
13 |
Name: urpmi |
14 |
Version: 8.00 |
15 |
Release: %mkrel 2 |
16 |
Group: System/Packaging |
17 |
License: GPLv2+ |
18 |
Source0: %{name}-%{version}.tar.xz |
19 |
Summary: Command-line software installation tools |
20 |
#URL: http://svnweb.mageia.org/soft/rpm/urpmi/ |
21 |
URL: http://search.cpan.org/~tvignaud/urpmi/ |
22 |
Requires: %{req_webfetch} |
23 |
Requires: eject |
24 |
Requires(post): perl-Locale-gettext |
25 |
Requires(post): perl-URPM |
26 |
Requires: perl-URPM >= 5.00 |
27 |
# gzip is used in perl-URPM for synthesis and hdlist |
28 |
Requires(post): gzip |
29 |
Requires: genhdlist2 |
30 |
Requires: meta-task |
31 |
Requires: perl-Filesys-Df |
32 |
Requires: perl-Time-ZoneInfo |
33 |
Obsoletes: urpmi-dudf |
34 |
Suggests: aria2 |
35 |
Suggests: deltarpm |
36 |
Conflicts: mgaonline < 3.0 |
37 |
Conflicts: rpmdrake < 6.0 |
38 |
BuildRequires: bzip2-devel |
39 |
BuildRequires: gettext |
40 |
BuildRequires: intltool |
41 |
BuildRequires: perl |
42 |
BuildRequires: perl_checker |
43 |
BuildRequires: perl-File-Slurp |
44 |
BuildRequires: perl-Locale-gettext |
45 |
BuildRequires: perl-MDV-Distribconf |
46 |
BuildRequires: perl-MDV-Packdrakeng |
47 |
BuildRequires: perl(Net::LDAP) |
48 |
BuildRequires: perl(Test::Pod::Coverage) |
49 |
BuildRequires: perl-URPM |
50 |
# for make test: |
51 |
BuildRequires: glibc-static-devel |
52 |
BuildRequires: perl-Net-Server |
53 |
BuildRequires: perl-Test-Pod |
54 |
BuildRequires: perl-XML-LibXML |
55 |
# for genhdlist in make test: |
56 |
BuildRequires: perl-Expect |
57 |
BuildRequires: rpmtools |
58 |
BuildArch: noarch |
59 |
|
60 |
%description |
61 |
urpmi is a console-based software installation tool. You can |
62 |
use it to install software from the console in the same way as you use the |
63 |
graphical Install Software tool (rpmdrake) to install software from the |
64 |
desktop. urpmi will follow package dependencies -- in other words, it will |
65 |
install all the other software required by the software you ask it to |
66 |
install -- and it's capable of obtaining packages from a variety of media, |
67 |
including the installation CD-ROMs and DVDs, your local hard disk, |
68 |
and remote sources such as web or FTP sites. |
69 |
|
70 |
%if %{allow_gurpmi} |
71 |
%package -n gurpmi |
72 |
Summary: User mode rpm GUI install |
73 |
Group: System/Packaging |
74 |
Requires: urpmi >= %{version}-%{release} |
75 |
Requires: polkit |
76 |
Requires(post): desktop-file-utils |
77 |
Requires(postun): desktop-file-utils |
78 |
|
79 |
%description -n gurpmi |
80 |
gurpmi is a graphical front-end to urpmi. |
81 |
%endif |
82 |
|
83 |
%package -n urpmi-parallel-ka-run |
84 |
Summary: Parallel extensions to urpmi using ka-run |
85 |
Requires: urpmi >= %{version}-%{release} |
86 |
Requires: parallel-tools |
87 |
Group: System/Packaging |
88 |
|
89 |
%description -n urpmi-parallel-ka-run |
90 |
urpmi-parallel-ka-run is an extension module to urpmi for handling |
91 |
distributed installation using ka-run or Taktuk tools. |
92 |
|
93 |
%package -n urpmi-parallel-ssh |
94 |
Summary: Parallel extensions to urpmi using ssh and scp |
95 |
Requires: urpmi >= %{version}-%{release} openssh-clients |
96 |
Group: System/Packaging |
97 |
|
98 |
%description -n urpmi-parallel-ssh |
99 |
urpmi-parallel-ssh is an extension module to urpmi for handling |
100 |
distributed installation using ssh and scp tools. |
101 |
|
102 |
%package -n urpmi-ldap |
103 |
Summary: Extension to urpmi to specify media configuration via LDAP |
104 |
Requires: urpmi >= %{version}-%{release} |
105 |
Requires: openldap-clients |
106 |
Group: System/Packaging |
107 |
|
108 |
%description -n urpmi-ldap |
109 |
urpmi-ldap is an extension module to urpmi to allow to specify |
110 |
urpmi configuration (notably media) in an LDAP directory. |
111 |
|
112 |
%prep |
113 |
%setup -q -n %{name}-%{version} |
114 |
|
115 |
%build |
116 |
%{__perl} Makefile.PL INSTALLDIRS=vendor \ |
117 |
%if %{allow_gurpmi} |
118 |
--install-gui \ |
119 |
%endif |
120 |
--install-polkit \ |
121 |
--install-po |
122 |
%{__make} |
123 |
|
124 |
%check |
125 |
%{__make} test |
126 |
|
127 |
%install |
128 |
%{makeinstall_std} |
129 |
|
130 |
# bash completion |
131 |
install -d -m 755 %{buildroot}%{_sysconfdir}/bash_completion.d |
132 |
install -m 644 %{name}.bash-completion %{buildroot}%{_sysconfdir}/bash_completion.d/%{name} |
133 |
|
134 |
# rpm-find-leaves is invoked by this name in rpmdrake |
135 |
ln -sf rpm-find-leaves %{buildroot}%{_bindir}/urpmi_rpm-find-leaves |
136 |
|
137 |
# (cg) provide a urpmi.update in the path because users like to use it without |
138 |
# mgaapplet installed (me included). |
139 |
# If bin and sbin ever merge, real files will likely be favoured over symlinks |
140 |
# and this should still operate properly (albeit with a bit of an upgrade glitch) |
141 |
ln -sf %{_libexecdir}/urpmi.update %{buildroot}%{_sbindir}/urpmi.update |
142 |
|
143 |
# Don't install READMEs twice |
144 |
rm -f %{buildroot}%{compat_perl_vendorlib}/urpm/README* |
145 |
|
146 |
# Desktop entry (only used to register new MIME type handler, so no icon etc.) |
147 |
%if %{allow_gurpmi} |
148 |
mkdir -p %buildroot%_datadir/applications |
149 |
cp -a gurpmi.desktop %buildroot%_datadir/applications/gurpmi.desktop |
150 |
|
151 |
mkdir -p %buildroot%_datadir/mime/packages |
152 |
cat > %buildroot%_datadir/mime/packages/gurpmi.xml << EOF |
153 |
<?xml version="1.0"?> |
154 |
<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> |
155 |
<mime-type type="application/x-urpmi"> |
156 |
<comment>urpmi file</comment> |
157 |
<glob pattern="*.urpmi"/> |
158 |
</mime-type> |
159 |
</mime-info> |
160 |
EOF |
161 |
%endif |
162 |
|
163 |
%find_lang %{name} |
164 |
|
165 |
%preun |
166 |
if [ "$1" = "0" ]; then |
167 |
cd /var/lib/urpmi |
168 |
rm -f compss provides depslist* descriptions.* *.cache hdlist.* synthesis.hdlist.* list.* |
169 |
cd /var/cache/urpmi |
170 |
rm -rf partial/* headers/* rpms/* |
171 |
fi |
172 |
exit 0 |
173 |
|
174 |
%files -f %{name}.lang |
175 |
%dir /etc/urpmi |
176 |
%dir /var/lib/urpmi |
177 |
%dir /var/cache/urpmi |
178 |
%dir /var/cache/urpmi/partial |
179 |
%dir /var/cache/urpmi/headers |
180 |
%dir /var/cache/urpmi/rpms |
181 |
%config(noreplace) /etc/urpmi/skip.list |
182 |
%config(noreplace) /etc/urpmi/inst.list |
183 |
%{_sysconfdir}/bash_completion.d/%{name} |
184 |
%{_bindir}/urpmi_rpm-find-leaves |
185 |
%{_bindir}/rpm-find-leaves |
186 |
%{_bindir}/urpmf |
187 |
%{_bindir}/urpmq |
188 |
%{_sbindir}/urpmi |
189 |
%{_sbindir}/rurpmi |
190 |
%{_sbindir}/rurpme |
191 |
%{_sbindir}/urpme |
192 |
%{_sbindir}/urpmi.addmedia |
193 |
%{_sbindir}/urpmi.removemedia |
194 |
%{_sbindir}/urpmi.update |
195 |
%{_libexecdir}/urpmi.update |
196 |
%{_mandir}/man3/*urpm* |
197 |
%{_mandir}/man5/urpm* |
198 |
%{_mandir}/man5/proxy* |
199 |
%{_mandir}/man8/rurpm* |
200 |
%{_mandir}/man8/urpme* |
201 |
%{_mandir}/man8/urpmf* |
202 |
%{_mandir}/man8/urpmq* |
203 |
%{_mandir}/man8/urpmi.8* |
204 |
%{_mandir}/man8/urpmi.addmedia* |
205 |
%{_mandir}/man8/urpmi.removemedia* |
206 |
%{_mandir}/man8/urpmi.update* |
207 |
%{_mandir}/man8/urpmihowto* |
208 |
%dir %{compat_perl_vendorlib}/urpm |
209 |
%{compat_perl_vendorlib}/urpm.pm |
210 |
%{compat_perl_vendorlib}/urpm/args.pm |
211 |
%{compat_perl_vendorlib}/urpm/bug_report.pm |
212 |
%{compat_perl_vendorlib}/urpm/cfg.pm |
213 |
%{compat_perl_vendorlib}/urpm/cdrom.pm |
214 |
%{compat_perl_vendorlib}/urpm/download.pm |
215 |
%{compat_perl_vendorlib}/urpm/get_pkgs.pm |
216 |
%{compat_perl_vendorlib}/urpm/install.pm |
217 |
%{compat_perl_vendorlib}/urpm/lock.pm |
218 |
%{compat_perl_vendorlib}/urpm/main_loop.pm |
219 |
%{compat_perl_vendorlib}/urpm/md5sum.pm |
220 |
%{compat_perl_vendorlib}/urpm/media.pm |
221 |
%{compat_perl_vendorlib}/urpm/mirrors.pm |
222 |
%{compat_perl_vendorlib}/urpm/msg.pm |
223 |
%{compat_perl_vendorlib}/urpm/orphans.pm |
224 |
%{compat_perl_vendorlib}/urpm/parallel.pm |
225 |
%{compat_perl_vendorlib}/urpm/prompt.pm |
226 |
%{compat_perl_vendorlib}/urpm/removable.pm |
227 |
%{compat_perl_vendorlib}/urpm/select.pm |
228 |
%{compat_perl_vendorlib}/urpm/signature.pm |
229 |
%{compat_perl_vendorlib}/urpm/sys.pm |
230 |
%{compat_perl_vendorlib}/urpm/util.pm |
231 |
%{compat_perl_vendorlib}/urpm/xml_info.pm |
232 |
%{compat_perl_vendorlib}/urpm/xml_info_pkg.pm |
233 |
%doc NEWS README.zeroconf urpmi-repository-http.service |
234 |
|
235 |
%if %{allow_gurpmi} |
236 |
%files -n gurpmi |
237 |
%{_bindir}/gurpmi |
238 |
%{_bindir}/gurpmi2 |
239 |
%{_libexecdir}/gurpmi2 |
240 |
%{_datadir}/polkit-1/actions/org.mageia.gurpmi2.policy |
241 |
%{_datadir}/applications/gurpmi.desktop |
242 |
%{_datadir}/mime/packages/gurpmi.xml |
243 |
%{compat_perl_vendorlib}/gurpmi.pm |
244 |
%{compat_perl_vendorlib}/gurpm/RPMProgressDialog.pm |
245 |
%endif |
246 |
|
247 |
%files -n urpmi-parallel-ka-run |
248 |
%doc urpm/README.ka-run |
249 |
%dir %{compat_perl_vendorlib}/urpm |
250 |
%{compat_perl_vendorlib}/urpm/parallel_ka_run.pm |
251 |
|
252 |
%files -n urpmi-parallel-ssh |
253 |
%doc urpm/README.ssh |
254 |
%dir %{compat_perl_vendorlib}/urpm |
255 |
%{compat_perl_vendorlib}/urpm/parallel_ssh.pm |
256 |
|
257 |
%files -n urpmi-ldap |
258 |
%doc urpmi.schema |
259 |
%{compat_perl_vendorlib}/urpm/ldap.pm |