diff --git a/www/miniflux/Makefile b/www/miniflux/Makefile index c00ff0619357..fe7103e2fe3b 100644 --- a/www/miniflux/Makefile +++ b/www/miniflux/Makefile @@ -1,6 +1,5 @@ PORTNAME= miniflux -DISTVERSION= 2.2.0 -PORTREVISION= 4 +DISTVERSION= 2.2.7 CATEGORIES= www MAINTAINER= krion@FreeBSD.org @@ -10,66 +9,43 @@ WWW= https://miniflux.app/ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE -RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss - -USES= go:modules,1.22 +USES= go:1.24,modules USE_GITHUB= yes GH_PROJECT= v2 -GH_TUPLE= \ - PuerkitoBio:goquery:v1.9.2:puerkitobio_goquery/vendor/github.com/PuerkitoBio/goquery \ - abadojack:whatlanggo:v1.0.1:abadojack_whatlanggo/vendor/github.com/abadojack/whatlanggo \ - andybalholm:brotli:v1.1.0:andybalholm_brotli/vendor/github.com/andybalholm/brotli \ - andybalholm:cascadia:v1.3.2:andybalholm_cascadia/vendor/github.com/andybalholm/cascadia \ - beorn7:perks:v1.0.1:beorn7_perks/vendor/github.com/beorn7/perks \ - cespare:xxhash:v2.3.0:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \ - coreos:go-oidc:v3.11.0:coreos_go_oidc_v3/vendor/github.com/coreos/go-oidc/v3 \ - fxamacker:cbor:v2.6.0:fxamacker_cbor_v2/vendor/github.com/fxamacker/cbor/v2 \ - go-jose:go-jose:v4.0.2:go_jose_go_jose_v4/vendor/github.com/go-jose/go-jose/v4 \ - go-webauthn:webauthn:v0.10.2:go_webauthn_webauthn/vendor/github.com/go-webauthn/webauthn \ - go-webauthn:x:v0.1.9:go_webauthn_x/vendor/github.com/go-webauthn/x \ - golang-jwt:jwt:v5.2.1:golang_jwt_jwt_v5/vendor/github.com/golang-jwt/jwt/v5 \ - golang:crypto:v0.26.0:golang_crypto/vendor/golang.org/x/crypto \ - golang:net:v0.28.0:golang_net/vendor/golang.org/x/net \ - golang:oauth2:v0.22.0:golang_oauth2/vendor/golang.org/x/oauth2 \ - golang:sys:v0.23.0:golang_sys/vendor/golang.org/x/sys \ - golang:term:v0.23.0:golang_term/vendor/golang.org/x/term \ - golang:text:v0.17.0:golang_text/vendor/golang.org/x/text \ - google:go-tpm:v0.9.0:google_go_tpm/vendor/github.com/google/go-tpm \ - google:uuid:v1.6.0:google_uuid/vendor/github.com/google/uuid \ - gorilla:mux:v1.8.1:gorilla_mux/vendor/github.com/gorilla/mux \ - klauspost:compress:v1.17.9:klauspost_compress/vendor/github.com/klauspost/compress \ - lib:pq:v1.10.9:lib_pq/vendor/github.com/lib/pq \ - mitchellh:mapstructure:v1.5.0:mitchellh_mapstructure/vendor/github.com/mitchellh/mapstructure \ - munnerz:goautoneg:a7dc8b61c822:munnerz_goautoneg/vendor/github.com/munnerz/goautoneg \ - mvdan:xurls:v2.5.0:mvdan_xurls/vendor/mvdan.cc/xurls/v2 \ - prometheus:client_golang:v1.20.0:prometheus_client_golang/vendor/github.com/prometheus/client_golang \ - prometheus:client_model:v0.6.1:prometheus_client_model/vendor/github.com/prometheus/client_model \ - prometheus:common:v0.55.0:prometheus_common/vendor/github.com/prometheus/common \ - prometheus:procfs:v0.15.1:prometheus_procfs/vendor/github.com/prometheus/procfs \ - protocolbuffers:protobuf-go:v1.34.2:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \ - tdewolff:minify:v2.20.37:tdewolff_minify_v2/vendor/github.com/tdewolff/minify/v2 \ - tdewolff:parse:v2.7.15:tdewolff_parse_v2/vendor/github.com/tdewolff/parse/v2 \ - x448:float16:v0.8.4:x448_float16/vendor/github.com/x448/float16 \ - yuin:goldmark:v1.7.4:yuin_goldmark/vendor/github.com/yuin/goldmark -USE_RC_SUBR= miniflux -GO_PKGNAME= miniflux.app -GO_TARGET= :${PORTNAME} -GO_BUILDFLAGS= -ldflags="-X miniflux.app/version.Version=${DISTVERSION} \ - -X miniflux.app/version.BuildDate=$$(date +'%Y-%m-%dT%H:%M:%SZ')" +GO_MODULE= ${GH_ACCOUNT}.app/${GH_PROJECT} +GO_MOD_DIST= github +_BUILD_COMMIT= d164c738 +_BUILD_DATE= date -u "+%Y-%m-%dT%H:%M:%SZ" +_BUILD_XFLAGS= version.Version=${DISTVERSION} \ + version.Commit=${_BUILD_COMMIT} \ + version.BuildDate=${_BUILD_DATE:sh} +GO_BUILDFLAGS= -ldflags "${STRIP} ${_BUILD_XFLAGS:S!^!-X miniflux.app/v2/internal/!}" -USERS= miniflux -GROUPS= miniflux +USE_RC_SUBR= ${PORTNAME} + +MINIFLUX_USER?= ${PORTNAME} +MINIFLUX_GROUP?= ${PORTNAME} +USERS= ${MINIFLUX_USER} +GROUPS= ${MINIFLUX_GROUP} + +SUB_LIST= MINIFLUX_GROUP=${MINIFLUX_GROUP} \ + MINIFLUX_USER=${MINIFLUX_USER} + +PLIST_SUB= MINIFLUX_GROUP=${MINIFLUX_GROUP} \ + MINIFLUX_USER=${MINIFLUX_USER} OPTIONS_DEFINE= PGSQL_SERVER + PGSQL_SERVER_DESC= Install the PostgreSQL Server Component PGSQL_SERVER_USES= pgsql PGSQL_SERVER_VARS= WANT_PGSQL+="server contrib" post-install: - ${INSTALL_MAN} ${WRKSRC}/miniflux.1 ${STAGEDIR}${PREFIX}/share/man/man1/ - ${INSTALL_DATA} ${FILESDIR}/miniflux.env.sample \ + ${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.1 \ + ${STAGEDIR}${PREFIX}/share/man/man1 + ${INSTALL_DATA} ${FILESDIR}/${PORTNAME}.env.sample \ ${STAGEDIR}${PREFIX}/etc .include diff --git a/www/miniflux/distinfo b/www/miniflux/distinfo index aa403ea66bf7..242c3c67ec24 100644 --- a/www/miniflux/distinfo +++ b/www/miniflux/distinfo @@ -1,73 +1,5 @@ -TIMESTAMP = 1724651874 -SHA256 (miniflux-v2-2.2.0_GH0.tar.gz) = f9fd5bb74dea9e6836881404358f951e40b500f494e3ce1b01208ed39bcc937a -SIZE (miniflux-v2-2.2.0_GH0.tar.gz) = 749091 -SHA256 (PuerkitoBio-goquery-v1.9.2_GH0.tar.gz) = cac2d8e3e35ef9f8d2c747c6d06bf989e80806f28f03abc1e4c3bff16bca94bf -SIZE (PuerkitoBio-goquery-v1.9.2_GH0.tar.gz) = 107482 -SHA256 (abadojack-whatlanggo-v1.0.1_GH0.tar.gz) = 8c9aef03ace03ca11204159b83c8f77c816fc2a71232483d5370817dcbb2c561 -SIZE (abadojack-whatlanggo-v1.0.1_GH0.tar.gz) = 148139 -SHA256 (andybalholm-brotli-v1.1.0_GH0.tar.gz) = 63395834ab5ce6ad91f90af79223995f44aacecda3c66ac5700a87b080c0009c -SIZE (andybalholm-brotli-v1.1.0_GH0.tar.gz) = 1829084 -SHA256 (andybalholm-cascadia-v1.3.2_GH0.tar.gz) = f30ebb75a9f43a30478c870dd6e372ac7ef64549f621eceb3b13fd91bfde80cb -SIZE (andybalholm-cascadia-v1.3.2_GH0.tar.gz) = 35370 -SHA256 (beorn7-perks-v1.0.1_GH0.tar.gz) = 98db84bb0224a26094e6adba91b7ee7a1a7ace28cb648d818f8e779e6a19f825 -SIZE (beorn7-perks-v1.0.1_GH0.tar.gz) = 10867 -SHA256 (cespare-xxhash-v2.3.0_GH0.tar.gz) = 0e3dda07b03a5f3733506218860ecb2d50c0f01f16299b5d60902ef5158cbde5 -SIZE (cespare-xxhash-v2.3.0_GH0.tar.gz) = 12696 -SHA256 (coreos-go-oidc-v3.11.0_GH0.tar.gz) = 2d1bdf5f218d60a1b16cdaeff5c6ae85a620227e9bdc57a00217a26e70256455 -SIZE (coreos-go-oidc-v3.11.0_GH0.tar.gz) = 31542 -SHA256 (fxamacker-cbor-v2.6.0_GH0.tar.gz) = 0ac73fe2f073558d378c832fc17c24bf22a9ffa42f4702a58c3ad20e1b3613ee -SIZE (fxamacker-cbor-v2.6.0_GH0.tar.gz) = 142694 -SHA256 (go-jose-go-jose-v4.0.2_GH0.tar.gz) = 4c55e99f0b48a48dc80e2b5f4d97808a9a8236c99e599e4be773274b15bd1c5c -SIZE (go-jose-go-jose-v4.0.2_GH0.tar.gz) = 319120 -SHA256 (go-webauthn-webauthn-v0.10.2_GH0.tar.gz) = 1ffb110ec3c64eec5c8a890d893472a4bced8cac335a7270384c3f4db44429cd -SIZE (go-webauthn-webauthn-v0.10.2_GH0.tar.gz) = 143339 -SHA256 (go-webauthn-x-v0.1.9_GH0.tar.gz) = 52ee591589fc8636e248c1ae9092e03c49e33a1268ac44e0f3de7858265387ea -SIZE (go-webauthn-x-v0.1.9_GH0.tar.gz) = 10564 -SHA256 (golang-jwt-jwt-v5.2.1_GH0.tar.gz) = 76d1c81a7cd38ed03309f770f60ac3417f16c75b4c53a0c01bb783863783fef0 -SIZE (golang-jwt-jwt-v5.2.1_GH0.tar.gz) = 61340 -SHA256 (golang-crypto-v0.26.0_GH0.tar.gz) = a67fabb33e4ea401e76968abe1ec6f7b86915d0cf1f15803cd0da72dd48fca14 -SIZE (golang-crypto-v0.26.0_GH0.tar.gz) = 1799361 -SHA256 (golang-net-v0.28.0_GH0.tar.gz) = 8008d97595302092019ef024c43212cc00deae8710db49876dd06af52310514f -SIZE (golang-net-v0.28.0_GH0.tar.gz) = 1454559 -SHA256 (golang-oauth2-v0.22.0_GH0.tar.gz) = 896eb89b677691f1b89e9c3ef9673caac805de60e408cc63fe7cb017c26c53d4 -SIZE (golang-oauth2-v0.22.0_GH0.tar.gz) = 98368 -SHA256 (golang-sys-v0.23.0_GH0.tar.gz) = bcf7e83fa7b940977da6fe16971311f38c46976a85a957d363f0f3a238dd884e -SIZE (golang-sys-v0.23.0_GH0.tar.gz) = 1501380 -SHA256 (golang-term-v0.23.0_GH0.tar.gz) = 58a6116fc97497b96b063578ea81c0f9199f834714a04c5f060baa715e65f497 -SIZE (golang-term-v0.23.0_GH0.tar.gz) = 14738 -SHA256 (golang-text-v0.17.0_GH0.tar.gz) = edd27accd1b82f97277f1515ec35d3a9a905ae361b2c1afb2ab2db2e85fb3e01 -SIZE (golang-text-v0.17.0_GH0.tar.gz) = 8974580 -SHA256 (google-go-tpm-v0.9.0_GH0.tar.gz) = 4173733d1c3b82cf935edd35caf4f47dc13efdae835c6225a2f3e66cf64f40a2 -SIZE (google-go-tpm-v0.9.0_GH0.tar.gz) = 192319 -SHA256 (google-uuid-v1.6.0_GH0.tar.gz) = ee63376b5675376c60e055ed66e5f3651ccc703bd580c022b8ad00cea309252d -SIZE (google-uuid-v1.6.0_GH0.tar.gz) = 20896 -SHA256 (gorilla-mux-v1.8.1_GH0.tar.gz) = c2a09e78d1886abb2d291b472eba3ac9185acb35234c1f5616669664ba893d6d -SIZE (gorilla-mux-v1.8.1_GH0.tar.gz) = 47033 -SHA256 (klauspost-compress-v1.17.9_GH0.tar.gz) = 8130a8314f6f296bf43a0f07021fe51a994c2069390afd45e57496525312506c -SIZE (klauspost-compress-v1.17.9_GH0.tar.gz) = 38751164 -SHA256 (lib-pq-v1.10.9_GH0.tar.gz) = b150b286d59b5f0bdde499112e2f01881773ff5bfdff023802e9e01b7314a06f -SIZE (lib-pq-v1.10.9_GH0.tar.gz) = 114490 -SHA256 (mitchellh-mapstructure-v1.5.0_GH0.tar.gz) = 81106cbac93000812c194b4a2069dd32913ec18819b1e99e8436595ce4939413 -SIZE (mitchellh-mapstructure-v1.5.0_GH0.tar.gz) = 30123 -SHA256 (munnerz-goautoneg-a7dc8b61c822_GH0.tar.gz) = 3a455e3bcf8237ecee0385f97223ca821ec2547284e827e90f94a4984801ca1c -SIZE (munnerz-goautoneg-a7dc8b61c822_GH0.tar.gz) = 2810 -SHA256 (mvdan-xurls-v2.5.0_GH0.tar.gz) = 552779a765de29e51ff01fe6c85a7d0389faae1b80d354332e7c69db232ee4ad -SIZE (mvdan-xurls-v2.5.0_GH0.tar.gz) = 27562 -SHA256 (prometheus-client_golang-v1.20.0_GH0.tar.gz) = 38c85947391c528ed458f5b64aac6282fdab51fb5128fb008e3794edc546a24d -SIZE (prometheus-client_golang-v1.20.0_GH0.tar.gz) = 1102307 -SHA256 (prometheus-client_model-v0.6.1_GH0.tar.gz) = b9b690bc35d80061f255faa7df7621eae39fe157179ccd78ff6409c3b004f05e -SIZE (prometheus-client_model-v0.6.1_GH0.tar.gz) = 17373 -SHA256 (prometheus-common-v0.55.0_GH0.tar.gz) = b9cabec7dadf615ae8bf86414d916f6680bc9e641d7631deaad71422b104ab6b -SIZE (prometheus-common-v0.55.0_GH0.tar.gz) = 147527 -SHA256 (prometheus-procfs-v0.15.1_GH0.tar.gz) = ba96bb6d45f1fcbff820c7d844e6acdef4416bb0ff2d9e24656f5cbacb8e46b5 -SIZE (prometheus-procfs-v0.15.1_GH0.tar.gz) = 243687 -SHA256 (protocolbuffers-protobuf-go-v1.34.2_GH0.tar.gz) = a91d3129e38945b612b7a377364dae324ed3a489c3a805a412805a0cee76e7a2 -SIZE (protocolbuffers-protobuf-go-v1.34.2_GH0.tar.gz) = 1522818 -SHA256 (tdewolff-minify-v2.20.37_GH0.tar.gz) = 33d9bf68d416c9e256412d5045562371bd202f1dabeb111c17bf914b71cabedb -SIZE (tdewolff-minify-v2.20.37_GH0.tar.gz) = 7747296 -SHA256 (tdewolff-parse-v2.7.15_GH0.tar.gz) = 4873a60b59acccfaff997837eab015689700b1497941a553de619554c68d7cb2 -SIZE (tdewolff-parse-v2.7.15_GH0.tar.gz) = 109748 -SHA256 (x448-float16-v0.8.4_GH0.tar.gz) = 2f8f03b3d972f14e1a5a33bab5d1539174e46c696bc91c5b8ac6d7f9036dde15 -SIZE (x448-float16-v0.8.4_GH0.tar.gz) = 13098 -SHA256 (yuin-goldmark-v1.7.4_GH0.tar.gz) = 8e44cccc7fd44ee8f7c35c127e9cd592529be74ae8c8570e64b6f1560affcf95 -SIZE (yuin-goldmark-v1.7.4_GH0.tar.gz) = 252411 +TIMESTAMP = 1744310611 +SHA256 (go/www_miniflux/miniflux-v2-2.2.7_GH0/go.mod) = 92e44cc002d6e2434746343d55b0e5b08fb85ae5a10d6024c8355463d262c10d +SIZE (go/www_miniflux/miniflux-v2-2.2.7_GH0/go.mod) = 1582 +SHA256 (go/www_miniflux/miniflux-v2-2.2.7_GH0/miniflux-v2-2.2.7_GH0.tar.gz) = c412218087a3df9381fe4705ea1681e60ce69c9cbb55acaf425a6d8aa69cd80c +SIZE (go/www_miniflux/miniflux-v2-2.2.7_GH0/miniflux-v2-2.2.7_GH0.tar.gz) = 807798 diff --git a/www/miniflux/files/miniflux.env.sample b/www/miniflux/files/miniflux.env.sample index 2c7517ca05e8..d5662962e8d2 100644 --- a/www/miniflux/files/miniflux.env.sample +++ b/www/miniflux/files/miniflux.env.sample @@ -1,3 +1,9 @@ -# See https://docs.miniflux.app/en/latest/configuration.html +# See https://miniflux.app/docs/configuration.html -LISTEN_ADDR=0.0.0.0:8080 +# Run database migrations during application startup +RUN_MIGRATIONS=1 + +#BASE_URL=http://localhost/ +#DATABASE_URL=user=postgres password=postgres dbname=miniflux2 sslmode=disable +#HTTPS=1 +#LISTEN_ADDR=127.0.0.1:8080 diff --git a/www/miniflux/files/miniflux.in b/www/miniflux/files/miniflux.in index a08024ea0eba..1fc1409441c7 100644 --- a/www/miniflux/files/miniflux.in +++ b/www/miniflux/files/miniflux.in @@ -1,28 +1,46 @@ #!/bin/sh +# shellcheck disable=SC2034 # # Author: Mark Felder - +# # PROVIDE: miniflux -# REQUIRE: LOGIN +# REQUIRE: LOGIN postgresql # KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# miniflux_enable: Set it to YES to enable miniflux. +# Default: NO +# miniflux_config: Name of configuration file. +# Default: %%PREFIX%%/etc/miniflux.env -# Add the following lines to /etc/rc.conf to enable miniflux: -# miniflux_enable="YES" -# miniflux_flags="" - +# shellcheck disable=SC1094 . /etc/rc.subr name="miniflux" -rcvar=miniflux_enable - +rcvar="${name}_enable" load_rc_config $name -: ${miniflux_enable="NO"} -: ${miniflux_config="%%PREFIX%%/etc/miniflux.env"} +: "${miniflux_enable=NO}" +: "${miniflux_user:=%%MINIFLUX_USER%%}" +: "${miniflux_group:=%%MINIFLUX_GROUP%%}" +: "${miniflux_config=%%PREFIX%%/etc/$name.env}" +: "${miniflux_pidfile:=/var/run/$name/$name.pid}" +: "${miniflux_daemonflags:=-fH -P $miniflux_pidfile -t $name -T $name}" +: "${miniflux_extra_flags:=-c $miniflux_config}" -pidfile="/var/run/miniflux.pid" -procname="%%PREFIX%%/bin/miniflux" +pidfile="$miniflux_pidfile" command="/usr/sbin/daemon" -command_args="-f -T miniflux -p ${pidfile} -u miniflux %%PREFIX%%/bin/miniflux -c ${miniflux_config}" +miniflux_command="%%PREFIX%%/bin/$name" +command_args="$miniflux_daemonflags $miniflux_command $miniflux_extra_flags" + +start_precmd="miniflux_precmd" + +miniflux_precmd() { + rundir=$(dirname "$pidfile") + [ -d "$rundir" ] || + install -d -o "$miniflux_user" -g "$miniflux_group" "$rundir" +} run_rc_command "$1" diff --git a/www/miniflux/pkg-plist b/www/miniflux/pkg-plist index 42734ce8f2f3..59fef7577589 100644 --- a/www/miniflux/pkg-plist +++ b/www/miniflux/pkg-plist @@ -1,3 +1,3 @@ bin/miniflux share/man/man1/miniflux.1.gz -@sample etc/miniflux.env.sample +@sample(%%MINIFLUX_USER%%,%%MINIFLUX_GROUP%%,0640) etc/miniflux.env.sample