summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2014-07-30 09:35:02 -0500
committerDan Williams <dcbw@redhat.com>2014-07-30 09:35:02 -0500
commit25dac5760b66794a8bfc559fa84a9db2c53b9eef (patch)
treefc133a074f95ef994b2863f79e88216efb4f6638 /contrib
parent9060e1ab1aab1ebfef8f8ff07ad3de809a8b0483 (diff)
downloadNetworkManager-25dac5760b66794a8bfc559fa84a9db2c53b9eef.tar.gz
contrib/rpm: fix up sub-package dependencies
There are three fixes: 1) the config packages shouldn't require the main NetworkManager package. We explicitly make NetworkManager-glib not depend on NM itself to ensure that clients can link to it (and thus have an RPM dependency on -glib) without pulling in NetworkManager itself. The same should hold true for the config packages, since consumers of NetworkManager may want to pull them in, but not necessarily pull NetworkManager in. For example, GNOME Shell wants to make use of NetworkManager's connectivity detection *if NM is available*, and this requires pulling in NM-config-connectivity-fedora, but that shouldn't pull in NetworkManager itself. Similarly, we had a problem with RHEL7 making sure that NM-config-server was installed by default on Server variants but not on other variants; removing the dependency from the -config subpackage was the cleanest way to fix that. Furthermore, nothing in the config sub-packages actually requires NetworkManager anyway since they are simply config files. 2) nmtui doesn't care what architecture the running NM is since it communicates solely over D-Bus. So skip the %{?_isa}, just like we do for other clients (nm-applet, GNOME Shell, etc) 3) Requiring NetworkManager.%{?_isa} from the -devel package has problems with multilib (see rh #1112367). This is an issue if you install a 32-bit development environment and try to build something that uses NetworkManager. Since the -devel package requires the main package, you can end up either having *both* NetworkManager.i686 and NetworkManager.x86_64 installed, or you end up having NetworkManager.i686 replace NetworkManager.x86_64. Neither one is good. So remove the %{?_isa} bit.
Diffstat (limited to 'contrib')
-rw-r--r--contrib/fedora/rpm/NetworkManager.spec6
1 files changed, 2 insertions, 4 deletions
diff --git a/contrib/fedora/rpm/NetworkManager.spec b/contrib/fedora/rpm/NetworkManager.spec
index 24903d786e..f4aee9ff67 100644
--- a/contrib/fedora/rpm/NetworkManager.spec
+++ b/contrib/fedora/rpm/NetworkManager.spec
@@ -258,7 +258,7 @@ devices.
%package devel
Summary: Libraries and headers for adding NetworkManager support to applications
Group: Development/Libraries
-Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: dbus-devel >= %{dbus_version}
Requires: dbus-glib >= %{dbus_glib_version}
Requires: pkgconfig
@@ -295,7 +295,6 @@ NetworkManager functionality from applications that use glib.
%package config-connectivity-fedora
Summary: NetworkManager config file for connectivity checking via Fedora servers
Group: System Environment/Base
-Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
%description config-connectivity-fedora
This adds a NetworkManager configuration file to enable connectivity checking
@@ -304,7 +303,6 @@ via Fedora infrastructure.
%package config-server
Summary: NetworkManager config file for "server-like" defaults
Group: System Environment/Base
-Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
%description config-server
This adds a NetworkManager configuration file to make it behave more
@@ -320,7 +318,7 @@ deployments.
%package tui
Summary: NetworkManager curses-based UI
Group: System Environment/Base
-Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: %{name}-glib%{?_isa} = %{epoch}:%{version}-%{release}
%description tui