git: 80e6e5b7eaa8 - main - net/freeipa-client: Respect PREFIX and LOCALBASE
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 21 Sep 2026 18:43:39 UTC
The branch main has been updated by joneum:
URL: https://cgit.FreeBSD.org/ports/commit/?id=80e6e5b7eaa8d38077610a8b29ed16accfc76238
commit 80e6e5b7eaa8d38077610a8b29ed16accfc76238
Author: Jochen Neumeister <joneum@FreeBSD.org>
AuthorDate: 2026-09-21 18:42:50 +0000
Commit: Jochen Neumeister <joneum@FreeBSD.org>
CommitDate: 2026-09-21 18:43:28 +0000
net/freeipa-client: Respect PREFIX and LOCALBASE
The patches hardcoded /usr/local in 153 places. They now carry
%%PREFIX%% for the files this port installs itself and %%LOCALBASE%%
for the ones it only reads, substituted in post-patch.
client/ipa-join.c defined IPA_CONFIG as /etc/ipa/default.conf, so
ipa-client-install --uninstall could not read the configuration and
left the host enrolled on the server. Enrolling it again then failed
with "Host already enrolled", even with --force-join.
PR: 298186
Approved by: kiwi (maintainer timeout)
Sponsored by: Netzkommune GmbH
---
net/freeipa-client/Makefile | 12 +-
net/freeipa-client/files/patch-client_ipa-join.c | 17 +-
.../files/patch-ipaplatform_base_paths.py | 46 ++--
.../files/patch-ipaplatform_freebsd_paths.py | 258 ++++++++++-----------
.../files/patch-ipaplatform_freebsd_services.py | 8 +-
.../files/patch-ipapython_ipautil.py | 2 +-
net/freeipa-client/files/patch-util_ipa__ldap.h | 2 +-
7 files changed, 182 insertions(+), 163 deletions(-)
diff --git a/net/freeipa-client/Makefile b/net/freeipa-client/Makefile
index 5bc437a60eb3..db9995615f1d 100644
--- a/net/freeipa-client/Makefile
+++ b/net/freeipa-client/Makefile
@@ -1,6 +1,6 @@
PORTNAME= freeipa-client
DISTVERSION= 4.13.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= net
MASTER_SITES= https://releases.pagure.org/freeipa/
DISTNAME= freeipa-${DISTVERSION}
@@ -66,6 +66,16 @@ EXTRACT_AFTER_ARGS= --exclude client/systemd --exclude daemons/dnssec \
PLIST_SUB= DISTVERSION=${DISTVERSION}
+post-patch:
+ @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \
+ -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+ ${WRKSRC}/client/ipa-join.c \
+ ${WRKSRC}/ipaplatform/base/paths.py \
+ ${WRKSRC}/ipaplatform/freebsd/paths.py \
+ ${WRKSRC}/ipaplatform/freebsd/services.py \
+ ${WRKSRC}/ipapython/ipautil.py \
+ ${WRKSRC}/util/ipa_ldap.h
+
# Make sample configuration file
post-install:
@${MV} ${STAGEDIR}${PREFIX}/etc/ipa/epn.conf ${STAGEDIR}${PREFIX}/etc/ipa/epn.conf.sample
diff --git a/net/freeipa-client/files/patch-client_ipa-join.c b/net/freeipa-client/files/patch-client_ipa-join.c
index db8322849f28..617d8dae20ae 100644
--- a/net/freeipa-client/files/patch-client_ipa-join.c
+++ b/net/freeipa-client/files/patch-client_ipa-join.c
@@ -1,20 +1,29 @@
--- client/ipa-join.c.orig 2025-01-15 10:52:51.570724638 +0100
+++ client/ipa-join.c 2026-08-12 23:05:48.986059000 +0200
+@@ -53,7 +53,7 @@
+
+ #define JOIN_OID "2.16.840.1.113730.3.8.10.3"
+
+-#define IPA_CONFIG "/etc/ipa/default.conf"
++#define IPA_CONFIG "%%LOCALBASE%%/etc/ipa/default.conf"
+
+ char * read_config_file(const char *filename);
+ char * get_config_entry(char * data, const char *section, const char *key);
@@ -1197,7 +1197,7 @@
-
+
if (childpid == 0) {
char *argv[12];
- char *path = "/usr/sbin/ipa-getkeytab";
-+ char *path = "/usr/local/sbin/ipa-getkeytab";
++ char *path = "%%PREFIX%%/sbin/ipa-getkeytab";
int arg = 0;
int err;
-
+
@@ -1372,7 +1372,7 @@
}
krb5_cc_close(krbctx, ccache);
ccache = NULL;
- putenv("KRB5CCNAME=MEMORY:ipa-join");
+ setenv("KRB5CCNAME", "MEMORY:ipa-join", 1);
-
+
#ifdef WITH_IPA_JOIN_XML
rval = xmlrpc_unenroll_host(ipaserver, hostname, quiet);
diff --git a/net/freeipa-client/files/patch-ipaplatform_base_paths.py b/net/freeipa-client/files/patch-ipaplatform_base_paths.py
index 1159b57f7cb7..3f5bcd41a91a 100644
--- a/net/freeipa-client/files/patch-ipaplatform_base_paths.py
+++ b/net/freeipa-client/files/patch-ipaplatform_base_paths.py
@@ -6,15 +6,15 @@
NAMED_CUSTOM_OPTIONS_CONF = "/etc/named/ipa-options-ext.conf"
- NAMED_CONF_SRC = '/usr/share/ipa/bind.named.conf.template'
- NAMED_CUSTOM_CONF_SRC = '/usr/share/ipa/bind.ipa-ext.conf.template'
-+ NAMED_CONF_SRC = '/usr/local/share/ipa/bind.named.conf.template'
-+ NAMED_CUSTOM_CONF_SRC = '/usr/local/share/ipa/bind.ipa-ext.conf.template'
++ NAMED_CONF_SRC = '%%LOCALBASE%%/share/ipa/bind.named.conf.template'
++ NAMED_CUSTOM_CONF_SRC = '%%LOCALBASE%%/share/ipa/bind.ipa-ext.conf.template'
NAMED_CUSTOM_OPTIONS_CONF_SRC = (
- '/usr/share/ipa/bind.ipa-options-ext.conf.template'
-+ '/usr/local/share/ipa/bind.ipa-options-ext.conf.template'
++ '%%LOCALBASE%%/share/ipa/bind.ipa-options-ext.conf.template'
)
NAMED_LOGGING_OPTIONS_CONF_SRC = (
- "/usr/share/ipa/bind.ipa-logging-ext.conf.template"
-+ "/usr/local/share/ipa/bind.ipa-logging-ext.conf.template"
++ "%%LOCALBASE%%/share/ipa/bind.ipa-logging-ext.conf.template"
)
NAMED_VAR_DIR = "/var/named"
NAMED_KEYTAB = "/etc/named.keytab"
@@ -23,7 +23,7 @@
NAMED_MANAGED_KEYS_DIR = "/var/named/dynamic"
NAMED_CRYPTO_POLICY_FILE = None
- UNBOUND_CONF_SRC = '/usr/share/ipa/client/unbound.conf.template'
-+ UNBOUND_CONF_SRC = '/usr/local/share/ipa/client/unbound.conf.template'
++ UNBOUND_CONF_SRC = '%%PREFIX%%/share/ipa/client/unbound.conf.template'
UNBOUND_CONFIG_DIR = "/etc/unbound/conf.d/"
UNBOUND_CONF = "/etc/unbound/conf.d/zzz-ipa.conf"
NSLCD_CONF = "/etc/nslcd.conf"
@@ -32,12 +32,12 @@
SSH_CONFIG_DIR = "/etc/ssh"
SSH_CONFIG = "/etc/ssh/ssh_config"
- SSH_IPA_CONFIG_TEMPLATE = "/usr/share/ipa/client/ssh_ipa.conf.template"
-+ SSH_IPA_CONFIG_TEMPLATE = "/usr/local/share/ipa/client/ssh_ipa.conf.template"
++ SSH_IPA_CONFIG_TEMPLATE = "%%PREFIX%%/share/ipa/client/ssh_ipa.conf.template"
SSH_IPA_CONFIG = "/etc/ssh/ssh_config.d/04-ipa.conf"
SSHD_CONFIG = "/etc/ssh/sshd_config"
SSHD_IPA_CONFIG = "/etc/ssh/sshd_config.d/04-ipa.conf"
- SSHD_IPA_CONFIG_TEMPLATE = "/usr/share/ipa/client/sshd_ipa.conf.template"
-+ SSHD_IPA_CONFIG_TEMPLATE = "/usr/local/share/ipa/client/sshd_ipa.conf.template"
++ SSHD_IPA_CONFIG_TEMPLATE = "%%PREFIX%%/share/ipa/client/sshd_ipa.conf.template"
SSSD_CONF = "/etc/sssd/sssd.conf"
SSSD_CONF_BKP = "/etc/sssd/sssd.conf.bkp"
SSSD_CONF_DELETED = "/etc/sssd/sssd.conf.deleted"
@@ -47,8 +47,8 @@
BIN_KVNO = "/usr/bin/kvno"
- LDAPMODIFY = "/usr/bin/ldapmodify"
- LDAPPASSWD = "/usr/bin/ldappasswd"
-+ LDAPMODIFY = "/usr/local/bin/ldapmodify"
-+ LDAPPASSWD = "/usr/local/bin/ldappasswd"
++ LDAPMODIFY = "%%LOCALBASE%%/bin/ldapmodify"
++ LDAPPASSWD = "%%LOCALBASE%%/bin/ldappasswd"
MODUTIL = "/usr/bin/modutil"
NET = "/usr/bin/net"
BIN_NISDOMAINNAME = "/usr/bin/nisdomainname"
@@ -74,16 +74,16 @@
- SUBID_GENERATORS_ULDIF = "/usr/share/ipa/subid-generators.uldif"
- IPA_JS_PLUGINS_DIR = "/usr/share/ipa/ui/js/plugins"
- UPDATES_DIR = "/usr/share/ipa/updates/"
-+ USR_SHARE_IPA_DIR = "/usr/local/share/ipa/"
-+ USR_SHARE_IPA_CLIENT_DIR = "/usr/local/share/ipa/client"
-+ CA_TOPOLOGY_ULDIF = "/usr/local/share/ipa/ca-topology.uldif"
-+ IPA_HTML_DIR = "/usr/local/share/ipa/html"
-+ CA_CRT = "/usr/local/share/ipa/html/ca.crt"
-+ SCHEMA_COMPAT_ULDIF = "/usr/local/share/ipa/updates/91-schema_compat.update"
-+ SCHEMA_COMPAT_POST_ULDIF = "/usr/local/share/ipa/schema_compat_post.uldif"
-+ SUBID_GENERATORS_ULDIF = "/usr/local/share/ipa/subid-generators.uldif"
-+ IPA_JS_PLUGINS_DIR = "/usr/local/share/ipa/ui/js/plugins"
-+ UPDATES_DIR = "/usr/local/share/ipa/updates/"
++ USR_SHARE_IPA_DIR = "%%LOCALBASE%%/share/ipa/"
++ USR_SHARE_IPA_CLIENT_DIR = "%%LOCALBASE%%/share/ipa/client"
++ CA_TOPOLOGY_ULDIF = "%%LOCALBASE%%/share/ipa/ca-topology.uldif"
++ IPA_HTML_DIR = "%%LOCALBASE%%/share/ipa/html"
++ CA_CRT = "%%LOCALBASE%%/share/ipa/html/ca.crt"
++ SCHEMA_COMPAT_ULDIF = "%%LOCALBASE%%/share/ipa/updates/91-schema_compat.update"
++ SCHEMA_COMPAT_POST_ULDIF = "%%LOCALBASE%%/share/ipa/schema_compat_post.uldif"
++ SUBID_GENERATORS_ULDIF = "%%LOCALBASE%%/share/ipa/subid-generators.uldif"
++ IPA_JS_PLUGINS_DIR = "%%LOCALBASE%%/share/ipa/ui/js/plugins"
++ UPDATES_DIR = "%%LOCALBASE%%/share/ipa/updates/"
DICT_WORDS = "/usr/share/dict/words"
VAR_KERBEROS_KRB5KDC_DIR = "/var/kerberos/krb5kdc/"
VAR_KRB5KDC_K5_REALM = "/var/kerberos/krb5kdc/.k5."
@@ -101,7 +101,7 @@
IPA_GETKEYTAB = '/usr/sbin/ipa-getkeytab'
IPA_MIGRATE_LOG = '/var/log/ipa-migrate.log'
- EXTERNAL_SCHEMA_DIR = '/usr/share/ipa/schema.d'
-+ EXTERNAL_SCHEMA_DIR = '/usr/local/share/ipa/schema.d'
++ EXTERNAL_SCHEMA_DIR = '%%LOCALBASE%%/share/ipa/schema.d'
GSSPROXY_CONF = '/etc/gssproxy/10-ipa.conf'
KRB5CC_HTTPD = '/tmp/krb5cc-httpd'
IF_INET6 = '/proc/net/if_inet6'
@@ -112,9 +112,9 @@
- ETC_DIRSRV = "/etc/dirsrv"
- DS_KEYTAB = "/etc/dirsrv/ds.keytab"
- ETC_DIRSRV_SLAPD_INSTANCE_TEMPLATE = "/etc/dirsrv/slapd-%s"
-+ ETC_DIRSRV = "/usr/local/etc/dirsrv"
-+ DS_KEYTAB = "/usr/local/etc/dirsrv/ds.keytab"
-+ ETC_DIRSRV_SLAPD_INSTANCE_TEMPLATE = "/usr/local/etc/dirsrv/slapd-%s"
++ ETC_DIRSRV = "%%LOCALBASE%%/etc/dirsrv"
++ DS_KEYTAB = "%%LOCALBASE%%/etc/dirsrv/ds.keytab"
++ ETC_DIRSRV_SLAPD_INSTANCE_TEMPLATE = "%%LOCALBASE%%/etc/dirsrv/slapd-%s"
USR_LIB_DIRSRV = "/usr/lib/dirsrv"
USR_LIB_DIRSRV_64 = "/usr/lib64/dirsrv"
VAR_LIB_DIRSRV_INSTANCE_SCRIPTS_TEMPLATE = "/var/lib/dirsrv/scripts-%s"
diff --git a/net/freeipa-client/files/patch-ipaplatform_freebsd_paths.py b/net/freeipa-client/files/patch-ipaplatform_freebsd_paths.py
index 6724f0e7fecf..b725887d3d1e 100644
--- a/net/freeipa-client/files/patch-ipaplatform_freebsd_paths.py
+++ b/net/freeipa-client/files/patch-ipaplatform_freebsd_paths.py
@@ -9,19 +9,19 @@
+
+
+class FreeBSDPathNamespace(BasePathNamespace):
-+ USR_SHARE_IPA_DIR = "/usr/local/share/ipa/"
-+ USR_SHARE_IPA_CLIENT_DIR = "/usr/local/share/ipa/client"
-+ SSH_IPA_CONFIG_TEMPLATE = "/usr/local/share/ipa/client/ssh_ipa.conf.template"
-+ SSHD_IPA_CONFIG_TEMPLATE = "/usr/local/share/ipa/client/sshd_ipa.conf.template"
-+ UNBOUND_CONF_SRC = "/usr/local/share/ipa/client/unbound.conf.template"
-+ PKIDESTROY = "/usr/local/sbin/pkidestroy"
-+ PKISPAWN = "/usr/local/sbin/pkispawn"
-+ PKI = "/usr/local/bin/pki"
-+ PKI_SERVER = "/usr/local/sbin/pki-server"
-+ BIN_TOMCAT = "/usr/local/apache-tomcat-9.0/bin/catalina.sh"
++ USR_SHARE_IPA_DIR = "%%LOCALBASE%%/share/ipa/"
++ USR_SHARE_IPA_CLIENT_DIR = "%%LOCALBASE%%/share/ipa/client"
++ SSH_IPA_CONFIG_TEMPLATE = "%%PREFIX%%/share/ipa/client/ssh_ipa.conf.template"
++ SSHD_IPA_CONFIG_TEMPLATE = "%%PREFIX%%/share/ipa/client/sshd_ipa.conf.template"
++ UNBOUND_CONF_SRC = "%%PREFIX%%/share/ipa/client/unbound.conf.template"
++ PKIDESTROY = "%%LOCALBASE%%/sbin/pkidestroy"
++ PKISPAWN = "%%LOCALBASE%%/sbin/pkispawn"
++ PKI = "%%LOCALBASE%%/bin/pki"
++ PKI_SERVER = "%%LOCALBASE%%/sbin/pki-server"
++ BIN_TOMCAT = "%%LOCALBASE%%/apache-tomcat-9.0/bin/catalina.sh"
+ BIN_PS = "/bin/ps"
+
-+ PKI_CONFIGURATION = "/usr/local/etc/pki"
++ PKI_CONFIGURATION = "%%LOCALBASE%%/etc/pki"
+ PKI_TOMCAT = "/var/db/pki/pki-tomcat/conf"
+ PKI_TOMCAT_ALIAS_DIR = "/var/db/pki/pki-tomcat/alias"
+ PKI_TOMCAT_ALIAS_PWDFILE_TXT = "/var/db/pki/pki-tomcat/alias/pwdfile.txt"
@@ -48,19 +48,19 @@
+ IPA_OTPD_SOCKET = "/var/run/krb5kdc/DEFAULT.socket"
+ IPA_CCACHES = "/var/run/ipa/ccaches"
+ IPA_RENEWAL_LOCK = "/var/run/ipa/renewal.lock"
-+ KLIST = "/usr/local/bin/klist"
-+ KADMIN_LOCAL = "/usr/local/sbin/kadmin.local"
-+ KDB5_UTIL = "/usr/local/sbin/kdb5_util"
++ KLIST = "%%LOCALBASE%%/bin/klist"
++ KADMIN_LOCAL = "%%LOCALBASE%%/sbin/kadmin.local"
++ KDB5_UTIL = "%%LOCALBASE%%/sbin/kdb5_util"
+
-+ ETC_IPA = "/usr/local/etc/ipa"
-+ IPA_DEFAULT_CONF = "/usr/local/etc/ipa/default.conf"
++ ETC_IPA = "%%LOCALBASE%%/etc/ipa"
++ IPA_DEFAULT_CONF = "%%LOCALBASE%%/etc/ipa/default.conf"
+
-+ IPA_CUSTODIA_CONF_DIR = "/usr/local/etc/ipa/custodia"
-+ IPA_CUSTODIA_CONF = "/usr/local/etc/ipa/custodia/custodia.conf"
-+ IPA_CUSTODIA_KEYS = "/usr/local/etc/ipa/custodia/server.keys"
++ IPA_CUSTODIA_CONF_DIR = "%%LOCALBASE%%/etc/ipa/custodia"
++ IPA_CUSTODIA_CONF = "%%LOCALBASE%%/etc/ipa/custodia/custodia.conf"
++ IPA_CUSTODIA_KEYS = "%%LOCALBASE%%/etc/ipa/custodia/server.keys"
+ IPA_CUSTODIA_SOCKET = "/var/run/httpd/ipa-custodia.sock"
+
-+ KDCPROXY_CONFIG = "/usr/local/etc/ipa/kdcproxy/kdcproxy.conf"
++ KDCPROXY_CONFIG = "%%LOCALBASE%%/etc/ipa/kdcproxy/kdcproxy.conf"
+
+ VAR_LIB_IPA = "/var/db/ipa"
+ CA_BUNDLE_PEM = "/var/db/ipa-client/pki/ca-bundle.pem"
@@ -69,7 +69,7 @@
+ HTTPD_KEY_FILE = "/var/db/ipa/private/httpd.key"
+ HTTPD_PASSWD_FILE_FMT = "/var/db/ipa/passwds/{host}-443-RSA"
+ HTTP_KEYTAB = "/var/db/ipa/gssproxy/http.keytab"
-+ GSSPROXY_CONF = "/usr/local/etc/gssproxy/10-ipa.conf"
++ GSSPROXY_CONF = "%%LOCALBASE%%/etc/gssproxy/10-ipa.conf"
+ IPA_CCACHE_SWEEPER_GSSPROXY_SOCK = (
+ "/var/db/gssproxy/ipa_ccache_sweeper.sock"
+ )
@@ -84,72 +84,72 @@
+ REPLICA_INFO_TEMPLATE = "/var/db/ipa/replica-info-%s"
+ REPLICA_INFO_GPG_TEMPLATE = "/var/db/ipa/replica-info-%s.gpg"
+ PKI_CA_PUBLISH_DIR = "/var/db/ipa/pki-ca/publish"
-+ CERTUTIL = "/usr/local/bin/certutil"
-+ PK12UTIL = "/usr/local/bin/pk12util"
-+ MODUTIL = "/usr/local/bin/modutil"
++ CERTUTIL = "%%LOCALBASE%%/bin/certutil"
++ PK12UTIL = "%%LOCALBASE%%/bin/pk12util"
++ MODUTIL = "%%LOCALBASE%%/bin/modutil"
+ SYSCONFIG_PKI_TOMCAT = "/var/db/pki/pki-tomcat/conf/tomcat.conf"
-+ SYSCONFIG_PKI_TOMCAT_PKI_TOMCAT_DIR = "/usr/local/etc/pki/tomcat/pki-tomcat"
++ SYSCONFIG_PKI_TOMCAT_PKI_TOMCAT_DIR = "%%LOCALBASE%%/etc/pki/tomcat/pki-tomcat"
+ IPA_CLIENT_SYSRESTORE = "/var/db/ipa-client/sysrestore"
+ SYSRESTORE_INDEX = "/var/db/ipa-client/sysrestore/sysrestore.index"
+ SYSRESTORE = "/var/db/ipa/sysrestore"
+ STATEFILE_DIR = "/var/db/ipa/sysupgrade"
+
-+ VAR_KERBEROS_KRB5KDC_DIR = "/usr/local/var/krb5kdc/"
-+ KRB5_CONF = "/usr/local/etc/krb5.conf"
-+ COMMON_KRB5_CONF_DIR = "/usr/local/etc/krb5.conf.d/"
-+ KRB5_FREEIPA_DEFAULTS = "/usr/local/etc/krb5.conf.d/freeipa"
-+ KRB5_FREEIPA = "/usr/local/etc/krb5.conf.d/freeipa-realm"
-+ KRB5_FREEIPA_SERVER = "/usr/local/etc/krb5.conf.d/freeipa-server"
-+ VAR_KRB5KDC_K5_REALM = "/usr/local/var/krb5kdc/.k5."
-+ CACERT_PEM = "/usr/local/var/krb5kdc/cacert.pem"
-+ KRB5KDC_KADM5_ACL = "/usr/local/var/krb5kdc/kadm5.acl"
-+ KRB5KDC_KADM5_KEYTAB = "/usr/local/var/krb5kdc/kadm5.keytab"
-+ KRB5KDC_KDC_CONF = "/usr/local/var/krb5kdc/kdc.conf"
-+ KDC_CERT = "/usr/local/var/krb5kdc/kdc.crt"
-+ KDC_KEY = "/usr/local/var/krb5kdc/kdc.key"
-+
-+ IPACTL = "/usr/local/sbin/ipactl"
-+ IPA_CLIENT_AUTOMOUNT = "/usr/local/sbin/ipa-client-automount"
-+ IPA_CLIENT_INSTALL = "/usr/local/sbin/ipa-client-install"
-+ IPA_GETKEYTAB = "/usr/local/sbin/ipa-getkeytab"
-+ IPA_RMKEYTAB = "/usr/local/sbin/ipa-rmkeytab"
-+ SBIN_IPA_JOIN = "/usr/local/sbin/ipa-join"
-+ CONNCHECK_CCACHE = "/usr/local/etc/ipa/.conncheck_ccache"
-+ IPA_DNS_CCACHE = "/usr/local/etc/ipa/.dns_ccache"
-+ OPENLDAP_LDAP_CONF = "/usr/local/etc/openldap/ldap.conf"
-+ IPA_DNS_UPDATE_TXT = "/usr/local/etc/ipa/.dns_update.txt"
-+ IPA_CA_CRT = "/usr/local/etc/ipa/ca.crt"
-+ IPA_DNSKEYSYNCD_KEYTAB = "/usr/local/etc/ipa/dnssec/ipa-dnskeysyncd.keytab"
-+ IPA_ODS_EXPORTER_KEYTAB = "/usr/local/etc/ipa/dnssec/ipa-ods-exporter.keytab"
-+ IPA_SERVER_CONF = "/usr/local/etc/ipa/server.conf"
-+ DNSSEC_OPENSSL_CONF = "/usr/local/etc/ipa/dnssec/openssl.cnf"
-+ DNSSEC_SOFTHSM2_CONF = "/usr/local/etc/ipa/dnssec/softhsm2.conf"
-+ DNSSEC_SOFTHSM_PIN_SO = "/usr/local/etc/ipa/dnssec/softhsm_pin_so"
-+ IPA_NSSDB_DIR = "/usr/local/etc/ipa/nssdb"
-+ IPA_NSSDB_PWDFILE_TXT = "/usr/local/etc/ipa/nssdb/pwdfile.txt"
-+ NSS_DB_DIR = "/usr/local/etc/pki/nssdb"
-+
-+ LIBEXEC_IPA_DIR = "/usr/local/libexec/ipa"
-+ IPA_OTPD = "/usr/local/libexec/ipa/ipa-otpd"
-+ IPA_OTPD_WRAPPER = "/usr/local/libexec/ipa/ipa-otpd-wrapper"
++ VAR_KERBEROS_KRB5KDC_DIR = "%%LOCALBASE%%/var/krb5kdc/"
++ KRB5_CONF = "%%LOCALBASE%%/etc/krb5.conf"
++ COMMON_KRB5_CONF_DIR = "%%LOCALBASE%%/etc/krb5.conf.d/"
++ KRB5_FREEIPA_DEFAULTS = "%%LOCALBASE%%/etc/krb5.conf.d/freeipa"
++ KRB5_FREEIPA = "%%LOCALBASE%%/etc/krb5.conf.d/freeipa-realm"
++ KRB5_FREEIPA_SERVER = "%%LOCALBASE%%/etc/krb5.conf.d/freeipa-server"
++ VAR_KRB5KDC_K5_REALM = "%%LOCALBASE%%/var/krb5kdc/.k5."
++ CACERT_PEM = "%%LOCALBASE%%/var/krb5kdc/cacert.pem"
++ KRB5KDC_KADM5_ACL = "%%LOCALBASE%%/var/krb5kdc/kadm5.acl"
++ KRB5KDC_KADM5_KEYTAB = "%%LOCALBASE%%/var/krb5kdc/kadm5.keytab"
++ KRB5KDC_KDC_CONF = "%%LOCALBASE%%/var/krb5kdc/kdc.conf"
++ KDC_CERT = "%%LOCALBASE%%/var/krb5kdc/kdc.crt"
++ KDC_KEY = "%%LOCALBASE%%/var/krb5kdc/kdc.key"
++
++ IPACTL = "%%LOCALBASE%%/sbin/ipactl"
++ IPA_CLIENT_AUTOMOUNT = "%%PREFIX%%/sbin/ipa-client-automount"
++ IPA_CLIENT_INSTALL = "%%PREFIX%%/sbin/ipa-client-install"
++ IPA_GETKEYTAB = "%%PREFIX%%/sbin/ipa-getkeytab"
++ IPA_RMKEYTAB = "%%PREFIX%%/sbin/ipa-rmkeytab"
++ SBIN_IPA_JOIN = "%%PREFIX%%/sbin/ipa-join"
++ CONNCHECK_CCACHE = "%%LOCALBASE%%/etc/ipa/.conncheck_ccache"
++ IPA_DNS_CCACHE = "%%LOCALBASE%%/etc/ipa/.dns_ccache"
++ OPENLDAP_LDAP_CONF = "%%LOCALBASE%%/etc/openldap/ldap.conf"
++ IPA_DNS_UPDATE_TXT = "%%LOCALBASE%%/etc/ipa/.dns_update.txt"
++ IPA_CA_CRT = "%%LOCALBASE%%/etc/ipa/ca.crt"
++ IPA_DNSKEYSYNCD_KEYTAB = "%%LOCALBASE%%/etc/ipa/dnssec/ipa-dnskeysyncd.keytab"
++ IPA_ODS_EXPORTER_KEYTAB = "%%LOCALBASE%%/etc/ipa/dnssec/ipa-ods-exporter.keytab"
++ IPA_SERVER_CONF = "%%LOCALBASE%%/etc/ipa/server.conf"
++ DNSSEC_OPENSSL_CONF = "%%LOCALBASE%%/etc/ipa/dnssec/openssl.cnf"
++ DNSSEC_SOFTHSM2_CONF = "%%LOCALBASE%%/etc/ipa/dnssec/softhsm2.conf"
++ DNSSEC_SOFTHSM_PIN_SO = "%%LOCALBASE%%/etc/ipa/dnssec/softhsm_pin_so"
++ IPA_NSSDB_DIR = "%%LOCALBASE%%/etc/ipa/nssdb"
++ IPA_NSSDB_PWDFILE_TXT = "%%LOCALBASE%%/etc/ipa/nssdb/pwdfile.txt"
++ NSS_DB_DIR = "%%LOCALBASE%%/etc/pki/nssdb"
++
++ LIBEXEC_IPA_DIR = "%%LOCALBASE%%/libexec/ipa"
++ IPA_OTPD = "%%LOCALBASE%%/libexec/ipa/ipa-otpd"
++ IPA_OTPD_WRAPPER = "%%LOCALBASE%%/libexec/ipa/ipa-otpd-wrapper"
+ IPA_OTPD_LOG = "/var/log/ipa-otpd.log"
-+ LIBEXEC_CERTMONGER_DIR = "/usr/local/libexec/certmonger"
-+ CERTMONGER_COMMAND_TEMPLATE = "/usr/local/libexec/ipa/certmonger/%s"
-+ CERTMONGER_DOGTAG_SUBMIT = "/usr/local/libexec/certmonger/dogtag-submit"
-+ DOGTAG_IPA_CA_RENEW_AGENT_SUBMIT = "/usr/local/libexec/certmonger/dogtag-ipa-ca-renew-agent-submit"
-+ DOGTAG_IPA_RENEW_AGENT_SUBMIT = "/usr/local/libexec/certmonger/dogtag-ipa-renew-agent-submit"
-+ IPA_SERVER_GUARD = "/usr/local/libexec/certmonger/ipa-server-guard"
-+ IPA_DNSKEYSYNCD_REPLICA = "/usr/local/libexec/ipa/ipa-dnskeysync-replica"
-+ IPA_DNSKEYSYNCD = "/usr/local/libexec/ipa/ipa-dnskeysyncd"
-+ IPA_ODS_EXPORTER = "/usr/local/libexec/ipa/ipa-ods-exporter"
-+ IPA_PKI_RETRIEVE_KEY = "/usr/local/libexec/ipa/ipa-pki-retrieve-key"
-+ IPA_PKI_WAIT_RUNNING = "/usr/local/libexec/ipa/ipa-pki-wait-running"
-+ IPA_CUSTODIA_HANDLER = "/usr/local/libexec/ipa/custodia"
-+ IPA_CUSTODIA_CHECK = "/usr/local/libexec/ipa/ipa-custodia-check"
-+
-+ SSSD_CONF = "/usr/local/etc/sssd/sssd.conf"
-+ SSSD_CONF_BKP = "/usr/local/etc/sssd/sssd.conf.bkp"
-+ SSSD_CONF_DELETED = "/usr/local/etc/sssd/sssd.conf.deleted"
++ LIBEXEC_CERTMONGER_DIR = "%%LOCALBASE%%/libexec/certmonger"
++ CERTMONGER_COMMAND_TEMPLATE = "%%LOCALBASE%%/libexec/ipa/certmonger/%s"
++ CERTMONGER_DOGTAG_SUBMIT = "%%LOCALBASE%%/libexec/certmonger/dogtag-submit"
++ DOGTAG_IPA_CA_RENEW_AGENT_SUBMIT = "%%LOCALBASE%%/libexec/certmonger/dogtag-ipa-ca-renew-agent-submit"
++ DOGTAG_IPA_RENEW_AGENT_SUBMIT = "%%LOCALBASE%%/libexec/certmonger/dogtag-ipa-renew-agent-submit"
++ IPA_SERVER_GUARD = "%%LOCALBASE%%/libexec/certmonger/ipa-server-guard"
++ IPA_DNSKEYSYNCD_REPLICA = "%%LOCALBASE%%/libexec/ipa/ipa-dnskeysync-replica"
++ IPA_DNSKEYSYNCD = "%%LOCALBASE%%/libexec/ipa/ipa-dnskeysyncd"
++ IPA_ODS_EXPORTER = "%%LOCALBASE%%/libexec/ipa/ipa-ods-exporter"
++ IPA_PKI_RETRIEVE_KEY = "%%LOCALBASE%%/libexec/ipa/ipa-pki-retrieve-key"
++ IPA_PKI_WAIT_RUNNING = "%%LOCALBASE%%/libexec/ipa/ipa-pki-wait-running"
++ IPA_CUSTODIA_HANDLER = "%%LOCALBASE%%/libexec/ipa/custodia"
++ IPA_CUSTODIA_CHECK = "%%LOCALBASE%%/libexec/ipa/ipa-custodia-check"
++
++ SSSD_CONF = "%%LOCALBASE%%/etc/sssd/sssd.conf"
++ SSSD_CONF_BKP = "%%LOCALBASE%%/etc/sssd/sssd.conf.bkp"
++ SSSD_CONF_DELETED = "%%LOCALBASE%%/etc/sssd/sssd.conf.deleted"
+ SSSD_DB = "/var/db/sss/db"
+ SSSD_LDB = "/var/db/sss/db/sssd.ldb"
+ SSSD_CONFIG_LDB = "/var/db/sss/db/config.ldb"
@@ -164,7 +164,7 @@
+ SSSD_KEYTABS_DIR = "/var/db/sss/keytabs"
+ SSSD_SECRETS = "/var/db/sss/secrets/secrets.ldb"
+
-+ DSCTL = "/usr/local/bin/dsctl"
++ DSCTL = "%%LOCALBASE%%/bin/dsctl"
+
+ VAR_LIB_DIRSRV = "/var/db/dirsrv"
+ VAR_LIB_DIRSRV_INSTANCE_SCRIPTS_TEMPLATE = "/var/db/dirsrv/scripts-%s"
@@ -175,55 +175,55 @@
+ VAR_RUN_DIRSRV_DIR = "/var/run/dirsrv"
+ DIRSRV_LOCK_DIR = "/var/run/dirsrv"
+
-+ HTTPD = "/usr/local/sbin/httpd"
-+ ETC_HTTPD_DIR = "/usr/local/etc/apache24"
-+ HTTPD_ALIAS_DIR = "/usr/local/etc/apache24/alias"
-+ GSSAPI_SESSION_KEY = "/usr/local/etc/apache24/alias/ipasession.key"
-+ HTTPD_CONF_D_DIR = "/usr/local/etc/apache24/Includes/"
-+ HTTPD_IPA_WSGI_MODULES_CONF = "/usr/local/etc/apache24/modules.d/290_freeipa.conf"
-+ HTTPD_IPA_ENVVARS_CONF = "/usr/local/etc/apache24/envvars.d/ipa.env"
-+ HTTPD_IPA_RC_CONF = "/usr/local/etc/rc.conf.d/apache24/ipa"
-+ HTTPD_IPA_CONF = "/usr/local/etc/apache24/Includes/ipa.conf"
-+ HTTPD_IPA_KDCPROXY_CONF = "/usr/local/etc/ipa/kdcproxy/ipa-kdc-proxy.conf"
-+ HTTPD_IPA_KDCPROXY_CONF_SYMLINK = "/usr/local/etc/apache24/Includes/ipa-kdc-proxy.conf"
-+ HTTPD_IPA_PKI_PROXY_CONF = "/usr/local/etc/apache24/Includes/ipa-pki-proxy.conf"
-+ HTTPD_IPA_REWRITE_CONF = "/usr/local/etc/apache24/Includes/ipa-rewrite.conf"
-+ HTTPD_NSS_CONF = "/usr/local/etc/apache24/Includes/nss.conf"
-+ HTTPD_PASSWORD_CONF = "/usr/local/etc/apache24/password.conf"
-+ HTTPD_SSL_CONF = "/usr/local/etc/apache24/extra/httpd-ssl.conf"
-+ HTTPD_SSL_SITE_CONF = "/usr/local/etc/apache24/extra/httpd-ssl.conf"
-+ HTTPD_IPA_SSL_CONF_SYMLINK = "/usr/local/etc/apache24/Includes/ipa-ssl.conf"
-+ OLD_IPA_KEYTAB = "/usr/local/etc/apache24/ipa.keytab"
-+ OLD_KRA_AGENT_PEM = "/usr/local/etc/apache24/alias/kra-agent.pem"
++ HTTPD = "%%LOCALBASE%%/sbin/httpd"
++ ETC_HTTPD_DIR = "%%LOCALBASE%%/etc/apache24"
++ HTTPD_ALIAS_DIR = "%%LOCALBASE%%/etc/apache24/alias"
++ GSSAPI_SESSION_KEY = "%%LOCALBASE%%/etc/apache24/alias/ipasession.key"
++ HTTPD_CONF_D_DIR = "%%LOCALBASE%%/etc/apache24/Includes/"
++ HTTPD_IPA_WSGI_MODULES_CONF = "%%LOCALBASE%%/etc/apache24/modules.d/290_freeipa.conf"
++ HTTPD_IPA_ENVVARS_CONF = "%%LOCALBASE%%/etc/apache24/envvars.d/ipa.env"
++ HTTPD_IPA_RC_CONF = "%%LOCALBASE%%/etc/rc.conf.d/apache24/ipa"
++ HTTPD_IPA_CONF = "%%LOCALBASE%%/etc/apache24/Includes/ipa.conf"
++ HTTPD_IPA_KDCPROXY_CONF = "%%LOCALBASE%%/etc/ipa/kdcproxy/ipa-kdc-proxy.conf"
++ HTTPD_IPA_KDCPROXY_CONF_SYMLINK = "%%LOCALBASE%%/etc/apache24/Includes/ipa-kdc-proxy.conf"
++ HTTPD_IPA_PKI_PROXY_CONF = "%%LOCALBASE%%/etc/apache24/Includes/ipa-pki-proxy.conf"
++ HTTPD_IPA_REWRITE_CONF = "%%LOCALBASE%%/etc/apache24/Includes/ipa-rewrite.conf"
++ HTTPD_NSS_CONF = "%%LOCALBASE%%/etc/apache24/Includes/nss.conf"
++ HTTPD_PASSWORD_CONF = "%%LOCALBASE%%/etc/apache24/password.conf"
++ HTTPD_SSL_CONF = "%%LOCALBASE%%/etc/apache24/extra/httpd-ssl.conf"
++ HTTPD_SSL_SITE_CONF = "%%LOCALBASE%%/etc/apache24/extra/httpd-ssl.conf"
++ HTTPD_IPA_SSL_CONF_SYMLINK = "%%LOCALBASE%%/etc/apache24/Includes/ipa-ssl.conf"
++ OLD_IPA_KEYTAB = "%%LOCALBASE%%/etc/apache24/ipa.keytab"
++ OLD_KRA_AGENT_PEM = "%%LOCALBASE%%/etc/apache24/alias/kra-agent.pem"
+ WSGI_PREFIX_DIR = "/var/run/httpd/wsgi"
-+ IPA_HTTPD_KDCPROXY = "/usr/local/libexec/ipa/ipa-httpd-kdcproxy"
-+ IPA_HTTPD_PASSWD_READER = "/usr/local/libexec/ipa/ipa-httpd-pwdreader"
-+
-+ BIN_CURL = "/usr/local/bin/curl"
-+ CERTMONGER = "/usr/local/sbin/certmonger"
-+ GPG2 = "/usr/local/bin/gpg"
-+ GPG_AGENT = "/usr/local/bin/gpg-agent"
-+ IPA_DNS_INSTALL = "/usr/local/sbin/ipa-dns-install"
-+ IPA_REPLICA_CONNCHECK = "/usr/local/sbin/ipa-replica-conncheck"
-+ IPA_SERVER_UPGRADE = "/usr/local/sbin/ipa-server-upgrade"
-+ KDESTROY = "/usr/local/bin/kdestroy"
-+ KINIT = "/usr/local/bin/kinit"
-+ KTUTIL = "/usr/local/bin/ktutil"
-+ NET = "/usr/local/bin/net"
-+ NSUPDATE = "/usr/local/bin/nsupdate"
-+ SMBD = "/usr/local/sbin/smbd"
-+ SSSCTL = "/usr/local/sbin/sssctl"
-+ SSS_SSH_AUTHORIZEDKEYS = "/usr/local/bin/sss_ssh_authorizedkeys"
-+ SSS_SSH_KNOWNHOSTS = "/usr/local/bin/sss_ssh_knownhosts"
-+ SSS_SSH_KNOWNHOSTSPROXY = "/usr/local/bin/sss_ssh_knownhostsproxy"
-+ TDBTOOL = "/usr/local/bin/tdbtool"
-+
-+ IPA_CACERT_MANAGE = "/usr/local/sbin/ipa-cacert-manage"
-+ IPA_GETCERT = "/usr/local/bin/ipa-getcert"
-+
-+ CHRONYC = "/usr/local/bin/chronyc"
-+ CHRONYD = "/usr/local/sbin/chronyd"
-+ CHRONY_CONF = "/usr/local/etc/chrony.conf"
++ IPA_HTTPD_KDCPROXY = "%%LOCALBASE%%/libexec/ipa/ipa-httpd-kdcproxy"
++ IPA_HTTPD_PASSWD_READER = "%%LOCALBASE%%/libexec/ipa/ipa-httpd-pwdreader"
++
++ BIN_CURL = "%%LOCALBASE%%/bin/curl"
++ CERTMONGER = "%%LOCALBASE%%/sbin/certmonger"
++ GPG2 = "%%LOCALBASE%%/bin/gpg"
++ GPG_AGENT = "%%LOCALBASE%%/bin/gpg-agent"
++ IPA_DNS_INSTALL = "%%LOCALBASE%%/sbin/ipa-dns-install"
++ IPA_REPLICA_CONNCHECK = "%%LOCALBASE%%/sbin/ipa-replica-conncheck"
++ IPA_SERVER_UPGRADE = "%%LOCALBASE%%/sbin/ipa-server-upgrade"
++ KDESTROY = "%%LOCALBASE%%/bin/kdestroy"
++ KINIT = "%%LOCALBASE%%/bin/kinit"
++ KTUTIL = "%%LOCALBASE%%/bin/ktutil"
++ NET = "%%LOCALBASE%%/bin/net"
++ NSUPDATE = "%%LOCALBASE%%/bin/nsupdate"
++ SMBD = "%%LOCALBASE%%/sbin/smbd"
++ SSSCTL = "%%LOCALBASE%%/sbin/sssctl"
++ SSS_SSH_AUTHORIZEDKEYS = "%%LOCALBASE%%/bin/sss_ssh_authorizedkeys"
++ SSS_SSH_KNOWNHOSTS = "%%LOCALBASE%%/bin/sss_ssh_knownhosts"
++ SSS_SSH_KNOWNHOSTSPROXY = "%%LOCALBASE%%/bin/sss_ssh_knownhostsproxy"
++ TDBTOOL = "%%LOCALBASE%%/bin/tdbtool"
++
++ IPA_CACERT_MANAGE = "%%LOCALBASE%%/sbin/ipa-cacert-manage"
++ IPA_GETCERT = "%%LOCALBASE%%/bin/ipa-getcert"
++
++ CHRONYC = "%%LOCALBASE%%/bin/chronyc"
++ CHRONYD = "%%LOCALBASE%%/sbin/chronyd"
++ CHRONY_CONF = "%%LOCALBASE%%/etc/chrony.conf"
+
+ SYSTEMCTL = None
+ SYSTEMD_TMPFILES = None
diff --git a/net/freeipa-client/files/patch-ipaplatform_freebsd_services.py b/net/freeipa-client/files/patch-ipaplatform_freebsd_services.py
index a0ee42fb72bf..3d24cf9ac2eb 100644
--- a/net/freeipa-client/files/patch-ipaplatform_freebsd_services.py
+++ b/net/freeipa-client/files/patch-ipaplatform_freebsd_services.py
@@ -36,13 +36,13 @@
+
+freebsd_kerberos_rcvars = {
+ "kdc": {
-+ "kdc_program": "/usr/local/sbin/krb5kdc",
++ "kdc_program": "%%LOCALBASE%%/sbin/krb5kdc",
+ "kdc_enable": "YES",
+ },
+ "kadmind": {
-+ "kdc_program": "/usr/local/sbin/krb5kdc",
++ "kdc_program": "%%LOCALBASE%%/sbin/krb5kdc",
+ "kdc_enable": "YES",
-+ "kadmind_program": "/usr/local/sbin/kadmind",
++ "kadmind_program": "%%LOCALBASE%%/sbin/kadmind",
+ "kadmind_enable": "YES",
+ },
+}
@@ -128,7 +128,7 @@
+ def is_installed(self):
+ return (
+ os.path.exists("/etc/rc.d/%s" % self.rc_name) or
-+ os.path.exists("/usr/local/etc/rc.d/%s" % self.rc_name)
++ os.path.exists("%%LOCALBASE%%/etc/rc.d/%s" % self.rc_name)
+ )
+
+ def enable(self, instance_name=""):
diff --git a/net/freeipa-client/files/patch-ipapython_ipautil.py b/net/freeipa-client/files/patch-ipapython_ipautil.py
index 8ec75d1c3dbe..a27fb234ced9 100644
--- a/net/freeipa-client/files/patch-ipapython_ipautil.py
+++ b/net/freeipa-client/files/patch-ipapython_ipautil.py
@@ -5,7 +5,7 @@
# copy default env
env = copy.deepcopy(os.environ)
- env["PATH"] = "/bin:/sbin:/usr/kerberos/bin:/usr/kerberos/sbin:/usr/bin:/usr/sbin"
-+ env["PATH"] = "/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin"
++ env["PATH"] = "/sbin:/bin:/usr/sbin:/usr/bin:%%LOCALBASE%%/sbin:%%LOCALBASE%%/bin"
if stdin:
p_in = subprocess.PIPE
if skip_output:
diff --git a/net/freeipa-client/files/patch-util_ipa__ldap.h b/net/freeipa-client/files/patch-util_ipa__ldap.h
index 1733e8b37389..0423751cd465 100644
--- a/net/freeipa-client/files/patch-util_ipa__ldap.h
+++ b/net/freeipa-client/files/patch-util_ipa__ldap.h
@@ -5,7 +5,7 @@
#include <ldap.h>
-#define DEFAULT_CA_CERT_FILE "/etc/ipa/ca.crt"
-+#define DEFAULT_CA_CERT_FILE "/usr/local/etc/ipa/ca.crt"
++#define DEFAULT_CA_CERT_FILE "%%LOCALBASE%%/etc/ipa/ca.crt"
#define LDAP_SASL_EXTERNAL "EXTERNAL"
#define LDAP_SASL_GSSAPI "GSSAPI"