Skip to content

Commit

Permalink
Software title: Jellyseerr
Browse files Browse the repository at this point in the history
  • Loading branch information
igorpecovnik committed Dec 2, 2024
1 parent 9ca4440 commit 6058ba2
Show file tree
Hide file tree
Showing 5 changed files with 111 additions and 0 deletions.
Binary file added tools/include/images/DOW040.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions tools/include/markdown/DOW040-header.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Jellyseerr is a free and open source software application for managing requests for your media library. It is a fork of Overseerr built to bring support for Jellyfin & Emby media servers!
30 changes: 30 additions & 0 deletions tools/json/config.software.json
Original file line number Diff line number Diff line change
Expand Up @@ -580,6 +580,36 @@
"status": "Stable",
"author": "@armbian",
"condition": "module_prowlarr status"
},
{
"id": "DOW040",
"description": "Jellyseerr install",
"command": [
"module_jellyseerr install"
],
"status": "Stable",
"author": "@armbian",
"condition": "! module_jellyseerr status"
},
{
"id": "DOW041",
"description": "Jellyseerr remove ",
"command": [
"module_jellyseerr remove"
],
"status": "Stable",
"author": "@armbian",
"condition": "module_jellyseerr status"
},
{
"id": "DOW042",
"description": "Jellyseerr purge data folder",
"command": [
"module_jellyseerr purge"
],
"status": "Stable",
"author": "@armbian",
"condition": "! module_jellyseerr status && [[ -d \"${SOFTWARE_FOLDER}/jellyseerr\" ]]"
}
]
},
Expand Down
1 change: 1 addition & 0 deletions tools/modules/runtime/config.runtime.sh
Original file line number Diff line number Diff line change
Expand Up @@ -109,4 +109,5 @@ update_sub_submenu_data "Software" "Downloaders" "DOW020" "http://$LOCALIPADD:${
update_sub_submenu_data "Software" "Downloaders" "DOW022" "http://$LOCALIPADD:${module_options["module_lidarr,port"]}"
update_sub_submenu_data "Software" "Downloaders" "DOW024" "http://$LOCALIPADD:${module_options["module_readarr,port"]}"
update_sub_submenu_data "Software" "Downloaders" "DOW026" "http://$LOCALIPADD:${module_options["module_prowlarr,port"]}"
update_sub_submenu_data "Software" "Downloaders" "DOW041" "http://$LOCALIPADD:${module_options["module_jellyseerr,port"]}"

79 changes: 79 additions & 0 deletions tools/modules/software/install_jellyseerr.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
module_options+=(
["module_jellyseerr,author"]="@armbian"
["module_jellyseerr,feature"]="module_jellyseerr"
["module_jellyseerr,desc"]="Install jellyseerr container"
["module_jellyseerr,example"]="install remove purge status help"
["module_jellyseerr,port"]="5055"
["module_jellyseerr,status"]="Active"
["module_jellyseerr,arch"]="x86-64,arm64"
)
#
# Module jellyseerr
#
function module_jellyseerr () {
local title="jellyseerr"
local condition=$(which "$title" 2>/dev/null)

if check_if_installed docker-ce; then
local container=$(docker container ls -a | mawk '/jellyseerr?( |$)/{print $1}')
local image=$(docker image ls -a | mawk '/jellyseerr?( |$)/{print $3}')
fi

local commands
IFS=' ' read -r -a commands <<< "${module_options["module_jellyseerr,example"]}"

JELLYSEERR_BASE="${SOFTWARE_FOLDER}/jellyseerr"

case "$1" in
"${commands[0]}")
check_if_installed docker-ce || install_docker
[[ -d "$JELLYSEERR_BASE" ]] || mkdir -p "$JELLYSEERR_BASE" || { echo "Couldn't create storage directory: $JELLYSEERR_BASE"; exit 1; }
docker run -d \
--name jellyseerr \
-e LOG_LEVEL=debug \
-e TZ="$(cat /etc/timezone)" \
-e PORT=5055 `#optional` \
-p 5055:5055 \
-v "${jellyseerr_BASE}/config:/app/config" \
--restart unless-stopped \
fallenbagel/jellyseerr
for i in $(seq 1 20); do
if docker inspect -f '{{ index .Config.Labels "build_version" }}' jellyseerr >/dev/null 2>&1 ; then
break
else
sleep 3
fi
if [ $i -eq 20 ] ; then
echo -e "\nTimed out waiting for ${title} to start, consult your container logs for more info (\`docker logs jellyseerr\`)"
exit 1
fi
done
;;
"${commands[1]}")
[[ "${container}" ]] && docker container rm -f "$container" >/dev/null
[[ "${image}" ]] && docker image rm "$image" >/dev/null
;;
"${commands[2]}")
[[ -n "${JELLYSEERR_BASE}" && "${JELLYSEERR_BASE}" != "/" ]] && rm -rf "${JELLYSEERR_BASE}"
;;
"${commands[3]}")
if [[ "${container}" && "${image}" ]]; then
return 0
else
return 1
fi
;;
"${commands[4]}")
echo -e "\nUsage: ${module_options["module_jellyseerr,feature"]} <command>"
echo -e "Commands: ${module_options["module_jellyseerr,example"]}"
echo "Available commands:"
echo -e "\tinstall\t- Install $title."
echo -e "\tstatus\t- Installation status $title."
echo -e "\tremove\t- Remove $title."
echo
;;
*)
${module_options["module_jellyseerr,feature"]} ${commands[4]}
;;
esac
}

0 comments on commit 6058ba2

Please sign in to comment.