diff options
| author | Jan T <jan@jantuomi.fi> | 2026-07-23 19:24:22 +0300 |
|---|---|---|
| committer | Jan Tuomi <jan@jantuomi.fi> | 2026-07-23 19:26:00 +0300 |
| commit | d57b5cd7830a5b4ed1437b1b648dca62a9b6eea3 (patch) | |
| tree | 85c5e69424dd2fe4c07be9dbb1b4267ee1503c3d /www/gdrive-photo-gallery | |
*/*: initial commit
Diffstat (limited to 'www/gdrive-photo-gallery')
| -rw-r--r-- | www/gdrive-photo-gallery/Makefile | 44 | ||||
| -rw-r--r-- | www/gdrive-photo-gallery/files/gdrive_photo_gallery.in | 61 | ||||
| -rw-r--r-- | www/gdrive-photo-gallery/pkg-descr | 2 |
3 files changed, 107 insertions, 0 deletions
diff --git a/www/gdrive-photo-gallery/Makefile b/www/gdrive-photo-gallery/Makefile new file mode 100644 index 0000000..aea1fd3 --- /dev/null +++ b/www/gdrive-photo-gallery/Makefile @@ -0,0 +1,44 @@ +PORTNAME= gdrive-photo-gallery +PORTVERSION= 1.0.0 +CATEGORIES= www + +MAINTAINER= jan@jantuomi.fi +COMMENT= Google Drive photo gallery web app + +LICENSE= MIT + +USE_GITHUB= yes +GH_ACCOUNT= jantuomi +GH_PROJECT= gdrive-photo-gallery +GH_TAGNAME= d080e8a1e224 + +NO_CHECKSUM= yes +NO_ARCH= yes +NO_BUILD= yes + +USES= python:3.12+ +RUN_DEPENDS= ${PYTHON_CMD}:lang/python${PYTHON_SUFFIX} \ + uv:devel/uv + +SUB_LIST= PYTHON_CMD=${PYTHON_CMD} + +USE_RC_SUBR= gdrive_photo_gallery + +APPDIR= ${PREFIX}/gdrive-photo-gallery +STAGE_APPDIR= ${STAGEDIR}${APPDIR} + +do-install: + ${MKDIR} ${STAGE_APPDIR} + (cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGE_APPDIR}) + +post-install: + @(cd ${STAGEDIR}${PREFIX} && \ + ${FIND} gdrive-photo-gallery -type f -o -type l | \ + ${SORT}) >> ${TMPPLIST} + + @(cd ${STAGEDIR}${PREFIX} && \ + ${FIND} gdrive-photo-gallery -type d | \ + ${SORT} -r | \ + ${SED} 's|^|@dir |') >> ${TMPPLIST} + +.include <bsd.port.mk> diff --git a/www/gdrive-photo-gallery/files/gdrive_photo_gallery.in b/www/gdrive-photo-gallery/files/gdrive_photo_gallery.in new file mode 100644 index 0000000..cf081f0 --- /dev/null +++ b/www/gdrive-photo-gallery/files/gdrive_photo_gallery.in @@ -0,0 +1,61 @@ +#!/bin/sh + +# PROVIDE: gdrive_photo_gallery +# REQUIRE: NETWORKING +# KEYWORD: shutdown + +. /etc/rc.subr + +name="gdrive_photo_gallery" +rcvar="gdrive_photo_gallery_enable" +pidfile="/var/run/${name}.pid" + +load_rc_config "$name" + +: ${gdrive_photo_gallery_enable:="NO"} +: ${gdrive_photo_gallery_env_file:="%%PREFIX%%/etc/gdrive-photo-gallery.env"} +: ${gdrive_photo_gallery_data_prefix:="/var/db/gdrive-photo-gallery"} + +start_cmd="${name}_start" +stop_cmd="${name}_stop" +status_cmd="${name}_status" + +gdrive_photo_gallery_start() +{ + if [ ! -f "${gdrive_photo_gallery_env_file}" ]; then + echo "${name}: env file ${gdrive_photo_gallery_env_file} not found" + return 1 + fi + + export PATH="$PATH:%%PREFIX%%/bin" + echo "Starting ${name}..." + + . "${gdrive_photo_gallery_env_file}" + export GDRIVE_FOLDER GAPI_KEY AUTHOR IG_LINK BASE_URL DATA_PREFIX + export DATA_PREFIX="${gdrive_photo_gallery_data_prefix}" + + daemon -p "${pidfile}" -o /var/log/gdrive-photo-gallery.log \ + %%PREFIX%%/bin/uv run --directory %%PREFIX%%/gdrive-photo-gallery \ + gunicorn --bind 0.0.0.0:80 app:app -w 1 +} + +gdrive_photo_gallery_stop() +{ + if [ -f "${pidfile}" ]; then + echo "Stopping ${name}..." + kill "$(cat "${pidfile}")" 2>/dev/null + rm -f "${pidfile}" + fi +} + +gdrive_photo_gallery_status() +{ + if [ -f "${pidfile}" ] && kill -0 "$(cat "${pidfile}")" 2>/dev/null; then + echo "${name} is running as pid $(cat "${pidfile}")" + else + echo "${name} is not running" + return 1 + fi +} + +run_rc_command "$1" diff --git a/www/gdrive-photo-gallery/pkg-descr b/www/gdrive-photo-gallery/pkg-descr new file mode 100644 index 0000000..0522e09 --- /dev/null +++ b/www/gdrive-photo-gallery/pkg-descr @@ -0,0 +1,2 @@ +Google Drive photo gallery web application. +Displays photos from a Google Drive folder as a gallery. |
