summaryrefslogtreecommitdiff
blob: 26fd1fb81709e0f055660f1b3663e9746b019afd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-admin/usermin/usermin-1.130-r1.ebuild,v 1.1 2005/06/19 23:10:03 flameeyes Exp $

IUSE="ssl"

inherit eutils pam

DESCRIPTION="a web-based user administration interface"
HOMEPAGE="http://www.webmin.com/index6.html"
SRC_URI="mirror://sourceforge/webadmin/${P}.tar.gz"

LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"

DEPEND="dev-lang/perl"

RDEPEND="${DEPEND}
	 sys-process/lsof
	 dev-perl/Authen-PAM
	 virtual/pam
	 ssl? ( dev-perl/Net-SSLeay )"

src_unpack() {
	unpack ${A}

	cd ${S}

	# Point to the correct mysql location
	sed -i -e "s:/usr/local/mysql:/usr:g" mysql/config

	epatch ${FILESDIR}/${PN}-1.080-safestop.patch
	epatch ${FILESDIR}/${PN}-1.100-setup-nocheck.patch
}

src_install() {
	# Change /usr/local/bin/perl references
	find . -type f | xargs sed -i -e 's:^#!.*/usr/local/bin/perl:#!/usr/bin/perl:'

	dodir /usr/libexec/usermin
	cp -pR * ${D}/usr/libexec/usermin

	newinitd ${FILESDIR}/init.d.usermin usermin

	newpamd ${FILESDIR}/${PN}.pam-include ${PN}

	# Fix ownership
	chown -R root:0 ${D}

	dodir /etc/usermin
	dodir /var/log/usermin

	config_dir=${D}/etc/usermin
	var_dir=${D}/var/log/usermin
	perl=${ROOT}/usr/bin/perl
	autoos=1
	port=20000
	login=root
	crypt="XXX"
	host=`hostname`
	use ssl && ssl=1 || ssl=0
	atboot=0
	nostart=1
	nochown=1
	autothird=1
	nouninstall=1
	noperlpath=1
	tempdir="${T}"
	export config_dir var_dir perl autoos port login crypt host ssl atboot nostart nochown autothird nouninstall noperlpath tempdir
	${D}/usr/libexec/usermin/setup.sh > ${T}/usermin-setup.out 2>&1 || die "Failed to create initial usermin configuration."

	# Fixup the config files to use their real locations
	sed -i -e 's:^pidfile=.*$:pidfile=${ROOT}/var/run/usermin.pid:' ${D}/etc/usermin/miniserv.conf
	find ${D}/etc/usermin -type f | xargs sed -i -e "s:${D}:${ROOT}:g"

	# Cleanup from the config script
	rm -rf ${D}/var/log/usermin
	keepdir /var/log/usermin/
}

pkg_postinst() {
	einfo "To make usermin start at boot time, run: 'rc-update add usermin default'."
	einfo "Point your web browser to http://localhost:20000 to use usermin."
}

pkg_prerm() {
	${ROOT}/etc/init.d/usermin stop >& /dev/null
}