2018-07-21 01:44:44 +01:00
|
|
|
{ stdenv, fetchurl, pkgs, glibc, augeas, dnsutils, c-ares, curl,
|
2018-08-29 13:26:53 +01:00
|
|
|
cyrus_sasl, ding-libs, libnl, libunistring, nss, samba, nfs-utils, doxygen,
|
2016-04-14 19:18:09 +01:00
|
|
|
python, python3, pam, popt, talloc, tdb, tevent, pkgconfig, ldb, openldap,
|
2018-07-17 21:11:16 +01:00
|
|
|
pcre, kerberos, cifs-utils, glib, keyutils, dbus, fakeroot, libxslt, libxml2,
|
2018-07-21 01:44:44 +01:00
|
|
|
libuuid, ldap, systemd, nspr, check, cmocka, uid_wrapper,
|
|
|
|
nss_wrapper, ncurses, Po4a, http-parser, jansson
|
2017-10-02 15:57:17 +01:00
|
|
|
, withSudo ? false }:
|
2016-04-14 19:18:09 +01:00
|
|
|
|
|
|
|
let
|
2018-07-17 21:11:16 +01:00
|
|
|
docbookFiles = "${pkgs.docbook_xsl}/share/xml/docbook-xsl/catalog.xml:${pkgs.docbook_xml_dtd_44}/xml/dtd/docbook/catalog.xml";
|
2016-04-14 19:18:09 +01:00
|
|
|
in
|
2017-02-10 17:47:13 +00:00
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
name = "sssd-${version}";
|
2018-06-17 17:18:31 +01:00
|
|
|
version = "1.16.2";
|
2016-04-14 19:18:09 +01:00
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
url = "https://fedorahosted.org/released/sssd/${name}.tar.gz";
|
2018-06-17 17:18:31 +01:00
|
|
|
sha256 = "032ppk57qs1lnvz7pb7lw9ldwm9i1yagh9fzgqgn6na3bg61ynzy";
|
2016-04-14 19:18:09 +01:00
|
|
|
};
|
|
|
|
|
2017-02-10 17:47:13 +00:00
|
|
|
# Something is looking for <libxml/foo.h> instead of <libxml2/libxml/foo.h>
|
|
|
|
NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
|
|
|
|
|
2016-04-14 19:18:09 +01:00
|
|
|
preConfigure = ''
|
|
|
|
export SGML_CATALOG_FILES="${docbookFiles}"
|
|
|
|
export PYTHONPATH=${ldap}/lib/python2.7/site-packages
|
|
|
|
export PATH=$PATH:${pkgs.openldap}/libexec
|
|
|
|
|
|
|
|
configureFlagsArray=(
|
|
|
|
--prefix=$out
|
|
|
|
--sysconfdir=/etc
|
|
|
|
--localstatedir=/var
|
|
|
|
--enable-pammoddir=$out/lib/security
|
|
|
|
--with-os=fedora
|
|
|
|
--with-pid-path=/run
|
|
|
|
--with-python2-bindings
|
|
|
|
--with-python3-bindings
|
|
|
|
--with-syslog=journald
|
|
|
|
--without-selinux
|
|
|
|
--without-semanage
|
|
|
|
--with-xml-catalog-path=''${SGML_CATALOG_FILES%%:*}
|
|
|
|
--with-ldb-lib-dir=$out/modules/ldb
|
|
|
|
--with-nscd=${glibc.bin}/sbin/nscd
|
|
|
|
)
|
2017-10-02 15:57:17 +01:00
|
|
|
'' + stdenv.lib.optionalString withSudo ''
|
|
|
|
configureFlagsArray+=("--with-sudo")
|
2016-04-14 19:18:09 +01:00
|
|
|
'';
|
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
2017-10-23 17:38:02 +01:00
|
|
|
buildInputs = [ augeas dnsutils c-ares curl cyrus_sasl ding-libs libnl libunistring nss
|
2018-08-29 13:26:53 +01:00
|
|
|
samba nfs-utils doxygen python python3 popt
|
2016-04-14 19:18:09 +01:00
|
|
|
talloc tdb tevent pkgconfig ldb pam openldap pcre kerberos
|
2018-07-17 21:11:16 +01:00
|
|
|
cifs-utils glib keyutils dbus fakeroot libxslt libxml2
|
2017-10-23 17:38:02 +01:00
|
|
|
libuuid ldap systemd nspr check cmocka uid_wrapper
|
2016-04-14 19:18:09 +01:00
|
|
|
nss_wrapper ncurses Po4a http-parser jansson ];
|
|
|
|
|
|
|
|
makeFlags = [
|
|
|
|
"SGML_CATALOG_FILES=${docbookFiles}"
|
|
|
|
];
|
|
|
|
|
|
|
|
installFlags = [
|
|
|
|
"sysconfdir=$(out)/etc"
|
|
|
|
"localstatedir=$(out)/var"
|
|
|
|
"pidpath=$(out)/run"
|
|
|
|
"sss_statedir=$(out)/var/lib/sss"
|
|
|
|
"logpath=$(out)/var/log/sssd"
|
|
|
|
"pubconfpath=$(out)/var/lib/sss/pubconf"
|
|
|
|
"dbpath=$(out)/var/lib/sss/db"
|
|
|
|
"mcpath=$(out)/var/lib/sss/mc"
|
|
|
|
"pipepath=$(out)/var/lib/sss/pipes"
|
|
|
|
"gpocachepath=$(out)/var/lib/sss/gpo_cache"
|
|
|
|
"secdbpath=$(out)/var/lib/sss/secrets"
|
|
|
|
"initdir=$(out)/rc.d/init"
|
|
|
|
];
|
|
|
|
|
|
|
|
postInstall = ''
|
|
|
|
rm -rf "$out"/run
|
|
|
|
rm -rf "$out"/rc.d
|
|
|
|
rm -f "$out"/modules/ldb/memberof.la
|
|
|
|
find "$out" -depth -type d -exec rmdir --ignore-fail-on-non-empty {} \;
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
|
|
description = "System Security Services Daemon";
|
|
|
|
homepage = https://fedorahosted.org/sssd/;
|
|
|
|
license = licenses.gpl3;
|
2017-02-10 17:47:13 +00:00
|
|
|
platforms = platforms.linux;
|
2016-04-14 19:18:09 +01:00
|
|
|
maintainers = [ maintainers.e-user ];
|
|
|
|
};
|
|
|
|
}
|