diff --git a/root/etc/cont-init.d/98-rffmpeg b/root/etc/cont-init.d/98-rffmpeg index 5a82d65..a27e7d2 100644 --- a/root/etc/cont-init.d/98-rffmpeg +++ b/root/etc/cont-init.d/98-rffmpeg @@ -51,8 +51,8 @@ if [ -f /config/rffmpeg/rffmpeg.db ]; then else echo "**** Initialize database ****" /usr/local/bin/rffmpeg init --yes - #Add host - if [ ! -z "$RFFMPEG_HOST" ]; then - s6-setuidgid abc /usr/local/bin/rffmpeg add --weight 1 $RFFMPEG_HOST - fi + #Add host + if [ ! -z "$RFFMPEG_HOST" ]; then + s6-setuidgid abc /usr/local/bin/rffmpeg add --weight 1 $RFFMPEG_HOST + fi fi diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/dependencies.d/init-mods b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/dependencies.d/init-mods new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/run b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/run new file mode 100755 index 0000000..a7f54f0 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/run @@ -0,0 +1,14 @@ +#!/usr/bin/with-contenv bash + +for package in iputils-ping openssh-client python3-click python3-yaml wakeonlan; do + if ! dpkg -s "${package}" >/dev/null 2>&1; then + PACKAGES="${package} ${PACKAGES}" + fi +done + +if [ -n "${PACKAGES}" ]; then + echo "${PACKAGES}" >> /mod-repo-packages-to-install.list + echo "**** Adding rffmpeg dependencies to package install list ****" +else + echo "**** rffmpeg dependencies already installed, skipping ****" +fi diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/type b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/up b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/up new file mode 100644 index 0000000..927884f --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-add-package/run \ No newline at end of file diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/dependencies.d/init-mods-package-install b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/dependencies.d/init-mods-package-install new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run new file mode 100755 index 0000000..9026b5b --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run @@ -0,0 +1,50 @@ +#!/usr/bin/with-contenv bash + +#Grab Config +mkdir -p \ + /etc/rffmpeg \ + /config/rffmpeg/.ssh +touch /config/rffmpeg/.ssh/id_rsa +chmod 600 /config/rffmpeg/.ssh/id_rsa +if [ -f /config/rffmpeg/rffmpeg.yml ]; then + echo "**** rffmpeg.yml already present ****" +else + echo "**** Creating rffmpeg.yml from sample ****" + cp /defaults/rffmpeg.yml.sample /config/rffmpeg/rffmpeg.yml +fi + +#Grab rffmpeg +mkdir -p /usr/local/bin/ +echo "**** Grabbing rffmpeg from upstream ****" +rm -rf /usr/local/bin/rffmpeg +curl -L -o /usr/local/bin/rffmpeg https://raw.githubusercontent.com/joshuaboniface/rffmpeg/master/rffmpeg +chmod +x /usr/local/bin/rffmpeg + +##Update rffmpeg.yml +sed -i 's~#persist: "/run/shm"~persist: "/dev/shm"~' /config/rffmpeg/rffmpeg.yml +sed -i 's~#state: "/var/lib/rffmpeg"~state: "/config/rffmpeg"~' /config/rffmpeg/rffmpeg.yml +sed -i 's~#logfile: "/var/log/jellyfin/rffmpeg.log"~logfile: "/config/rffmpeg/rffmpeg.log"~' /config/rffmpeg/rffmpeg.yml +sed -i 's~#log_to_file: true~log_to_file: true~' /config/rffmpeg/rffmpeg.yml +sed -i 's~#owner: jellyfin~owner: abc~' /config/rffmpeg/rffmpeg.yml +sed -i 's~#group: sudo~group: abc~' /config/rffmpeg/rffmpeg.yml +sed -i 's~#args:~args:~' /config/rffmpeg/rffmpeg.yml +sed -i 's~# - "-i"~ - "-i"~' /config/rffmpeg/rffmpeg.yml +sed -i 's~# - "/var/lib/jellyfin/id_rsa"~ - "/config/rffmpeg/.ssh/id_rsa"~' /config/rffmpeg/rffmpeg.yml +if [ ! -z "$RFFMPEG_USER" ]; then + sed -i "s~#user: jellyfin~user: $RFFMPEG_USER~" /config/rffmpeg/rffmpeg.yml +fi + +#Fix permissions +chown abc:abc -R /config/rffmpeg + +#Initialize database +if [ -f /config/rffmpeg/rffmpeg.db ]; then + echo "**** rffmpeg DB already inialized ****" +else + echo "**** Initialize rffmpeg database ****" + /usr/local/bin/rffmpeg init --yes + #Add host + if [ ! -z "$RFFMPEG_HOST" ]; then + s6-setuidgid abc /usr/local/bin/rffmpeg add --weight 1 $RFFMPEG_HOST + fi +fi diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/type b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/type new file mode 100644 index 0000000..3d92b15 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/type @@ -0,0 +1 @@ +oneshot \ No newline at end of file diff --git a/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/up b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/up new file mode 100644 index 0000000..30e9d40 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-mod-jellyfin-rffmpeg-setup/run \ No newline at end of file diff --git a/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-jellyfin-rffmpeg-setup b/root/etc/s6-overlay/s6-rc.d/init-mods-end/dependencies.d/init-mod-jellyfin-rffmpeg-setup new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-jellyfin-rffmpeg-add-package b/root/etc/s6-overlay/s6-rc.d/init-mods-package-install/dependencies.d/init-mod-jellyfin-rffmpeg-add-package new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-jellyfin-rffmpeg-add-package b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-jellyfin-rffmpeg-add-package new file mode 100644 index 0000000..e69de29 diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-jellyfin-rffmpeg-setup b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-mod-jellyfin-rffmpeg-setup new file mode 100644 index 0000000..e69de29