pkgsrc/sysutils/webmin/Makefile
mef d14e2b9c57 Updated sysutils/webmin and wbm-* from 1.600 to 1.831
--------------------------------------
---- Changes since 1.590 ----
The titles for existing clone modules can now be changed on the Module
Titles page.

---- Changes since 1.610 ----
- Added a page for viewing and running Webmin scheduled functions.
- Added a section to the Sending Email page to verify that the
  configured mail server settings work.

---- Changes since 1.620 ----
Added a setting to the Web Server Options page to control if redirects
use just a path, or the full URL.

---- Changes since 1.640 ----
Actions on the Webmin Scheduled Functions page can now be clicked on
to change the time the function runs at.

---- Changes since 1.650 ----
Added an SSL option to use only ciphers with perfect forward secrecy.
Added support for two-factor authentication using Authy or Google Authenticator.

---- Changes since 1.660 ----
Updated the UI on several pages to use the standard Webmin library,
for a more consistent look.

---- Changes since 1.730 ----
Added an option to use an SSL connection when Webmin sends email, for
connecting to remote mail servers like Gmail that don't allow
unencrypted SMTP.

---- Changes since 1.770 ----
An SSL certificate can now be requested from Let's Encrypt using a new
tab on the SSL Encryption page.

---- Changes since 1.780 ----
Added an option for automatically renewing Let's Encrypt certificates.
If the Let's Encrypt client is not installed, Webmin will use its own
built-in client code to request a certificate.

---- Changes since 1.800 ----
Added an option to the logging page for sending Webmin action log
messages via email.

---- Changes since 1.810 ----
The Let's Encrypt key size can now be customized.
When Perfect Forward Secrecy ciphers are selected, the required DH
params file is now created and used by Webmin.
2017-02-01 13:00:41 +00:00

146 lines
5.1 KiB
Makefile

# $NetBSD: Makefile,v 1.45 2017/02/01 13:00:44 mef Exp $
.include "version.mk"
DISTNAME= webmin-${WBM_VERSION}
CATEGORIES= sysutils www
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=webadmin/}
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.webmin.com/
COMMENT= Perl web server and CGI for Unix system administration
LICENSE= modified-bsd
DEPENDS+= p5-Net-SSLeay-[0-9]*:../../security/p5-Net-SSLeay
WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}
USE_LANGUAGES= # empty
NO_BUILD= yes
USE_TOOLS+= perl:run
WEBMIN_DIR= ${PREFIX}/share/webmin
WEBMIN_EGDIR= ${PREFIX}/share/examples/webmin
WEBMIN_ETCDIR= ${PKG_SYSCONFDIR}
WEBMIN_VARDIR= ${VARBASE}/webmin
FILES_SUBST+= WEBMIN_DIR=${WEBMIN_DIR:Q}
FILES_SUBST+= WEBMIN_EGDIR=${WEBMIN_EGDIR:Q}
FILES_SUBST+= WEBMIN_ETCDIR=${WEBMIN_ETCDIR:Q}
FILES_SUBST+= WEBMIN_MINIMAL_MODULES=${WEBMIN_MINIMAL_MODULES:Q}
FILES_SUBST+= WEBMIN_VARDIR=${WEBMIN_VARDIR:Q}
MESSAGE_SUBST+= WEBMIN_DIR=${WEBMIN_DIR:Q}
BUILD_DEFS+= VARBASE
WEBMIN_MINIMAL_MODULES= acl cron init inittab man proc servers webmin webminlog
PKG_SYSCONFSUBDIR= webmin
OWN_DIRS_PERMS+= ${WEBMIN_VARDIR} ${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
.for f in config install-dir perl-path var-path version
CONF_FILES+= ${WEBMIN_EGDIR}/${f} ${PKG_SYSCONFDIR}/${f}
.endfor
.for m in ${WEBMIN_MINIMAL_MODULES}
OWN_DIRS_PERMS+= ${PKG_SYSCONFDIR}/${m} \
${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0700
CONF_FILES_PERMS+= ${WEBMIN_EGDIR}/${m}/config \
${PKG_SYSCONFDIR}/${m}/config \
${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0600
.endfor
.for f in miniserv.pem
CONF_FILES_PERMS+= ${WEBMIN_DIR}/${f} ${PKG_SYSCONFDIR}/${f} \
${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0600
.endfor
.for f in miniserv.conf miniserv.users webmin.acl
CONF_FILES_PERMS+= ${WEBMIN_EGDIR}/${f} ${PKG_SYSCONFDIR}/${f} \
${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0600
.endfor
.for f in reload restart start stop
CONF_FILES_PERMS+= ${WEBMIN_EGDIR}/${f} ${PKG_SYSCONFDIR}/${f} \
${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0755
.endfor
RCD_SCRIPTS= webmin
CHECK_INTERPRETER_SKIP+= share/webmin/webmin-gentoo-init
ALL_ENV+= tempdir=${WRKDIR}/.tmp
.include "../../security/openssl/buildlink3.mk"
post-extract:
${CP} ${FILESDIR}/acl_config-dragonfly ${WRKSRC}/acl/config-dragonfly
${CP} ${FILESDIR}/init_config-dragonfly ${WRKSRC}/init/config-dragonfly
${CP} ${FILESDIR}/man_config-dragonfly ${WRKSRC}/man/config-dragonfly
${CP} ${FILESDIR}/proc_config-dragonfly ${WRKSRC}/proc/config-dragonfly
${RM} -r ${WRKSRC}/acl/Authen-SolarisRBAC-0.1*
pre-configure:
cd ${WRKSRC} && \
for m in */module.info; do \
moduledir=$${m%/module.info}; \
case $${moduledir} in \
${WEBMIN_MINIMAL_MODULES:ts|}) ;; \
*) rm -rf $${moduledir} ;; \
esac; \
done && \
for t in */theme.info; do \
rm -rf $${t%/theme.info}; \
done && \
touch ${WRKSRC}/minimal-install
do-configure:
sed -e "s,@WEBMIN_EGDIR@,${DESTDIR}${WEBMIN_EGDIR},g" \
-e "s,@WEBMIN_VARDIR@,${DESTDIR}${WEBMIN_VARDIR},g" \
-e "s,@PERL5@,"${PERL5:Q}",g" \
${FILESDIR}/setup-pre.sh > ${WRKSRC}/setup-pre.sh
cd ${WRKSRC}; for file in acl/config acl/config-*; do \
sed -e "s,^ssleay=.*,ssleay=${SSLBASE}/bin/openssl," \
"$$file" > "$$file.new"; \
${MV} -f "$$file.new" "$$file"; \
done
${FIND} ${WRKSRC} -name "*.orig" -print | ${XARGS} ${RM} -f
# Fix up the path to the config directory in the installed example config
# files.
#
do-install:
${PKGSRC_SETENV} ${INSTALL_ENV} ${MAKE_ENV} \
${SH} ${WRKSRC}/setup.sh ${DESTDIR}${WEBMIN_DIR}
sed -e "/^env_WEBMIN_CONFIG=/s,${DESTDIR}${WEBMIN_EGDIR},${WEBMIN_ETCDIR}," \
-e "/^logout=/s,${DESTDIR}${WEBMIN_EGDIR},${WEBMIN_ETCDIR}," \
-e "/^userfile=/s,${DESTDIR}${WEBMIN_EGDIR},${WEBMIN_ETCDIR}," \
-e "/^keyfile=/s,${DESTDIR}${WEBMIN_EGDIR},${WEBMIN_ETCDIR}," \
-e "s,${DESTDIR},,g" \
${DESTDIR}${WEBMIN_EGDIR}/miniserv.conf > ${WRKDIR}/miniserv.conf
sed -e "s,${DESTDIR},,g" \
${DESTDIR}${WEBMIN_DIR}/setup-pre.sh > ${WRKDIR}/setup-pre.sh
for file in install-dir reload restart start stop var-path; do \
sed -e "s,${DESTDIR}${WEBMIN_EGDIR}/miniserv.conf,${WEBMIN_ETCDIR}/miniserv.conf," \
-e "s,${DESTDIR},,g" \
${DESTDIR}${WEBMIN_EGDIR}/$$file > ${WRKDIR}/$$file; \
done
cd ${DESTDIR}${WEBMIN_EGDIR} && ${RM} -f miniserv.conf install-dir reload restart start stop var-path
for file in miniserv.conf; do \
${INSTALL_DATA} ${WRKDIR}/$$file \
${DESTDIR}${WEBMIN_EGDIR}/$$file; \
${RM} -f ${WRKDIR}/$$file; \
done
for file in setup-pre.sh; do \
${INSTALL_SCRIPT} ${WRKDIR}/$$file \
${DESTDIR}${WEBMIN_DIR}/$$file; \
${RM} -f ${WRKDIR}/$$file; \
done
for file in install-dir reload restart start stop var-path; do \
${INSTALL_SCRIPT} ${WRKDIR}/$$file \
${DESTDIR}${WEBMIN_EGDIR}/$$file; \
${RM} -f ${WRKDIR}/$$file; \
done
${RM} -f ${DESTDIR}${WEBMIN_EGDIR}/miniserv.pem \
${DESTDIR}${WEBMIN_EGDIR}/module.infos.cache
cd ${DESTDIR}${WEBMIN_DIR} && \
${CHMOD} 0400 setup.pl setup.sh setup-pre.sh
cd ${DESTDIR}${WEBMIN_DIR} && \
${CHMOD} -x *.pl */*.pl */*.gif */*/*.gif */*/*.html */*.ca lang/* \
*/lang/* */*.svg */*.png */*.eu
.include "../../mk/bsd.pkg.mk"