Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 486230 - sys-auth/realmd-0.15.0 - DBus service for configuring kerberos and other online identities
Summary: sys-auth/realmd-0.15.0 - DBus service for configuring kerberos and other onli...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal enhancement with 2 votes (vote)
Assignee: Default Assignee for New Packages
URL:
Whiteboard:
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2013-09-27 23:24 UTC by Jerrod Frost
Modified: 2024-02-15 14:13 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild that builds but complains of missing packages at runtime (realmd-0.17.1.ebuild,1.04 KB, text/plain)
2022-11-08 15:42 UTC, Preston Crow
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jerrod Frost 2013-09-27 23:24:43 UTC
I'm not seeing an ebuild for realmd in portage. I'd love the capability to easily join an AD domain.

I've tried the following ebuild, but cannot seem to get it working. It fails during the compile phase and I've noticed it also has the dependency of

gdbus-codegen

which the ebuild doesn't have as a required dependency. If there is any other data I can offer please let me know.


# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=5

AUTOTOOLS_AUTORECONF=1

inherit autotools-utils

DESCRIPTION="DBus service for configuring kerberos and other online identities"
HOMEPAGE="http://cgit.freedesktop.org/realmd/realmd/"
SRC_URI="http://cgit.freedesktop.org/realmd/realmd/snapshot/${P}.zip"

LICENSE="LGPL-2+"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""

DEPEND=""
RDEPEND="${DEPEND}"

src_prepare() {
        sed -e '/gentoo-release/s/dnl/ /g' -i configure.ac
        autotools-utils_src_prepare
}
Comment 1 Elias Probst 2014-03-13 01:33:32 UTC
realmd depends on app-admin/packagekit.

Furthermore, to run realmd on Gentoo, this ebuild needs to provide a Gentoo specific configuration in "service/realmd-gentoo.conf" which should then also be preferrably made available to upstream once it is considered working.

The following sections are required for the package dependencies which are then pulled in via realmd's PackageKit support:


[samba-packages]
net-fs/samba[client] = /usr/bin/net

[winbind-packages]
net-fs/samba[winbind] = /usr/sbin/winbindd

[sssd-packages]
sys-auth/sssd = /usr/sbin/sssd

I'm not sure, whether PackageKit also accepts package atoms including a USE dependency like "net-fs/samba[client]". This needs to be tested.


The {enable,disable,restart,stop,…} definitions in the [commands] section need to generated dynamically based on whether the systemd USE flag is set or not.
Comment 2 Elias Probst 2014-03-14 18:27:21 UTC
After thinking a bit about it, we should remove/disable the PackageKit integration on Gentoo and add the required packages simply as runtime dependencies in the ebuild.

Otherwise, a permanent fight between depclean and realmd will happen, further side-effects might appear on top of that.
Comment 3 Preston Crow 2022-11-08 15:42:53 UTC
Created attachment 829303 [details]
ebuild that builds but complains of missing packages at runtime

My employer is planning to switch from NIS to sssd for Linux systems, which also requires realmd.  I took the ebuild someone else wrote and modified it based on others to get something that builds and installs on my system (I'm not running systemd).  Unfortunately there are runtime checks for packages, and I haven't traced through the code to see what it's looking for, but as it's building now, it's not happy.  I would love some assistance in getting this running.
Comment 4 Markus Giese 2023-11-02 00:33:15 UTC
any progress here ? i would like to join my samba server on win2019 server ad ...the guide relies on realmd
Comment 5 Joakim Tjernlund 2024-02-15 14:13:05 UTC
You can use adcli/net cmd to join manually too.
#!/bin/sh
SAVE_HOSTNAME=$(hostname -f)
#HOSTNAME=${HOSTNAME:-`hostname --short`}
HOSTNAME=$(hostname --short)
#hostname "${HOSTNAME}"
ADS_USER= #Add user that can join
PASSWD=
IOPASSWD="--prompt-password"
DNSDOMAIN=
REALM=

DNSDOMAIN="maydomain.com"
REALM="MYDOMAIN.COM"
DC="mydc.com"

[ $# -ge 1 ] && ADS_USER=${1}
[ $# -ge 2 ] && PASSWD=${2} && IOPASSWD="--stdin-password"

mv -f /etc/krb5.keytab  /etc/krb5.keytab.old &> /dev/null

read OS_FULL </etc/gentoo-release
OS_NAME="${OS_FULL/ - ?*/}"
OS_VER="${OS_FULL/?* - /}"

#echo "Deleting any existing computer account"
#printf "%s" $PASSWD | /usr/sbin/adcli -v delete-computer $IOPASSWD -U $ADS_USER

echo Joining primary domain $DNSDOMAIN
if [ "x$PASSWD" = "x" ]; then
    /usr/sbin/adcli -v join --show-details $IOPASSWD -U $ADS_USER -S "${DC}" -D "${DNSDOMAIN}" "${DNSDOMAIN}" --os-name="${OS_NAME}" --os-version="$OS_V
ER" --host-fqdn="${HOSTNAME}"."${DNSDOMAIN}" --add-samba-data --service-name="host" --service-name="nfs" --service-name="RestrictedKrbHost" --service-na
me="cifs" --user-principal="host/${HOSTNAME}.${DNSDOMAIN}@${REALM}"
else
    printf "%s" $PASSWD | /usr/sbin/adcli -v join --show-details $IOPASSWD -U $ADS_USER -S "${DC}" -D "${DNSDOMAIN}" "${DNSDOMAIN}" --os-name="${OS_NAME
}" --os-version="$OS_VER" --host-fqdn="${HOSTNAME}"."${DNSDOMAIN}" --add-samba-data --service-name="host" --service-name="nfs" --service-name="Restricte
dKrbHost" --service-name="cifs" --user-principal="host/${HOSTNAME}.${DNSDOMAIN}@${REALM}"
fi
#hostname "${SAVE_HOSTNAME}"