summaryrefslogtreecommitdiff
path: root/www-apps/ttyd
diff options
context:
space:
mode:
Diffstat (limited to 'www-apps/ttyd')
-rw-r--r--www-apps/ttyd/Manifest7
-rw-r--r--www-apps/ttyd/files/ttyd.confd29
-rw-r--r--www-apps/ttyd/files/ttyd.initd14
-rw-r--r--www-apps/ttyd/files/ttyd.service10
-rw-r--r--www-apps/ttyd/metadata.xml10
-rw-r--r--www-apps/ttyd/ttyd-1.7.3.ebuild41
-rw-r--r--www-apps/ttyd/ttyd-9999.ebuild42
7 files changed, 153 insertions, 0 deletions
diff --git a/www-apps/ttyd/Manifest b/www-apps/ttyd/Manifest
new file mode 100644
index 000000000000..43cc1b577977
--- /dev/null
+++ b/www-apps/ttyd/Manifest
@@ -0,0 +1,7 @@
+AUX ttyd.confd 1715 BLAKE2B 935298b712e2b52d98e7f811cd386497c34643933b86a4920f7744cd5fb6f2aadf3ac3b1ddb4567db526a9d7b079a7660f482609e955fb23f24b686e52cb7c9f SHA512 3eb0c9c71cb18e65c2a42c07581b7593441a4781bd1a94010e891ef1970babac5d78b3966b4e8bab95f6d67c3d1f03e4a75839b933d0dc0bf98e2fd2d52844ad
+AUX ttyd.initd 308 BLAKE2B 9d78f775a0e529d55cddfd92488829d2aa79f2321b5f70c54649a8a6faeffb0ceaa899cf19187c6b51919092348659cb1d930bf144921dab65e1f007c6ef0054 SHA512 a955068ab20f06165c10af89ae7e02c38f24247f7b7a5aa86da38cf4361555c6bb009a76e34d1ff6fb41df2555d91d42bc1494a2324c30a89098fdf312015e35
+AUX ttyd.service 152 BLAKE2B 2f57682dec6a2d7df5d36955abcb71ad37df4878ad89be286777e91a35a1761680a41725b22fdfa2df863bb1fbd7d712e836ede92da0c4ed41a78dd3c38a8196 SHA512 4141f3d12fba354ec1e84f7200f006dc3bc65ccd798b95d991b7b0d45f619605599b9ef635aa532477acf2dc82604df85b959b7f22de1057b20e9b1025fd4a2c
+DIST ttyd-1.7.3.tar.gz 579492 BLAKE2B 14b66dbe83c0ccb601a6e3bf35a804f69f679387c9aca2f55a055dda85b2e3a396ddb4f9a3fb56575d0554837faf1d5c090cf66f4e7571201323659db3feb0b7 SHA512 e0900e2b4620095717d0f32206d08177ce74bc2f24cd9c20793cc2e370a8ee961272b73698b0dda857360703df20378c080293dfdfd287ae863801d338c8b2a4
+EBUILD ttyd-1.7.3.ebuild 871 BLAKE2B f3f20633191809ee5a78162d8673719763eda0bffee47ee492833535e2bce61996a119dc79a3b0165f56c5348d018f55c1a99a64ba6498052cdda46b054de113 SHA512 5a120f7945c5c6ef85f76de5195d6c479adc2628e05af4befcaad0af0e284805fd77cc1e86ec9f6f74ff75ab4eca5dd7bcfefaebcf8b5e27881a2262e2bb00ab
+EBUILD ttyd-9999.ebuild 886 BLAKE2B 0348cfa5c120ff52241d1cd77844c109d2bacbc5291bdfe6ba2769b4080f7db94221643751cc770ac7b00c0a93852456e5a5edb37bb5ea2fc9df79b032f19ca3 SHA512 d1141653a5fcf41a8d9f1c03f24b687d415dadf1bbdc5f07c5b0f540a02e513efcf31fa317b740113fe36107bef04d92ba0370b8ff8f74ec2faa029e68be164f
+MISC metadata.xml 295 BLAKE2B 013599ca9cf89c3ca42d5adeea70d32f852bf090085eba9525ccfd3e1af91df4235eaebc252ac2d4c1474cd27a15a5fc5a735196979acb73d3ca3a9f2ed090d0 SHA512 8b4defd8be6208c50bba2dc4902d1b4c10bfa4bb4ef255e5736ca9f20f9f7a476c53f6f4cdfa47d839791fe7fda79128ce975592ca400b94e250ad2f9663295c
diff --git a/www-apps/ttyd/files/ttyd.confd b/www-apps/ttyd/files/ttyd.confd
new file mode 100644
index 000000000000..57d24e3fb394
--- /dev/null
+++ b/www-apps/ttyd/files/ttyd.confd
@@ -0,0 +1,29 @@
+# conf.d file for ttyd
+
+# Please check man 1 ttyd for more information about the options
+#
+# Some of the meaningful options are:
+# -p, --port Port to listen (default: 7681, use `0` for random port)
+# -i, --interface Network interface to bind (eg: eth0), or UNIX domain socket path (eg: /var/run/ttyd.sock)
+# -c, --credential Credential for Basic Authentication (format: username:password)
+# -u, --uid User id to run with
+# -g, --gid Group id to run with
+# -s, --signal Signal to send to the command when exit it (default: 1, SIGHUP)
+# -r, --reconnect Time to reconnect for the client in seconds (default: 10)
+# -R, --readonly Do not allow clients to write to the TTY
+# -t, --client-option Send option to client (format: key=value), repeat to add more options
+# -T, --terminal-type Terminal type to report, default: xterm-256color
+# -O, --check-origin Do not allow websocket connection from different origin
+# -m, --max-clients Maximum clients to support (default: 0, no limit)
+# -o, --once Accept only one client and exit on disconnection
+# -B, --browser Open terminal with the default system browser
+# -I, --index Custom index.html path
+# -6, --ipv6 Enable IPv6 support
+# -S, --ssl Enable SSL
+# -C, --ssl-cert SSL certificate file path
+# -K, --ssl-key SSL key file path
+# -A, --ssl-ca SSL CA file path for client certificate verification
+# -d, --debug Set log level (default: 7)
+# login --- Login with system accounts
+
+TTYD_OPTS="login"
diff --git a/www-apps/ttyd/files/ttyd.initd b/www-apps/ttyd/files/ttyd.initd
new file mode 100644
index 000000000000..9d1afdec19da
--- /dev/null
+++ b/www-apps/ttyd/files/ttyd.initd
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+name="ttyd daemon"
+pidfile="/var/run/ttyd.pid"
+command="/usr/bin/ttyd"
+command_args="${TTYD_OPTS}"
+command_background="true"
+start_stop_daemon_args="-b"
+
+depend() {
+ use logger
+}
diff --git a/www-apps/ttyd/files/ttyd.service b/www-apps/ttyd/files/ttyd.service
new file mode 100644
index 000000000000..caa95ab1a910
--- /dev/null
+++ b/www-apps/ttyd/files/ttyd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Terminal over HTTP
+
+[Service]
+User=root
+ExecStart=/usr/bin/ttyd -p 9000 login
+Restart=on-abort
+
+[Install]
+WantedBy=multi-user.target
diff --git a/www-apps/ttyd/metadata.xml b/www-apps/ttyd/metadata.xml
new file mode 100644
index 000000000000..cbc3ff79c423
--- /dev/null
+++ b/www-apps/ttyd/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mpagano@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">tsl0922/ttyd</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/www-apps/ttyd/ttyd-1.7.3.ebuild b/www-apps/ttyd/ttyd-1.7.3.ebuild
new file mode 100644
index 000000000000..80b189a914d4
--- /dev/null
+++ b/www-apps/ttyd/ttyd-1.7.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake systemd
+
+MY_PV="$(ver_rs 3 '-')"
+
+DESCRIPTION="ttyd, a simple command-line tool for sharing terminal over the web"
+HOMEPAGE="https://github.com/tsl0922/ttyd"
+
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/tsl0922/ttyd.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/tsl0922/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+BDEPEND="dev-util/cmake"
+
+DEPEND="
+ dev-libs/json-c:=
+ dev-libs/libuv:=
+ net-libs/libwebsockets:=[libuv,ssl]
+ sys-libs/zlib:=
+ "
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+src_install() {
+ dobin ../${P}_build/${PN}
+ doman man/*.1
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+ newconfd "${FILESDIR}/${PN}.confd" "${PN}"
+ systemd_dounit "${FILESDIR}"/${PN}.service
+}
diff --git a/www-apps/ttyd/ttyd-9999.ebuild b/www-apps/ttyd/ttyd-9999.ebuild
new file mode 100644
index 000000000000..14c795388490
--- /dev/null
+++ b/www-apps/ttyd/ttyd-9999.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake systemd
+
+MY_PV="$(ver_rs 3 '-')"
+
+DESCRIPTION="ttyd, a simple command-line tool for sharing terminal over the web"
+HOMEPAGE="https://github.com/tsl0922/ttyd"
+
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/tsl0922/ttyd.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/tsl0922/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+BDEPEND="dev-util/cmake"
+
+DEPEND="
+ dev-vcs/git:=
+ dev-libs/json-c:=
+ dev-libs/libuv:=
+ net-libs/libwebsockets:=[libuv,ssl]
+ sys-libs/zlib:=
+ "
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+src_install() {
+ dobin ../${P}_build/${PN}
+ doman man/*.1
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+ newconfd "${FILESDIR}/${PN}.confd" "${PN}"
+ systemd_dounit "${FILESDIR}"/${PN}.service
+}