summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Pfrang2016-09-20 00:25:18 +0200
committerJohannes Pfrang2016-09-20 00:25:18 +0200
commitf265135de3614c1f7c102d47dbdfd6a4409fa420 (patch)
treeafd75eac75b358de6e2f1449ef082b7f659a1c2c
downloadaur-f265135de3614c1f7c102d47dbdfd6a4409fa420.tar.gz
Initial import of teleport into the AUR
-rw-r--r--.SRCINFO17
-rw-r--r--PKGBUILD65
-rw-r--r--teleport.install8
-rw-r--r--teleport.service11
4 files changed, 101 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..07b67447cb66
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,17 @@
+pkgbase = teleport
+ pkgdesc = Modern SSH server for remotely accessing clusters of Linux servers via SSH or HTTPS
+ pkgver = 1.1.0
+ pkgrel = 1
+ url = https://gravitational.com/teleport
+ install = teleport.install
+ arch = x86_64
+ license = Apache
+ makedepends = git
+ makedepends = go>=1.7.0
+ source = teleport-1.1.0.tar.gz::https://github.com/gravitational/teleport/archive/v1.1.0.tar.gz
+ source = teleport.service
+ sha256sums = f86e9bc410fa90d139df0268a6f7be194b406e94a1df5c029287dda262f41015
+ sha256sums = 3e332207cfa984a531044d47fde379a9c242aa92e0fef7804a031dff865396dc
+
+pkgname = teleport
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..4567c191f7f1
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,65 @@
+# Maintainer: Johannes Pfrang <johannespfrang+arch@gmail.com>
+
+pkgname=teleport
+pkgver=1.1.0
+pkgrel=1
+# TODO: shorten?
+pkgdesc="Modern SSH server for remotely accessing clusters of Linux servers via SSH or HTTPS"
+# TODO: build for i686 possible?
+arch=('x86_64')
+url="https://gravitational.com/teleport"
+license=('Apache')
+# TODO: should we have separate packages for server and client?
+#groups=()
+makedepends=('git' 'go>=1.7.0')
+install=teleport.install
+source=("${pkgname}-${pkgver}.tar.gz::https://github.com/gravitational/teleport/archive/v$pkgver.tar.gz"
+ "teleport.service")
+sha256sums=('f86e9bc410fa90d139df0268a6f7be194b406e94a1df5c029287dda262f41015'
+ '3e332207cfa984a531044d47fde379a9c242aa92e0fef7804a031dff865396dc')
+
+prepare() {
+ # Set up directory structure for `go build`
+ mkdir -p "${srcdir}/src/github.com/gravitational/"
+ mv -f "${pkgname}-${pkgver}" "${srcdir}/src/github.com/gravitational/teleport"
+}
+
+build() {
+ cd "${srcdir}/src/github.com/gravitational/teleport"
+ export GOPATH="$srcdir"
+ # Build with flags from upstream Makefile
+ go build -o teleport -i -ldflags -w ./tool/teleport
+ go build -o tctl -i -ldflags -w ./tool/tctl
+ go build -o tsh -i -ldflags -w ./tool/tsh
+}
+
+check() {
+ cd "${srcdir}/src/github.com/gravitational/teleport"
+ # Copied from upstream Makefile, but without coverage analysis and vet
+ # Note: Will work with next version
+ #go test -v ./tool/tsh/... \
+ # ./lib/... \
+ # ./tool/teleport... -tags test
+}
+
+package() {
+ # systemd unit file
+ mkdir -p "${pkgdir}/usr/lib/systemd/system"
+ install -m644 -t "${pkgdir}/usr/lib/systemd/system/" "${srcdir}/teleport.service"
+
+ cd "${srcdir}/src/github.com/gravitational/teleport"
+
+ # docs
+ mkdir -p "${pkgdir}/usr/share/doc/teleport"
+ cp -dpr --no-preserve=ownership docs/* "${pkgdir}/usr/share/doc/teleport/"
+
+ # no man pages (yet)
+
+ # binaries
+ mkdir -p "${pkgdir}/usr/bin"
+ install -m755 -t "${pkgdir}/usr/bin/" teleport tctl tsh
+
+ # assets
+ mkdir -p "${pkgdir}/usr/share/teleport"
+ cp -dpr --no-preserve=ownership web/dist/* "${pkgdir}/usr/share/teleport"
+}
diff --git a/teleport.install b/teleport.install
new file mode 100644
index 000000000000..b2af6197a961
--- /dev/null
+++ b/teleport.install
@@ -0,0 +1,8 @@
+post_install() {
+ echo 'Please follow the instructions in `/usr/share/doc/teleport/quickstart.md`'
+ echo 'or on https://gravitational.com/teleport/docs/quickstart/ to set things up.'
+}
+
+post_remove() {
+ echo 'You may want to delete `/var/lib/teleport` to remove leftover application data.'
+}
diff --git a/teleport.service b/teleport.service
new file mode 100644
index 000000000000..98a0b9fddbcf
--- /dev/null
+++ b/teleport.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Teleport SSH Service
+After=network.target
+
+[Service]
+Type=simple
+Restart=always
+ExecStart=/usr/bin/teleport start
+
+[Install]
+WantedBy=multi-user.target