3 %bcond_without systemd # use systemd for session tracking instead of ConsoleKit (fallback to ConsoleKit on runtime)
4 %bcond_without vala # Vala API
5 %bcond_with wimax # enable wimax support
7 Summary: Network Manager for GNOME
8 Summary(pl.UTF-8): Zarządca sieci dla GNOME
14 Group: Networking/Admin
15 Source0: http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/1.0/%{name}-%{version}.tar.xz
16 # Source0-md5: a8f54460a4708efd840358f32d0968fd
18 Source3: %{name}.tmpfiles
20 Patch0: ifcfg-path.patch
21 Patch1: systemd-fallback.patch
22 Patch2: %{name}-openvpn.patch
23 URL: https://wiki.gnome.org/Projects/NetworkManager
24 BuildRequires: ModemManager-devel >= 1.0.0
25 BuildRequires: autoconf >= 2.63
26 BuildRequires: automake >= 1:1.11
27 BuildRequires: bluez-libs-devel >= 5.0
28 BuildRequires: dbus-devel >= 1.1.0
29 BuildRequires: dbus-glib-devel >= 0.100
30 BuildRequires: docbook-dtd412-xml
31 BuildRequires: gettext-tools >= 0.17
32 BuildRequires: glib2-devel >= 1:2.37.2
33 BuildRequires: gnome-common
34 BuildRequires: gobject-introspection-devel >= 0.10.0
35 BuildRequires: gtk-doc >= 1.0
36 BuildRequires: gtk-doc-automake >= 1.0
37 BuildRequires: intltool >= 0.40.0
38 BuildRequires: libndp-devel
39 BuildRequires: libnl-devel >= 3.2.8
40 BuildRequires: libselinux-devel
41 BuildRequires: libsoup-devel >= 2.26.0
42 BuildRequires: libteam-devel >= 1.9
43 BuildRequires: libtool >= 2:2.2
44 BuildRequires: libuuid-devel
45 BuildRequires: newt-devel >= 0.52.15
46 BuildRequires: nss-devel >= 3.11
47 BuildRequires: pkgconfig
48 BuildRequires: polkit-devel >= 0.97
49 BuildRequires: ppp-plugin-devel >= 3:2.4.6
50 BuildRequires: rpm-pythonprov
51 BuildRequires: rpmbuild(macros) >= 1.673
52 BuildRequires: sed >= 4.0
53 %{?with_systemd:BuildRequires: systemd-devel >= 1:200}
54 BuildRequires: tar >= 1:1.22
55 BuildRequires: udev-devel
56 BuildRequires: udev-glib-devel >= 1:165
57 %{?with_vala:BuildRequires: vala >= 2:0.17.1.24}
58 %{?with_wimax:BuildRequires: wimax-devel >= 1.5.1}
60 Requires(post,preun): /sbin/chkconfig
61 Requires(post,preun,postun): systemd-units >= 38
62 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
64 Suggests: ConsoleKit-x11
66 Requires: ConsoleKit-x11
69 Requires: filesystem >= 3.0-37
70 Requires: libnl >= 3.2.8
71 Requires: libsoup >= 2.26.0
72 Requires: libteam >= 1.9
73 Requires: polkit >= 0.97
74 Requires: rc-scripts >= 0.4.3.0
75 Requires: systemd-units >= 38
76 Requires: wpa_supplicant >= 0.7.3-4
77 Suggests: ModemManager >= 1.0.0
78 Suggests: mobile-broadband-provider-info
80 Obsoletes: NetworkManager-systemd
81 Obsoletes: dhcdbd < 3.0-1
82 # sr@Latn vs. sr@latin
83 Conflicts: glibc-misc < 6:2.7
84 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
86 %define _libexecdir %{_libdir}/%{name}
89 Network Manager for GNOME.
91 %description -l pl.UTF-8
92 Zarządca sieci dla GNOME.
95 Summary: libnm-glib library API documentation
96 Summary(pl.UTF-8): Dokumentacja API biblioteki libnm-glib
98 Requires: gtk-doc-common
99 %if "%{_rpmversion}" >= "5"
104 libnm-glib library API documentation.
106 %description apidocs -l pl.UTF-8
107 Dokumentacja API biblioteki libnm-glib.
110 Summary: Network Manager shared libraries
111 Summary(pl.UTF-8): Biblioteki dzielone Network Managera
113 Requires: dbus-glib >= 0.100
114 Requires: glib2 >= 1:2.37.2
115 Requires: nss >= 3.11
116 Requires: udev-glib >= 1:165
117 Conflicts: NetworkManager < 0.6.4-0.2
120 Network Manager shared libraries.
122 %description libs -l pl.UTF-8
123 Biblioteki dzielone Network Managera.
126 Summary: Network Manager includes and more
127 Summary(pl.UTF-8): Pliki nagłówkowe Network Managera
128 Group: Development/Libraries
129 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
130 Requires: dbus-glib-devel >= 0.100
131 Requires: glib2-devel >= 1:2.37.2
132 Requires: libuuid-devel
133 Requires: nss-devel >= 3.11
134 Requires: udev-glib-devel >= 1:165
137 Network Manager includes and more.
139 %description devel -l pl.UTF-8
140 Pliki nagłówkowe Network Manager.
143 Summary: Network Manager static libraries
144 Summary(pl.UTF-8): Statyczne biblioteki Network Managera
145 Group: Development/Libraries
146 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
149 Network Manager static libraries.
151 %description static -l pl.UTF-8
152 Statyczne biblioteki Network Managera.
154 %package -n vala-NetworkManager
155 Summary: Vala API for NetworkManager libraries
156 Summary(pl.UTF-8): API języka Vala do bibliotek NetworkManagera
157 Group: Development/Libraries
158 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
159 Requires: vala >= 2:0.17.1.24
160 %if "%{_rpmversion}" >= "5"
164 %description -n vala-NetworkManager
165 Vala API for NetworkManager libraries.
167 %description -n vala-NetworkManager -l pl.UTF-8
168 API języka Vala do bibliotek NetworkManagera.
170 %package -n bash-completion-NetworkManager
171 Summary: Bash completion for NetworkManager command (nmcli)
172 Summary(pl.UTF-8): Bashowe uzupełnianie nazw dla polecenia NetworkManagera (nmcli)
173 Group: Applications/Shells
174 Requires: %{name} = %{epoch}:%{version}-%{release}
175 Requires: bash-completion >= 2.0
176 %if "%{_rpmversion}" >= "5"
180 %description -n bash-completion-NetworkManager
181 Bash completion for NetworkManager command (nmcli).
183 %description -n bash-completion-NetworkManager -l pl.UTF-8
184 Bashowe uzupełnianie nazw dla polecenia NetworkManagera (nmcli).
189 %{?with_systemd:%patch1 -p1}
201 --disable-silent-rules \
202 --with-html-dir=%{_gtkdocdir} \
204 --enable-more-warnings=yes \
205 --with-dhclient=/sbin/dhclient \
206 --with-dhcpcd=/sbin/dhcpcd \
207 --with-iptables=/usr/sbin/iptables \
208 --with-system-ca-path=/etc/certs \
209 --with-systemdsystemunitdir=%{systemdunitdir} \
210 --with-session-tracking=%{?with_systemd:systemd}%{!?with_systemd:ck} \
211 --with-suspend-resume=%{?with_systemd:systemd}%{!?with_systemd:upower} \
212 --with-pppd=/usr/sbin/pppd \
213 --with-pppd-plugin-dir=%{_libdir}/pppd/plugins \
214 --with-pppoe=/usr/sbin/pppoe \
215 --with-resolvconf=/sbin/resolvconf \
216 --with-dist-version=%{version}-%{release} \
218 %{__enable_disable wimax} \
220 %{!?with_vala:--disable-vala}
225 rm -rf $RPM_BUILD_ROOT
226 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/var/run/%{name},%{systemdtmpfilesdir}} \
227 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{VPN,dispatcher.d,system-connections}
230 DESTDIR=$RPM_BUILD_ROOT
232 install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
234 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
236 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
239 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
240 %{__rm} $RPM_BUILD_ROOT%{_libdir}/NetworkManager/*.{a,la}
241 %{__rm} $RPM_BUILD_ROOT%{_libdir}/pppd/plugins/*.{a,la}
246 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
247 cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
249 top_builddir=$(pwd) \
250 -C $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
251 find $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} -name 'Makefile*' | xargs rm
254 rm -rf $RPM_BUILD_ROOT
257 /sbin/chkconfig --add NetworkManager
258 %service -n NetworkManager restart "NetworkManager daemon"
259 %systemd_post NetworkManager.service NetworkManager-wait-online.service
262 if [ "$1" = "0" ]; then
263 %service NetworkManager stop
264 /sbin/chkconfig --del NetworkManager
266 %systemd_preun NetworkManager.service NetworkManager-wait-online.service
271 %triggerpostun -- NetworkManager < 2:0.9.2.0-5
272 %systemd_trigger NetworkManager.service NetworkManager-wait-online.service
274 %triggerun -- NetworkManager < 0.7.0-0.svn4027.1
275 %service -q NetworkManagerDispatcher stop
276 /sbin/chkconfig --del NetworkManagerDispatcher
278 %triggerun -- NetworkManager < 0.8.9997-5
279 # move network interfaces description files to new location
280 mv -f /etc/sysconfig/network-scripts/ifcfg-* /etc/sysconfig/interfaces
281 mv -f /etc/sysconfig/network-scripts/keys-* /etc/sysconfig/interfaces
284 %post libs -p /sbin/ldconfig
285 %postun libs -p /sbin/ldconfig
287 %files -f %{name}.lang
288 %defattr(644,root,root,755)
289 %doc AUTHORS ChangeLog NEWS README TODO
290 %attr(755,root,root) %{_bindir}/nm-online
291 %attr(755,root,root) %{_bindir}/nmcli
292 %attr(755,root,root) %{_bindir}/nmtui
293 %attr(755,root,root) %{_bindir}/nmtui-connect
294 %attr(755,root,root) %{_bindir}/nmtui-edit
295 %attr(755,root,root) %{_bindir}/nmtui-hostname
296 %attr(755,root,root) %{_sbindir}/NetworkManager
297 %dir %{_libdir}/NetworkManager
298 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-device-plugin-adsl.so
299 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-device-plugin-bluetooth.so
300 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-device-plugin-wifi.so
301 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-device-plugin-wwan.so
302 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-device-plugin-team.so
303 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-settings-plugin-ibft.so
304 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-settings-plugin-ifcfg-rh.so
305 %attr(755,root,root) %{_libdir}/NetworkManager/libnm-wwan.so
306 %attr(755,root,root) %{_libexecdir}/nm-avahi-autoipd.action
307 %attr(755,root,root) %{_libexecdir}/nm-dhcp-helper
308 %attr(755,root,root) %{_libexecdir}/nm-dispatcher
309 %attr(755,root,root) %{_libexecdir}/nm-iface-helper
310 %attr(755,root,root) %{_libdir}/pppd/plugins/nm-pppd-plugin.so
311 %attr(754,root,root) /etc/rc.d/init.d/NetworkManager
312 %{systemdunitdir}/NetworkManager.service
313 %{systemdunitdir}/NetworkManager-dispatcher.service
314 %{systemdunitdir}/NetworkManager-wait-online.service
315 # XXX: dir here or add to systemd-units?
316 %dir %{systemdunitdir}/network-online.target.wants
317 %{systemdunitdir}/network-online.target.wants/NetworkManager-wait-online.service
318 %{_datadir}/dbus-1/system-services/org.freedesktop.NetworkManager.service
319 %{systemdtmpfilesdir}/%{name}.conf
320 %{_datadir}/dbus-1/system-services/org.freedesktop.nm_dispatcher.service
321 %{_datadir}/polkit-1/actions/org.freedesktop.NetworkManager.policy
322 /lib/udev/rules.d/84-nm-drivers.rules
323 /lib/udev/rules.d/85-nm-unmanaged.rules
324 %dir %{_sysconfdir}/%{name}/VPN
325 %dir %{_sysconfdir}/%{name}/system-connections
326 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.conf
327 %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-avahi-autoipd.conf
328 %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-dispatcher.conf
329 %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-ifcfg-rh.conf
330 %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf
331 %attr(700,root,root) %dir /var/run/%{name}
332 %attr(700,root,root) %dir /var/lib/%{name}
333 %{_mandir}/man1/nm-online.1*
334 %{_mandir}/man1/nmcli.1*
335 %{_mandir}/man1/nmtui-connect.1*
336 %{_mandir}/man1/nmtui-edit.1*
337 %{_mandir}/man1/nmtui-hostname.1*
338 %{_mandir}/man1/nmtui.1*
339 %{_mandir}/man5/NetworkManager.conf.5*
340 %{_mandir}/man5/nm-settings-ifcfg-rh.5*
341 %{_mandir}/man5/nm-settings-keyfile.5*
342 %{_mandir}/man5/nm-settings.5*
343 %{_mandir}/man5/nm-system-settings.conf.5*
344 %{_mandir}/man5/nmcli-examples.5*
345 %{_mandir}/man8/NetworkManager.8*
346 %{_examplesdir}/%{name}-%{version}
349 %defattr(644,root,root,755)
350 %{_gtkdocdir}/NetworkManager
352 %{_gtkdocdir}/libnm-glib
353 %{_gtkdocdir}/libnm-util
356 %defattr(644,root,root,755)
357 %attr(755,root,root) %{_libdir}/libnm.so.*.*.*
358 %attr(755,root,root) %ghost %{_libdir}/libnm.so.0
359 %attr(755,root,root) %{_libdir}/libnm-util.so.*.*.*
360 %attr(755,root,root) %ghost %{_libdir}/libnm-util.so.2
361 %attr(755,root,root) %{_libdir}/libnm-glib.so.*.*.*
362 %attr(755,root,root) %ghost %{_libdir}/libnm-glib.so.4
363 %attr(755,root,root) %{_libdir}/libnm-glib-vpn.so.*.*.*
364 %attr(755,root,root) %ghost %{_libdir}/libnm-glib-vpn.so.1
365 %{_libdir}/girepository-1.0/NM-1.0.typelib
366 %{_libdir}/girepository-1.0/NMClient-1.0.typelib
367 %{_libdir}/girepository-1.0/NetworkManager-1.0.typelib
370 %defattr(644,root,root,755)
371 %attr(755,root,root) %{_libdir}/libnm.so
372 %attr(755,root,root) %{_libdir}/libnm-util.so
373 %attr(755,root,root) %{_libdir}/libnm-glib.so
374 %attr(755,root,root) %{_libdir}/libnm-glib-vpn.so
375 %{_includedir}/NetworkManager
377 %{_includedir}/libnm-glib
378 %{_pkgconfigdir}/NetworkManager.pc
379 %{_pkgconfigdir}/libnm.pc
380 %{_pkgconfigdir}/libnm-util.pc
381 %{_pkgconfigdir}/libnm-glib-vpn.pc
382 %{_pkgconfigdir}/libnm-glib.pc
383 %{_datadir}/gir-1.0/NM-1.0.gir
384 %{_datadir}/gir-1.0/NMClient-1.0.gir
385 %{_datadir}/gir-1.0/NetworkManager-1.0.gir
388 %defattr(644,root,root,755)
390 %{_libdir}/libnm-util.a
391 %{_libdir}/libnm-glib.a
392 %{_libdir}/libnm-glib-vpn.a
395 %files -n vala-NetworkManager
396 %defattr(644,root,root,755)
397 %{_datadir}/vala/vapi/libnm-glib.deps
398 %{_datadir}/vala/vapi/libnm-glib.vapi
399 %{_datadir}/vala/vapi/libnm-util.deps
400 %{_datadir}/vala/vapi/libnm-util.vapi
403 %files -n bash-completion-NetworkManager
404 %defattr(644,root,root,755)
405 %{bash_compdir}/nmcli