aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCheng-Lung Sung <clsung@FreeBSD.org>2007-08-15 06:48:36 +0000
committerCheng-Lung Sung <clsung@FreeBSD.org>2007-08-15 06:48:36 +0000
commit3a8f5e82e48fc7d94710868985288f28094ce33e (patch)
treea08f095628ad20a73607a10c9d6ebed0f204fa96
parent40974845b485cee3dc71bfc3883df316c1218505 (diff)
downloadports-3a8f5e82e48fc7d94710868985288f28094ce33e.tar.gz
ports-3a8f5e82e48fc7d94710868985288f28094ce33e.zip
Notes
-rw-r--r--security/prelude-manager/Makefile16
-rw-r--r--security/prelude-manager/distinfo6
-rw-r--r--security/prelude-manager/files/pkg-deinstall.in17
-rw-r--r--security/prelude-manager/files/pkg-install.in74
4 files changed, 107 insertions, 6 deletions
diff --git a/security/prelude-manager/Makefile b/security/prelude-manager/Makefile
index a2b918f37841..03c6dda8f245 100644
--- a/security/prelude-manager/Makefile
+++ b/security/prelude-manager/Makefile
@@ -5,8 +5,7 @@
# $FreeBSD$
PORTNAME= prelude-manager
-PORTVERSION= 0.9.8
-PORTREVISION= 1
+PORTVERSION= 0.9.9
CATEGORIES= security
MASTER_SITES= http://www.prelude-ids.org/download/releases/ \
http://www.prelude-ids.org/download/releases/old/
@@ -32,10 +31,21 @@ PRELUDEDIR?= /nonexistent
PRELUDEUID= 281
PRELUDEGID= ${PRELUDEUID}
+MAN1= prelude-manager.1
+
.include <bsd.port.pre.mk>
+PLIST_SUB+= PRELUDEDIR=${PRELUDEDIR} \
+ PRELUDEUSER=${PRELUDEUSER} \
+ PRELUDEGROUP=${PRELUDEGROUP}
+
+SUB_FILES= pkg-install \
+ pkg-deinstall
+
+SUB_LIST= ${PLIST_SUB}
+
.if defined(WITHOUT_XML)
-PLIST_SUB+= WITH_XML="@comment "
+PLIST_SUB+= WITH_XML="@comment "
CONFIGURE_ARGS+= --disable-xmltest --without-xml
.else
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
diff --git a/security/prelude-manager/distinfo b/security/prelude-manager/distinfo
index aad9fb374b9a..53eb2d0e2667 100644
--- a/security/prelude-manager/distinfo
+++ b/security/prelude-manager/distinfo
@@ -1,3 +1,3 @@
-MD5 (prelude-manager-0.9.8.tar.gz) = be73ee46a7279200c5b9fcc4a2f9b7ad
-SHA256 (prelude-manager-0.9.8.tar.gz) = c5a41ba98ff05d4c75f237e7e8c01efb8c086362b0713736d4d3451a1c023f15
-SIZE (prelude-manager-0.9.8.tar.gz) = 617261
+MD5 (prelude-manager-0.9.9.tar.gz) = ca9258faadb7306863dffeac8f855161
+SHA256 (prelude-manager-0.9.9.tar.gz) = 734bd844df4e337cb989ea9700d60ca2d0eae03a5b0e97a5559b3addb2498ec6
+SIZE (prelude-manager-0.9.9.tar.gz) = 647696
diff --git a/security/prelude-manager/files/pkg-deinstall.in b/security/prelude-manager/files/pkg-deinstall.in
new file mode 100644
index 000000000000..c1a7591a1955
--- /dev/null
+++ b/security/prelude-manager/files/pkg-deinstall.in
@@ -0,0 +1,17 @@
+#!/bin/sh -
+#
+# $FreeBSD$
+#
+
+PRELUDEUSER=%%PRELUDEUSER%%
+PRELUDEGROUP=%%PRELUDEGROUP%%
+
+if [ "$2" = "POST-DEINSTALL" ]; then
+ if /usr/sbin/pw group show "${PRELUDEGROUP}" 2>&1 >/dev/null; then
+ echo "You should manually remove the \"${PRELUDEGROUP}\" group."
+ fi
+
+ if /usr/sbin/pw user show "${PRELUDEUSER}" 2>&1 >/dev/null; then
+ echo "You should manually remove the \"${PRELUDEUSER}\" user."
+ fi
+fi
diff --git a/security/prelude-manager/files/pkg-install.in b/security/prelude-manager/files/pkg-install.in
new file mode 100644
index 000000000000..5c58a9fc2d08
--- /dev/null
+++ b/security/prelude-manager/files/pkg-install.in
@@ -0,0 +1,74 @@
+#!/bin/sh -
+#
+# $FreeBSD$
+#
+
+PRELUDEDIR=%%PRELUDEDIR%%
+PRELUDEUSER=%%PRELUDEUSER%%
+PRELUDEGROUP=%%PRELUDEGROUP%%
+PRELUDEUID=%%PRELUDEUID%%
+PRELUDEGID=%%PRELUDEGID%%
+
+ask() {
+ local question default answer
+
+ question=$1
+ default=$2
+ if [ -z "${PACKAGE_BUILDING}" ]; then
+ read -p "${question} [${default}]? " answer
+ fi
+ if [ "x${answer}" = "x" ]; then
+ answer=${default}
+ fi
+ echo ${answer}
+}
+
+yesno() {
+ local default question answer
+
+ question=$1
+ default=$2
+ while :; do
+ answer=$(ask "${question}" "${default}")
+ case "${answer}" in
+ [Yy][Ee][Ss]|[Yy])
+ return 0
+ ;;
+ [Nn][Oo]|[Nn])
+ return 1
+ ;;
+ esac
+ echo "Please answer yes or no."
+ done
+}
+
+if [ "$2" = "PRE-INSTALL" ]; then
+ if /usr/sbin/pw group show "${PRELUDEGROUP}" 2>&1 >/dev/null; then
+ echo "You already have a \"${PRELUDEGROUP}\" group, so I will use it."
+ else
+ echo "You need a \"${PRELUDEGROUP}\" group."
+ if yesno "Would you like me to create it" "YES"; then
+ /usr/sbin/pw groupadd "${PRELUDEGROUP}" -g "${PRELUDEGID}" -h - || \
+ /usr/sbin/pw groupadd "${PRELUDEGROUP}" -h - || exit
+ echo "Done."
+ else
+ echo "Please create the \"${PRELUDEGROUP}\" group manually and try again."
+ exit 1
+ fi
+ fi
+
+ if /usr/sbin/pw user show "${PRELUDEUSER}" 2>&1 >/dev/null; then
+ echo "You already have a \"${PRELUDEUSER}\" user, so I will use it."
+ else
+ echo "You need a \"${PRELUDEUSER}\" user."
+ if yesno "Would you like me to create it" "YES"; then
+ /usr/sbin/pw useradd "${PRELUDEUSER}" -u "${PRELUDEUID}" -g "${PRELUDEGROUP}" -h - -d "${PRELUDEDIR}" \
+ -s /sbin/nologin -c "Prelude pseudo-user" || \
+ /usr/sbin/pw useradd "${PRELUDEUSER}" -g "${PRELUDEGROUP}" -h - -d "${PRELUDEDIR}" \
+ -s /sbin/nologin -c "Prelude pseudo-user" || exit
+ else
+ echo "Please create the \"${PRELUDEUSER}\" user manually and try again."
+ exit 1
+ fi
+ fi
+fi