aboutsummaryrefslogtreecommitdiffstats
path: root/community/tinyssh/APKBUILD
blob: 747660ac0fcf06075b1a0309b4ed524b5ffb3dfb (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
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer: Stuart Cardall <developer@it-offshore.co.uk>
pkgname=tinyssh
pkgver=20180201
pkgrel=2
pkgdesc="Small SSH server using NaCl / TweetNaCl (no dependency on OpenSSL)"
url="https://tinyssh.org/"
arch="all"
license="CC0-1.0"
_openrc_deps="ucspi-tcp6"
makedepends="libsodium-dev"
options="!check"
subpackages="$pkgname-doc $pkgname-openrc"
source="$pkgname-$pkgver.tar.gz::https://github.com/janmojzis/$pkgname/archive/$pkgver.tar.gz
	$pkgname.initd
	$pkgname.confd
	"
builddir="$srcdir"/$pkgname-$pkgver

build() {
	cd "$builddir"
	export LIBS="-lsodium"
	export CFLAGS="$CFLAGS -I/usr/include/sodium"
	export LDFLAGS="-L/usr/lib"
	make
}

check() {
	cd "$builddir"
	make check
}

package() {
	cd "$builddir"
	make install DESTDIR="${pkgdir}"

	mkdir -p "$pkgdir"/etc/$pkgname
	install -m755 -D "$srcdir"/$pkgname.initd \
		"$pkgdir"/etc/init.d/tinysshd
	install -m644 -D "$srcdir"/$pkgname.confd \
		"$pkgdir"/etc/conf.d/tinysshd

	# post-install message
	mkdir -p "$pkgdir/usr/share/doc/$pkgname"
	cat > $pkgdir/usr/share/doc/$pkgname/README.alpine <<EOF
TinySSH can be run in 3 different ways:
--------------------------------------
(1) /etc/init.d/tinysshd (requires tcpserver & takes care of key generation)

(2) via inetd (you will need to 'tinysshd-makekeys <dir>' manually):

echo '22 stream tcp nowait root /usr/sbin/tinysshd tinysshd -l -v /etc/tinyssh/sshkeys' >> /etc/inetd.conf
rc-service inetd start

(3) Using runit with either (1) or (2)

Stealth SSH with FWKNOP: https://it-offshore.co.uk/security/53-stealth-your-ssh-port-ssh-into-lxc-containers
EOF
}


openrc() {
	default_openrc
	depends="$_openrc_deps"
}

sha512sums="fa0e0245168fc0549fa6db807106e0b3c51be479498de6bb4ced714e2bb156613447333ed034e00d8c24dd79411f632174f0d8f5b1cf2f1d26c77dd5515971e8  tinyssh-20180201.tar.gz
22140d281d5017ea07b819b25ff11814c2edcd6eb09a126f9ad325fae38117531ab5136296023df07ecd036adfaf664b4434e1bb215b9f628bc95dd1873c03fa  tinyssh.initd
7c6282a6ae972d83d3e624530cac4958adee1e2313d0e44aff38c94bde1a3f549a536ec80e594d44c29a6a981919dd30322e8d8511626fdb6493c98587047392  tinyssh.confd"