summaryrefslogtreecommitdiff
blob: 6f4d78f26c1601aa096eed9428e343a54d9d6492 (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
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI="7"

inherit user

DESCRIPTION="A client for signing certificates with an ACME-server"
HOMEPAGE="https://github.com/lukas2511/dehydrated"
SRC_URI="https://github.com/lukas2511/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm arm64 x86"
IUSE="+cron"

DEPEND="cron? ( virtual/cron )"
RDEPEND="
	${DEPEND}
	app-shells/bash
	net-misc/curl
"

src_configure() {
	default
	sed -i  's,^#CONFIG_D=.*,CONFIG_D="/etc/dehydrated/config.d",' docs/examples/config || die "could not set config (CONFIG_D)"
}

src_install() {
	dobin "${PN}"
	insinto "/etc/${PN}"
	doins docs/examples/{config,domains.txt,hook.sh}
	fperms u+x "/etc/${PN}/hook.sh"
	dodoc docs/*.md

	insinto /etc/"${PN}"/config.d
	doins "${FILESDIR}"/00_gentoo.sh

	if use cron ; then
		insinto "/etc/cron.d"
		newins "${FILESDIR}"/cron "${PN}"
	fi

	dodir /etc/"${PN}"/config.d
	keepdir /etc/"${PN}"/config.d

	default
}

pkg_preinst() {
	enewgroup "${PN}"
	enewuser "${PN}" -1 -1 /var/lib/"${PN}" "${PN}"
}

pkg_postinst() {
	if [[ "${REPLACING_VERSIONS}" =~ (0\.3\.1|0\.4\.0) ]]; then
		ewarn ""
		ewarn "The new default BASEDIR is now '/var/lib/dehydrated'"
		ewarn "Please consider migrating your data with a command like"
		ewarn ""
		ewarn "  'mv -v /etc/dehydrated/{accounts,archive,certs,lock} /var/lib/dehydrated'"
		ewarn ""
		ewarn "and make sure BASEDIR is set to '/var/lib/dehydrated'"
		ewarn ""
	fi
	einfo "See /etc/dehydrated/config for configuration."
	use cron && einfo "After finishing setup you should enable the cronjob in /etc/cron.d/dehydrated."
}