3 %bcond_without systemd # use systemd for session tracking instead of ConsoleKit (fallback to ConsoleKit on runtime)
4 %bcond_without vala # Vala API
6 Summary: Network Manager for GNOME
7 Summary(pl.UTF-8): Zarządca sieci dla GNOME
13 Group: Networking/Admin
14 Source0: http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/1.12/%{name}-%{version}.tar.xz
15 # Source0-md5: f728a42310c85b53386b172b15d7fc20
17 Source3: %{name}.tmpfiles
19 Patch0: ifcfg-path.patch
20 Patch1: %{name}-sh.patch
21 Patch2: systemd-fallback.patch
22 Patch3: accept_non_null_device.patch
23 URL: https://wiki.gnome.org/Projects/NetworkManager
24 BuildRequires: ModemManager-devel >= 1.0.0
25 BuildRequires: audit-libs-devel
26 BuildRequires: autoconf >= 2.63
27 BuildRequires: automake >= 1:1.12
28 BuildRequires: bluez-libs-devel >= 5.0
29 BuildRequires: curl-devel >= 7.24.0
30 BuildRequires: dbus-devel >= 1.1.0
31 BuildRequires: dbus-glib-devel >= 0.100
32 BuildRequires: gettext-tools >= 0.17
33 BuildRequires: glib2-devel >= 1:2.38.0
34 BuildRequires: gnome-common
35 BuildRequires: gobject-introspection-devel >= 0.10.0
36 BuildRequires: gtk-doc >= 1.0
37 BuildRequires: gtk-doc-automake >= 1.0
38 BuildRequires: intltool >= 0.40.0
39 BuildRequires: jansson-devel
40 BuildRequires: libndp-devel
41 BuildRequires: libnl-devel >= 3.2.8
42 BuildRequires: libpsl-devel >= 0.1
43 BuildRequires: libselinux-devel
44 BuildRequires: libteamdctl-devel >= 1.9
45 BuildRequires: libtool >= 2:2.2
46 BuildRequires: libuuid-devel
47 BuildRequires: libxslt-progs
48 BuildRequires: newt-devel >= 0.52.15
49 BuildRequires: nss-devel >= 3.11
50 BuildRequires: perl-base
51 BuildRequires: pkgconfig
52 BuildRequires: polkit-devel >= 0.97
53 BuildRequires: ppp-plugin-devel >= 3:2.4.6
54 BuildRequires: python-pygobject3
55 BuildRequires: readline-devel
56 BuildRequires: rpmbuild(macros) >= 1.673
57 BuildRequires: sed >= 4.0
58 %{?with_systemd:BuildRequires: systemd-devel >= 1:209}
59 BuildRequires: tar >= 1:1.22
60 BuildRequires: udev-devel >= 1:175
61 %{?with_vala:BuildRequires: vala >= 2:0.17.1.24}
63 Requires(post,preun): /sbin/chkconfig
64 Requires(post,preun,postun): systemd-units >= 38
65 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
67 Suggests: ConsoleKit-x11
69 Requires: ConsoleKit-x11
71 Requires: curl-libs >= 7.24.0
73 Requires: filesystem >= 3.0-37
74 Requires: libnl >= 3.2.8
75 Requires: libpsl >= 0.1
76 Requires: libteamdctl >= 1.9
77 Requires: newt >= 0.52.15
78 Requires: polkit >= 0.97
79 Requires: rc-scripts >= 0.4.3.0
80 Requires: systemd-units >= 38
81 Requires: wpa_supplicant >= 0.7.3-4
82 Suggests: ModemManager >= 1.0.0
83 Suggests: mobile-broadband-provider-info
85 Suggests: teamd >= 1.9
86 Obsoletes: NetworkManager-systemd
87 Obsoletes: dhcdbd < 3.0-1
88 # sr@Latn vs. sr@latin
89 Conflicts: glibc-misc < 6:2.7
90 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
92 %define plugindir %{_libdir}/NetworkManager
93 %define distplugindir %{plugindir}/%{version}-%{release}
96 Network Manager for GNOME.
98 %description -l pl.UTF-8
99 Zarządca sieci dla GNOME.
102 Summary: libnm-glib library API documentation
103 Summary(pl.UTF-8): Dokumentacja API biblioteki libnm-glib
105 Requires: gtk-doc-common
106 %if "%{_rpmversion}" >= "5"
111 libnm-glib library API documentation.
113 %description apidocs -l pl.UTF-8
114 Dokumentacja API biblioteki libnm-glib.
117 Summary: Network Manager shared libraries
118 Summary(pl.UTF-8): Biblioteki dzielone Network Managera
120 Requires: dbus-glib >= 0.100
121 Requires: glib2 >= 1:2.38.0
122 Requires: nss >= 3.11
123 Requires: udev-libs >= 1:175
124 Conflicts: NetworkManager < 0.6.4-0.2
127 Network Manager shared libraries.
129 %description libs -l pl.UTF-8
130 Biblioteki dzielone Network Managera.
133 Summary: Network Manager includes and more
134 Summary(pl.UTF-8): Pliki nagłówkowe Network Managera
135 Group: Development/Libraries
136 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
137 Requires: dbus-glib-devel >= 0.100
138 Requires: glib2-devel >= 1:2.38.0
139 Requires: libuuid-devel
140 Requires: nss-devel >= 3.11
143 Network Manager includes and more.
145 %description devel -l pl.UTF-8
146 Pliki nagłówkowe Network Manager.
149 Summary: Network Manager static libraries
150 Summary(pl.UTF-8): Statyczne biblioteki Network Managera
151 Group: Development/Libraries
152 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
155 Network Manager static libraries.
157 %description static -l pl.UTF-8
158 Statyczne biblioteki Network Managera.
160 %package -n vala-NetworkManager
161 Summary: Vala API for NetworkManager libraries
162 Summary(pl.UTF-8): API języka Vala do bibliotek NetworkManagera
163 Group: Development/Libraries
164 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
165 Requires: vala >= 2:0.17.1.24
166 %if "%{_rpmversion}" >= "5"
170 %description -n vala-NetworkManager
171 Vala API for NetworkManager libraries.
173 %description -n vala-NetworkManager -l pl.UTF-8
174 API języka Vala do bibliotek NetworkManagera.
176 %package -n bash-completion-NetworkManager
177 Summary: Bash completion for NetworkManager command (nmcli)
178 Summary(pl.UTF-8): Bashowe uzupełnianie nazw dla polecenia NetworkManagera (nmcli)
179 Group: Applications/Shells
180 Requires: %{name} = %{epoch}:%{version}-%{release}
181 Requires: bash-completion >= 2.0
182 %if "%{_rpmversion}" >= "5"
186 %description -n bash-completion-NetworkManager
187 Bash completion for NetworkManager command (nmcli).
189 %description -n bash-completion-NetworkManager -l pl.UTF-8
190 Bashowe uzupełnianie nazw dla polecenia NetworkManagera (nmcli).
196 %{?with_systemd:%patch2 -p1}
210 --enable-more-warnings \
211 --disable-silent-rules \
213 %{!?with_vala:--disable-vala} \
214 --with-dhclient=/sbin/dhclient \
215 --with-dhcpcd=/sbin/dhcpcd \
216 --with-html-dir=%{_gtkdocdir} \
217 --with-iptables=/usr/sbin/iptables \
220 --with-system-ca-path=/etc/certs \
221 --with-systemdsystemunitdir=%{systemdunitdir} \
222 --with-session-tracking=%{?with_systemd:systemd}%{!?with_systemd:ck} \
223 --with-suspend-resume=%{?with_systemd:systemd}%{!?with_systemd:upower} \
224 --with-pppd=/usr/sbin/pppd \
225 --with-pppd-plugin-dir=%{_libdir}/pppd/plugins \
226 --with-pppoe=/usr/sbin/pppoe \
227 --with-resolvconf=/sbin/resolvconf \
228 --with-udev-dir=/lib/udev \
229 --with-dist-version=%{version}-%{release}
234 rm -rf $RPM_BUILD_ROOT
235 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/var/run/%{name},%{systemdtmpfilesdir}} \
236 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{VPN,conf.d,dispatcher.d,dnsmasq.d,dnsmasq-shared.d,system-connections} \
237 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/dispatcher.d/{pre-down.d,pre-up.d,no-wait.d} \
238 $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/{VPN,conf.d}
241 DESTDIR=$RPM_BUILD_ROOT
243 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
245 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
247 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
250 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
251 %{__rm} $RPM_BUILD_ROOT%{distplugindir}/*.{a,la}
252 %{__rm} $RPM_BUILD_ROOT%{_libdir}/pppd/plugins/*.{a,la}
257 %{__make} clean-checkPROGRAMS
259 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
260 cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
263 rm -rf $RPM_BUILD_ROOT
266 /sbin/chkconfig --add NetworkManager
267 %service -n NetworkManager restart "NetworkManager daemon"
268 %systemd_post NetworkManager.service NetworkManager-wait-online.service
271 if [ "$1" = "0" ]; then
272 %service NetworkManager stop
273 /sbin/chkconfig --del NetworkManager
275 %systemd_preun NetworkManager.service NetworkManager-wait-online.service
280 %triggerpostun -- NetworkManager < 2:0.9.2.0-5
281 %systemd_trigger NetworkManager.service NetworkManager-wait-online.service
283 %triggerun -- NetworkManager < 0.7.0-0.svn4027.1
284 %service -q NetworkManagerDispatcher stop
285 /sbin/chkconfig --del NetworkManagerDispatcher
287 %triggerun -- NetworkManager < 0.8.9997-5
288 # move network interfaces description files to new location
289 mv -f /etc/sysconfig/network-scripts/ifcfg-* /etc/sysconfig/interfaces
290 mv -f /etc/sysconfig/network-scripts/keys-* /etc/sysconfig/interfaces
293 %post libs -p /sbin/ldconfig
294 %postun libs -p /sbin/ldconfig
296 %files -f %{name}.lang
297 %defattr(644,root,root,755)
298 %doc AUTHORS ChangeLog NEWS README TODO
299 %attr(755,root,root) %{_bindir}/nm-online
300 %attr(755,root,root) %{_bindir}/nmcli
301 %attr(755,root,root) %{_bindir}/nmtui
302 %attr(755,root,root) %{_bindir}/nmtui-connect
303 %attr(755,root,root) %{_bindir}/nmtui-edit
304 %attr(755,root,root) %{_bindir}/nmtui-hostname
305 %attr(755,root,root) %{_sbindir}/NetworkManager
307 %dir %{distplugindir}
308 %attr(755,root,root) %{distplugindir}/libnm-device-plugin-adsl.so
309 %attr(755,root,root) %{distplugindir}/libnm-device-plugin-bluetooth.so
310 %attr(755,root,root) %{distplugindir}/libnm-device-plugin-ovs.so
311 %attr(755,root,root) %{distplugindir}/libnm-device-plugin-wifi.so
312 %attr(755,root,root) %{distplugindir}/libnm-device-plugin-wwan.so
313 %attr(755,root,root) %{distplugindir}/libnm-device-plugin-team.so
314 %attr(755,root,root) %{distplugindir}/libnm-ppp-plugin.so
315 %attr(755,root,root) %{distplugindir}/libnm-settings-plugin-ibft.so
316 %attr(755,root,root) %{distplugindir}/libnm-settings-plugin-ifcfg-rh.so
317 %attr(755,root,root) %{distplugindir}/libnm-wwan.so
318 %attr(755,root,root) %{_libexecdir}/nm-dhcp-helper
319 %attr(755,root,root) %{_libexecdir}/nm-dispatcher
320 %attr(755,root,root) %{_libexecdir}/nm-iface-helper
321 %attr(755,root,root) %{_libexecdir}/nm-ifdown
322 %attr(755,root,root) %{_libexecdir}/nm-ifup
323 %attr(755,root,root) %{_libdir}/pppd/plugins/nm-pppd-plugin.so
324 %attr(754,root,root) /etc/rc.d/init.d/NetworkManager
325 %if "%{_lib}" != "lib"
326 %dir %{_prefix}/lib/NetworkManager
328 %dir %{_prefix}/lib/NetworkManager/VPN
329 %dir %{_prefix}/lib/NetworkManager/conf.d
330 %{systemdunitdir}/NetworkManager.service
331 %{systemdunitdir}/NetworkManager-dispatcher.service
332 %{systemdunitdir}/NetworkManager-wait-online.service
333 %dir %{systemdunitdir}/NetworkManager.service.d
334 %{systemdunitdir}/NetworkManager.service.d/NetworkManager-ovs.conf
335 %{_datadir}/dbus-1/system-services/org.freedesktop.NetworkManager.service
336 %{systemdtmpfilesdir}/%{name}.conf
337 %{_datadir}/dbus-1/system-services/org.freedesktop.nm_dispatcher.service
338 %{_datadir}/polkit-1/actions/org.freedesktop.NetworkManager.policy
339 /lib/udev/rules.d/84-nm-drivers.rules
340 /lib/udev/rules.d/85-nm-unmanaged.rules
341 /lib/udev/rules.d/90-nm-thunderbolt.rules
342 %dir %{_sysconfdir}/%{name}/VPN
343 %dir %{_sysconfdir}/%{name}/conf.d
344 %dir %{_sysconfdir}/%{name}/dispatcher.d
345 %dir %{_sysconfdir}/%{name}/dispatcher.d/pre-down.d
346 %dir %{_sysconfdir}/%{name}/dispatcher.d/pre-up.d
347 %dir %{_sysconfdir}/%{name}/dispatcher.d/no-wait.d
348 %dir %{_sysconfdir}/%{name}/dnsmasq.d
349 %dir %{_sysconfdir}/%{name}/dnsmasq-shared.d
350 %dir %{_sysconfdir}/%{name}/system-connections
351 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.conf
352 %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-dispatcher.conf
353 %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-ifcfg-rh.conf
354 %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf
355 %attr(711,root,root) %dir /var/run/%{name}
356 %attr(700,root,root) %dir /var/lib/%{name}
357 %{_mandir}/man1/nm-online.1*
358 %{_mandir}/man1/nmcli.1*
359 %{_mandir}/man1/nmtui-connect.1*
360 %{_mandir}/man1/nmtui-edit.1*
361 %{_mandir}/man1/nmtui-hostname.1*
362 %{_mandir}/man1/nmtui.1*
363 %{_mandir}/man5/NetworkManager.conf.5*
364 %{_mandir}/man5/nm-settings-ifcfg-rh.5*
365 %{_mandir}/man5/nm-settings-keyfile.5*
366 %{_mandir}/man5/nm-settings.5*
367 %{_mandir}/man5/nm-system-settings.conf.5*
368 %{_mandir}/man7/nm-openvswitch.7*
369 %{_mandir}/man7/nmcli-examples.7*
370 %{_mandir}/man8/NetworkManager.8*
371 %{_examplesdir}/%{name}-%{version}
374 %defattr(644,root,root,755)
375 %{_gtkdocdir}/NetworkManager
377 %{_gtkdocdir}/libnm-glib
378 %{_gtkdocdir}/libnm-util
381 %defattr(644,root,root,755)
382 %attr(755,root,root) %{_libdir}/libnm.so.*.*.*
383 %attr(755,root,root) %ghost %{_libdir}/libnm.so.0
384 %attr(755,root,root) %{_libdir}/libnm-util.so.*.*.*
385 %attr(755,root,root) %ghost %{_libdir}/libnm-util.so.2
386 %attr(755,root,root) %{_libdir}/libnm-glib.so.*.*.*
387 %attr(755,root,root) %ghost %{_libdir}/libnm-glib.so.4
388 %attr(755,root,root) %{_libdir}/libnm-glib-vpn.so.*.*.*
389 %attr(755,root,root) %ghost %{_libdir}/libnm-glib-vpn.so.1
390 %{_libdir}/girepository-1.0/NM-1.0.typelib
391 %{_libdir}/girepository-1.0/NMClient-1.0.typelib
392 %{_libdir}/girepository-1.0/NetworkManager-1.0.typelib
395 %defattr(644,root,root,755)
396 %attr(755,root,root) %{_libdir}/libnm.so
397 %attr(755,root,root) %{_libdir}/libnm-util.so
398 %attr(755,root,root) %{_libdir}/libnm-glib.so
399 %attr(755,root,root) %{_libdir}/libnm-glib-vpn.so
400 %{_includedir}/NetworkManager
402 %{_includedir}/libnm-glib
403 %{_pkgconfigdir}/NetworkManager.pc
404 %{_pkgconfigdir}/libnm.pc
405 %{_pkgconfigdir}/libnm-util.pc
406 %{_pkgconfigdir}/libnm-glib-vpn.pc
407 %{_pkgconfigdir}/libnm-glib.pc
408 %{_datadir}/dbus-1/interfaces/org.freedesktop.NetworkManager.xml
409 %{_datadir}/dbus-1/interfaces/org.freedesktop.NetworkManager.*.xml
410 %{_datadir}/gir-1.0/NM-1.0.gir
411 %{_datadir}/gir-1.0/NMClient-1.0.gir
412 %{_datadir}/gir-1.0/NetworkManager-1.0.gir
415 %defattr(644,root,root,755)
417 %{_libdir}/libnm-util.a
418 %{_libdir}/libnm-glib.a
419 %{_libdir}/libnm-glib-vpn.a
422 %files -n vala-NetworkManager
423 %defattr(644,root,root,755)
424 %{_datadir}/vala/vapi/libnm.deps
425 %{_datadir}/vala/vapi/libnm.vapi
426 %{_datadir}/vala/vapi/libnm-glib.deps
427 %{_datadir}/vala/vapi/libnm-glib.vapi
428 %{_datadir}/vala/vapi/libnm-util.deps
429 %{_datadir}/vala/vapi/libnm-util.vapi
432 %files -n bash-completion-NetworkManager
433 %defattr(644,root,root,755)
434 %{bash_compdir}/nmcli