From owner-dev-commits-ports-all@freebsd.org Tue Apr 27 16:53:48 2021 Return-Path: Delivered-To: dev-commits-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 771B15F7736; Tue, 27 Apr 2021 16:53:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4FV7Bh2xYHz4d2F; Tue, 27 Apr 2021 16:53:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 57B241E27A; Tue, 27 Apr 2021 16:53:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 13RGrmGV037508; Tue, 27 Apr 2021 16:53:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 13RGrmWf037507; Tue, 27 Apr 2021 16:53:48 GMT (envelope-from git) Date: Tue, 27 Apr 2021 16:53:48 GMT Message-Id: <202104271653.13RGrmWf037507@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: =?utf-8?B?U3RlZmFuIEXDn2Vy?= Subject: git: 0c973ae855ea - main - www/owncast: new port of a self-hosted streaming service MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: se X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0c973ae855ea63bcfd0d17dbe0aa5475fecf178a Auto-Submitted: auto-generated X-BeenThere: dev-commits-ports-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the ports repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Apr 2021 16:53:48 -0000 The branch main has been updated by se: URL: https://cgit.FreeBSD.org/ports/commit/?id=0c973ae855ea63bcfd0d17dbe0aa5475fecf178a commit 0c973ae855ea63bcfd0d17dbe0aa5475fecf178a Author: Stefan Eßer AuthorDate: 2021-04-27 16:49:24 +0000 Commit: Stefan Eßer CommitDate: 2021-04-27 16:53:30 +0000 www/owncast: new port of a self-hosted streaming service PR: 255439 Obtained from: Markus Mann, de-freebsd at ctseuro.com --- GIDs | 2 +- UIDs | 2 +- www/Makefile | 1 + www/owncast/Makefile | 54 +++++++++ www/owncast/distinfo | 5 + www/owncast/files/owncast.in | 42 +++++++ www/owncast/pkg-descr | 7 ++ www/owncast/pkg-message | 15 +++ www/owncast/pkg-plist | 266 +++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 392 insertions(+), 2 deletions(-) diff --git a/GIDs b/GIDs index de450397aa4f..d0fcd597e2e2 100644 --- a/GIDs +++ b/GIDs @@ -238,7 +238,7 @@ victoria-metrics:*:289: # free: 296 # free: 297 # free: 298 -# free: 299 +owncast:*:299: backuppc:*:300: # free: 301 netdata:*:302: diff --git a/UIDs b/UIDs index f4aff0bc6d5f..63c34327481a 100644 --- a/UIDs +++ b/UIDs @@ -243,7 +243,7 @@ victoria-metrics:*:289:289::0:0:VictoriaMetrics user:/nonexistent:/usr/sbin/nolo # free: 296 # free: 297 # free: 298 -# free: 299 +owncast:*:299:299::0:0:& daemon:/nonexistent:/usr/sbin/nologin backuppc:*:300:300::0:0:BackupPC pseudo-user:/nonexistent:/usr/sbin/nologin # free: 301 netdata:*:302:302::0:0:NetData Daemon:/var/cache/netdata:/usr/sbin/nologin diff --git a/www/Makefile b/www/Makefile index 2cd64684c75e..40149f3f6476 100644 --- a/www/Makefile +++ b/www/Makefile @@ -474,6 +474,7 @@ SUBDIR += ot-recorder SUBDIR += otrs SUBDIR += otter-browser + SUBDIR += owncast SUBDIR += owncloud SUBDIR += p5-AMF-Perl SUBDIR += p5-Acme-Monta diff --git a/www/owncast/Makefile b/www/owncast/Makefile new file mode 100644 index 000000000000..04c3a27a742e --- /dev/null +++ b/www/owncast/Makefile @@ -0,0 +1,54 @@ +# Created by Markus Mann, CTS - FreeBSD Team + +PORTNAME= owncast +DISTVERSIONPREFIX= v +DISTVERSION= 0.0.6 +CATEGORIES= www +DIST_SUBDIR= ${PORTNAME} + +MAINTAINER= de-freebsd@ctseuro.com +COMMENT= Self-hosted streaming service written in Go + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= ffmpeg:multimedia/ffmpeg + +USES= go:modules +USE_RC_SUBR= owncast + +GO_MODULE= github.com/owncast/owncast + +_DAEMONARGS= -S -l \$${owncast_facility} -s \$${owncast_priority} -T \$${name} +_OWNCAST_USER= owncast +_OWNCAST_GROUP= owncast + +SUB_LIST+= DAEMONARGS="${_DAEMONARGS}" \ + OWNCAST_USER=${_OWNCAST_USER} + +USERS= ${_OWNCAST_USER} +GROUPS= ${_OWNCAST_GROUP} + +PLIST_SUB= OWNCAST_USER=${_OWNCAST_USER} \ + OWNCAST_GROUP=${_OWNCAST_GROUP} + +post-patch: + @${ECHO_CMD} ${DISTVERSION} >${WRKSRC}/VERSION + +do-install: + # Go binary is statically linked and cannot be stripped, so use + # INSTALL_SCRIPT. + ${INSTALL_SCRIPT} ${WRKDIR}/bin/owncast ${STAGEDIR}${PREFIX}/sbin + + ${MKDIR} -m 750 ${STAGEDIR}${WWWDIR}/ + cd ${WRKSRC} && ${COPYTREE_SHARE} "static webroot" ${STAGEDIR}${WWWDIR} + ${INSTALL_DATA} ${WRKSRC}/LICENSE ${STAGEDIR}${WWWDIR} + ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${WWWDIR} + ${INSTALL_DATA} ${WRKSRC}/VERSION ${STAGEDIR}${WWWDIR} + ${MKDIR} -m 750 ${STAGEDIR}${WWWDIR}/backup + ${MKDIR} -m 750 ${STAGEDIR}${WWWDIR}/data + ${MKDIR} -m 750 ${STAGEDIR}${WWWDIR}/hls + ${MKDIR} -m 750 ${STAGEDIR}${WWWDIR}/webroot/hls + ${INSTALL_DATA} ${WRKSRC}/data/logo.svg ${STAGEDIR}${WWWDIR}/data + +.include diff --git a/www/owncast/distinfo b/www/owncast/distinfo new file mode 100644 index 000000000000..0bb35addbd06 --- /dev/null +++ b/www/owncast/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1619296060 +SHA256 (go/www_owncast/owncast-v0.0.6/v0.0.6.mod) = ad8f267153ee11dbe7a554db726334a0104ee42f95ed719c9150ac5ed6127b5f +SIZE (go/www_owncast/owncast-v0.0.6/v0.0.6.mod) = 1144 +SHA256 (go/www_owncast/owncast-v0.0.6/v0.0.6.zip) = ef7a984e272d863ab5b48fdd037cc4df133772d2f9e0a79b5a925c03de2c4520 +SIZE (go/www_owncast/owncast-v0.0.6/v0.0.6.zip) = 8257035 diff --git a/www/owncast/files/owncast.in b/www/owncast/files/owncast.in new file mode 100644 index 000000000000..6473d612787d --- /dev/null +++ b/www/owncast/files/owncast.in @@ -0,0 +1,42 @@ +#!/bin/sh + +# PROVIDE: owncast +# REQUIRE: NETWORKING SYSLOG +# KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf to enable owncast: +# +#owncast_enable="YES" + +. /etc/rc.subr + +name="owncast" +rcvar="owncast_enable" + +load_rc_config $name + +: ${owncast_user:="%%OWNCAST_USER%%"} +: ${owncast_enable:="NO"} +: ${owncast_path:="%%WWWDIR%%"} +: ${owncast_facility:="daemon"} +: ${owncast_priority:="debug"} + +command="%%PREFIX%%/sbin/${name}" +procname="%%PREFIX%%/sbin/${name}" + +pidfile="/var/run/${name}.pid" + +start_cmd="${name}_start" + +owncast_start() { + cd ${owncast_path} + /usr/sbin/daemon %%DAEMONARGS%% \ + -u ${owncast_user} -p ${pidfile} \ + /usr/bin/env -i \ + "HOME=${owncast_path}" \ + "PATH=%%PREFIX%%/bin:%%PREFIX%%/sbin:${PATH}" \ + "USER=${owncast_user}" \ + $command +} + +run_rc_command "$1" diff --git a/www/owncast/pkg-descr b/www/owncast/pkg-descr new file mode 100644 index 000000000000..28980522ca46 --- /dev/null +++ b/www/owncast/pkg-descr @@ -0,0 +1,7 @@ +A self-hosted minimalistic streaming service written in Go. + +It's designed for a single streamer to host his own streams. +You can utilize S3 compatible object storage to distribute +your stream and lower your own bandwidth needs. + +WWW: https://owncast.online diff --git a/www/owncast/pkg-message b/www/owncast/pkg-message new file mode 100644 index 000000000000..7c8ec18baf94 --- /dev/null +++ b/www/owncast/pkg-message @@ -0,0 +1,15 @@ +[ +{ type: install + message: <:8080 to configure it. + +It is recommended to use a reverse proxy (eg. nginx) to serve your owncast +instance via https - see https://owncast.online/docs/sslproxies/ for more info +EOM +} +] diff --git a/www/owncast/pkg-plist b/www/owncast/pkg-plist new file mode 100644 index 000000000000..a02c508d4800 --- /dev/null +++ b/www/owncast/pkg-plist @@ -0,0 +1,266 @@ +sbin/owncast +@owner %%OWNCAST_USER%% +@group %%OWNCAST_GROUP%% +@mode 0640 +%%WWWDIR%%/LICENSE +%%WWWDIR%%/README.md +%%WWWDIR%%/VERSION +%%WWWDIR%%/data/logo.svg +%%WWWDIR%%/static/logo.png +%%WWWDIR%%/static/metadata.html +%%WWWDIR%%/static/offline.ts +%%WWWDIR%%/webroot/favicon.ico +%%WWWDIR%%/webroot/img/airplay.png +%%WWWDIR%%/webroot/img/emoji/ac-box.png +%%WWWDIR%%/webroot/img/emoji/ac-construction.png +%%WWWDIR%%/webroot/img/emoji/ac-fossil.png +%%WWWDIR%%/webroot/img/emoji/ac-item-leaf.png +%%WWWDIR%%/webroot/img/emoji/ac-kkslider.png +%%WWWDIR%%/webroot/img/emoji/ac-moneytree.png +%%WWWDIR%%/webroot/img/emoji/ac-mosquito.png +%%WWWDIR%%/webroot/img/emoji/ac-shirt.png +%%WWWDIR%%/webroot/img/emoji/ac-song.png +%%WWWDIR%%/webroot/img/emoji/ac-tree.png +%%WWWDIR%%/webroot/img/emoji/ac-turnip.png +%%WWWDIR%%/webroot/img/emoji/ac-weeds.png +%%WWWDIR%%/webroot/img/emoji/alert.gif +%%WWWDIR%%/webroot/img/emoji/bananadance.gif +%%WWWDIR%%/webroot/img/emoji/bb8.png +%%WWWDIR%%/webroot/img/emoji/beerparrot.gif +%%WWWDIR%%/webroot/img/emoji/bells.png +%%WWWDIR%%/webroot/img/emoji/birthdaypartyparrot.gif +%%WWWDIR%%/webroot/img/emoji/blacklightsaber.png +%%WWWDIR%%/webroot/img/emoji/bluelightsaber.png +%%WWWDIR%%/webroot/img/emoji/bluntparrot.gif +%%WWWDIR%%/webroot/img/emoji/bobaparrot.gif +%%WWWDIR%%/webroot/img/emoji/cakeparrot.gif +%%WWWDIR%%/webroot/img/emoji/chewbacca.png +%%WWWDIR%%/webroot/img/emoji/chillparrot.gif +%%WWWDIR%%/webroot/img/emoji/christmasparrot.gif +%%WWWDIR%%/webroot/img/emoji/coffeeparrot.gif +%%WWWDIR%%/webroot/img/emoji/confusedparrot.gif +%%WWWDIR%%/webroot/img/emoji/copparrot.gif +%%WWWDIR%%/webroot/img/emoji/coronavirus.png +%%WWWDIR%%/webroot/img/emoji/covid19parrot.gif +%%WWWDIR%%/webroot/img/emoji/cryptoparrot.gif +%%WWWDIR%%/webroot/img/emoji/dabparrot.gif +%%WWWDIR%%/webroot/img/emoji/dadparrot.gif +%%WWWDIR%%/webroot/img/emoji/daftpunkparrot.gif +%%WWWDIR%%/webroot/img/emoji/darkbeerparrot.gif +%%WWWDIR%%/webroot/img/emoji/darkmodeparrot.gif +%%WWWDIR%%/webroot/img/emoji/darth_vader.png +%%WWWDIR%%/webroot/img/emoji/dealwithitparrot.gif +%%WWWDIR%%/webroot/img/emoji/death_star.png +%%WWWDIR%%/webroot/img/emoji/discoparrot.gif +%%WWWDIR%%/webroot/img/emoji/division-gg.png +%%WWWDIR%%/webroot/img/emoji/division-hi.png +%%WWWDIR%%/webroot/img/emoji/division-hype.png +%%WWWDIR%%/webroot/img/emoji/division-lol.png +%%WWWDIR%%/webroot/img/emoji/division-omg.png +%%WWWDIR%%/webroot/img/emoji/division-rage.png +%%WWWDIR%%/webroot/img/emoji/division-rip.png +%%WWWDIR%%/webroot/img/emoji/division-wtf.png +%%WWWDIR%%/webroot/img/emoji/docparrot.gif +%%WWWDIR%%/webroot/img/emoji/donutparrot.gif +%%WWWDIR%%/webroot/img/emoji/doom_mad.gif +%%WWWDIR%%/webroot/img/emoji/empire.png +%%WWWDIR%%/webroot/img/emoji/everythingsfineparrot.gif +%%WWWDIR%%/webroot/img/emoji/evilparrot.gif +%%WWWDIR%%/webroot/img/emoji/explodyparrot.gif +%%WWWDIR%%/webroot/img/emoji/fixparrot.gif +%%WWWDIR%%/webroot/img/emoji/flyingmoneyparrot.gif +%%WWWDIR%%/webroot/img/emoji/footballparrot.gif +%%WWWDIR%%/webroot/img/emoji/gabe1.png +%%WWWDIR%%/webroot/img/emoji/gabe2.png +%%WWWDIR%%/webroot/img/emoji/gentlemanparrot.gif +%%WWWDIR%%/webroot/img/emoji/githubparrot.gif +%%WWWDIR%%/webroot/img/emoji/goomba.gif +%%WWWDIR%%/webroot/img/emoji/gothparrot.gif +%%WWWDIR%%/webroot/img/emoji/hamburgerparrot.gif +%%WWWDIR%%/webroot/img/emoji/harrypotterparrot.gif +%%WWWDIR%%/webroot/img/emoji/headbangingparrot.gif +%%WWWDIR%%/webroot/img/emoji/headingparrot.gif +%%WWWDIR%%/webroot/img/emoji/headsetparrot.gif +%%WWWDIR%%/webroot/img/emoji/hmmparrot.gif +%%WWWDIR%%/webroot/img/emoji/hypnoparrot.gif +%%WWWDIR%%/webroot/img/emoji/icecreamparrot.gif +%%WWWDIR%%/webroot/img/emoji/illuminatiparrot.gif +%%WWWDIR%%/webroot/img/emoji/jediparrot.gif +%%WWWDIR%%/webroot/img/emoji/keanu_thanks.gif +%%WWWDIR%%/webroot/img/emoji/laptop_parrot.gif +%%WWWDIR%%/webroot/img/emoji/loveparrot.gif +%%WWWDIR%%/webroot/img/emoji/mandalorian.png +%%WWWDIR%%/webroot/img/emoji/margaritaparrot.gif +%%WWWDIR%%/webroot/img/emoji/mario.gif +%%WWWDIR%%/webroot/img/emoji/matrixparrot.gif +%%WWWDIR%%/webroot/img/emoji/meldparrot.gif +%%WWWDIR%%/webroot/img/emoji/metalparrot.gif +%%WWWDIR%%/webroot/img/emoji/michaeljacksonparrot.gif +%%WWWDIR%%/webroot/img/emoji/moonparrot.gif +%%WWWDIR%%/webroot/img/emoji/moonwalkingparrot.gif +%%WWWDIR%%/webroot/img/emoji/mustacheparrot.gif +%%WWWDIR%%/webroot/img/emoji/nicolas_cage_party.gif +%%WWWDIR%%/webroot/img/emoji/nodeparrot.gif +%%WWWDIR%%/webroot/img/emoji/norwegianblueparrot.gif +%%WWWDIR%%/webroot/img/emoji/opensourceparrot.gif +%%WWWDIR%%/webroot/img/emoji/originalparrot.gif +%%WWWDIR%%/webroot/img/emoji/owncast.png +%%WWWDIR%%/webroot/img/emoji/palpatine.png +%%WWWDIR%%/webroot/img/emoji/papalparrot.gif +%%WWWDIR%%/webroot/img/emoji/parrot.gif +%%WWWDIR%%/webroot/img/emoji/parrotnotfound.gif +%%WWWDIR%%/webroot/img/emoji/partyparrot.gif +%%WWWDIR%%/webroot/img/emoji/phparrot.gif +%%WWWDIR%%/webroot/img/emoji/pirateparrot.gif +%%WWWDIR%%/webroot/img/emoji/pizzaparrot.gif +%%WWWDIR%%/webroot/img/emoji/pokeparrot.gif +%%WWWDIR%%/webroot/img/emoji/popcornparrot.gif +%%WWWDIR%%/webroot/img/emoji/porg.png +%%WWWDIR%%/webroot/img/emoji/portalparrot.gif +%%WWWDIR%%/webroot/img/emoji/pumpkinparrot.gif +%%WWWDIR%%/webroot/img/emoji/quadparrot.gif +%%WWWDIR%%/webroot/img/emoji/r2d2.png +%%WWWDIR%%/webroot/img/emoji/Reaper-gg.png +%%WWWDIR%%/webroot/img/emoji/Reaper-hi.png +%%WWWDIR%%/webroot/img/emoji/Reaper-hype.png +%%WWWDIR%%/webroot/img/emoji/Reaper-lol.png +%%WWWDIR%%/webroot/img/emoji/Reaper-love.png +%%WWWDIR%%/webroot/img/emoji/Reaper-rage.png +%%WWWDIR%%/webroot/img/emoji/Reaper-rip.png +%%WWWDIR%%/webroot/img/emoji/Reaper-wtf.png +%%WWWDIR%%/webroot/img/emoji/redenvelopeparrot.gif +%%WWWDIR%%/webroot/img/emoji/ripparrot.gif +%%WWWDIR%%/webroot/img/emoji/rotatingparrot.gif +%%WWWDIR%%/webroot/img/emoji/ryangoslingparrot.gif +%%WWWDIR%%/webroot/img/emoji/rythmicalparrot.gif +%%WWWDIR%%/webroot/img/emoji/sadparrot.gif +%%WWWDIR%%/webroot/img/emoji/schnitzelparrot.gif +%%WWWDIR%%/webroot/img/emoji/scienceparrot.gif +%%WWWDIR%%/webroot/img/emoji/shipitparrot.gif +%%WWWDIR%%/webroot/img/emoji/shufflepartyparrot.gif +%%WWWDIR%%/webroot/img/emoji/sintparrot.gif +%%WWWDIR%%/webroot/img/emoji/sithparrot.gif +%%WWWDIR%%/webroot/img/emoji/skiparrot.gif +%%WWWDIR%%/webroot/img/emoji/sleepingparrot.gif +%%WWWDIR%%/webroot/img/emoji/sonic.gif +%%WWWDIR%%/webroot/img/emoji/spyparrot.gif +%%WWWDIR%%/webroot/img/emoji/stalkerparrot.gif +%%WWWDIR%%/webroot/img/emoji/starwars.png +%%WWWDIR%%/webroot/img/emoji/stayhomeparrot.gif +%%WWWDIR%%/webroot/img/emoji/storm_trooper.gif +%%WWWDIR%%/webroot/img/emoji/stormtrooper.png +%%WWWDIR%%/webroot/img/emoji/sushiparrot.gif +%%WWWDIR%%/webroot/img/emoji/tacoparrot.gif +%%WWWDIR%%/webroot/img/emoji/tennisparrot.gif +%%WWWDIR%%/webroot/img/emoji/thanks.png +%%WWWDIR%%/webroot/img/emoji/thumbsupparrot.gif +%%WWWDIR%%/webroot/img/emoji/tiedyeparrot.gif +%%WWWDIR%%/webroot/img/emoji/tpparrot.gif +%%WWWDIR%%/webroot/img/emoji/transparront.gif +%%WWWDIR%%/webroot/img/emoji/twinsparrot.gif +%%WWWDIR%%/webroot/img/emoji/upvoteparrot.gif +%%WWWDIR%%/webroot/img/emoji/vikingparrot.gif +%%WWWDIR%%/webroot/img/emoji/wesmart.png +%%WWWDIR%%/webroot/img/emoji/wfhparrot.gif +%%WWWDIR%%/webroot/img/emoji/wineparrot.gif +%%WWWDIR%%/webroot/img/emoji/yoda.gif +%%WWWDIR%%/webroot/img/favicon/android-icon-144x144.png +%%WWWDIR%%/webroot/img/favicon/android-icon-192x192.png +%%WWWDIR%%/webroot/img/favicon/android-icon-36x36.png +%%WWWDIR%%/webroot/img/favicon/android-icon-48x48.png +%%WWWDIR%%/webroot/img/favicon/android-icon-72x72.png +%%WWWDIR%%/webroot/img/favicon/android-icon-96x96.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-114x114.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-120x120.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-144x144.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-152x152.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-180x180.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-57x57.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-60x60.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-72x72.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-76x76.png +%%WWWDIR%%/webroot/img/favicon/apple-icon-precomposed.png +%%WWWDIR%%/webroot/img/favicon/apple-icon.png +%%WWWDIR%%/webroot/img/favicon/browserconfig.xml +%%WWWDIR%%/webroot/img/favicon/favicon-16x16.png +%%WWWDIR%%/webroot/img/favicon/favicon-32x32.png +%%WWWDIR%%/webroot/img/favicon/favicon-96x96.png +%%WWWDIR%%/webroot/img/favicon/ms-icon-144x144.png +%%WWWDIR%%/webroot/img/favicon/ms-icon-150x150.png +%%WWWDIR%%/webroot/img/favicon/ms-icon-310x310.png +%%WWWDIR%%/webroot/img/favicon/ms-icon-70x70.png +%%WWWDIR%%/webroot/img/logo.png +%%WWWDIR%%/webroot/img/logo.svg +%%WWWDIR%%/webroot/img/platformlogos/bandcamp.svg +%%WWWDIR%%/webroot/img/platformlogos/default.svg +%%WWWDIR%%/webroot/img/platformlogos/discord.svg +%%WWWDIR%%/webroot/img/platformlogos/donate.svg +%%WWWDIR%%/webroot/img/platformlogos/facebook.svg +%%WWWDIR%%/webroot/img/platformlogos/follow.svg +%%WWWDIR%%/webroot/img/platformlogos/github.svg +%%WWWDIR%%/webroot/img/platformlogos/gitlab.svg +%%WWWDIR%%/webroot/img/platformlogos/google.svg +%%WWWDIR%%/webroot/img/platformlogos/instagram.svg +%%WWWDIR%%/webroot/img/platformlogos/keyoxide.png +%%WWWDIR%%/webroot/img/platformlogos/ko-fi.svg +%%WWWDIR%%/webroot/img/platformlogos/link.svg +%%WWWDIR%%/webroot/img/platformlogos/linkedin.svg +%%WWWDIR%%/webroot/img/platformlogos/mastodon.svg +%%WWWDIR%%/webroot/img/platformlogos/patreon.svg +%%WWWDIR%%/webroot/img/platformlogos/paypal.svg +%%WWWDIR%%/webroot/img/platformlogos/snapchat.svg +%%WWWDIR%%/webroot/img/platformlogos/soundcloud.svg +%%WWWDIR%%/webroot/img/platformlogos/spotify.svg +%%WWWDIR%%/webroot/img/platformlogos/tiktok.svg +%%WWWDIR%%/webroot/img/platformlogos/twitch.svg +%%WWWDIR%%/webroot/img/platformlogos/twitter.svg +%%WWWDIR%%/webroot/img/platformlogos/youtube.svg +%%WWWDIR%%/webroot/img/smiley.png +%%WWWDIR%%/webroot/index-standalone-chat.html +%%WWWDIR%%/webroot/index-video-only.html +%%WWWDIR%%/webroot/index.html +%%WWWDIR%%/webroot/js/app-standalone-chat.js +%%WWWDIR%%/webroot/js/app-video-only.js +%%WWWDIR%%/webroot/js/app.js +%%WWWDIR%%/webroot/js/components/chat/chat-input.js +%%WWWDIR%%/webroot/js/components/chat/chat-message-view.js +%%WWWDIR%%/webroot/js/components/chat/chat.js +%%WWWDIR%%/webroot/js/components/chat/content-editable.js +%%WWWDIR%%/webroot/js/components/chat/message.js +%%WWWDIR%%/webroot/js/components/chat/username.js +%%WWWDIR%%/webroot/js/components/platform-logos-list.js +%%WWWDIR%%/webroot/js/components/player.js +%%WWWDIR%%/webroot/js/components/video-poster.js +%%WWWDIR%%/webroot/js/utils/chat.js +%%WWWDIR%%/webroot/js/utils/constants.js +%%WWWDIR%%/webroot/js/utils/helpers.js +%%WWWDIR%%/webroot/js/utils/user-colors.js +%%WWWDIR%%/webroot/js/utils/websocket.js +%%WWWDIR%%/webroot/js/web_modules/@joeattardi/emoji-button.js +%%WWWDIR%%/webroot/js/web_modules/@justinribeiro/lite-youtube.js +%%WWWDIR%%/webroot/js/web_modules/@videojs/http-streaming/dist/videojs-http-streaming.min.js +%%WWWDIR%%/webroot/js/web_modules/@videojs/themes/fantasy/index.css +%%WWWDIR%%/webroot/js/web_modules/common/_commonjsHelpers-37fa8da4.js +%%WWWDIR%%/webroot/js/web_modules/common/core-d14f1e1c.js +%%WWWDIR%%/webroot/js/web_modules/common/core-fed3ccd8.js +%%WWWDIR%%/webroot/js/web_modules/htm.js +%%WWWDIR%%/webroot/js/web_modules/import-map.json +%%WWWDIR%%/webroot/js/web_modules/markjs/dist/mark.es6.min.js +%%WWWDIR%%/webroot/js/web_modules/preact.js +%%WWWDIR%%/webroot/js/web_modules/tailwindcss/dist/tailwind.min.css +%%WWWDIR%%/webroot/js/web_modules/videojs/core.js +%%WWWDIR%%/webroot/js/web_modules/videojs/video-js.min.css +%%WWWDIR%%/webroot/manifest.json +%%WWWDIR%%/webroot/styles/app.css +%%WWWDIR%%/webroot/styles/chat.css +%%WWWDIR%%/webroot/styles/standalone-chat.css +%%WWWDIR%%/webroot/styles/user-content.css +%%WWWDIR%%/webroot/styles/video-only.css +%%WWWDIR%%/webroot/styles/video.css +@mode 0750 +@dir %%WWWDIR%% +@dir %%WWWDIR%%/backup +@dir %%WWWDIR%%/data +@dir %%WWWDIR%%/hls +@dir %%WWWDIR%%/webroot +@dir %%WWWDIR%%/webroot/hls