-
+#
# Conditional build
+%bcond_without systemd # use systemd for session tracking instead of ConsoleKit (fallback to ConsoleKit on runtime)
%bcond_with wimax # enable wimax support
-
+#
%define ppp_version 2.4.5
Summary: Network Manager for GNOME
Summary(pl.UTF-8): Zarządca sieci dla GNOME
Name: NetworkManager
-Version: 0.8.9997
-Release: 4
+Version: 0.9.4.0
+Release: 2
+Epoch: 2
License: GPL v2+
Group: Networking/Admin
-#Source0: http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/0.8/%{name}-%{version}.tar.bz2
-# official NetworkManager with changes from f15 branch
-# (provides org.freedesktop.NetworkManagerCompat interface for KDE)
-Source0: %{name}-%{version}-compat.tar.bz2
-# Source0-md5: 7a7fab2336c24b5cafa371782674fc06
+Source0: http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/0.9/%{name}-%{version}.tar.xz
+# Source0-md5: 66a54b51a4998c484613911b72a7e6ff
Source1: %{name}.conf
Source2: %{name}.upstart
+Source3: %{name}.tmpfiles
Patch0: %{name}-pld.patch
Patch1: ifcfg-path.patch
+Patch2: systemd-fallback.patch
URL: http://projects.gnome.org/NetworkManager/
BuildRequires: autoconf >= 2.63
BuildRequires: automake >= 1:1.10
BuildRequires: gettext-devel >= 0.17
BuildRequires: glib2-devel >= 1:2.24.0
BuildRequires: gobject-introspection-devel >= 0.10.0
-BuildRequires: gtk-doc
+BuildRequires: gtk-doc >= 1.0
BuildRequires: gtk-doc-automake >= 1.0
BuildRequires: intltool >= 0.40.0
BuildRequires: libiw-devel >= 1:28-0.pre9.1
-BuildRequires: libnl1-devel >= 1.1
-BuildRequires: libtool >= 2.2
+BuildRequires: libnl-devel >= 3.0
+BuildRequires: libsoup-devel >= 2.26.0
+BuildRequires: libtool >= 2:2.2
BuildRequires: libuuid-devel
BuildRequires: nss-devel >= 3.11
BuildRequires: pkgconfig
-BuildRequires: polkit-devel
+BuildRequires: polkit-devel >= 0.97
BuildRequires: ppp-plugin-devel >= 3:%{ppp_version}
BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.450
+BuildRequires: rpmbuild(macros) >= 1.629
BuildRequires: sed >= 4.0
+%{?with_systemd:BuildRequires: systemd-devel}
+BuildRequires: tar >= 1:1.22
BuildRequires: udev-devel
-BuildRequires: udev-glib-devel >= 147
+BuildRequires: udev-glib-devel >= 1:147
%{?with_wimax:BuildRequires: wimax-devel >= 1.5.1}
+BuildRequires: xz
Requires(post,preun): /sbin/chkconfig
-Requires: %{name}-libs = %{version}-%{release}
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
Requires: ConsoleKit-x11
Requires: dhcp-client
Requires: filesystem >= 3.0-37
-Requires: polkit
+Requires: polkit >= 0.97
Requires: rc-scripts >= 0.4.3.0
+Requires: systemd-units >= 37-0.10
Requires: wpa_supplicant >= 0.7.3-4
Suggests: ModemManager
Suggests: mobile-broadband-provider-info
+Obsoletes: NetworkManager-systemd
Obsoletes: dhcdbd < 3.0-1
# sr@Latn vs. sr@latin
Conflicts: glibc-misc < 6:2.7
Group: Libraries
Requires: dbus-glib >= 0.75
Requires: glib2 >= 1:2.24.0
+Requires: nss >= 3.11
+Requires: udev-glib >= 1:147
Conflicts: NetworkManager < 0.6.4-0.2
%description libs
Summary: Network Manager includes and more
Summary(pl.UTF-8): Pliki nagłówkowe Network Managera
Group: Development/Libraries
-Requires: %{name}-libs = %{version}-%{release}
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
Requires: dbus-glib-devel >= 0.75
Requires: glib2-devel >= 1:2.24.0
Requires: libuuid-devel
-Requires: udev-glib-devel
+Requires: nss-devel >= 3.11
+Requires: udev-glib-devel >= 1:147
%description devel
Network Manager includes and more.
Summary: Network Manager static libraries
Summary(pl.UTF-8): Statyczne biblioteki Network Managera
Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
+Requires: %{name}-devel = %{epoch}:%{version}-%{release}
%description static
Network Manager static libraries.
%setup -q
%patch0 -p1
%patch1 -p1
+%{?with_systemd:%patch2 -p1}
%build
%{__gtkdocize}
--with-dhclient=/sbin/dhclient \
--with-iptables=/usr/sbin/iptables \
--with-system-ca-path=/etc/certs \
+ --with-systemdsystemunitdir=%{systemdunitdir} \
+ --with-session-tracking=%{?with_systemd:systemd}%{!?with_systemd:ck} \
--with-pppd-plugin-dir=%{_libdir}/pppd/%{ppp_version} \
--with-dist-version=%{version}-%{release} \
--with-docs \
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/var/run/%{name},%{_sysconfdir}/%{name}/{VPN,dispatcher.d,system-connections}}
+install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/var/run/%{name},%{systemdtmpfilesdir}} \
+ $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{VPN,dispatcher.d,system-connections}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/init
cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/init/NetworkManager.conf
+install %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
+
# Cleanup
%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
%{__rm} $RPM_BUILD_ROOT%{_libdir}/NetworkManager/*.{a,la}
%post
/sbin/chkconfig --add NetworkManager
%service -n NetworkManager restart "NetworkManager daemon"
+%systemd_post NetworkManager.service NetworkManager-wait-online.service
%preun
if [ "$1" = "0" ]; then
%service NetworkManager stop
/sbin/chkconfig --del NetworkManager
fi
+%systemd_preun NetworkManager.service NetworkManager-wait-online.service
+
+%postun
+%systemd_reload
+
+%triggerpostun -- NetworkManager < 2:0.9.2.0-5
+%systemd_trigger NetworkManager.service NetworkManager-wait-online.service
%triggerun -- NetworkManager < 0.7.0-0.svn4027.1
%service -q NetworkManagerDispatcher stop
/sbin/chkconfig --del NetworkManagerDispatcher
-%triggerun -- NetworkManager < 0.8.9997-4
+%triggerun -- NetworkManager < 0.8.9997-5
# move network interfaces description files to new location
mv -f /etc/sysconfig/network-scripts/ifcfg-* /etc/sysconfig/interfaces
+mv -f /etc/sysconfig/network-scripts/keys-* /etc/sysconfig/interfaces
+exit 0
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%attr(755,root,root) %{_libdir}/pppd/%{ppp_version}/nm-pppd-plugin.so
%attr(754,root,root) /etc/rc.d/init.d/NetworkManager
%config(noreplace) %verify(not md5 mtime size) /etc/init/NetworkManager.conf
+%{systemdunitdir}/NetworkManager.service
+%{systemdunitdir}/NetworkManager-wait-online.service
+%{_datadir}/dbus-1/system-services/org.freedesktop.NetworkManager.service
+%{systemdtmpfilesdir}/%{name}.conf
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/gdb-cmd
%{_datadir}/dbus-1/system-services/org.freedesktop.nm_dispatcher.service
%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-avahi-autoipd.conf
%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-dispatcher.conf
%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/nm-ifcfg-rh.conf
-%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/NetworkManager.conf
+%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf
%attr(700,root,root) %dir /var/run/%{name}
%attr(700,root,root) %dir /var/lib/%{name}
%{_mandir}/man1/nm-online.1*