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.
This commit is contained in:
@@ -258,7 +258,7 @@ devices.
|
|||||||
%package devel
|
%package devel
|
||||||
Summary: Libraries and headers for adding NetworkManager support to applications
|
Summary: Libraries and headers for adding NetworkManager support to applications
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
|
Requires: %{name} = %{epoch}:%{version}-%{release}
|
||||||
Requires: dbus-devel >= %{dbus_version}
|
Requires: dbus-devel >= %{dbus_version}
|
||||||
Requires: dbus-glib >= %{dbus_glib_version}
|
Requires: dbus-glib >= %{dbus_glib_version}
|
||||||
Requires: pkgconfig
|
Requires: pkgconfig
|
||||||
@@ -295,7 +295,6 @@ NetworkManager functionality from applications that use glib.
|
|||||||
%package config-connectivity-fedora
|
%package config-connectivity-fedora
|
||||||
Summary: NetworkManager config file for connectivity checking via Fedora servers
|
Summary: NetworkManager config file for connectivity checking via Fedora servers
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
|
|
||||||
|
|
||||||
%description config-connectivity-fedora
|
%description config-connectivity-fedora
|
||||||
This adds a NetworkManager configuration file to enable connectivity checking
|
This adds a NetworkManager configuration file to enable connectivity checking
|
||||||
@@ -304,7 +303,6 @@ via Fedora infrastructure.
|
|||||||
%package config-server
|
%package config-server
|
||||||
Summary: NetworkManager config file for "server-like" defaults
|
Summary: NetworkManager config file for "server-like" defaults
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
|
|
||||||
|
|
||||||
%description config-server
|
%description config-server
|
||||||
This adds a NetworkManager configuration file to make it behave more
|
This adds a NetworkManager configuration file to make it behave more
|
||||||
@@ -320,7 +318,7 @@ deployments.
|
|||||||
%package tui
|
%package tui
|
||||||
Summary: NetworkManager curses-based UI
|
Summary: NetworkManager curses-based UI
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
|
Requires: %{name} = %{epoch}:%{version}-%{release}
|
||||||
Requires: %{name}-glib%{?_isa} = %{epoch}:%{version}-%{release}
|
Requires: %{name}-glib%{?_isa} = %{epoch}:%{version}-%{release}
|
||||||
|
|
||||||
%description tui
|
%description tui
|
||||||
|
Reference in New Issue
Block a user