diff --git a/net-im/mastodon/Makefile b/net-im/mastodon/Makefile index 96b9829a8b24..dd1ea4557380 100644 --- a/net-im/mastodon/Makefile +++ b/net-im/mastodon/Makefile @@ -1,73 +1,59 @@ PORTNAME= mastodon DISTVERSIONPREFIX= v -DISTVERSION= 4.3.6 -PORTREVISION= 1 +DISTVERSION= 4.6.3 CATEGORIES= net-im www -MAINTAINER= ports@FreeBSD.org +MAINTAINER= saken@codered.rmta.org COMMENT= GNU Social-compatible microblogging server -WWW= https://github.com/tootsuite/mastodon +WWW= https://github.com/mastodon/mastodon/ LICENSE= AGPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libidn.so:dns/libidn RUN_DEPENDS= autoconf>=2.71:devel/autoconf \ curl>0:ftp/curl \ ffmpeg>0:multimedia/ffmpeg \ git>=0:devel/git \ gmake>0:devel/gmake \ gnupg>0:security/gnupg \ redis>0:databases/redis \ rubygem-bundler>=0:sysutils/rubygem-bundler \ wget>0:ftp/wget \ yarn>:www/yarn USES= magick:7,run pgsql sudo USE_GITHUB= yes USE_RC_SUBR= mastodon_sidekiq mastodon_streaming mastodon_web +EXTRACT_AFTER_ARGS= ${.circleci .devcontainer .git* .dockerignore \ + dist/*.service docker-compose.yml \ + Dockerfile Vagrantfile:L:S|^|--exclude |} \ + --no-same-owner --no-same-permissions + NO_ARCH= yes NO_BUILD= yes USERS= ${PORTNAME} GROUPS= ${PORTNAME} -RM_MASTODONFILES= .dockerignore dist/mastodon-web.service \ - dist/mastodon-sidekiq.service \ - dist/mastodon-streaming.service \ - docker-compose.yml \ - Dockerfile \ - Vagrantfile -RM_MASTODONDIRS= .circleci .devcontainer .github - -post-extract: -.for _F in ${RM_MASTODONFILES} - @${RM} ${WRKSRC}/${_F} -.endfor -.for _D in ${RM_MASTODONDIRS} - @${RM} -r ${WRKSRC}/${_D} -.endfor - post-patch: @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|'\ ${WRKSRC}/dist/nginx.conf do-install: - ${FIND} ${WRKSRC} -name '*.orig' -delete - ${FIND} ${WRKSRC} -name '*.bak' -delete - ${FIND} ${WRKSRC} -name '*.gitkeep' -delete - ${FIND} ${WRKSRC} -name '*.gitignore' -delete + ${FIND} ${WRKSRC} -name '*.orig' -delete \ + -o -name '*.bak' -delete ${MV} ${WRKSRC}/dist/nginx.conf ${WRKSRC}/dist/nginx.conf.sample (cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/www/${PORTNAME}) post-install: @${ECHO_CMD} "@owner mastodon" >> ${TMPPLIST} @${ECHO_CMD} "@group mastodon" >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${WWWDIR} -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' | \ ${SED} -E -e '/sample$$/ s#^#@sample #' >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${WWWDIR} -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/#@dir #' >> ${TMPPLIST} .include diff --git a/net-im/mastodon/distinfo b/net-im/mastodon/distinfo index 837de72072a0..7992a126a235 100644 --- a/net-im/mastodon/distinfo +++ b/net-im/mastodon/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1741880168 -SHA256 (mastodon-mastodon-v4.3.6_GH0.tar.gz) = 1ea3d54ecd90539e08c1441a6f330a3c1404b42b89d78a52acea9fdcdf713e94 -SIZE (mastodon-mastodon-v4.3.6_GH0.tar.gz) = 38126888 +TIMESTAMP = 1783396467 +SHA256 (mastodon-mastodon-v4.6.3_GH0.tar.gz) = 84a5df07b389e1452b1a8602fa8ef35e362a4a90df79df7b8f930584b634a39e +SIZE (mastodon-mastodon-v4.6.3_GH0.tar.gz) = 47768561 diff --git a/net-im/mastodon/files/patch-dist_nginx.conf b/net-im/mastodon/files/patch-dist_nginx.conf index f0f3ebc631fa..5454af46d95b 100644 --- a/net-im/mastodon/files/patch-dist_nginx.conf +++ b/net-im/mastodon/files/patch-dist_nginx.conf @@ -1,45 +1,46 @@ ---- dist/nginx.conf.orig 2023-09-21 14:51:32 UTC +--- dist/nginx.conf.orig 2026-07-03 13:22:15 UTC +++ dist/nginx.conf @@ -25,7 +25,7 @@ server { listen 80; listen [::]:80; server_name example.com; - root /home/mastodon/live/public; + root %%PREFIX%%/www/mastodon/public; location /.well-known/acme-challenge/ { allow all; } location / { return 301 https://$host$request_uri; } } -@@ -35,25 +35,25 @@ server { +@@ -35,26 +35,26 @@ server { listen [::]:443 ssl http2; server_name example.com; - ssl_protocols TLSv1.2 TLSv1.3; + # ssl_protocols TLSv1.2 TLSv1.3; # You can use https://ssl-config.mozilla.org/ to generate your cipher set. # We recommend their "Intermediate" level. - ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305; + # ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305; - ssl_prefer_server_ciphers on; - ssl_session_cache shared:SSL:10m; - ssl_session_tickets off; + # ssl_prefer_server_ciphers on; + # ssl_session_cache shared:SSL:10m; + # ssl_session_tickets off; # Uncomment these lines once you acquire a certificate: - # ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; - # ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; + # ssl_certificate %%PREFIX%%/etc/ssl/example.com/fullchain.pem; + # ssl_certificate_key %%PREFIX%%/etc/ssl/example.com/key.pem; keepalive_timeout 70; sendfile on; client_max_body_size 99m; + proxy_read_timeout 120; ## Increase if you experience 504 errors uploading media - root /home/mastodon/live/public; + root %%PREFIX%%/www/mastodon/public; gzip on; gzip_disable "msie6";