diff options
Diffstat (limited to 'core/modules/nslcd/module.build')
| -rw-r--r-- | core/modules/nslcd/module.build | 42 | 
1 files changed, 42 insertions, 0 deletions
| diff --git a/core/modules/nslcd/module.build b/core/modules/nslcd/module.build new file mode 100644 index 00000000..76fa2bed --- /dev/null +++ b/core/modules/nslcd/module.build @@ -0,0 +1,42 @@ +#!/bin/bash + +fetch_source() { +	if [ -n "$REQUIRED_NSS_LDAPD_URL" ]; then +		pinfo "Downloading $REQUIRED_NSS_LDAPD_URL ..." +		download_untar "$REQUIRED_NSS_LDAPD_URL" "src/" +	fi +} + +build() { + +	COPYLIST="list_dpkg_output" +	[ -e "$COPYLIST" ] && rm "$COPYLIST" + +	list_packet_files >> "$COPYLIST" +	tarcopy "$(cat "$COPYLIST" | sort -u)" "${MODULE_BUILD_DIR}" + +	# OpenSuSE 13.1 has no 'nss-pam-ldapd'. Let's compile +	if [ -n "$REQUIRED_NSS_LDAPD_URL" ]; then +		cd "${MODULE_WORK_DIR}/src/$REQUIRED_NSS_LDAPD_VERSION" +		pinfo "compiling pam-nss-ldapd for openSuse 13.1 ..." +		./configure || perror "openSuse 13.1 - pam-nss-ldapd: ./configure failed." +		make DESTDIR="${MODULE_BUILD_DIR}" install || perror "openSuse 13.1 - pam-nss-ldapd: make install to ${MODULE_BUILD_DIR} failed." +		cd "$MODULE_BUILD_DIR" +		local NSLCD_PATH=$(find . -executable -name "nslcd")	# Not in path, so we 'find' below MODULE_BUILD_DIR +	else +		cd "$MODULE_BUILD_DIR" +		local NSLCD_PATH=$(which nslcd) +	fi +	[[ $REQUIRED_BINARIES = *nslcd* ]] && [ -z "$NSLCD_PATH" ] && perror "Could not 'which nslcd'" + + +	# Build nslcd service file +	mkdir -p "${MODULE_BUILD_DIR}/etc/systemd/system" +	sed "s,%PATH%,${NSLCD_PATH},g" "${MODULE_DIR}/templates/nslcd-systemd.service" > "${MODULE_BUILD_DIR}/etc/systemd/system/nslcd.service" || perror "Could not fill nslcd.service template" + +	return 0 +} + +post_copy() { +	: +} | 
