[Freeipa-devel] [PATCH] 0220 move /bin/ipa to freeipa-client

Alexander Bokovoy abokovoy at redhat.com
Thu Aug 25 11:09:30 UTC 2016


On Thu, 25 Aug 2016, Jan Cholasta wrote:
>Hi,
>
>On 25.8.2016 11:27, Alexander Bokovoy wrote:
>>Hi,
>>
>>attached patch moves ipa CLI to freeipa-client and obsoletes
>>freeipa-admintools
>
>The Obsoletes (both) should be on version < 4.4.1 rather than 
>%{version}, as per Fedora packaging guidelines [1].
>
>Please move the Obsoletes and Provides on %{name}-admintools right 
>below Group (Obsoletes first) and put a newline between the 
>%{alt_name}-client and %{alt_name}-admintools blocks, for consistent 
>layout accross all subpackages in the spec file.
>
>>
>>Solves https://fedorahosted.org/freeipa/ticket/5934
>>
>>Here is how upgrade looks when running 'dnf':
>>
>>Upgrading:
>>freeipa-client                                 x86_64
>>4.4.0.201608250913GIT9c20682-0.fc24                        @commandline
>>146 k
>>    replacing  freeipa-admintools.noarch
>>4.4.0.201608051228GIT590e30f-0.fc24
>
>I'm going to test with yum as well, for RHEL and CentOS.
Updated patch attached.

-- 
/ Alexander Bokovoy
-------------- next part --------------
From 2256c872ec31223c8d1c3dcfbf715326ccd0b2b2 Mon Sep 17 00:00:00 2001
From: Alexander Bokovoy <abokovoy at redhat.com>
Date: Thu, 25 Aug 2016 11:59:34 +0300
Subject: [PATCH 2/2] freeipa.spec.in: move ipa CLI utility to freeipa-client

There is no notable package size cost, as all the libraries and
packages are already in the freeipa-client package and
freeipa-admintools only contained a short shim calling this code.

Move /bin/ipa to freeipa-client, along with a man page and bash
completion.

Resolves: https://fedorahosted.org/freeipa/ticket/5934
---
 freeipa.spec.in | 43 ++++++++++++-------------------------------
 1 file changed, 12 insertions(+), 31 deletions(-)

diff --git a/freeipa.spec.in b/freeipa.spec.in
index e3ad5b6..589060b 100644
--- a/freeipa.spec.in
+++ b/freeipa.spec.in
@@ -1,4 +1,4 @@
-# Define ONLY_CLIENT to only make the ipa-admintools, ipa-client and ipa-python
+# Define ONLY_CLIENT to only make the ipa-client and ipa-python
 # subpackages
 %{!?ONLY_CLIENT:%global ONLY_CLIENT 0}
 
@@ -135,7 +135,6 @@ Summary: The IPA authentication server
 Group: System Environment/Base
 Requires: %{name}-server-common = %{version}-%{release}
 Requires: %{name}-client = %{version}-%{release}
-Requires: %{name}-admintools = %{version}-%{release}
 Requires: %{name}-common = %{version}-%{release}
 Requires: python2-ipaserver = %{version}-%{release}
 Requires: 389-ds-base >= 1.3.5.6
@@ -350,6 +349,13 @@ Provides: %{alt_name}-client = %{version}
 Conflicts: %{alt_name}-client
 Obsoletes: %{alt_name}-client < %{version}
 
+Provides: %{alt_name}-admintools = %{version}
+Conflicts: %{alt_name}-admintools
+Obsoletes: %{alt_name}-admintools < 4.4.1
+
+Obsoletes: %{name}-admintools < 4.4.1
+Provides: %{name}-admintools = %{version}-%{release}
+
 %description client
 IPA is an integrated solution to provide centrally managed Identity (users,
 hosts, services), Authentication (SSO, 2FA), and Authorization
@@ -358,6 +364,7 @@ features for further integration with Linux based clients (SUDO, automount)
 and integration with Active Directory based infrastructures (Trusts).
 If your network uses IPA for authentication, this package should be
 installed on every client machine.
+This package provides command-line tools for IPA administrators.
 
 
 %package -n python2-ipaclient
@@ -423,26 +430,6 @@ If your network uses IPA for authentication, this package should be
 installed on every client machine.
 
 
-%package admintools
-Summary: IPA administrative tools
-Group: System Environment/Base
-BuildArch: noarch
-Requires: python2-ipaclient = %{version}-%{release}
-Requires: python-ldap
-
-Provides: %{alt_name}-admintools = %{version}
-Conflicts: %{alt_name}-admintools
-Obsoletes: %{alt_name}-admintools < %{version}
-
-%description admintools
-IPA is an integrated solution to provide centrally managed Identity (users,
-hosts, services), Authentication (SSO, 2FA), and Authorization
-(host access control, SELinux user roles, services). The solution provides
-features for further integration with Linux based clients (SUDO, automount)
-and integration with Active Directory based infrastructures (Trusts).
-This package provides command-line tools for IPA administrators.
-
-
 %package python-compat
 Summary: Compatiblity package for Python libraries used by IPA
 Group: System Environment/Libraries
@@ -1293,6 +1280,9 @@ fi
 %{_sbindir}/ipa-getkeytab
 %{_sbindir}/ipa-rmkeytab
 %{_sbindir}/ipa-join
+%{_bindir}/ipa
+%config %{_sysconfdir}/bash_completion.d
+%{_mandir}/man1/ipa.1.gz
 %{_mandir}/man1/ipa-getkeytab.1.gz
 %{_mandir}/man1/ipa-rmkeytab.1.gz
 %{_mandir}/man1/ipa-client-install.1.gz
@@ -1352,15 +1342,6 @@ fi
 %{_mandir}/man5/default.conf.5.gz
 
 
-%files admintools
-%defattr(-,root,root,-)
-%doc README Contributors.txt
-%license COPYING
-%{_bindir}/ipa
-%config %{_sysconfdir}/bash_completion.d
-%{_mandir}/man1/ipa.1.gz
-
-
 %files python-compat
 %defattr(-,root,root,-)
 %doc README Contributors.txt
-- 
2.7.4



More information about the Freeipa-devel mailing list