diff options
Diffstat (limited to 'www')
102 files changed, 1218 insertions, 220 deletions
diff --git a/www/Makefile b/www/Makefile index 8339058aecc5..b91c7a31dd0d 100644 --- a/www/Makefile +++ b/www/Makefile @@ -1453,6 +1453,7 @@ SUBDIR += plasma6-plasma-browser-integration SUBDIR += pmwiki SUBDIR += pnews + SUBDIR += pocket-id SUBDIR += podcastamatic SUBDIR += pomerium SUBDIR += pound @@ -1549,6 +1550,27 @@ SUBDIR += py-dj51-drf-writable-nested SUBDIR += py-dj51-social-auth-app-django SUBDIR += py-dj51-strawberry-graphql-django + SUBDIR += py-dj52-channels + SUBDIR += py-dj52-django-auth-ldap + SUBDIR += py-dj52-django-choices-field + SUBDIR += py-dj52-django-cors-headers + SUBDIR += py-dj52-django-debug-toolbar + SUBDIR += py-dj52-django-filter + SUBDIR += py-dj52-django-htmx + SUBDIR += py-dj52-django-js-asset + SUBDIR += py-dj52-django-mptt + SUBDIR += py-dj52-django-prometheus + SUBDIR += py-dj52-django-redis + SUBDIR += py-dj52-django-rich + SUBDIR += py-dj52-django-storages + SUBDIR += py-dj52-django-tables2 + SUBDIR += py-dj52-django-taggit + SUBDIR += py-dj52-django-timezone-field + SUBDIR += py-dj52-djangorestframework + SUBDIR += py-dj52-drf-spectacular + SUBDIR += py-dj52-drf-spectacular-sidecar + SUBDIR += py-dj52-social-auth-app-django + SUBDIR += py-dj52-strawberry-graphql-django SUBDIR += py-django-admin-rangefilter SUBDIR += py-django-advanced-filters SUBDIR += py-django-allauth @@ -2500,6 +2522,7 @@ SUBDIR += tidy SUBDIR += tidy-html5 SUBDIR += tikiwiki + SUBDIR += tinyauth SUBDIR += tinymce SUBDIR += tinyproxy SUBDIR += tivoka diff --git a/www/authelia/Makefile b/www/authelia/Makefile index 728ad37775c8..f7138fa0cd90 100644 --- a/www/authelia/Makefile +++ b/www/authelia/Makefile @@ -8,7 +8,7 @@ DISTFILES= authelia-${DISTVERSIONFULL}-public_html${EXTRACT_SUFX}:public_html # MAINTAINER= yuri@FreeBSD.org COMMENT= Single sign-on multi-factor portal for web apps -WWW= https://www.authelia.com/docs/ +WWW= https://www.authelia.com/ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE diff --git a/www/filebrowser/Makefile b/www/filebrowser/Makefile index 58eefc1b7d46..c86880db65be 100644 --- a/www/filebrowser/Makefile +++ b/www/filebrowser/Makefile @@ -1,7 +1,6 @@ PORTNAME= filebrowser DISTVERSIONPREFIX= v -DISTVERSION= 2.32.0 -PORTREVISION= 1 +DISTVERSION= 2.33.0 CATEGORIES= www MASTER_SITES= LOCAL/dtxdf/${PORTNAME}/ DISTFILES= ${PORTNAME}-${DISTVERSION}.frontend${EXTRACT_SUFX} @@ -34,7 +33,7 @@ PLIST_SUB= GROUP=${GROUPS:[1]} \ # Run 'git checkout ${DISTVERSIONPREFIX}${DISTVERSION} && git rev-parse HEAD' # in the File Browser repository to get the value of GITID. -GITID= 3d6c5152fe22a4a47783253a3506a2930b7b6be3 +GITID= e9bb3dc243eb64b2a7da1bd17feb26bd83e06216 FILEBROWSER_USER= ${PORTNAME} FILEBROWSER_GROUP= ${FILEBROWSER_USER} diff --git a/www/filebrowser/distinfo b/www/filebrowser/distinfo index c5f63b723742..d1d34e3bbb2e 100644 --- a/www/filebrowser/distinfo +++ b/www/filebrowser/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1749425548 -SHA256 (go/www_filebrowser/filebrowser-filebrowser-v2.32.0_GH0/filebrowser-2.32.0.frontend.tar.gz) = 23bbc7ed38c938c4898f7c32ee723e3b43b9da31376b94b1950368675d67b073 -SIZE (go/www_filebrowser/filebrowser-filebrowser-v2.32.0_GH0/filebrowser-2.32.0.frontend.tar.gz) = 2285999 -SHA256 (go/www_filebrowser/filebrowser-filebrowser-v2.32.0_GH0/go.mod) = cf1d0745e69a807fc30e7a90b7c25817bdd0480d0606d6ade04af3eb9fbc3a19 -SIZE (go/www_filebrowser/filebrowser-filebrowser-v2.32.0_GH0/go.mod) = 3047 -SHA256 (go/www_filebrowser/filebrowser-filebrowser-v2.32.0_GH0/filebrowser-filebrowser-v2.32.0_GH0.tar.gz) = 61e9de6b2d396614f45be477e5bb5aad189e7bb1155a3f88800e02421bd6cc2b -SIZE (go/www_filebrowser/filebrowser-filebrowser-v2.32.0_GH0/filebrowser-filebrowser-v2.32.0_GH0.tar.gz) = 3817831 +TIMESTAMP = 1750457619 +SHA256 (go/www_filebrowser/filebrowser-filebrowser-v2.33.0_GH0/filebrowser-2.33.0.frontend.tar.gz) = c9c248a907ca8f4f57e45af639fc9ba55bd173864494a87c8c58dc35543ea0bd +SIZE (go/www_filebrowser/filebrowser-filebrowser-v2.33.0_GH0/filebrowser-2.33.0.frontend.tar.gz) = 2296094 +SHA256 (go/www_filebrowser/filebrowser-filebrowser-v2.33.0_GH0/go.mod) = 4eea2de6124a6eb2615ddf55b56dfa291dc0f9b2fd40f12c277164e60b612a7c +SIZE (go/www_filebrowser/filebrowser-filebrowser-v2.33.0_GH0/go.mod) = 2796 +SHA256 (go/www_filebrowser/filebrowser-filebrowser-v2.33.0_GH0/filebrowser-filebrowser-v2.33.0_GH0.tar.gz) = ade96494e7a9e6381feec8b3bb3729287ca3bc449298ab63022a83be0f73ccba +SIZE (go/www_filebrowser/filebrowser-filebrowser-v2.33.0_GH0/filebrowser-filebrowser-v2.33.0_GH0.tar.gz) = 4324098 diff --git a/www/forgejo/Makefile b/www/forgejo/Makefile index ffc9ae4c1ee5..a54af4448ce2 100644 --- a/www/forgejo/Makefile +++ b/www/forgejo/Makefile @@ -1,7 +1,6 @@ PORTNAME= forgejo DISTVERSIONPREFIX= v -DISTVERSION= 11.0.1 -PORTREVISION= 1 +DISTVERSION= 11.0.2 CATEGORIES= www MASTER_SITES= https://codeberg.org/forgejo/forgejo/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/ DISTNAME= forgejo-src-${DISTVERSION} @@ -56,8 +55,8 @@ DAEMONARGS= -f SUB_LIST+= DAEMONARGS="${DAEMONARGS}" SSP_UNSAFE= true -LDFLAGS+= "'-X "code.gitea.io/gitea/modules/setting.CustomPath=${PREFIX}/etc/forgejo"'" -LDFLAGS+= "'-X "code.gitea.io/gitea/modules/setting.AppWorkPath=${PREFIX}/share/forgejo"'" +LDFLAGS+= "'-X "forgejo.org/modules/setting.CustomPath=${PREFIX}/etc/forgejo"'" \ + "'-X "forgejo.org/modules/setting.AppWorkPath=${PREFIX}/share/forgejo"'" MAKE_ARGS= GOPATH=${WRKDIR} \ TAGS="${GO_TAGS}" \ GOFLAGS="-buildvcs=false" diff --git a/www/forgejo/distinfo b/www/forgejo/distinfo index 0e31c7002884..bc1a84164f32 100644 --- a/www/forgejo/distinfo +++ b/www/forgejo/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1746741570 -SHA256 (forgejo-src-11.0.1.tar.gz) = b8ae645099821e978d096888d17d7e969b05b2b7576ae1d0f4850238305fedd6 -SIZE (forgejo-src-11.0.1.tar.gz) = 55352620 +TIMESTAMP = 1750496838 +SHA256 (forgejo-src-11.0.2.tar.gz) = de6646704769ae69e80feeb8aef0ae6fffad84602fc2d003a49c903e36f9d06d +SIZE (forgejo-src-11.0.2.tar.gz) = 55477978 diff --git a/www/forgejo/files/app.ini.sample.in b/www/forgejo/files/app.ini.sample.in index d625a9ebabab..b54e756578be 100644 --- a/www/forgejo/files/app.ini.sample.in +++ b/www/forgejo/files/app.ini.sample.in @@ -11,8 +11,9 @@ # choosing, INTERNAL_TOKEN is a 64-byte random number in BASE64 encoding, # JWT_SECRET is a 32-byte random number in BASE64 encoding. # -# You can generate the token using for example: -# openssl rand -base64 64 +# You can generate appropriate values using: +# gitea generate secret [INTERNAL_TOKEN|JWT_SECRET|LFS_JWT_SECRET|SECRET_KEY] +# and then copy that output to the appropriate place in this file. # # You can let Forgejo add these to the config for you; you need to make # app.ini writeable by the git user. diff --git a/www/forgejo/files/forgejo.in b/www/forgejo/files/forgejo.in index 2879239c7d68..026fed82b0b2 100644 --- a/www/forgejo/files/forgejo.in +++ b/www/forgejo/files/forgejo.in @@ -52,7 +52,8 @@ forgejo_start() { forgejo_prestart() { if checkyesno forgejo_configcheck_enable; then - if su -m ${forgejo_user} -c "%%PREFIX%%/sbin/${name} doctor check >/dev/null"; then + if su -m ${forgejo_user} -c "FORGEJO_CUSTOM=${forgejo_custom} \ + %%PREFIX%%/sbin/${name} doctor check >/dev/null"; then else echo "cannot start ${name} because of configuration errors. Run" >&2 echo " su -m git -c '${name} doctor check'" >&2 diff --git a/www/forgejo/files/patch-pam b/www/forgejo/files/patch-pam deleted file mode 100644 index 78e5366e887b..000000000000 --- a/www/forgejo/files/patch-pam +++ /dev/null @@ -1,115 +0,0 @@ ---- vendor/github.com/msteinert/pam/v2/errors.go.orig 2025-05-02 07:02:58 UTC -+++ vendor/github.com/msteinert/pam/v2/errors.go -@@ -77,15 +77,6 @@ const ( - ErrAuthtokExpired Error = C.PAM_AUTHTOK_EXPIRED - // ErrModuleUnknown indicates a module is not known. - ErrModuleUnknown Error = C.PAM_MODULE_UNKNOWN -- // ErrBadItem indicates a bad item passed to pam_*_item(). -- ErrBadItem Error = C.PAM_BAD_ITEM -- // ErrConvAgain indicates a conversation function is event driven and data -- // is not available yet. -- ErrConvAgain Error = C.PAM_CONV_AGAIN -- // ErrIncomplete indicates to please call this function again to complete -- // authentication stack. Before calling again, verify that conversation -- // is completed. -- ErrIncomplete Error = C.PAM_INCOMPLETE - ) - - // Error returns the error message for the given status. ---- vendor/github.com/msteinert/pam/v2/errors_linux.go.orig 1970-01-01 00:00:00 UTC -+++ vendor/github.com/msteinert/pam/v2/errors_linux.go -@@ -0,0 +1,21 @@ -+//go:build linux -+ -+package pam -+ -+/* -+#include <security/pam_appl.h> -+*/ -+import "C" -+ -+// Pam Return types -+const ( -+ // ErrBadItem indicates a bad item passed to pam_*_item(). -+ ErrBadItem Error = C.PAM_BAD_ITEM -+ // ErrConvAgain indicates a conversation function is event driven and data -+ // is not available yet. -+ ErrConvAgain Error = C.PAM_CONV_AGAIN -+ // ErrIncomplete indicates to please call this function again to complete -+ // authentication stack. Before calling again, verify that conversation -+ // is completed. -+ ErrIncomplete Error = C.PAM_INCOMPLETE -+) ---- vendor/github.com/msteinert/pam/v2/transaction.c.orig 2025-05-02 07:02:58 UTC -+++ vendor/github.com/msteinert/pam/v2/transaction.c -@@ -47,15 +47,30 @@ void init_pam_conv(struct pam_conv *conv, uintptr_t ap - conv->appdata_ptr = (void *)appdata; - } - -+#ifdef OPENPAM -+int pam_start_confdir(const char *service_name, const char *user, const struct pam_conv *pam_conversation, -+ const char *confdir, pam_handle_t **pamh) -+{ -+ if (pamh != NULL) -+ *pamh = NULL; -+ -+ return PAM_SYSTEM_ERR; -+} -+#else - // pam_start_confdir is a recent PAM api to declare a confdir (mostly for - // tests) weaken the linking dependency to detect if it’s present. - int pam_start_confdir(const char *service_name, const char *user, const struct pam_conv *pam_conversation, - const char *confdir, pam_handle_t **pamh) __attribute__((weak)); -+#endif - - int check_pam_start_confdir(void) - { -+#ifdef OPENPAM -+ return 1; -+#else - if (pam_start_confdir == NULL) - return 1; - - return 0; -+#endif - } ---- vendor/github.com/msteinert/pam/v2/transaction.go.orig 2025-05-02 07:02:58 UTC -+++ vendor/github.com/msteinert/pam/v2/transaction.go -@@ -257,14 +257,6 @@ const ( - Ruser Item = C.PAM_RUSER - // UserPrompt is the string use to prompt for a username. - UserPrompt Item = C.PAM_USER_PROMPT -- // FailDelay is the app supplied function to override failure delays. -- FailDelay Item = C.PAM_FAIL_DELAY -- // Xdisplay is the X display name -- Xdisplay Item = C.PAM_XDISPLAY -- // Xauthdata is the X server authentication data. -- Xauthdata Item = C.PAM_XAUTHDATA -- // AuthtokType is the type for pam_get_authtok -- AuthtokType Item = C.PAM_AUTHTOK_TYPE - ) - - // SetItem sets a PAM information item. ---- vendor/github.com/msteinert/pam/v2/transaction_linux.go.orig 1970-01-01 00:00:00 UTC -+++ vendor/github.com/msteinert/pam/v2/transaction_linux.go -@@ -0,0 +1,20 @@ -+//go:build linux -+ -+package pam -+ -+/* -+#include <security/pam_appl.h> -+*/ -+import "C" -+ -+// PAM Item types. -+const ( -+ // FailDelay is the app supplied function to override failure delays. -+ FailDelay Item = C.PAM_FAIL_DELAY -+ // Xdisplay is the X display name -+ Xdisplay Item = C.PAM_XDISPLAY -+ // Xauthdata is the X server authentication data. -+ Xauthdata Item = C.PAM_XAUTHDATA -+ // AuthtokType is the type for pam_get_authtok -+ AuthtokType Item = C.PAM_AUTHTOK_TYPE -+) diff --git a/www/gitea/Makefile b/www/gitea/Makefile index 37cb50915293..b378c3cc68f3 100644 --- a/www/gitea/Makefile +++ b/www/gitea/Makefile @@ -1,7 +1,6 @@ PORTNAME= gitea DISTVERSIONPREFIX= v -DISTVERSION= 1.23.8 -PORTREVISION= 1 +DISTVERSION= 1.24.2 CATEGORIES= www MASTER_SITES= https://github.com/go-gitea/gitea/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/ \ https://dl.gitea.io/gitea/${DISTVERSION}/ @@ -68,13 +67,14 @@ do-install: # Go binary is statically linked and cannot be stripped, so use # INSTALL_SCRIPT. ${INSTALL_SCRIPT} ${WRKSRC}/gitea ${STAGEDIR}${PREFIX}/sbin - @${MKDIR} ${STAGEDIR}${ETCDIR}/conf + ${MKDIR} ${STAGEDIR}${ETCDIR}/conf \ + ${STAGEDIR}${DATADIR} \ + ${STAGEDIR}/var/db/gitea \ + ${STAGEDIR}/var/db/gitea/data \ + ${STAGEDIR}/var/db/gitea/gitea-repositories \ + ${STAGEDIR}/var/log/gitea ${INSTALL_DATA} ${WRKDIR}/app.ini.sample ${STAGEDIR}${ETCDIR}/conf/app.ini.sample ${INSTALL_DATA} ${WRKSRC}/custom/conf/app.example.ini ${STAGEDIR}${ETCDIR}/conf/app.ini.defaults - ${MKDIR} ${STAGEDIR}${DATADIR} - ${MKDIR} ${STAGEDIR}/var/db/gitea - ${MKDIR} ${STAGEDIR}/var/db/gitea/gitea-repositories - ${MKDIR} ${STAGEDIR}/var/log/gitea do-install-BINDATA-off: cd ${WRKSRC} && ${COPYTREE_SHARE} "options public templates" ${STAGEDIR}${DATADIR} diff --git a/www/gitea/distinfo b/www/gitea/distinfo index cff6db15cdc5..e0a6d99a3873 100644 --- a/www/gitea/distinfo +++ b/www/gitea/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1747455860 -SHA256 (gitea-src-1.23.8.tar.gz) = 0ff96c1b7cc0960b5b9d34bd978cedc0f856a168654838bdef3551621f049717 -SIZE (gitea-src-1.23.8.tar.gz) = 55482190 +TIMESTAMP = 1750493495 +SHA256 (gitea-src-1.24.2.tar.gz) = 1015496a01a95821faaefce1d422ecdd98f62bc609efbeb43608772612ceeeff +SIZE (gitea-src-1.24.2.tar.gz) = 51769357 diff --git a/www/gitea/pkg-plist b/www/gitea/pkg-plist index acab89e7b63f..e7dfdadde2ad 100644 --- a/www/gitea/pkg-plist +++ b/www/gitea/pkg-plist @@ -2,5 +2,6 @@ %%ETCDIR%%/conf/app.ini.defaults sbin/gitea @dir(git,git,755) /var/db/gitea +@dir(git,git,755) /var/db/gitea/data @dir(git,git,755) /var/db/gitea/gitea-repositories @dir(git,git,755) /var/log/gitea diff --git a/www/pocket-id/Makefile b/www/pocket-id/Makefile new file mode 100644 index 000000000000..641ca2d03c15 --- /dev/null +++ b/www/pocket-id/Makefile @@ -0,0 +1,39 @@ +PORTNAME= pocket-id +DISTVERSIONPREFIX= v +DISTVERSION= 1.4.0 +CATEGORIES= www +MASTER_SITES= LOCAL/dtxdf/${PORTNAME}/ +DISTFILES= ${PORTNAME}-${DISTVERSION}.frontend${EXTRACT_SUFX} + +MAINTAINER= dtxdf@FreeBSD.org +COMMENT= OIDC provider that allows users to authenticate with their passkeys +WWW= https://pocket-id.org + +LICENSE= BSD2CLAUSE + +USES= go:modules +USE_GITHUB= yes +USE_RC_SUBR= ${PORTNAME} + +GO_MOD_DIST= github +GO_MODULE= https://github.com/pocket-id/${PORTNAME} +GO_TARGET= ./cmd:${PORTNAME} +GO_BUILDFLAGS= -ldflags "-X github.com/pocket-id/pocket-id/backend/internal/common.Version=${DISTVERSION} -buildid=${DISTVERSION}" + +SUB_FILES= pkg-message +SUB_LIST= USER=${USERS:[1]} + +WRKSRC_SUBDIR= backend + +USERS= ${POCKET_ID_USER} +GROUPS= ${POCKET_ID_GROUP} + +PLIST_FILES= bin/${PORTNAME} + +POCKET_ID_USER= ${PORTNAME} +POCKET_ID_GROUP= ${POCKET_ID_USER} + +pre-build: + @cd ${WRKDIR}/pocket-id-frontend && ${COPYTREE_SHARE} . ${WRKSRC}/frontend/dist + +.include <bsd.port.mk> diff --git a/www/pocket-id/distinfo b/www/pocket-id/distinfo new file mode 100644 index 000000000000..dea750785956 --- /dev/null +++ b/www/pocket-id/distinfo @@ -0,0 +1,7 @@ +TIMESTAMP = 1750475934 +SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.4.0_GH0/pocket-id-1.4.0.frontend.tar.gz) = 28d9a1e390d4caa1d210fb1cd36c2f2839d89e82905e88953847b18a25aeb44d +SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.4.0_GH0/pocket-id-1.4.0.frontend.tar.gz) = 940695 +SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.4.0_GH0/go.mod) = 746b88f292ef6becb08abe2aa09185c44bf44d7679e281534821b0d8cfc4828c +SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.4.0_GH0/go.mod) = 6612 +SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.4.0_GH0/pocket-id-pocket-id-v1.4.0_GH0.tar.gz) = ad76903ab02cd739fb3171df8d18a3192b131dc55dd52fe223634c79d9d82f53 +SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.4.0_GH0/pocket-id-pocket-id-v1.4.0_GH0.tar.gz) = 5506002 diff --git a/www/pocket-id/files/pkg-message.in b/www/pocket-id/files/pkg-message.in new file mode 100644 index 000000000000..f97cc825952b --- /dev/null +++ b/www/pocket-id/files/pkg-message.in @@ -0,0 +1,17 @@ +[ +{ type: install + message: <<EOM +Pocket ID is installed + +1) Configure it in %%PREFIX%%/etc/pocket-id.env + +2) Enable it with + + sysrc pocket_id_enable=YES + +3) Start it with + + service pocket-id start +EOM +} +] diff --git a/www/pocket-id/files/pocket-id.in b/www/pocket-id/files/pocket-id.in new file mode 100644 index 000000000000..04a26a82a74e --- /dev/null +++ b/www/pocket-id/files/pocket-id.in @@ -0,0 +1,36 @@ +#!/bin/sh + +# PROVIDE: pocket_id +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Configuration settings for pocket-id in /etc/rc.conf +# +# pocket_id_enable (bool): Enable pocket-id. (Default=NO) +# pocket_id_env_file (str): Path containing the environment variables +# to be used by pocket-id. (Default: /usr/local/etc/pocket-id.env) +# pocket_id_logfile (str): Log file used to store the pocket-id's output. (Default: /var/log/pocket-id.log) +# pocket_id_pidfile (str): File used by pocket-id to store the process ID. (Default: /var/run/pocket-id.pid) +# pocket_id_runas (str): User to run pocket-id as. (Default: %%USER%%) + +. /etc/rc.subr + +name="pocket_id" +desc="OIDC provider that allows users to authenticate with their passkeys" +rcvar="pocket_id_enable" + +load_rc_config $name + +: ${pocket_id_enable:="NO"} +: ${pocket_id_env_file:="/usr/local/etc/pocket-id.env"} +: ${pocket_id_logfile:="/var/log/pocket-id.log"} +: ${pocket_id_pidfile:="/var/run/pocket-id.pid"} +: ${pocket_id_runas:="%%USER%%"} + +pocket_id_chdir="/var/db/pocket-id" +pidfile="${pocket_id_pidfile}" +procname="/usr/local/bin/pocket-id" +command="/usr/sbin/daemon" +command_args="-o '${pocket_id_logfile}' -p '${pidfile}' -u '${pocket_id_runas}' -t '${desc}' -- '${procname}'" + +run_rc_command "$1" diff --git a/www/pocket-id/pkg-descr b/www/pocket-id/pkg-descr new file mode 100644 index 000000000000..904737283fae --- /dev/null +++ b/www/pocket-id/pkg-descr @@ -0,0 +1,13 @@ +Pocket ID is a simple OIDC provider that allows users to authenticate +with their passkeys to your services. + +The goal of Pocket ID is to be a simple and easy-to-use. There are +other self-hosted OIDC providers like Keycloak or ORY Hydra but +they are often too complex for simple use cases. + +Additionally, what makes Pocket ID special is that it only supports +passkey authentication, which means you don't need a password. Some +people might not like this idea at first, but I believe passkeys +are the future, and once you try them, you'll love them. For example, +you can now use a physical Yubikey to sign in to all your self-hosted +services easily and securely diff --git a/www/py-cherrypy/Makefile b/www/py-cherrypy/Makefile index d66058448b15..4af95a0c9653 100644 --- a/www/py-cherrypy/Makefile +++ b/www/py-cherrypy/Makefile @@ -1,14 +1,12 @@ PORTNAME= cherrypy -PORTVERSION= 18.8.0 -PORTREVISION= 2 +PORTVERSION= 18.10.0 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -DISTNAME= CherryPy-${PORTVERSION} MAINTAINER= nivit@FreeBSD.org COMMENT= Pythonic, object-oriented web development framework -WWW= http://www.cherrypy.org/ +WWW= https://www.cherrypy.dev/ LICENSE= BSD3CLAUSE @@ -20,8 +18,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cheroot>=8.2.1:www/py-cheroot@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}portend>=2.1.1:net/py-portend@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=1.11.0:devel/py-six@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}zc.lockfile>0:devel/py-zc.lockfile@${PY_FLAVOR} -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}codecov>=2.1.13:devel/py-codecov@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}coverage>=7.2.2:devel/py-coverage@${PY_FLAVOR} \ +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=7.2.2:devel/py-coverage@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}objgraph>=3.5.0:devel/py-objgraph@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}path.py>0:devel/py-path.py@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-cov>=2.9.0:devel/py-pytest-cov@${PY_FLAVOR} \ diff --git a/www/py-cherrypy/distinfo b/www/py-cherrypy/distinfo index cb3dafdf9fae..c97e7ef88971 100644 --- a/www/py-cherrypy/distinfo +++ b/www/py-cherrypy/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1686603836 -SHA256 (CherryPy-18.8.0.tar.gz) = 9b48cfba8a2f16d5b6419cc657e6d51db005ba35c5e3824e4728bb03bbc7ef9b -SIZE (CherryPy-18.8.0.tar.gz) = 622679 +TIMESTAMP = 1750497658 +SHA256 (cherrypy-18.10.0.tar.gz) = 6c70e78ee11300e8b21c0767c542ae6b102a49cac5cfd4e3e313d7bb907c5891 +SIZE (cherrypy-18.10.0.tar.gz) = 633708 diff --git a/www/py-dj52-channels/Makefile b/www/py-dj52-channels/Makefile new file mode 100644 index 000000000000..e8f8ced587d3 --- /dev/null +++ b/www/py-dj52-channels/Makefile @@ -0,0 +1,25 @@ +PORTNAME= channels +PORTVERSION= 4.2.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Brings async, event-driven capabilities to Django +WWW= https://channels.readthedocs.io/en/latest/ \ + https://github.com/django/channels + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}asgiref>=3.6.0<4:www/py-asgiref@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist concurrent pep517 + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-channels/distinfo b/www/py-dj52-channels/distinfo new file mode 100644 index 000000000000..cfa8d2a5103d --- /dev/null +++ b/www/py-dj52-channels/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1732202562 +SHA256 (channels-4.2.0.tar.gz) = d9e707487431ba5dbce9af982970dab3b0efd786580fadb99e45dca5e39fdd59 +SIZE (channels-4.2.0.tar.gz) = 26554 diff --git a/www/py-dj52-channels/pkg-descr b/www/py-dj52-channels/pkg-descr new file mode 100644 index 000000000000..01296180bc27 --- /dev/null +++ b/www/py-dj52-channels/pkg-descr @@ -0,0 +1,4 @@ +Channels augments Django to bring WebSocket, long-poll HTTP, task offloading and +other async support to your code, using familiar Django design patterns and a +flexible underlying framework that lets you not only customize behaviours but +also write support for your own protocols and needs. diff --git a/www/py-dj52-django-auth-ldap/Makefile b/www/py-dj52-django-auth-ldap/Makefile new file mode 100644 index 000000000000..2ddf3b629a3a --- /dev/null +++ b/www/py-dj52-django-auth-ldap/Makefile @@ -0,0 +1,40 @@ +PORTNAME= django-auth-ldap +DISTVERSION= 5.1.0 +CATEGORIES= www security python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_auth_ldap-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= LDAP integration for django.contrib.auth +WWW= https://github.com/django-auth-ldap/django-auth-ldap + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=3.4:devel/py-setuptools-scm@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}python-ldap>=3.1:net/py-python-ldap@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist concurrent pep517 + +NO_ARCH= yes +PORTDOCS= * +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +OPTIONS_DEFINE= DOCS +DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} + +post-build-DOCS-on: + ${LOCALBASE}/bin/sphinx-build-${PYTHON_VER} -d ${WRKDIR} -b html ${WRKSRC}/docs ${WRKSRC}/build/sphinx/html + +post-install-DOCS-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + (cd ${WRKSRC}/build/sphinx/html && \ + ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR} \ + "! -name .buildinfo -and ! -name objects.inv") + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-auth-ldap/distinfo b/www/py-dj52-django-auth-ldap/distinfo new file mode 100644 index 000000000000..2ae0a3f4baa0 --- /dev/null +++ b/www/py-dj52-django-auth-ldap/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1730477310 +SHA256 (django_auth_ldap-5.1.0.tar.gz) = 9c607e8d9c53cf2a0ccafbe0acfc33eb1d1fd474c46ec52d30aee0dca1da9668 +SIZE (django_auth_ldap-5.1.0.tar.gz) = 55059 diff --git a/www/py-dj52-django-auth-ldap/files/patch-docs_conf.py b/www/py-dj52-django-auth-ldap/files/patch-docs_conf.py new file mode 100644 index 000000000000..d41916245ebc --- /dev/null +++ b/www/py-dj52-django-auth-ldap/files/patch-docs_conf.py @@ -0,0 +1,20 @@ +Avoid the download of various intersphinx inventories during build. Only two +intersphinx mappings are used and the documentation can be built/used without +them. + +--- docs/conf.py.orig 2022-06-12 10:26:47 UTC ++++ docs/conf.py +@@ -188,13 +188,3 @@ texinfo_documents = [ + # -- Extension configuration ------------------------------------------------- + + # -- Options for intersphinx extension --------------------------------------- +- +-intersphinx_mapping = { +- "python": ("https://docs.python.org/3/", None), +- "django": ( +- "https://docs.djangoproject.com/en/stable/", +- "https://docs.djangoproject.com/en/stable/_objects/", +- ), +- "pythonldap": ("https://www.python-ldap.org/en/latest/", None), +- "tox": ("https://tox.wiki/en/latest/", None), +-} diff --git a/www/py-dj52-django-auth-ldap/pkg-descr b/www/py-dj52-django-auth-ldap/pkg-descr new file mode 100644 index 000000000000..390903dba8ac --- /dev/null +++ b/www/py-dj52-django-auth-ldap/pkg-descr @@ -0,0 +1,4 @@ +This is a Django authentication backend that authenticates against an LDAP +service. Configuration can be as simple as a single distinguished name template, +but there are many rich configuration options for working with users, groups, +and permissions. diff --git a/www/py-dj52-django-choices-field/Makefile b/www/py-dj52-django-choices-field/Makefile new file mode 100644 index 000000000000..355a02ed97cb --- /dev/null +++ b/www/py-dj52-django-choices-field/Makefile @@ -0,0 +1,24 @@ +PORTNAME= django-choices-field +DISTVERSION= 2.3.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_choices_field-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Django field that set/get TextChoices/IntegerChoices enumerations +WWW= https://github.com/bellini666/django-choices-field + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=3.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.0.0:devel/py-typing-extensions@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-choices-field/distinfo b/www/py-dj52-django-choices-field/distinfo new file mode 100644 index 000000000000..7f61f9ac7dde --- /dev/null +++ b/www/py-dj52-django-choices-field/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1711885476 +SHA256 (django_choices_field-2.3.0.tar.gz) = bb0c85c79737ab98bfb9c0d9ddf98010d612c0585be767890e25fd192c3d1694 +SIZE (django_choices_field-2.3.0.tar.gz) = 6448 diff --git a/www/py-dj52-django-choices-field/pkg-descr b/www/py-dj52-django-choices-field/pkg-descr new file mode 100644 index 000000000000..3a855539fca9 --- /dev/null +++ b/www/py-dj52-django-choices-field/pkg-descr @@ -0,0 +1,2 @@ +This package provides a Django field that set/get the "TextChoices" and +"IntegerChoices" enumerations. diff --git a/www/py-dj52-django-cors-headers/Makefile b/www/py-dj52-django-cors-headers/Makefile new file mode 100644 index 000000000000..ede2fbb0079e --- /dev/null +++ b/www/py-dj52-django-cors-headers/Makefile @@ -0,0 +1,26 @@ +PORTNAME= django-cors-headers +DISTVERSION= 4.7.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_cors_headers-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Handles server headers required for Cross-Origin Resource Sharing +WWW= https://github.com/adamchainz/django-cors-headers + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}asgiref>=3.6:www/py-asgiref@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +NO_ARCH= yes +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-cors-headers/distinfo b/www/py-dj52-django-cors-headers/distinfo new file mode 100644 index 000000000000..ea513ae6604c --- /dev/null +++ b/www/py-dj52-django-cors-headers/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1739187247 +SHA256 (django_cors_headers-4.7.0.tar.gz) = 6fdf31bf9c6d6448ba09ef57157db2268d515d94fc5c89a0a1028e1fc03ee52b +SIZE (django_cors_headers-4.7.0.tar.gz) = 21037 diff --git a/www/py-dj52-django-cors-headers/pkg-descr b/www/py-dj52-django-cors-headers/pkg-descr new file mode 100644 index 000000000000..9ba1bc6bd1a8 --- /dev/null +++ b/www/py-dj52-django-cors-headers/pkg-descr @@ -0,0 +1,2 @@ +A Django App that adds CORS (Cross-Origin Resource Sharing) headers to +responses. diff --git a/www/py-dj52-django-debug-toolbar/Makefile b/www/py-dj52-django-debug-toolbar/Makefile new file mode 100644 index 000000000000..62cdf47b2a83 --- /dev/null +++ b/www/py-dj52-django-debug-toolbar/Makefile @@ -0,0 +1,27 @@ +PORTNAME= django-debug-toolbar +PORTVERSION= 5.2.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_debug_toolbar-${PORTVERSION} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Configurable set of panels to display debug information +WWW= https://django-debug-toolbar.readthedocs.io/en/latest/ \ + https://github.com/django-commons/django-debug-toolbar + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2.9:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}sqlparse>=0.2.0:databases/py-sqlparse@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist concurrent pep517 + +NO_ARCH= yes + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*django-debug-toolbar + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-debug-toolbar/distinfo b/www/py-dj52-django-debug-toolbar/distinfo new file mode 100644 index 000000000000..130df8cee123 --- /dev/null +++ b/www/py-dj52-django-debug-toolbar/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1747327034 +SHA256 (django_debug_toolbar-5.2.0.tar.gz) = 9e7f0145e1a1b7d78fcc3b53798686170a5b472d9cf085d88121ff823e900821 +SIZE (django_debug_toolbar-5.2.0.tar.gz) = 297901 diff --git a/www/py-dj52-django-debug-toolbar/pkg-descr b/www/py-dj52-django-debug-toolbar/pkg-descr new file mode 100644 index 000000000000..e62114e4b61f --- /dev/null +++ b/www/py-dj52-django-debug-toolbar/pkg-descr @@ -0,0 +1,3 @@ +The Django Debug Toolbar is a configurable set of panels that display various +debug information about the current request/response and when clicked, display +more details about the panel's content. diff --git a/www/py-dj52-django-filter/Makefile b/www/py-dj52-django-filter/Makefile new file mode 100644 index 000000000000..c999af31c25c --- /dev/null +++ b/www/py-dj52-django-filter/Makefile @@ -0,0 +1,25 @@ +PORTNAME= django-filter +DISTVERSION= 25.1 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_filter-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Dynamic filtering for querysets with Django +WWW= https://github.com/carltongibson/django-filter + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>=3.2<4:devel/py-flit-core@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-filter/distinfo b/www/py-dj52-django-filter/distinfo new file mode 100644 index 000000000000..1fe436b6ac10 --- /dev/null +++ b/www/py-dj52-django-filter/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1740212287 +SHA256 (django_filter-25.1.tar.gz) = 1ec9eef48fa8da1c0ac9b411744b16c3f4c31176c867886e4c48da369c407153 +SIZE (django_filter-25.1.tar.gz) = 143021 diff --git a/www/py-dj52-django-filter/pkg-descr b/www/py-dj52-django-filter/pkg-descr new file mode 100644 index 000000000000..089f799caa3e --- /dev/null +++ b/www/py-dj52-django-filter/pkg-descr @@ -0,0 +1,2 @@ +Django-filter is a reusable Django application allowing users to declaratively +add dynamic QuerySet filtering from URL parameters. diff --git a/www/py-dj52-django-htmx/Makefile b/www/py-dj52-django-htmx/Makefile new file mode 100644 index 000000000000..6dc8db82841e --- /dev/null +++ b/www/py-dj52-django-htmx/Makefile @@ -0,0 +1,27 @@ +PORTNAME= django-htmx +DISTVERSION= 1.23.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_htmx-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Extensions for using Django with htmx +WWW= https://github.com/adamchainz/django-htmx + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}asgiref>=3.6:www/py-asgiref@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-htmx/distinfo b/www/py-dj52-django-htmx/distinfo new file mode 100644 index 000000000000..ff5b98d404fe --- /dev/null +++ b/www/py-dj52-django-htmx/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1742639003 +SHA256 (django_htmx-1.23.0.tar.gz) = 71e6242ac6bd32a0e14fcb12b340f901c9a924f0b4e9b461a5e6a6eea8d9c6dd +SIZE (django_htmx-1.23.0.tar.gz) = 63450 diff --git a/www/py-dj52-django-htmx/pkg-descr b/www/py-dj52-django-htmx/pkg-descr new file mode 100644 index 000000000000..9b84019de4a7 --- /dev/null +++ b/www/py-dj52-django-htmx/pkg-descr @@ -0,0 +1,3 @@ +This package offers extensions for using Django with htmx, a library that +allows one to access modern browser features directly from HTML, rather than +using JavaScript (see https://htmx.org/). diff --git a/www/py-dj52-django-js-asset/Makefile b/www/py-dj52-django-js-asset/Makefile new file mode 100644 index 000000000000..7e5d300ba127 --- /dev/null +++ b/www/py-dj52-django-js-asset/Makefile @@ -0,0 +1,25 @@ +PORTNAME= django-js-asset +DISTVERSION= 3.1.2 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_js_asset-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Insert script tags with additional attributes for django.forms.Media +WWW= https://github.com/matthiask/django-js-asset + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-js-asset/distinfo b/www/py-dj52-django-js-asset/distinfo new file mode 100644 index 000000000000..5d250a973b1e --- /dev/null +++ b/www/py-dj52-django-js-asset/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1741326981 +SHA256 (django_js_asset-3.1.2.tar.gz) = 1fc7584199ed1941ed7c8e7b87ca5524bb0f2ba941561d2a104e88ee9f07bedd +SIZE (django_js_asset-3.1.2.tar.gz) = 9471 diff --git a/www/py-dj52-django-js-asset/pkg-descr b/www/py-dj52-django-js-asset/pkg-descr new file mode 100644 index 000000000000..99b04e1534c9 --- /dev/null +++ b/www/py-dj52-django-js-asset/pkg-descr @@ -0,0 +1,2 @@ +Insert script tags with additional attributes (such as "id" and "data" for +CSP-compatible data injection) for the django.forms.Media package. diff --git a/www/py-dj52-django-mptt/Makefile b/www/py-dj52-django-mptt/Makefile new file mode 100644 index 000000000000..18ab030b3f5a --- /dev/null +++ b/www/py-dj52-django-mptt/Makefile @@ -0,0 +1,26 @@ +PORTNAME= django-mptt +DISTVERSION= 0.17.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_mptt-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Utilities for implementing Modified Preorder Tree Traversal in Django +WWW= https://github.com/django-mptt/django-mptt + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR}\ + ${PYTHON_PKGNAMEPREFIX}dj52-django-js-asset>0:www/py-dj52-django-js-asset@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-mptt/distinfo b/www/py-dj52-django-mptt/distinfo new file mode 100644 index 000000000000..a4f142723154 --- /dev/null +++ b/www/py-dj52-django-mptt/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1743831457 +SHA256 (django_mptt-0.17.0.tar.gz) = e2dca00536450b91bdc80d8fc1454993b84307728394ae42c72947fc09574d3d +SIZE (django_mptt-0.17.0.tar.gz) = 71428 diff --git a/www/py-dj52-django-mptt/pkg-descr b/www/py-dj52-django-mptt/pkg-descr new file mode 100644 index 000000000000..bad56cabf151 --- /dev/null +++ b/www/py-dj52-django-mptt/pkg-descr @@ -0,0 +1,2 @@ +Utilities for implementing Modified Preorder Tree Traversal with your Django +Models and working with trees of Model instances. diff --git a/www/py-dj52-django-prometheus/Makefile b/www/py-dj52-django-prometheus/Makefile new file mode 100644 index 000000000000..a48b4efff30b --- /dev/null +++ b/www/py-dj52-django-prometheus/Makefile @@ -0,0 +1,38 @@ +PORTNAME= django-prometheus +DISTVERSION= 2.3.1 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- + +MAINTAINER= kai@FreeBSD.org +COMMENT= Export Django monitoring metrics for Prometheus.io +WWW= https://github.com/korfuri/django-prometheus + +LICENSE= APACHE20 + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0.40.0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=3.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}prometheus-client>=0.7:net-mgmt/py-prometheus-client@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 pytest + +TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +OPTIONS_GROUP= DATABASE CACHE +OPTIONS_GROUP_DATABASE= MYSQL PGSQL +OPTIONS_GROUP_CACHE= MEMCACHED REDIS + +MEMCACHED_DESC= Memcached distributed memory caching support + +MEMCACHED_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-memcached>=0:databases/py-python-memcached@${PY_FLAVOR} +MYSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=0:databases/py-mysqlclient@${PY_FLAVOR} +PGSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}psycopg2>=0:databases/py-psycopg2@${PY_FLAVOR} +REDIS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj52-django-redis>=4.8:www/py-dj52-django-redis@${PY_FLAVOR} + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-prometheus/distinfo b/www/py-dj52-django-prometheus/distinfo new file mode 100644 index 000000000000..4f11977cb57e --- /dev/null +++ b/www/py-dj52-django-prometheus/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1683262385 +SHA256 (django-prometheus-2.3.1.tar.gz) = f9c8b6c780c9419ea01043c63a437d79db2c33353451347894408184ad9c3e1e +SIZE (django-prometheus-2.3.1.tar.gz) = 24718 diff --git a/www/py-dj52-django-prometheus/files/patch-pyproject.toml b/www/py-dj52-django-prometheus/files/patch-pyproject.toml new file mode 100644 index 000000000000..5bf778c4f9e3 --- /dev/null +++ b/www/py-dj52-django-prometheus/files/patch-pyproject.toml @@ -0,0 +1,11 @@ +Relax version requirements of py-setuptools. + +--- pyproject.toml.orig 2024-10-06 12:58:05 UTC ++++ pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = [ "setuptools >= 67.7.2", "wheel >= 0.40.0"] ++requires = [ "setuptools", "wheel >= 0.40.0"] + build-backend = "setuptools.build_meta" + + [tool.pytest.ini_options] diff --git a/www/py-dj52-django-prometheus/files/patch-setup.py b/www/py-dj52-django-prometheus/files/patch-setup.py new file mode 100644 index 000000000000..6e28293ebe58 --- /dev/null +++ b/www/py-dj52-django-prometheus/files/patch-setup.py @@ -0,0 +1,13 @@ +Remove py-pytest-runner as build time dependency because it is deprecated and +should be no longer used. + +--- setup.py.orig 2024-10-01 12:41:04 UTC ++++ setup.py +@@ -40,7 +40,6 @@ setup( + long_description=LONG_DESCRIPTION, + long_description_content_type="text/markdown", + tests_require=["pytest", "pytest-django"], +- setup_requires=["pytest-runner"], + options={"bdist_wheel": {"universal": "1"}}, + install_requires=[ + "prometheus-client>=0.7", diff --git a/www/py-dj52-django-prometheus/pkg-descr b/www/py-dj52-django-prometheus/pkg-descr new file mode 100644 index 000000000000..0962e7b87336 --- /dev/null +++ b/www/py-dj52-django-prometheus/pkg-descr @@ -0,0 +1,14 @@ +This library exports Django monitoring metrics for Prometheus.io. + +It provides support to monitor the following databases types: + +* SQLite (via Django) +* PostgreSQL +* MySQL + +In addition, caches can also be monitored: + +* memcached +* Redis + +It's even possible to export metrics of Django models and migrations. diff --git a/www/py-dj52-django-redis/Makefile b/www/py-dj52-django-redis/Makefile new file mode 100644 index 000000000000..6033fc994a25 --- /dev/null +++ b/www/py-dj52-django-redis/Makefile @@ -0,0 +1,36 @@ +PORTNAME= django-redis +PORTVERSION= 5.4.0 +CATEGORIES= www databases python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Full featured Redis cache/session backend for Django +WWW= https://github.com/jazzband/django-redis + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=3.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}redis>=3.0.0:databases/py-redis@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}msgpack>=0:devel/py-msgpack@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-django>=0:devel/py-pytest-django@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-mock>=0:devel/py-pytest-mock@${PY_FLAVOR} \ + redis-server:databases/redis + +USES= python:3.10+ +USE_PYTHON= autoplist concurrent pep517 pytest + +# Required for Python 3.11+ as the cgi module is deprecated and slated for removal in Python 3.13 +TEST_ARGS= -W ignore::DeprecationWarning +TEST_ENV= DJANGO_SETTINGS_MODULE=settings.sqlite \ + PYTHONPATH=${STAGEDIR}${PYTHON_SITELIBDIR} +TEST_WRKSRC= ${WRKSRC}/tests + +NO_ARCH= yes + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*django-redis + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-redis/distinfo b/www/py-dj52-django-redis/distinfo new file mode 100644 index 000000000000..156f9d23ac30 --- /dev/null +++ b/www/py-dj52-django-redis/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1696432970 +SHA256 (django-redis-5.4.0.tar.gz) = 6a02abaa34b0fea8bf9b707d2c363ab6adc7409950b2db93602e6cb292818c42 +SIZE (django-redis-5.4.0.tar.gz) = 52567 diff --git a/www/py-dj52-django-redis/pkg-descr b/www/py-dj52-django-redis/pkg-descr new file mode 100644 index 000000000000..ab566f948f78 --- /dev/null +++ b/www/py-dj52-django-redis/pkg-descr @@ -0,0 +1,15 @@ +Django-redis is a BSD Licensed, full featured Redis cache/session +backend for Django. + +Why use django-redis? + + * Modular client system (pluggable clients). + * Master-Slave support in the default client. + * Used in production in several projects as cache and session storage. + * Supports infinite timeouts. + * Python 3 support in same code base. + * Facilities for raw access to Redis client/connection pool. + * Highly configurable (can emulate memcached exception behavior, for + example). + * Unix sockets supported by default. + * Pluggable parsers. diff --git a/www/py-dj52-django-rich/Makefile b/www/py-dj52-django-rich/Makefile new file mode 100644 index 000000000000..8c7d791d94ba --- /dev/null +++ b/www/py-dj52-django-rich/Makefile @@ -0,0 +1,27 @@ +PORTNAME= django-rich +DISTVERSION= 2.0.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_rich-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Extensions for using Rich with Django +WWW= https://github.com/adamchainz/django-rich + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}rich>=10.0.0:textproc/py-rich@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-rich/distinfo b/www/py-dj52-django-rich/distinfo new file mode 100644 index 000000000000..ff93b43f1403 --- /dev/null +++ b/www/py-dj52-django-rich/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1747327116 +SHA256 (django_rich-2.0.0.tar.gz) = 3646edf7223f05b9775ec9a38ab5a33be93042fc3de3d5e31eacf84da6091913 +SIZE (django_rich-2.0.0.tar.gz) = 61448 diff --git a/www/py-dj52-django-rich/pkg-descr b/www/py-dj52-django-rich/pkg-descr new file mode 100644 index 000000000000..db029741fbb0 --- /dev/null +++ b/www/py-dj52-django-rich/pkg-descr @@ -0,0 +1,11 @@ +This package provides extensions for using Rich with the Django framework. + +These extensions consist of the following subclasses: + +* django_rich.management.RichCommand: + Subclass of Django's BaseCommand class that sets its self.console to a + Rich console. + +* django_rich.test.RichRunner: + Subclass of Django's DiscoverRunner with colorized outputs and nice + traceback rendering. diff --git a/www/py-dj52-django-storages/Makefile b/www/py-dj52-django-storages/Makefile new file mode 100644 index 000000000000..d42e105a875d --- /dev/null +++ b/www/py-dj52-django-storages/Makefile @@ -0,0 +1,44 @@ +PORTNAME= django-storages +DISTVERSION= 1.14.6 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_storages-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Generic storages for Django +WWW= https://django-storages.readthedocs.io/en/latest/ \ + https://github.com/jschneier/django-storages + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.2:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=3.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist concurrent pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +# AZURE option requires newer devel/py-azure-storage-blob (not yet in the ports tree). +OPTIONS_DEFINE= DROPBOX GOOGLE LIBCLOUD S3 SFTP #AZURE +#AZURE_DESC= Azure backend +DROPBOX_DESC= Dropbox backend +GOOGLE_DESC= Google Cloud Storage backend +LIBCLOUD_DESC= Apache Libcloud backend +S3_DESC= Amazon S3 backend +SFTP_DESC= SFTP backend + +#AZURE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}azure-core>=1.13:devel/py-azure-core@${PY_FLAVOR} \ +# ${PYTHON_PKGNAMEPREFIX}azure-storage-blob>=12:devel/py-azure-storage-blob@${PY_FLAVOR} +DROPBOX_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dropbox>=7.2.1:www/py-dropbox@${PY_FLAVOR} +GOOGLE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}google-cloud-storage>=1.27:www/py-google-cloud-storage@${PY_FLAVOR} +LIBCLOUD_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}libcloud>=0:net/py-libcloud@${PY_FLAVOR} +S3_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boto3>=1.4.4:www/py-boto3@${PY_FLAVOR} +SFTP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}paramiko>=1.15:security/py-paramiko@${PY_FLAVOR} + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-storages/distinfo b/www/py-dj52-django-storages/distinfo new file mode 100644 index 000000000000..fdf7fdd929d0 --- /dev/null +++ b/www/py-dj52-django-storages/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1744777452 +SHA256 (django_storages-1.14.6.tar.gz) = 7a25ce8f4214f69ac9c7ce87e2603887f7ae99326c316bc8d2d75375e09341c9 +SIZE (django_storages-1.14.6.tar.gz) = 87587 diff --git a/www/py-dj52-django-storages/pkg-descr b/www/py-dj52-django-storages/pkg-descr new file mode 100644 index 000000000000..9a41326622ac --- /dev/null +++ b/www/py-dj52-django-storages/pkg-descr @@ -0,0 +1,2 @@ +Generic storages for Django. Support for many storages +(S3, MogileFS, etc) in Django diff --git a/www/py-dj52-django-tables2/Makefile b/www/py-dj52-django-tables2/Makefile new file mode 100644 index 000000000000..e5826b984125 --- /dev/null +++ b/www/py-dj52-django-tables2/Makefile @@ -0,0 +1,30 @@ +PORTNAME= django-tables2 +DISTVERSION= 2.7.5 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_tables2-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Table/data-grid framework for Django +WWW= https://github.com/jieter/django-tables2 + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>0:devel/py-hatchling@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +OPTIONS_DEFINE= TABLIB + +TABLIB_DESC= Enable support for exporting table datasets +TABLIB_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tablib>=0:textproc/py-tablib@${PY_FLAVOR} + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-tables2/distinfo b/www/py-dj52-django-tables2/distinfo new file mode 100644 index 000000000000..f7f2d9990542 --- /dev/null +++ b/www/py-dj52-django-tables2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1736247931 +SHA256 (django_tables2-2.7.5.tar.gz) = fb5dcaa09379cf3947598ec7e1bd5f26ed63aafdee3b23963446763bbeac37bf +SIZE (django_tables2-2.7.5.tar.gz) = 128618 diff --git a/www/py-dj52-django-tables2/pkg-descr b/www/py-dj52-django-tables2/pkg-descr new file mode 100644 index 000000000000..5b09aff2a2f2 --- /dev/null +++ b/www/py-dj52-django-tables2/pkg-descr @@ -0,0 +1,3 @@ +django-tables2 simplifies the task of turning sets of data into HTML tables. +It has native support for pagination and sorting, does for HTML tables what +django.forms does for HTML forms. diff --git a/www/py-dj52-django-taggit/Makefile b/www/py-dj52-django-taggit/Makefile new file mode 100644 index 000000000000..5b9ea7a0b4a9 --- /dev/null +++ b/www/py-dj52-django-taggit/Makefile @@ -0,0 +1,26 @@ +PORTNAME= django-taggit +DISTVERSION= 6.1.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_taggit-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Reusable Django application for simple tagging +WWW= https://github.com/jazzband/django-taggit + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.1:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-taggit/distinfo b/www/py-dj52-django-taggit/distinfo new file mode 100644 index 000000000000..777531f4c290 --- /dev/null +++ b/www/py-dj52-django-taggit/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1728224208 +SHA256 (django_taggit-6.1.0.tar.gz) = c4d1199e6df34125dd36db5eb0efe545b254dec3980ce5dd80e6bab3e78757c3 +SIZE (django_taggit-6.1.0.tar.gz) = 38151 diff --git a/www/py-dj52-django-taggit/pkg-descr b/www/py-dj52-django-taggit/pkg-descr new file mode 100644 index 000000000000..be15b201b3ee --- /dev/null +++ b/www/py-dj52-django-taggit/pkg-descr @@ -0,0 +1 @@ +django-taggit a simpler approach to tagging with Django. diff --git a/www/py-dj52-django-timezone-field/Makefile b/www/py-dj52-django-timezone-field/Makefile new file mode 100644 index 000000000000..e44cc4dab88a --- /dev/null +++ b/www/py-dj52-django-timezone-field/Makefile @@ -0,0 +1,25 @@ +PORTNAME= django-timezone-field +DISTVERSION= 7.1 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= django_timezone_field-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Provides database and form fields for pytz timezone objects for Django +WWW= https://github.com/mfogel/django-timezone-field + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=3.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-django-timezone-field/distinfo b/www/py-dj52-django-timezone-field/distinfo new file mode 100644 index 000000000000..00ee309e011a --- /dev/null +++ b/www/py-dj52-django-timezone-field/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1737194529 +SHA256 (django_timezone_field-7.1.tar.gz) = b3ef409d88a2718b566fabe10ea996f2838bc72b22d3a2900c0aa905c761380c +SIZE (django_timezone_field-7.1.tar.gz) = 13727 diff --git a/www/py-dj52-django-timezone-field/pkg-descr b/www/py-dj52-django-timezone-field/pkg-descr new file mode 100644 index 000000000000..98a3675d4d8d --- /dev/null +++ b/www/py-dj52-django-timezone-field/pkg-descr @@ -0,0 +1,2 @@ +Provides database, form, and REST framework fields for "zoneinfo" and "pytz" +timezone objects for Django. diff --git a/www/py-dj52-djangorestframework/Makefile b/www/py-dj52-djangorestframework/Makefile new file mode 100644 index 000000000000..96d316832790 --- /dev/null +++ b/www/py-dj52-djangorestframework/Makefile @@ -0,0 +1,25 @@ +PORTNAME= djangorestframework +DISTVERSION= 3.16.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- + +MAINTAINER= kai@FreeBSD.org +COMMENT= Django REST framework +WWW= https://www.django-rest-framework.org/ + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE.md + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-djangorestframework/distinfo b/www/py-dj52-djangorestframework/distinfo new file mode 100644 index 000000000000..c336e0e97c68 --- /dev/null +++ b/www/py-dj52-djangorestframework/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1744359953 +SHA256 (djangorestframework-3.16.0.tar.gz) = f022ff46613584de994c0c6a4aebbace5fd700555fbe9d33b865ebf173eba6c9 +SIZE (djangorestframework-3.16.0.tar.gz) = 1068408 diff --git a/www/py-dj52-djangorestframework/pkg-descr b/www/py-dj52-djangorestframework/pkg-descr new file mode 100644 index 000000000000..c8a8f49f4488 --- /dev/null +++ b/www/py-dj52-djangorestframework/pkg-descr @@ -0,0 +1,15 @@ +Django REST framework is a powerful and flexible toolkit that makes it easy to +build Web APIs. + +Some reasons you might want to use REST framework: + +* The Web browsable API is a huge usability win for your developers. + +* Authentication policies including optional packages for OAuth1a and OAuth2. + +* Serialization that supports both ORM and non-ORM data sources. + +* Customizable all the way down - just use regular function-based views if you + don't need the more powerful features. + +* Extensive documentation, and great community support. diff --git a/www/py-dj52-drf-spectacular-sidecar/Makefile b/www/py-dj52-drf-spectacular-sidecar/Makefile new file mode 100644 index 000000000000..c2a90f5f91f0 --- /dev/null +++ b/www/py-dj52-drf-spectacular-sidecar/Makefile @@ -0,0 +1,26 @@ +PORTNAME= drf-spectacular-sidecar +DISTVERSION= 2025.6.1 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= drf_spectacular_sidecar-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Serve self-contained Swagger UI/Redoc distribution builds with Django +WWW= https://github.com/tfranzel/drf-spectacular + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=2.2:www/py-django52@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +.include <bsd.port.mk> diff --git a/www/py-dj52-drf-spectacular-sidecar/distinfo b/www/py-dj52-drf-spectacular-sidecar/distinfo new file mode 100644 index 000000000000..2ba7b8f8b212 --- /dev/null +++ b/www/py-dj52-drf-spectacular-sidecar/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1749230590 +SHA256 (drf_spectacular_sidecar-2025.6.1.tar.gz) = ee6752c73d712265a61b9e2ca6f71c3b2bd89f30f39cf9f8cda98e7f371fcbcf +SIZE (drf_spectacular_sidecar-2025.6.1.tar.gz) = 2407117 diff --git a/www/py-dj52-drf-spectacular-sidecar/pkg-descr b/www/py-dj52-drf-spectacular-sidecar/pkg-descr new file mode 100644 index 000000000000..34144682bfdc --- /dev/null +++ b/www/py-dj52-drf-spectacular-sidecar/pkg-descr @@ -0,0 +1,5 @@ +Serve self-contained distribution builds of Swagger UI and Redoc with Django +either via runserver or collectstatic. + +This Django app is an optional addition to drf-spectacular, but does not depend +on it. It may also be used independently. diff --git a/www/py-dj52-drf-spectacular/Makefile b/www/py-dj52-drf-spectacular/Makefile new file mode 100644 index 000000000000..0b0dff5282b8 --- /dev/null +++ b/www/py-dj52-drf-spectacular/Makefile @@ -0,0 +1,35 @@ +PORTNAME= drf-spectacular +DISTVERSION= 0.28.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= drf_spectacular-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Sane/flexible OpenAPI 3 schema generation for Django REST framework +WWW= https://github.com/tfranzel/drf-spectacular + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=2.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-djangorestframework>=3.10.3:www/py-dj52-djangorestframework@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}inflection>=0.3.1:devel/py-inflection@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}jsonschema>=2.6.0:devel/py-jsonschema@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}uritemplate>=2.0.0:net/py-uritemplate@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyyaml>=5.1:devel/py-pyyaml@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist distutils + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +OPTIONS_DEFINE= SIDECAR +OPTIONS_DEFAULT= SIDECAR + +SIDECAR_DESC= Enable self-contained Swagger/Redoc UI installation +SIDECAR_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj52-drf-spectacular-sidecar>0:www/py-dj52-drf-spectacular-sidecar@${PY_FLAVOR} + +.include <bsd.port.mk> diff --git a/www/py-dj52-drf-spectacular/distinfo b/www/py-dj52-drf-spectacular/distinfo new file mode 100644 index 000000000000..22f12c0442aa --- /dev/null +++ b/www/py-dj52-drf-spectacular/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1733482018 +SHA256 (drf_spectacular-0.28.0.tar.gz) = 2c778a47a40ab2f5078a7c42e82baba07397bb35b074ae4680721b2805943061 +SIZE (drf_spectacular-0.28.0.tar.gz) = 237849 diff --git a/www/py-dj52-drf-spectacular/pkg-descr b/www/py-dj52-drf-spectacular/pkg-descr new file mode 100644 index 000000000000..7f053d6244dc --- /dev/null +++ b/www/py-dj52-drf-spectacular/pkg-descr @@ -0,0 +1,24 @@ +This project has 3 goals: + +* Extract as much schema information from DRF as possible. +* Provide flexibility to make the schema usable in the real world (not only + toy examples). +* Generate a schema that works well with the most popular client generators. + +The code is a heavily modified fork of the DRF OpenAPI generator, which is/was +lacking all of the below listed features: + +* Serializers modelled as components. (arbitrary nesting + recursion supported) +* @extend_schema decorator for customization of APIView, Viewsets, + function-based views, and @action +* Authentication support (DRF natives included, easily extendable) +* Custom serializer class support (easily extendable) +* SerializerMethodField() type via type hinting or @extend_schema_field +* i18n support, Tags extraction, Description extraction from docstrings +* Request/response/parameter examples, Callback operations +* Vendor specification extensions (x-*) in info, operations, parameters, + components, and security schemes +* Sane fallbacks and sane operation_id naming (based on path) +* Schema serving with SpectacularAPIView (Redoc and Swagger-UI views are + also available) +* Optional input/output serializer component split diff --git a/www/py-dj52-social-auth-app-django/Makefile b/www/py-dj52-social-auth-app-django/Makefile new file mode 100644 index 000000000000..db3778e0f22b --- /dev/null +++ b/www/py-dj52-social-auth-app-django/Makefile @@ -0,0 +1,34 @@ +PORTNAME= social-auth-app-django +DISTVERSION= 5.4.3 +CATEGORIES= www security python +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- + +MAINTAINER= kai@FreeBSD.org +COMMENT= Social Authentication and Django integration +WWW= https://github.com/python-social-auth/social-app-django + +LICENSE= BSD3CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=3.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}social-auth-core>=4.4<5:security/py-social-auth-core@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mock>0:devel/py-mock@${PY_FLAVOR} + +USES= python:3.10+ +USE_GITHUB= yes +GH_ACCOUNT= python-social-auth +GH_PROJECT= social-app-django +USE_PYTHON= autoplist pep517 + +TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +do-test: + @cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} manage.py test -v3 + +.include <bsd.port.mk> diff --git a/www/py-dj52-social-auth-app-django/distinfo b/www/py-dj52-social-auth-app-django/distinfo new file mode 100644 index 000000000000..68863aa8bae5 --- /dev/null +++ b/www/py-dj52-social-auth-app-django/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1740213116 +SHA256 (python-social-auth-social-app-django-5.4.3_GH0.tar.gz) = 4dd02d76ffa390e6a2d7fe319869384c81d32c73b826eb09a10023cf66738389 +SIZE (python-social-auth-social-app-django-5.4.3_GH0.tar.gz) = 25327 diff --git a/www/py-dj52-social-auth-app-django/pkg-descr b/www/py-dj52-social-auth-app-django/pkg-descr new file mode 100644 index 000000000000..fa7d52777ed7 --- /dev/null +++ b/www/py-dj52-social-auth-app-django/pkg-descr @@ -0,0 +1,6 @@ +Python Social Auth is an easy to setup social authentication/registration +mechanism with support for several frameworks and auth providers. + +This is the Django component of the python-social-auth ecosystem, it implements +the needed functionality to integrate social-auth-core in a Django based +project. diff --git a/www/py-dj52-strawberry-graphql-django/Makefile b/www/py-dj52-strawberry-graphql-django/Makefile new file mode 100644 index 000000000000..88d95afad756 --- /dev/null +++ b/www/py-dj52-strawberry-graphql-django/Makefile @@ -0,0 +1,37 @@ +PORTNAME= strawberry-graphql-django +DISTVERSION= 0.60.0 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- +DISTNAME= strawberry_graphql_django-${DISTVERSION} + +MAINTAINER= kai@FreeBSD.org +COMMENT= Strawberry GraphQL Django extension +WWW= https://github.com/strawberry-graphql/strawberry-django + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django52>=4.2:www/py-django52@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}asgiref>=3.8:www/py-asgiref@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dj52-strawberry-graphql>=0.264.0:devel/py-dj52-strawberry-graphql@${PY_FLAVOR} + +USES= python:3.10+ +USE_PYTHON= autoplist pep517 + +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + +NO_ARCH= yes + +OPTIONS_DEFINE= DEBUG-TOOLBAR ENUM +OPTIONS_DEFAULT= DEBUG-TOOLBAR ENUM + +DEBUG-TOOLBAR_DESC= Debug support +ENUM_DESC= Integration for Django's TextChoices/IntegerChoices enumerations + +DEBUG-TOOLBAR_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj52-django-debug-toolbar>=3.4:www/py-dj52-django-debug-toolbar@${PY_FLAVOR} +ENUM_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dj52-django-choices-field>=2.2.2:www/py-dj52-django-choices-field@${PY_FLAVOR} + +.include <bsd.port.mk> diff --git a/www/py-dj52-strawberry-graphql-django/distinfo b/www/py-dj52-strawberry-graphql-django/distinfo new file mode 100644 index 000000000000..ed5dfad9d92e --- /dev/null +++ b/www/py-dj52-strawberry-graphql-django/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1749230619 +SHA256 (strawberry_graphql_django-0.60.0.tar.gz) = a5d210bd4458be298f86d8b1b8d01ce0208291b5b6b227cd0cfd97c51cf71ee8 +SIZE (strawberry_graphql_django-0.60.0.tar.gz) = 84511 diff --git a/www/py-dj52-strawberry-graphql-django/pkg-descr b/www/py-dj52-strawberry-graphql-django/pkg-descr new file mode 100644 index 000000000000..bea2083c6410 --- /dev/null +++ b/www/py-dj52-strawberry-graphql-django/pkg-descr @@ -0,0 +1,15 @@ +This package provides powerful tools to generate GraphQL types, queries, +mutations and resolvers from Django models. + +Supported Features: + +* GraphQL type generation from models +* Filtering, pagination and ordering +* Basic create, retrieve, update and delete (CRUD) types and mutations +* Basic Django auth support, current user query, login and logout mutations +* Django sync and async views +* Permission extension using django's permissioning system +* Relay support with automatic resolvers generation +* Query optimization to improve performance and avoid common pitfalls (e.g n+1) +* Debug Toolbar integration with graphiql to display metrics like SQL queries +* Unit test integration diff --git a/www/py-django-storages/Makefile b/www/py-django-storages/Makefile index 66d553726460..853b5605ce5f 100644 --- a/www/py-django-storages/Makefile +++ b/www/py-django-storages/Makefile @@ -1,8 +1,9 @@ PORTNAME= django-storages -PORTVERSION= 1.14.4 +PORTVERSION= 1.14.6 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= django_storages-${PORTVERSION} MAINTAINER= python@FreeBSD.org COMMENT= Generic storages for Django @@ -19,6 +20,8 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}django42>=3.2:www/py-django42@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent pep517 +CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}*${PORTNAME} + NO_ARCH= yes # AZURE option requires newer devel/py-azure-storage-blob (not yet in the ports tree). diff --git a/www/py-django-storages/distinfo b/www/py-django-storages/distinfo index 46ba87cd5184..fdf7fdd929d0 100644 --- a/www/py-django-storages/distinfo +++ b/www/py-django-storages/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1720608714 -SHA256 (django-storages-1.14.4.tar.gz) = 69aca94d26e6714d14ad63f33d13619e697508ee33ede184e462ed766dc2a73f -SIZE (django-storages-1.14.4.tar.gz) = 83496 +TIMESTAMP = 1744777452 +SHA256 (django_storages-1.14.6.tar.gz) = 7a25ce8f4214f69ac9c7ce87e2603887f7ae99326c316bc8d2d75375e09341c9 +SIZE (django_storages-1.14.6.tar.gz) = 87587 diff --git a/www/py-freenit/Makefile b/www/py-freenit/Makefile index 4a37f51e943d..5c05b5a92a03 100644 --- a/www/py-freenit/Makefile +++ b/www/py-freenit/Makefile @@ -1,5 +1,5 @@ PORTNAME= freenit -DISTVERSION= 0.3.14 +DISTVERSION= 0.3.16 CATEGORIES= www devel python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -31,11 +31,13 @@ TEST_ENV= PYTHONPATH=${WRKSRC}/src NO_ARCH= yes SUB_LIST= PYTHON_VER=${PYTHON_VER} -OPTIONS_DEFINE= ORMAR -OPTIONS_DEFAULT= ORMAR +OPTIONS_DEFINE= LDAP SQL +OPTIONS_DEFAULT= SQL -ORMAR_DESC= Support for SQL databases using Ormar -ORMAR_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}alembic>=0:databases/py-alembic@${PY_FLAVOR} \ +LDAP_DESC= Support for OpenLDAP using Beanie +SQL_DESC= Support for SQL databases using Ormar +LDAP_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}bonsai>=0:net/py-bonsai@${PY_FLAVOR} +SQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}alembic>=0:databases/py-alembic@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ormar>0:databases/py-ormar@${PY_FLAVOR} .include <bsd.port.mk> diff --git a/www/py-freenit/distinfo b/www/py-freenit/distinfo index ef63c2eb0107..7eea228138d7 100644 --- a/www/py-freenit/distinfo +++ b/www/py-freenit/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1745763362 -SHA256 (freenit-0.3.14.tar.gz) = 0dc8de8a49e62471ca2ee02dee3986cae829f0a512357aa41dcd4c337a88f447 -SIZE (freenit-0.3.14.tar.gz) = 26271 +TIMESTAMP = 1750500114 +SHA256 (freenit-0.3.16.tar.gz) = 0bbc2258e75afb892f9971dc642d7dd7ef27a06e3b538b42daf7c8c6fafaa3ec +SIZE (freenit-0.3.16.tar.gz) = 27242 diff --git a/www/shiori/Makefile b/www/shiori/Makefile index e368c2645269..a8bafe630a2e 100644 --- a/www/shiori/Makefile +++ b/www/shiori/Makefile @@ -1,7 +1,6 @@ PORTNAME= shiori DISTVERSIONPREFIX= v -DISTVERSION= 1.7.3 -PORTREVISION= 3 +DISTVERSION= 1.7.4 CATEGORIES= www MAINTAINER= nivit@FreeBSD.org diff --git a/www/shiori/distinfo b/www/shiori/distinfo index 477b07f5aa30..51989a34f03b 100644 --- a/www/shiori/distinfo +++ b/www/shiori/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1737293250 -SHA256 (go/www_shiori/shiori-v1.7.3/v1.7.3.mod) = 247336cc5dfbdf0bf093b310f9e1ff920eaa47e8a1abca571d3f5f536be826c9 -SIZE (go/www_shiori/shiori-v1.7.3/v1.7.3.mod) = 6740 -SHA256 (go/www_shiori/shiori-v1.7.3/v1.7.3.zip) = de0e1a4db3e3e37d9b1030777cf41dae5a91868ec779f174c370e0e185a4665a -SIZE (go/www_shiori/shiori-v1.7.3/v1.7.3.zip) = 7037104 +TIMESTAMP = 1750495895 +SHA256 (go/www_shiori/shiori-v1.7.4/v1.7.4.mod) = 247336cc5dfbdf0bf093b310f9e1ff920eaa47e8a1abca571d3f5f536be826c9 +SIZE (go/www_shiori/shiori-v1.7.4/v1.7.4.mod) = 6740 +SHA256 (go/www_shiori/shiori-v1.7.4/v1.7.4.zip) = 5de0eff8f67d7455f83b7ea2d724adb77e43c5c5838d19539f86953aacd11eab +SIZE (go/www_shiori/shiori-v1.7.4/v1.7.4.zip) = 7037128 diff --git a/www/sitecopy/Makefile b/www/sitecopy/Makefile index 18693972bd3e..069a0bbbc106 100644 --- a/www/sitecopy/Makefile +++ b/www/sitecopy/Makefile @@ -11,6 +11,8 @@ WWW= https://www.manyfish.co.uk/sitecopy/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING +BROKEN= Fails to build with neon 0.32+, configure: incompatible neon library version 0.34.0: wanted 0.24 25 26 27 28 29 30 31 32 + LIB_DEPENDS= libneon.so:www/neon USES= gmake gnome localbase diff --git a/www/squid/Makefile b/www/squid/Makefile index 33b326d4413a..43984fbbbe58 100644 --- a/www/squid/Makefile +++ b/www/squid/Makefile @@ -1,12 +1,7 @@ PORTNAME= squid -DISTVERSION= 6.12 -PORTREVISION= 1 +DISTVERSION= 6.13 CATEGORIES= www -MASTER_SITES= http://www2.pl.squid-cache.org/Versions/v6/ \ - http://www1.il.squid-cache.org/Versions/v6/ \ - http://www2.gr.squid-cache.org/Versions/v6/ \ - http://ca2.squid-cache.org/Versions/v6/ \ - https://www.squid-cache.org/Versions/v6/ +MASTER_SITES= https://github.com/${PORTNAME}-cache/${PORTNAME}/releases/download/${PORTNAME:tu}_${DISTVERSION:S|.|_|g}/ PATCH_SITES= http://www2.pl.squid-cache.org/%SUBDIR%/ \ http://www1.il.squid-cache.org/%SUBDIR%/ \ @@ -17,7 +12,8 @@ PATCH_SITE_SUBDIR= Versions/v6/changesets MAINTAINER= timp87@gmail.com COMMENT= HTTP Caching Proxy -WWW= https://www.squid-cache.org/ +WWW= https://www.squid-cache.org/ \ + https://github.com/squid-cache/squid/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING @@ -209,9 +205,11 @@ WCCP_CONFIGURE_ENABLE= wccp MYDOCS= QUICKSTART README RELEASENOTES.html doc/debug-sections.txt change_files= ChangeLog errors/Makefile.am errors/Makefile.in \ - src/auth/basic/SMB_LM/README.html src/Makefile.am \ - src/Makefile.in src/cf_gen.cc src/squid.8.in \ - test-suite/Makefile.in tools/Makefile.am tools/Makefile.in + src/auth/basic/SMB_LM/README.html \ + src/Makefile.am src/Makefile.in \ + src/cf_gen.cc src/squid.8.in \ + test-suite/Makefile.in test-suite/Makefile.am \ + tools/Makefile.am tools/Makefile.in .include <bsd.port.options.mk> @@ -223,6 +221,7 @@ EXTERNAL_ACL+= file_userip unix_group delayer # POLA: allow the old global make.conf(5) (pre src.conf(5)) defines, too: .if ${PORT_OPTIONS:MAUTH_NIS} && !defined(NO_NIS) && !defined(WITHOUT_NIS) BASIC_AUTH+= NIS +CPPFLAGS+= -DBOOL_DEFINED .endif # POLA: allow the old global make.conf(5) (pre src.conf(5)) defines, too: diff --git a/www/squid/distinfo b/www/squid/distinfo index a716d8c3cf74..3482b7d60f5c 100644 --- a/www/squid/distinfo +++ b/www/squid/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1733684468 -SHA256 (squid-6.12.tar.xz) = f3df3abb2603a513266f24a5d4699a9f0d76b9f554d1848b67f9c51cd3b3cb50 -SIZE (squid-6.12.tar.xz) = 2548220 +TIMESTAMP = 1749986346 +SHA256 (squid-6.13.tar.xz) = 232e0567946ccc0115653c3c18f01e83f2d9cc49c43d9dead8b319af0b35ad52 +SIZE (squid-6.13.tar.xz) = 2548680 diff --git a/www/squid/files/patch-configure b/www/squid/files/patch-configure index c98cda36c325..0aa171813c01 100644 --- a/www/squid/files/patch-configure +++ b/www/squid/files/patch-configure @@ -1,27 +1,15 @@ ---- configure.orig 2024-10-11 07:24:17 UTC +--- configure.orig 2025-02-01 11:08:28 UTC +++ configure -@@ -29452,7 +29452,7 @@ fi - fi +@@ -43956,7 +43956,7 @@ BUILD_HELPER="NIS" + ## - --if test "x$with_nettle" != "xno"] -+if test "x$with_nettle" != "xno" - then : - - -@@ -44043,7 +44043,10 @@ else $as_nop - - else $as_nop - -- BUILD_HELPER="" -+# XXX: On FreeBSD we have to do this to make NIS work -+# until https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=188247 -+# is resolved. -+ BUILD_HELPER="NIS" - - fi - -@@ -50892,6 +50895,7 @@ ac_fn_cxx_check_type "$LINENO" "cpu_set_t" "ac_cv_type + BUILD_HELPER="NIS" +- for ac_header in sys/types.h rpc/rpc.h rpcsvc/ypclnt.h rpcsvc/yp_prot.h crypt.h ++ for ac_header in sys/types.h rpc/rpc.h rpcsvc/ypclnt.h rpcsvc/yp_prot.h rpcsvc/crypt.h + do : + as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh` + ac_fn_cxx_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" " +@@ -50825,6 +50825,7 @@ ac_fn_cxx_check_type "$LINENO" "cpu_set_t" "ac_cv_type ac_fn_cxx_check_type "$LINENO" "cpu_set_t" "ac_cv_type_cpu_set_t" " #if HAVE_SCHED_H @@ -29,7 +17,7 @@ #include <sched.h> #endif -@@ -53860,6 +53864,7 @@ else $as_nop +@@ -53793,6 +53794,7 @@ else $as_nop # include <sys/ioccom.h> # include <netinet/in.h> #undef minor_t diff --git a/www/squid/files/patch-src-cf.data.pre b/www/squid/files/patch-src_cf.data.pre index bfcdb4b2bc8a..5d2e4ecc1086 100644 --- a/www/squid/files/patch-src-cf.data.pre +++ b/www/squid/files/patch-src_cf.data.pre @@ -1,6 +1,6 @@ ---- src/cf.data.pre.orig 2024-03-04 05:45:51 UTC +--- src/cf.data.pre.orig 2025-01-31 08:52:43 UTC +++ src/cf.data.pre -@@ -5526,6 +5526,10 @@ DEFAULT: @DEFAULT_PID_FILE@ +@@ -5552,6 +5552,10 @@ DOC_START LOC: Config.pidFilename DOC_START A filename to write the process-id to. To disable, enter "none". diff --git a/www/squid/files/squid.in b/www/squid/files/squid.in index e8ea315cc356..b1ba8938bf56 100644 --- a/www/squid/files/squid.in +++ b/www/squid/files/squid.in @@ -60,14 +60,16 @@ rcvar=squid_enable # Make sure that we invoke squid with "-f ${squid_conf}"; define this # variable early so reload_cmd and stop_precmd pick it up: -extra_commands="reload configtest" -reload_cmd=squid_reload +# Workaround for https://bugs.squid-cache.org/show_bug.cgi?id=5390 until squid-7 is ported +#extra_commands="reload configtest" +#reload_cmd=squid_reload start_precmd=squid_prestart start_postcmd=squid_getpid -stop_precmd=squid_prestop -configtest_cmd=squid_configtest -reload_precmd=squid_configtest -restart_precmd=squid_configtest +# Workaround for https://bugs.squid-cache.org/show_bug.cgi?id=5390 until squid-7 is ported +#stop_precmd=squid_prestop +#configtest_cmd=squid_configtest +#reload_precmd=squid_configtest +#restart_precmd=squid_configtest # squid(8) will not start if ${squid_conf} is not present so try # to catch that beforehand via ${required_files} rather than make @@ -128,7 +130,8 @@ squid_prestart() return 0 fi - squid_configtest + # Workaround for https://bugs.squid-cache.org/show_bug.cgi?id=5390 until squid-7 is ported + #squid_configtest } squid_reload() diff --git a/www/tinyauth/Makefile b/www/tinyauth/Makefile new file mode 100644 index 000000000000..deb93522b649 --- /dev/null +++ b/www/tinyauth/Makefile @@ -0,0 +1,49 @@ +PORTNAME= tinyauth +DISTVERSIONPREFIX= v +DISTVERSION= 3.4.1 +CATEGORIES= www +MASTER_SITES= LOCAL/dtxdf/${PORTNAME}/ +DISTFILES= ${PORTNAME}-${DISTVERSION}.frontend${EXTRACT_SUFX} + +MAINTAINER= dtxdf@FreeBSD.org +COMMENT= Simplest way to protect your apps with a login screen +WWW= https://tinyauth.app + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= go:1.23,modules +USE_GITHUB= yes +GH_ACCOUNT= steveiliop56 + +USE_RC_SUBR= ${PORTNAME} + +GO_MOD_DIST= github +GO_MODULE= github.com/steveiliop56/${PORTNAME} +GO_BUILDFLAGS= -ldflags "\ + -X 'tinyauth/internal/constants.Version=${DISTVERSIONPREFIX}${DISTVERSION}' \ + -X 'tinyauth/internal/constants.CommitHash=${GITID}' \ + -X 'tinyauth/internal/constants.BuildTimestamp=${BUILD_DATE}'" + +SUB_FILES= pkg-message +SUB_LIST= USER=${USERS:[1]} + +USERS= ${TINYAUTH_USER} +GROUPS= ${TINYAUTH_GROUP} + +PLIST_FILES= bin/${PORTNAME} + +# Run 'git checkout ${DISTVERSIONPREFIX}${DISTVERSION} && git rev-parse HEAD' +# in the Tinyauth repository to get the value of GITID. +GITID= 9eb296f14644267410655122e8aff6f0db83371a + +BUILD_DATE= $$(date -u '+%Y-%m-%dT%H:%M:%S') + +TINYAUTH_USER= ${PORTNAME} +TINYAUTH_GROUP= ${TINYAUTH_USER} + +pre-build: + @${MKDIR} ${WRKSRC}/internal/assets/dist + @cd ${WRKDIR}/tinyauth-frontend && ${COPYTREE_SHARE} . ${WRKSRC}/internal/assets/dist + +.include <bsd.port.mk> diff --git a/www/tinyauth/distinfo b/www/tinyauth/distinfo new file mode 100644 index 000000000000..2325305b60e0 --- /dev/null +++ b/www/tinyauth/distinfo @@ -0,0 +1,7 @@ +TIMESTAMP = 1750535616 +SHA256 (go/www_tinyauth/steveiliop56-tinyauth-v3.4.1_GH0/tinyauth-3.4.1.frontend.tar.gz) = 65cfc1c70e7882d1152d8391b3126f294e388af1e1dacc7fa77d8274d12d189f +SIZE (go/www_tinyauth/steveiliop56-tinyauth-v3.4.1_GH0/tinyauth-3.4.1.frontend.tar.gz) = 912295 +SHA256 (go/www_tinyauth/steveiliop56-tinyauth-v3.4.1_GH0/go.mod) = 822e543197823d37d4c6718279f77e610c6bb866a9cc34689f20fcc592c1b295 +SIZE (go/www_tinyauth/steveiliop56-tinyauth-v3.4.1_GH0/go.mod) = 5138 +SHA256 (go/www_tinyauth/steveiliop56-tinyauth-v3.4.1_GH0/steveiliop56-tinyauth-v3.4.1_GH0.tar.gz) = 75357015d84e62eb427fca54c9782459a2779d8ea2478602b447aef875757ebc +SIZE (go/www_tinyauth/steveiliop56-tinyauth-v3.4.1_GH0/steveiliop56-tinyauth-v3.4.1_GH0.tar.gz) = 5629386 diff --git a/www/tinyauth/files/pkg-message.in b/www/tinyauth/files/pkg-message.in new file mode 100644 index 000000000000..ead130a4241c --- /dev/null +++ b/www/tinyauth/files/pkg-message.in @@ -0,0 +1,17 @@ +[ +{ type: install + message: <<EOM +Tinyauth is installed + +1) Configure it in %%PREFIX%%/etc/tinyauth.env + +2) Enable it with + + sysrc tinyauth_enable=YES + +3) Start it with + + service tinyauth start +EOM +} +] diff --git a/www/tinyauth/files/tinyauth.in b/www/tinyauth/files/tinyauth.in new file mode 100644 index 000000000000..00e28e49e60e --- /dev/null +++ b/www/tinyauth/files/tinyauth.in @@ -0,0 +1,35 @@ +#!/bin/sh + +# PROVIDE: tinyauth +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Configuration settings for tinyauth in /etc/rc.conf +# +# tinyauth_enable (bool): Enable tinyauth. (Default=NO) +# tinyauth_env_file (str): Path containing the environment variables +# to be used by tinyauth. (Default: %%PREFIX%%/etc/tinyauth.env) +# tinyauth_logfile (str): Log file used to store the tinyauth's output. (Default: /var/log/tinyauth.log) +# tinyauth_pidfile (str): File used by tinyauth to store the process ID. (Default: /var/run/tinyauth.pid) +# tinyauth_runas (str): User to run tinyauth as. (Default: %%USER%%) + +. /etc/rc.subr + +name="tinyauth" +desc="Simplest way to protect your apps with a login screen" +rcvar="tinyauth_enable" + +load_rc_config $name + +: ${tinyauth_enable:="NO"} +: ${tinyauth_env_file:="%%PREFIX%%/etc/tinyauth.env"} +: ${tinyauth_logfile:="/var/log/tinyauth.log"} +: ${tinyauth_pidfile:="/var/run/tinyauth.pid"} +: ${tinyauth_runas:="%%USER%%"} + +pidfile="${tinyauth_pidfile}" +procname="%%LOCALBASE%%/bin/tinyauth" +command="/usr/sbin/daemon" +command_args="-o '${tinyauth_logfile}' -p '${pidfile}' -u '${tinyauth_runas}' -t '${desc}' -- '${procname}'" + +run_rc_command "$1" diff --git a/www/tinyauth/pkg-descr b/www/tinyauth/pkg-descr new file mode 100644 index 000000000000..6ac24c9465b9 --- /dev/null +++ b/www/tinyauth/pkg-descr @@ -0,0 +1,4 @@ +Tinyauth is a simple authentication middleware that adds a simple +login screen or OAuth with Google, Github and any provider to all +of your docker apps. It supports all the popular proxies like +Traefik, Nginx and Caddy. |