diff options
40 files changed, 1514 insertions, 334 deletions
diff --git a/Mk/Scripts/electron-create-mtree.sh b/Mk/Scripts/electron-create-mtree.sh new file mode 100644 index 000000000000..6e213f0d5b23 --- /dev/null +++ b/Mk/Scripts/electron-create-mtree.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# +# MAINTAINER: tagattie@FreeBSD.org + +PATH=/bin:/usr/bin:/usr/sbin + +set -e +set -o pipefail + +[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_ELECTRON_CREATE_MTREE}" ] && set -x + +PREFETCH_TIMESTAMP=61171200 # 1971-12-10 00:00:00 GMT + +set -u + +usage() { + cat <<EOF + Usage: ${0##*/} dirname +EOF + exit 1 +} + +if [ $# -ne 1 ]; then + usage +fi + +mtree -cbnSp "$1" | mtree -C | \ +awk -f "${SCRIPTSDIR}/electron-normalize-permissions.awk" | \ +sed -e "s/time=[0-9.]*/time=${PREFETCH_TIMESTAMP}.000000000/" \ + -e 's/\([gu]id\)=[0-9]*/\1=0/g' \ + -e 's/flags=.*/flags=none/' \ + -e "s|^\.|$1|" \ + -e "s|^${WRKDIR}/||" \ + -e '1d' diff --git a/Mk/Scripts/electron-normalize-permissions.awk b/Mk/Scripts/electron-normalize-permissions.awk new file mode 100644 index 000000000000..876f6c4fb684 --- /dev/null +++ b/Mk/Scripts/electron-normalize-permissions.awk @@ -0,0 +1,30 @@ +# MAINTAINER: tagattie@FreeBSD.org + +function oct2dec(octstr, i, c, val) { + val = 0 + for (i = 1; i <= length(octstr); i++) { + c = substr(octstr, i, 1) + if (c < "0" || c > "7") { + break + } + val = val * 8 + (c - "0") + } + return val +} + +{ + if (match($0, /mode=[0-7]+/)) { + mode_str = substr($0, RSTART+5, RLENGTH-5) + mode = oct2dec(mode_str) + exec_bits = 73 # 0o111 + special_bits = 3584 # 0o7000 + special = and(mode, special_bits) + if (and(mode, exec_bits) != 0) { + newmode = or(special, 493) # 0o755 + } else { + newmode = or(special, 420) # 0o644 + } + sub(/mode=[0-7]+/, "mode=" sprintf("%04o", newmode)) + } + print +} diff --git a/Mk/Uses/electron.mk b/Mk/Uses/electron.mk new file mode 100644 index 000000000000..cfd4c4037e26 --- /dev/null +++ b/Mk/Uses/electron.mk @@ -0,0 +1,819 @@ +# Provides support for Electron-based ports +# +# Feature: electron +# Usage: USES=electron:<version>[,ARGS] +# Valid ARGS: <version>, build, run, test, env +# +# <version>: A specific major version of Electron the port is based on. +# The port must specify exactly a single major version. +# build: Electron is needed at build time. Adds it to BUILD_DEPENDS. +# run: Electron is needed at run time. Adds it to RUN_DEPENDS. +# test: Electron is needed at test time. Adds it to TEST_DEPENDS. +# env: Electron is not needed at any of build, run, or test time. +# However, the port needs USE_ELECTRON features. +# +# NOTE 1: {build, run, test} and env are mutually exclusive. If the port +# specifies both of them, env takes precedence. +# +# NOTE 2: If the port specifies none of build, run or test, we assume the port +# requires all those dependencies. +# +# Variables, which may be set by the port: +# +# USE_ELECTRON: A list of additional features and functionalities to +# enable. Supported features are: +# +# npm: A node package manager the port uses. +# Supported package managers are: +# +# npm: The port uses NPM as package manager. +# yarn1: The port uses Yarn (v1) as package manager. +# yarn2: The port uses Yarn (v2 or v3) as package manager. +# yarn4: The port uses Yarn (v4+) as package manager. +# pnpm: The port uses PNPM as package manager. +# +# NOTE: The port must specify exactly a single package manager. +# Multiple package managers cannot be specified. +# +# Other valid arguments are: +# +# fetch, extract, build, run, and test, +# +# each of which corresponds to respective dependency. If the port +# does not specify any of those dependencies, we assume only +# build time dependency is required. +# +# appbuilder: An app-builder version the port uses. Supported +# arguments are: +# +# release: The port uses released version of app-builder and add +# devel/app-builder to BUILD_DEPENDS. +# devel: The port uses development version of app-builder and add +# devel/app-builder-devel to BUILD_DEPENDS. +# +# NOTE: If the port specifies none of those arguments, we assume +# release has been specified. +# +# prefetch: Downloads node modules the port uses according to the +# pre-stored package.json (and package-lock.json, +# yarn.lock, or pnpm-lock.yaml depending on the node +# package manager used) in PKGJSONSDIR. Downloaded node +# modules are archived into a single tarball as one of +# the DISTFILES. +# +# NOTE 1: If the source directory of the port has other relevant +# files than package.json and lockfile, the relevant files must +# also be copied into PKGJSONSDIR. (Examples of relevant files +# includes .npmrc, .yarnrc, and pnpm-workspace.yaml.) +# +# NOTE 2: If the source directory of the port contains multiple +# package.json's and/or lockfiles, all files needed for generating +# node modules archive must be copied into PKGJSONSDIR with +# directory hierarchy preserved. +# +# extract: Installs the prefetched node modules into the port's +# working source directory. +# +# rebuild: Rebuilds native node modules against nodejs or electron. +# Supported arguments are: +# +# nodejs: Rebuilds native node modules against the version of +# nodejs installed before pre-build phase so that nodejs +# can execute the native modules during build. +# electron: Rebuilds native node modules against the version of +# electron the port uses before do-build phase so that +# the native modules can be executed with electron on run +# time. +# +# NOTE: If the port specifies none of those arguments, we assume +# only electron has been specified. +# +# build: Prepares an electron application in a distributable +# format using the specified package builder as an +# argument. Supported arguments are: +# +# builder: Uses electron-builder for packaging. +# forge: Uses electron-forge for packaging. +# packager: Uses electron-packager for packaging. +# +# NOTE: The port must specify exactly a single argument. Multiple +# package builders cannot be specified. +# +# NPM_VER: A version of node package manager the port uses. If yarn +# 2 or later, or pnpm is used for the package manager, the +# framework requires the variable to be set so that it can +# bootstrap the correct version of package manager. +# +# It is usually specified as the key "packageManager" in +# package.json and the framework tries to automatically +# detect the version. Auto-detection can be overridden by +# manually specifying the value in Makefile. +# +# UPSTREAM_ELECTRON_VER: +# UPSTREAM_CHROMEDRIVER_VER: +# UPSTREAM_MKSNAPSHOT_VER: +# Electron, chromedriver, and mksnapshot versions the port +# depends on. Those versions are usually specified in +# either package-lock.json, yarn.lock, or pnpm-lock.yaml +# file in the port's source directory. +# +# The build process tries to automatically detect those +# versions so the port does not usually have to specify +# the values. Auto-detection can be overridden by manually +# specifying the values in Makefile. +# +# The build process will generate a zip archive and a +# checksum file of electron/chromedriver/mksnapshot to +# prevent the build phase from trying to download binary +# distribution files from GitHub. +# +# ELECTRON_MAKE_FLAGS: Additional command-line flags to pass to the specified +# package builder when build feature is used. The default +# flags are defined in this file. +# +# MAINTAINER: tagattie@FreeBSD.org + +.if !defined(_INCLUDE_USES_ELECTRON_MK) +_INCLUDE_USES_ELECTRON_MK= yes + +# Electron uses Node.js (actually a node package manager) for build +.include "${USESDIR}/nodejs.mk" + +_VALID_ELECTRON_VERSIONS= 36 37 38 39 +_VALID_ELECTRON_FEATURES= npm appbuilder prefetch extract rebuild build +_VALID_ELECTRON_FEATURES_NPM= npm yarn1 yarn2 yarn4 pnpm +_VALID_ELECTRON_FEATURES_APPBUILDER=release devel +_VALID_ELECTRON_FEATURES_REBUILD=nodejs electron +_VALID_ELECTRON_FEATURES_BUILD= builder forge packager + +_ELECTRON_CMD_BASE= electron +_ELECTRON_PORT_BASE= devel/electron +_ELECTRON_DOWNLOAD_URL_BASE= https://github.com/electron/electron/releases/download +_NODEJS_PKGNAME= node${NODEJS_VERSION} +_NODEJS_PORT= www/node${NODEJS_VERSION} + +# Process USES=electron[:ARGS] +# Detect build, run, test, or env dependency +_ELECTRON_ARGS= ${electron_ARGS:S/,/ /g} +. if ${_ELECTRON_ARGS:Mbuild} +_ELECTRON_BUILD_DEP= yes +_ELECTRON_ARGS:= ${_ELECTRON_ARGS:Nbuild} +. endif +. if ${_ELECTRON_ARGS:Mrun} +_ELECTRON_RUN_DEP= yes +_ELECTRON_ARGS:= ${_ELECTRON_ARGS:Nrun} +. endif +. if ${_ELECTRON_ARGS:Mtest} +_ELECTRON_TEST_DEP= yes +_ELECTRON_ARGS:= ${_ELECTRON_ARGS:Ntest} +. endif +. if ${_ELECTRON_ARGS:Menv} +_ELECTRON_NO_DEP= yes +_ELECTRON_ARGS:= ${_ELECTRON_ARGS:Nenv} +. endif +# If no dependencies are specified, assume build, run, and test are required +. if !defined(_ELECTRON_BUILD_DEP) && !defined(_ELECTRON_RUN_DEP) && \ + !defined(_ELECTRON_TEST_DEP) && !defined(_ELECTRON_NO_DEP) +_ELECTRON_BUILD_DEP= yes +_ELECTRON_RUN_DEP= yes +_ELECTRON_TEST_DEP= yes +. endif +# Now _ELECTRON_ARGS should contain a single major version unless env is set +. if !defined(_ELECTRON_NO_DEP) +. if ${_VALID_ELECTRON_VERSIONS:M${_ELECTRON_ARGS}} +_ELECTRON_VERSION= ${_ELECTRON_ARGS} +_ELECTRON_PORTDIR= ${_ELECTRON_PORT_BASE}${_ELECTRON_VERSION} +. include "${PORTSDIR}/${_ELECTRON_PORTDIR}/Makefile.version" +. elif empty(_ELECTRON_ARGS) +IGNORE= does not specify a major version of electron with USES=electron +. else +IGNORE= specifies unknown USES=electron arguments: ${_ELECTRON_ARGS} +. endif +. endif + +# Detect features used with USE_ELECTRON +. for var in ${USE_ELECTRON} +. if empty(_VALID_ELECTRON_FEATURES:M${var:C/\:.*//}) +_INVALID_ELECTRON_FEATURES+= ${var} +. endif +. endfor +. if !empty(_INVALID_ELECTRON_FEATURES) +IGNORE= uses unknown USE_ELECTRON features: ${_INVALID_ELECTRON_FEATURES} +. endif +# Make each individual feature available as _ELECTRON_FEATURE_<FEATURENAME> +. for var in ${USE_ELECTRON} +_ELECTRON_FEATURE_${var:C/\:.*//:tu}= ${var} +. endfor +. if !defined(_ELECTRON_FEATURE_NPM) +IGNORE= does not specify a single node package manager with USE_ELECTRON=npm +. endif + +# Process USE_ELECTRON=npm[:ARGS] +# Detect fetch, extract, build, run, or test dependency +_NODEJS_NPM?= +. if defined(_ELECTRON_FEATURE_NPM) +_ELECTRON_FEATURE_NPM:= ${_ELECTRON_FEATURE_NPM:S/,/ /g} +. if ${_ELECTRON_FEATURE_NPM:Mfetch} +_ELECTRON_FEATURE_NPM_FETCH= yes +_ELECTRON_FEATURE_NPM:= ${_ELECTRON_FEATURE_NPM:Nfetch} +. endif +. if ${_ELECTRON_FEATURE_NPM:Mextract} +_ELECTRON_FEATURE_NPM_EXTRACT= yes +_ELECTRON_FEATURE_NPM:= ${_ELECTRON_FEATURE_NPM:Nextract} +. endif +. if ${_ELECTRON_FEATURE_NPM:Mbuild} +_ELECTRON_FEATURE_NPM_BUILD= yes +_ELECTRON_FEATURE_NPM:= ${_ELECTRON_FEATURE_NPM:Nbuild} +. endif +. if ${_ELECTRON_FEATURE_NPM:Mrun} +_ELECTRON_FEATURE_NPM_RUN= yes +_ELECTRON_FEATURE_NPM:= ${_ELECTRON_FEATURE_NPM:Nrun} +. endif +. if ${_ELECTRON_FEATURE_NPM:Mtest} +_ELECTRON_FEATURE_NPM_TEST= yes +_ELECTRON_FEATURE_NPM:= ${_ELECTRON_FEATURE_NPM:Ntest} +. endif +# If no dependencies are specified, we assume only build dep is required +. if !defined(_ELECTRON_FEATURE_NPM_FETCH) && !defined(_ELECTRON_FEATURE_NPM_EXTRACT) && \ + !defined(_ELECTRON_FEATURE_NPM_BUILD) && !defined(_ELECTRON_FEATURE_NPM_RUN) && \ + !defined(_ELECTRON_FEATURE_NPM_TEST) +_ELECTRON_FEATURE_NPM_BUILD= yes +. endif +# Now _ELECTRON_FEATURE_NPM should contain a single package manager +. if ${_VALID_ELECTRON_FEATURES_NPM:M${_ELECTRON_FEATURE_NPM:C/^[^\:]*(\:|\$)//}} +_NODEJS_NPM= ${_ELECTRON_FEATURE_NPM:C/^[^\:]*(\:|\$)//} +. if ${_NODEJS_NPM} == npm +_NPM_PKGNAME= ${_NODEJS_NPM}${NODEJS_SUFFIX} +_NPM_PORTDIR= www/${_NODEJS_NPM}${NODEJS_SUFFIX} +. elif ${_NODEJS_NPM} == yarn1 +_NPM_PKGNAME= yarn${NODEJS_SUFFIX} +_NPM_PORTDIR= www/yarn${NODEJS_SUFFIX} +. endif +. elif empty(_ELECTRON_FEATURES_NPM) +IGNORE= does not specify a single node package manager with USE_ELECTRON=npm +. else +IGNORE= specifies unknown USE_ELECTRON=npm arguments: ${_ELECTRON_FEATURE_NPM} +. endif +. endif + +# Process USE_ELECTRON=appbuilder[:ARGS] +# Detect stable or devel argument of appbuilder feature +. if defined(_ELECTRON_FEATURE_APPBUILDER) +_ELECTRON_FEATURE_APPBUILDER:= ${_ELECTRON_FEATURE_APPBUILDER:C/^[^\:]*(\:|\$)//} +. if ${_ELECTRON_FEATURE_APPBUILDER:Mrelease} +_ELECTRON_FEATURE_APPBUILDER_RELEASE= yes +_ELECTRON_FEATURE_APPBUILDER:= ${_ELECTRON_FEATURE_APPBUILDER:Nrelease} +. endif +. if ${_ELECTRON_FEATURE_APPBUILDER:Mdevel} +_ELECTRON_FEATURE_APPBUILDER_DEVEL= yes +_ELECTRON_FEATURE_APPBUILDER:= ${_ELECTRON_FEATURE_APPBUILDER:Ndevel} +. endif +# If no arguments are specified, we assume release is specified +. if !defined(_ELECTRON_FEATURE_APPBUILDER_RELEASE) && \ + !defined(_ELECTRON_FEATURE_APPBUILDER_DEVEL) +_ELECTRON_FEATURE_APPBUILDER_RELEASE= yes +. endif +. if !empty(_ELECTRON_FEATURE_APPBUILDER) +IGNORE= specifies unknown USE_ELECTRON=appbuilder arguments: ${_ELECTRON_FEATURE_APPBUILDER} +. endif +. endif + +# Process USE_ELECTRON=rebuild[:ARGS] +# Detect nodejs or electron argument of rebuild feature +. if defined(_ELECTRON_FEATURE_REBUILD) +_ELECTRON_FEATURE_REBUILD:= ${_ELECTRON_FEATURE_REBUILD:C/^[^\:]*(\:|\$)//:S/,/ /g} +. if ${_ELECTRON_FEATURE_REBUILD:Mnodejs} +_ELECTRON_FEATURE_REBUILD_NODEJS= yes +_ELECTRON_FEATURE_REBUILD:= ${_ELECTRON_FEATURE_REBUILD:Nnodejs} +. endif +. if ${_ELECTRON_FEATURE_REBUILD:Melectron} +_ELECTRON_FEATURE_REBUILD_ELECTRON= yes +_ELECTRON_FEATURE_REBUILD:= ${_ELECTRON_FEATURE_REBUILD:Nelectron} +. endif +# If no arguments are specified, we assume electron is specified +. if !defined(_ELECTRON_FEATURE_REBUILD_NODEJS) && \ + !defined(_ELECTRON_FEATURE_REBUILD_ELECTRON) +_ELECTRON_FEATURE_REBUILD_ELECTRON= yes +. endif +. if !empty(_ELECTRON_FEATURE_REBUILD) +IGNORE= specifies unknown USE_ELECTRON=rebuild arguments: ${_ELECTRON_FEATURE_REBUILD} +. endif +. endif + +# Process USE_ELECTRON=build:ARG +# Detect builder used with USE_ELECTRON=builder +. if defined(_ELECTRON_FEATURE_BUILD) +. if ${_VALID_ELECTRON_FEATURES_BUILD:M${_ELECTRON_FEATURE_BUILD:C/^[^\:]*(\:|\$)//}} +_ELECTRON_FEATURE_BUILD:= ${_ELECTRON_FEATURE_BUILD:C/^[^\:]*(\:|\$)//} +. else +IGNORE= specifies unknown USE_ELECTRON=build arguments: ${_ELECTRON_FEATURE_BUILD} +. endif +. endif + +# Setup dependencies +. for stage in BUILD RUN TEST +. if defined(_ELECTRON_${stage}_DEP) && ${_ELECTRON_${stage}_DEP} == yes +${stage}_DEPENDS+= ${_ELECTRON_CMD_BASE}${ELECTRON_VER_MAJOR}:${_ELECTRON_PORTDIR} +. endif +. endfor +. for stage in FETCH EXTRACT BUILD RUN TEST +. if defined(_ELECTRON_FEATURE_NPM_${stage}) && ${_ELECTRON_FEATURE_NPM_${stage}} == yes +. if ${_NODEJS_NPM} == npm || ${_NODEJS_NPM} == yarn1 +${stage}_DEPENDS+= ${_NPM_PKGNAME}>0:${_NPM_PORTDIR} +. elif ${_NODEJS_NPM} == yarn2 || ${_NODEJS_NPM} == yarn4 || ${_NODEJS_NPM} == pnpm +${stage}_DEPENDS+= ${_NODEJS_PKGNAME}>0:${_NODEJS_PORT} +. endif +. endif +. endfor +. if defined(_ELECTRON_FEATURE_APPBUILDER_RELEASE) && ${_ELECTRON_FEATURE_APPBUILDER_RELEASE} == yes +BUILD_DEPENDS+= app-builder:devel/app-builder +. elif defined(_ELECTRON_FEATURE_APPBUILDER_DEVEL) && ${_ELECTRON_FEATURE_APPBUILDER_DEVEL} == yes +BUILD_DEPENDS+= app-builder:devel/app-builder-devel +. endif + +# Define variables related to node package manager +NPM_FETCH_FLAGS?= +NPM_EXTRACT_FLAGS?= +NPM_EXEC_FLAGS?= +NPM_REBUILD_FLAGS?= + +NPM_PKGFILE?= package.json +. if ${_NODEJS_NPM} == npm +NPM_LOCKFILE?= package-lock.json +NPM_MODULE_CACHE?= node_modules +NPM_CMDNAME?= npm +NPM_CACHE_SETUP_CMD?= ${DO_NADA} +NPM_FETCH_CMD?= ${NPM_CMDNAME} ci +NPM_FETCH_FLAGS+= --ignore-scripts --no-progress --no-audit --no-fund --no-update-notifier --loglevel=error +NPM_EXEC_CMD?= ${NPM_CMDNAME} exec +NPM_EXEC_FLAGS+= --no-update-notifier +NPM_REBUILD_CMD?= ${NPM_CMDNAME} rebuild +NPM_REBUILD_FLAGS+= --no-update-notifier +. elif ${_NODEJS_NPM:Myarn*} +NPM_LOCKFILE?= yarn.lock +NPM_MODULE_CACHE?= yarn-offline-cache +NPM_CMDNAME?= yarn +NPM_FETCH_CMD?= ${NPM_CMDNAME} install +NPM_EXTRACT_CMD?= ${NPM_CMDNAME} install +NPM_EXEC_CMD?= ${NPM_CMDNAME} exec +. if ${_NODEJS_NPM} == yarn1 +NPM_CACHE_SETUP_CMD?= ${ECHO_CMD} 'yarn-offline-mirror "./${NPM_MODULE_CACHE}"' >> .yarnrc +NPM_FETCH_FLAGS+= --frozen-lockfile --ignore-scripts --silent +NPM_EXTRACT_FLAGS+= ${NPM_FETCH_FLAGS} --offline +. elif ${_NODEJS_NPM} == yarn2 +NPM_CACHE_SETUP_CMD?= ${NPM_CMDNAME} config set cacheFolder "./${NPM_MODULE_CACHE}" +NPM_FETCH_FLAGS+= --immutable --mode=skip-build --silent +NPM_EXTRACT_SETUP_CMD?= ${SH} -c "${NPM_CMDNAME} config set enableNetwork false; \ + ${NPM_CMDNAME} config set enableInlineBuilds true" +NPM_EXTRACT_FLAGS+= ${NPM_FETCH_FLAGS} --immutable-cache +NPM_REBUILD_CMD?= ${NPM_CMDNAME} rebuild +. elif ${_NODEJS_NPM} == yarn4 +NPM_CACHE_SETUP_CMD?= ${SH} -c "${NPM_CMDNAME} config set enableGlobalCache false; \ + ${NPM_CMDNAME} config set cacheFolder \"./${NPM_MODULE_CACHE}\"" +NPM_FETCH_FLAGS+= --immutable --mode=skip-build --silent +NPM_EXTRACT_SETUP_CMD?= ${SH} -c "${NPM_CMDNAME} config set enableNetwork false; \ + ${NPM_CMDNAME} config set enableInlineBuilds true" +NPM_EXTRACT_FLAGS+= ${NPM_FETCH_FLAGS} --immutable-cache +NPM_REBUILD_CMD?= ${NPM_CMDNAME} rebuild +. endif +. elif ${_NODEJS_NPM} == pnpm +NPM_LOCKFILE?= pnpm-lock.yaml +NPM_MODULE_CACHE?= node_modules +NPM_CMDNAME?= pnpm +NPM_CACHE_SETUP_CMD?= ${NPM_CMDNAME} set extendNodePath false +NPM_FETCH_CMD?= ${NPM_CMDNAME} install +NPM_FETCH_FLAGS+= --frozen-lockfile --ignore-scripts --loglevel=error +NPM_EXEC_CMD?= ${NPM_CMDNAME} exec +NPM_REBUILD_CMD?= ${NPM_CMDNAME} rebuild +. endif + +# Define user-accessible variables +JQ_CMD?= ${LOCALBASE}/bin/jq +YQ_CMD?= ${LOCALBASE}/bin/yq +APP_BUILDER_CMD?= ${LOCALBASE}/bin/app-builder + +ELECTRON_ARCH= ${ARCH:S/aarch64/arm64/:S/amd64/x64/:S/i386/ia32/} + +PKGJSONSDIR?= ${FILESDIR}/packagejsons +NPM_VER?= +NPM_EXTRACT_WRKSRC?= ${WRKSRC} +NPM_REBUILD_WRKSRC_NODEJS?= ${WRKSRC} +NPM_REBUILD_WRKSRC_ELECTRON?= ${WRKSRC} + +# Check existence of package.json +_EXISTS_NPM_PKGFILE?= +. if exists(${PKGJSONSDIR}/${NPM_PKGFILE}) +_EXISTS_NPM_PKGFILE= 1 +. endif + +# If yarn 2+ or pnpm is used, we need to know the version of node package +# manager. It is usually specified as the key "packageManager", so try to +# automatically detect the version. +. if ${_NODEJS_NPM} == yarn2 || ${_NODEJS_NPM} == yarn4 || ${_NODEJS_NPM} == pnpm +. if ${_EXISTS_NPM_PKGFILE} == 1 && empty(NPM_VER) +NPM_VER!= ${GREP} packageManager ${PKGJSONSDIR}/${NPM_PKGFILE} | \ + ${AWK} -F ':' '{print $$NF}' | \ + ${SED} -e 's/[",]//g' | \ + ${CUT} -f 2 -d '@' | \ + ${CUT} -f 1 -d '+' +. endif +. if empty(NPM_VER) +IGNORE= does not specity version of ${NPM_CMDNAME} used for prefetching node modules +. endif + +_USES_fetch+= 490:electron-fetch-node-package-manager + +DISTFILES+= ${NPM_CMDNAME}-${NPM_VER}.tgz:prefetch +FETCH_DEPENDS+= ${_NODEJS_PKGNAME}>0:${_NODEJS_PORT} + +electron-fetch-node-package-manager: + @${ECHO_MSG} "===> Fetching and setting up ${NPM_CMDNAME} version ${NPM_VER}" + @${MKDIR} ${DISTDIR}/${DIST_SUBDIR} ${WRKDIR}/.bin + @${SETENV} ${MAKE_ENV} corepack enable --install-directory ${WRKDIR}/.bin + @if [ ! -f ${DISTDIR}/${DIST_SUBDIR}/${NPM_CMDNAME}-${NPM_VER}.tgz ]; then \ + cd ${WRKDIR} && \ + ${SETENV} ${MAKE_ENV} corepack pack ${NPM_CMDNAME}@${NPM_VER} && \ + ${TAR} -xzf corepack.tgz && \ + ${SETENV} SCRIPTSDIR=${SCRIPTSDIR} WRKDIR=${WRKDIR} \ + ${SH} ${SCRIPTSDIR}/electron-create-mtree.sh ${NPM_CMDNAME} > \ + ${NPM_CMDNAME}.mtree && \ + ${SETENV} LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 \ + ${TAR} -cz --options 'gzip:!timestamp' \ + -f ${DISTDIR}/${DIST_SUBDIR}/${NPM_CMDNAME}-${NPM_VER}.tgz @${NPM_CMDNAME}.mtree; \ + fi + @${SETENV} ${MAKE_ENV} corepack install -g ${DISTDIR}/${DIST_SUBDIR}/${NPM_CMDNAME}-${NPM_VER}.tgz +. endif + +# When prefetch feature is used, downloads node modules the port uses according +# to the pre-stored package.json. +. if defined(_ELECTRON_FEATURE_PREFETCH) +. if empty(_EXISTS_NPM_PKGFILE) +IGNORE= does not store ${NPM_PKGFILE} in ${PKGJSONSDIR} for prefetching node modules +. endif + +_USES_fetch+= 491:electron-fetch-node-modules \ + 492:electron-archive-node-modules + +_DISTFILE_prefetch= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}-${DISTVERSION}-node-modules${EXTRACT_SUFX} +DISTFILES+= ${_DISTFILE_prefetch}:prefetch + +. if ${_NODEJS_NPM} == npm || ${_NODEJS_NPM} == yarn1 +FETCH_DEPENDS+= ${_NPM_PKGNAME}>0:${_NPM_PORTDIR} +. elif ${_NODEJS_NPM} == pnpm +FETCH_DEPENDS+= ${YQ_CMD}:textproc/yq +. endif + +electron-fetch-node-modules: + @${MKDIR} ${DISTDIR}/${DIST_SUBDIR} + @if [ ! -f ${DISTDIR}/${DIST_SUBDIR}/${_DISTFILE_prefetch} ]; then \ + ${ECHO_MSG} "===> Setting up node modules cache directory"; \ + ${MKDIR} ${WRKDIR}/node-modules-cache; \ + ${TAR} -cf - -C ${PKGJSONSDIR} . | ${TAR} -xf - -C ${WRKDIR}/node-modules-cache; \ + cd ${WRKDIR}/node-modules-cache && ${SETENV} ${MAKE_ENV} ${NPM_CACHE_SETUP_CMD}; \ + ${ECHO_MSG} "===> Prefetching node modules"; \ + for dir in `${FIND} ${WRKDIR}/node-modules-cache -type f -name ${NPM_LOCKFILE} -exec ${DIRNAME} {} ';'`; do \ + cd $${dir} && \ + ${SETENV} ${MAKE_ENV} ${NPM_FETCH_CMD} ${NPM_FETCH_FLAGS}; \ + ${RM} $${dir}/${NPM_MODULE_CACHE}/.gitignore; \ + if [ -f $${dir}/${NPM_MODULE_CACHE}/.modules.yaml ]; then \ + ${YQ_CMD} -yi 'del(.prunedAt, .storeDir)' \ + $${dir}/${NPM_MODULE_CACHE}/.modules.yaml; \ + fi; \ + ${RM} $${dir}/${NPM_MODULE_CACHE}/.pnpm-workspace-state*.json; \ + done; \ + fi + +electron-archive-node-modules: +. if ${_NODEJS_NPM} == npm || ${_NODEJS_NPM} == pnpm + @if [ -d ${WRKDIR}/node-modules-cache ]; then \ + ${ECHO_MSG} "===> Archiving prefetched node modules"; \ + for dir in `${FIND} -s ${WRKDIR}/node-modules-cache -type d -name ${NPM_MODULE_CACHE} -print | \ + ${GREP} -ve '${NPM_MODULE_CACHE}/.*/${NPM_MODULE_CACHE}'`; do \ + ${SETENV} SCRIPTSDIR=${SCRIPTSDIR} WRKDIR=${WRKDIR} \ + ${SH} ${SCRIPTSDIR}/electron-create-mtree.sh $${dir} >> \ + ${WRKDIR}/node-modules-cache.mtree; \ + done; \ + ${SETENV} LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 \ + ${TAR} -cz --options 'gzip:!timestamp' \ + -f ${DISTDIR}/${DIST_SUBDIR}/${_DISTFILE_prefetch} \ + -C ${WRKDIR} @node-modules-cache.mtree; \ + if [ ${TMPDIR} != ${WRKDIR} ]; then \ + ${RM} -r ${WRKDIR}; \ + fi; \ + fi +. elif ${_NODEJS_NPM:Myarn*} + @if [ -d ${WRKDIR}/node-modules-cache ]; then \ + ${ECHO_MSG} "===> Archiving prefetched node modules"; \ + cd ${WRKDIR}/node-modules-cache && \ + ${SETENV} SCRIPTSDIR=${SCRIPTSDIR} WRKDIR=${WRKDIR} \ + ${SH} ${SCRIPTSDIR}/electron-create-mtree.sh ${NPM_MODULE_CACHE} > \ + node-modules-cache.mtree && \ + ${SETENV} LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 \ + ${TAR} -cz --options 'gzip:!timestamp' \ + -f ${DISTDIR}/${DIST_SUBDIR}/${_DISTFILE_prefetch} @node-modules-cache.mtree; \ + if [ ${TMPDIR} != ${WRKDIR} ]; then \ + ${RM} -r ${WRKDIR}; \ + fi; \ + fi +. endif +. endif # _FEATURE_ELECTRON_PREFETCH + +# When extract feature is used, installs the prefetched node modules into the +# port's working source directory. +. if defined(_ELECTRON_FEATURE_EXTRACT) +_USES_extract+= 600:electron-extract-node-package-manager \ + 601:electron-copy-package-file \ + 602:electron-install-node-modules + +. if ${_NODEJS_NPM} == yarn1 +EXTRACT_DEPENDS+= ${_NPM_PKGNAME}>0:${_NPM_PORTDIR} +. elif ${_NODEJS_NPM} == yarn2 || ${_NODEJS_NPM} == yarn4 || ${_NODEJS_NPM} == pnpm +EXTRACT_DEPENDS+= ${_NODEJS_PKGNAME}>0:${_NODEJS_PORT} +. endif + +electron-extract-node-package-manager: +. if ${_NODEJS_NPM} == yarn2 || ${_NODEJS_NPM} == yarn4 || ${_NODEJS_NPM} == pnpm + @${ECHO_MSG} "===> Setting up ${NPM_CMDNAME} version ${NPM_VER}" + @${MKDIR} ${WRKDIR}/.bin + @${SETENV} ${MAKE_ENV} corepack enable --install-directory ${WRKDIR}/.bin + @${SETENV} ${MAKE_ENV} corepack install -g ${DISTDIR}/${DIST_SUBDIR}/${NPM_CMDNAME}-${NPM_VER}.tgz +. else + @${DO_NADA} +. endif + +electron-copy-package-file: +. if ${_EXISTS_NPM_PKGFILE} == 1 + @${ECHO_MSG} "===> Copying ${NPM_PKGFILE} and ${NPM_LOCKFILE} to ${NPM_EXTRACT_WRKSRC}" + @for f in `${FIND} ${PKGJSONSDIR} -type f \( -name ${NPM_PKGFILE} -o -name ${NPM_LOCKFILE} \) -print | ${SED} -e 's|${PKGJSONSDIR}/||'`; do \ + ${MKDIR} -p `${DIRNAME} ${NPM_EXTRACT_WRKSRC}/$${f}`; \ + if [ -f ${NPM_EXTRACT_WRKSRC}/$${f} ]; then \ + ${MV} -f ${NPM_EXTRACT_WRKSRC}/$${f} ${NPM_EXTRACT_WRKSRC}/$${f}.bak; \ + fi; \ + ${CP} ${PKGJSONSDIR}/$${f} ${NPM_EXTRACT_WRKSRC}/$${f}; \ + done +. endif + +electron-install-node-modules: +. if ${_NODEJS_NPM} == npm || ${_NODEJS_NPM} == pnpm + @${ECHO_MSG} "===> Moving prefetched node modules to ${NPM_EXTRACT_WRKSRC}" + @if [ -d ${EXTRACT_WRKDIR}/node-modules-cache ]; then \ + for dir in `${FIND} -s ${EXTRACT_WRKDIR}/node-modules-cache -type d -name ${NPM_MODULE_CACHE} -print | \ + ${GREP} -ve '${NPM_MODULE_CACHE}/.*/${NPM_MODULE_CACHE}'`; do \ + ${MV} $${dir} `${ECHO_CMD} $${dir} | sed -e 's|${EXTRACT_WRKDIR}/node-modules-cache|${NPM_EXTRACT_WRKSRC}|'`; \ + done; \ + fi +. elif ${_NODEJS_NPM:Myarn*} + @${ECHO_MSG} "===> Installing node modules from prefetched cache" + @if [ -d ${EXTRACT_WRKDIR}/${NPM_MODULE_CACHE} ]; then \ + ${MV} ${EXTRACT_WRKDIR}/${NPM_MODULE_CACHE} ${NPM_EXTRACT_WRKSRC}; \ + fi + @cd ${NPM_EXTRACT_WRKSRC} && ${SETENV} ${MAKE_ENV} ${NPM_CACHE_SETUP_CMD} +. if defined(NPM_EXTRACT_SETUP_CMD) && !empty(NPM_EXTRACT_SETUP_CMD) + @${ECHO_MSG} "===> Setting up ${NPM_CMDNAME} command options" + @cd ${NPM_EXTRACT_WRKSRC} && ${SETENV} ${MAKE_ENV} ${NPM_EXTRACT_SETUP_CMD} +. endif + @if [ -d ${PKGJSONSDIR} ]; then \ + cd ${PKGJSONSDIR} && \ + for dir in `${FIND} . -type f -name ${NPM_LOCKFILE} -exec ${DIRNAME} {} ';'`; do \ + cd ${NPM_EXTRACT_WRKSRC}/$${dir} && \ + ${SETENV} ${MAKE_ENV} ${NPM_EXTRACT_CMD} ${NPM_EXTRACT_FLAGS}; \ + done; \ + else \ + cd ${NPM_EXTRACT_WRKSRC} && \ + ${SETENV} ${MAKE_ENV} ${NPM_EXTRACT_CMD} ${NPM_EXTRACT_FLAGS}; \ + fi +. endif +. endif # _ELECTRON_FEATURE_EXTRACT + +# Always generate distribution zip files from installed electron package +# directory. This is necessary to prevent the build phase from downloading +# binary distribution files from GitHub. +_USES_build+= 290:electron-generate-electron-zip + +BUILD_DEPENDS+= zip:archivers/zip +. if ${_NODEJS_NPM} == npm +BUILD_DEPENDS+= ${JQ_CMD}:textproc/jq +. elif ${_NODEJS_NPM} == yarn2 || ${_NODEJS_NPM} == yarn4 || ${_NODEJS_NPM} == pnpm +BUILD_DEPENDS+= ${YQ_CMD}:textproc/yq +. endif + +. if !defined(UPSTREAM_ELECTRON_VER) +. if ${_EXISTS_NPM_PKGFILE} == 1 +. if ${_NODEJS_NPM} == npm && exists(${JQ_CMD}) +UPSTREAM_ELECTRON_VER!= ${JQ_CMD} -r \ + '.packages | \ + to_entries | \ + map(if(.key | test("electron$$")) then .value.version else empty end) | \ + .[]' ${PKGJSONSDIR}/${NPM_LOCKFILE} | \ + ${SORT} -n | \ + ${TAIL} -n 1 +. elif ${_NODEJS_NPM} == yarn1 +UPSTREAM_ELECTRON_VER!= ${GREP} -e 'resolved.*/electron/' ${PKGJSONSDIR}/${NPM_LOCKFILE} | \ + ${AWK} -F- '{print $$NF}' | \ + ${SED} -E 's/\.[a-z]+.*$$//' | \ + ${SORT} -n | \ + ${TAIL} -n 1 +. elif (${_NODEJS_NPM} == yarn2 || ${_NODEJS_NPM} == yarn4) && exists(${YQ_CMD}) +UPSTREAM_ELECTRON_VER!= ${YQ_CMD} -r \ + '. | \ + to_entries | \ + map(if(.key | test("^electron@")) then .value.version else empty end) | \ + .[]' ${PKGJSONSDIR}/${NPM_LOCKFILE} | \ + ${SORT} -n | \ + ${TAIL} -n 1 +. elif ${_NODEJS_NPM} == pnpm && exists(${YQ_CMD}) +UPSTREAM_ELECTRON_VER!= ${YQ_CMD} -r \ + '.packages | \ + to_entries | \ + map(if(.key | test("^electron@")) then .key else empty end) | \ + .[]' ${PKGJSONSDIR}/${NPM_LOCKFILE} | \ + ${CUT} -f 2 -d '@' | \ + ${SORT} -n | \ + ${TAIL} -n 1 +. endif +. endif +. endif +ELECTRON_DOWNLOAD_URL= ${_ELECTRON_DOWNLOAD_URL_BASE}/v${UPSTREAM_ELECTRON_VER} +ELECTRON_DOWNLOAD_URL_HASH!= ${SHA256} -q -s ${ELECTRON_DOWNLOAD_URL} +ELECTRON_DOWNLOAD_CACHE_DIR= .cache/electron/${ELECTRON_DOWNLOAD_URL_HASH} + +. if !defined(UPSTREAM_CHROMEDRIVER_VER) +. if ${_EXISTS_NPM_PKGFILE} == 1 +UPSTREAM_CHROMEDRIVER_VER!= ${GREP} -e 'resolved.*/electron-chromedriver/' ${PKGJSONSDIR}/${NPM_LOCKFILE} | \ + ${HEAD} -n 1 | ${AWK} -F- '{print $$NF}' | ${SED} -E 's/\.[a-z]+.*$$//' +. endif +. endif +CHROMEDRIVER_DOWNLOAD_URL= ${_ELECTRON_DOWNLOAD_URL_BASE}/v${UPSTREAM_CHROMEDRIVER_VER} +CHROMEDRIVER_DOWNLOAD_URL_HASH!=${SHA256} -q -s ${CHROMEDRIVER_DOWNLOAD_URL} +CHROMEDRIVER_DOWNLOAD_CACHE_DIR=.cache/electron/${CHROMEDRIVER_DOWNLOAD_URL_HASH} + +. if !defined(UPSTREAM_MKSNAPSHOT_VER) +. if ${_EXISTS_NPM_PKGFILE} == 1 +UPSTREAM_MKSNAPSHOT_VER!= ${GREP} -e 'resolved.*/electron-mksnapshot/' ${PKGJSONSDIR}/${NPM_LOCKFILE} | \ + ${HEAD} -n 1 | ${AWK} -F- '{print $$NF}' | ${SED} -E 's/\.[a-z]+.*$$//' +. endif +. endif +MKSNAPSHOT_DOWNLOAD_URL= ${_ELECTRON_DOWNLOAD_URL_BASE}/v${UPSTREAM_MKSNAPSHOT_VER} +MKSNAPSHOT_DOWNLOAD_URL_HASH!= ${SHA256} -q -s ${MKSNAPSHOT_DOWNLOAD_URL} +MKSNAPSHOT_DOWNLOAD_CACHE_DIR= .cache/electron/${MKSNAPSHOT_DOWNLOAD_URL_HASH} + +electron-generate-electron-zip: + @if [ -d ${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR} ]; then \ + ${ECHO_MSG} "===> Preparing distribution files of electron/chromedriver/mksnapshot"; \ + ${RM} -r ${WRKDIR}/electron-dist; \ + ${MKDIR} ${WRKDIR}/electron-dist; \ + ${TAR} -cf - -C ${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR} . | \ + ${TAR} -xf - -C ${WRKDIR}/electron-dist; \ + cd ${WRKDIR}/electron-dist && \ + ${FIND} . -type f -perm ${BINMODE} -exec ${CHMOD} 755 {} ';'; \ + ${MKDIR} ${WRKDIR}/${ELECTRON_DOWNLOAD_CACHE_DIR}; \ + cd ${WRKDIR}/electron-dist && \ + zip -q -r ${WRKDIR}/${ELECTRON_DOWNLOAD_CACHE_DIR}/electron-v${UPSTREAM_ELECTRON_VER}-linux-${ELECTRON_ARCH}.zip .; \ + cd ${WRKDIR}/${ELECTRON_DOWNLOAD_CACHE_DIR} && \ + ${SHA256} -r *.zip | \ + ${SED} -e 's/ / */' > SHASUMS256.txt-${UPSTREAM_ELECTRON_VER}; \ + cd ${WRKDIR}/${ELECTRON_DOWNLOAD_CACHE_DIR} && \ + ${SHA256} -r *.zip | \ + ${SED} -e 's/ / */' > SHASUMS256.txt; \ + fi +. if defined(UPSTREAM_CHROMEDRIVER_VER) && !empty(UPSTREAM_CHROMEDRIVER_VER) + @if [ -d ${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR} ]; then \ + ${MKDIR} ${WRKDIR}/${CHROMEDRIVER_DOWNLOAD_CACHE_DIR}; \ + cd ${WRKDIR}/electron-dist && \ + zip -q -r ${WRKDIR}/${CHROMEDRIVER_DOWNLOAD_CACHE_DIR}/chromedriver-v${UPSTREAM_CHROMEDRIVER_VER}-freebsd-${ELECTRON_ARCH}.zip .; \ + cd ${WRKDIR}/${CHROMEDRIVER_DOWNLOAD_CACHE_DIR} && \ + ${SHA256} -r *.zip | \ + ${SED} -e 's/ / */' > SHASUMS256.txt-${UPSTREAM_CHROMEDRIVER_VER}; \ + cd ${WRKDIR}/${CHROMEDRIVER_DOWNLOAD_CACHE_DIR} && \ + ${SHA256} -r *.zip | \ + ${SED} -e 's/ / */' > SHASUMS256.txt; \ + fi +. endif +. if defined(UPSTREAM_MKSNAPSHOT_VER) && !empty(UPSTREAM_MKSNAPSHOT_VER) + @if [ -d ${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR} ]; then \ + ${MKDIR} ${WRKDIR}/${MKSNAPSHOT_DOWNLOAD_CACHE_DIR}; \ + cd ${WRKDIR}/electron-dist && \ + zip -q -r ${WRKDIR}/${MKSNAPSHOT_DOWNLOAD_CACHE_DIR}/mksnapshot-v${UPSTREAM_MKSNAPSHOT_VER}-freebsd-${ELECTRON_ARCH}.zip .; \ + cd ${WRKDIR}/${MKSNAPSHOT_DOWNLOAD_CACHE_DIR} && \ + ${SHA256} -r *.zip | \ + ${SED} -e 's/ / */' > SHASUMS256.txt-${UPSTREAM_MKSNAPSHOT_VER}; \ + cd ${WRKDIR}/${MKSNAPSHOT_DOWNLOAD_CACHE_DIR} && \ + ${SHA256} -r *.zip | \ + ${SED} -e 's/ / */' > SHASUMS256.txt; \ + fi +. endif + +# When rebuild feature is used, rebuilds native node modules against nodejs or +# electron. +. if defined(_ELECTRON_FEATURE_REBUILD) +_USES_build+= 291:electron-rebuild-native-node-modules-for-node \ + 490:electron-rebuild-native-node-modules-for-electron + +. if ${_NODEJS_NPM} == npm || ${_NODEJS_NPM} == yarn1 +BUILD_DEPENDS+= ${_NPM_PKGNAME}>0:${_NPM_PORTDIR} +. elif ${_NODEJS_NPM} == yarn2 || ${_NODEJS_NPM} == yarn4 || ${_NODEJS_NPM} == pnpm +BUILD_DEPENDS+= ${_NODEJS_PKGNAME}>0:${_NODEJS_PORT} +. endif +. if ${_NODEJS_NPM} == yarn1 +# jq is needed for detecting native node modules needing build +BUILD_DEPENDS+= ${JQ_CMD}:textproc/jq +# npm is needed for executing "npm rebuild" command +BUILD_DEPENDS+= npm${NODEJS_SUFFIX}>0:www/npm${NODEJS_SUFFIX} +. endif + +electron-rebuild-native-node-modules-for-node: +. if defined(_ELECTRON_FEATURE_REBUILD_NODEJS) && \ + ${_ELECTRON_FEATURE_REBUILD_NODEJS} == yes + @${ECHO_MSG} "===> Rebuilding native node modules for nodejs" +. if ${_NODEJS_NPM} == yarn1 + @cd ${NPM_REBUILD_WRKSRC_NODEJS} && \ + ${SETENV} ${MAKE_ENV} ${NODEJS_REBUILD_ENV} npm rebuild +. else + @cd ${NPM_REBUILD_WRKSRC_NODEJS} && \ + ${SETENV} ${MAKE_ENV} ${NODEJS_REBUILD_ENV} ${NPM_CMDNAME} rebuild +. endif +. else + @${DO_NADA} +. endif + +electron-rebuild-native-node-modules-for-electron: +. if defined(_ELECTRON_FEATURE_REBUILD_ELECTRON) && \ + ${_ELECTRON_FEATURE_REBUILD_ELECTRON} == yes +. if ${_NODEJS_NPM} == pnpm + @for dir in `${APP_BUILDER_CMD} node-dep-tree --dir ${NPM_REBUILD_WRKSRC_ELECTRON} | ${JQ_CMD} -r '.[] | { dir: .dir, name: .deps[].name } | .dir + "/" + .name'`; do \ + for subdir in `${FIND} $${dir} -type f -name binding.gyp -exec ${DIRNAME} {} ';' 2> /dev/null`; do \ + cd $${subdir} && \ + ${ECHO_MSG} "===> Rebuilding native node modules for electron in $${subdir}" && \ + ${SETENV} ${MAKE_ENV} ${ELECTRON_REBUILD_ENV} ${NPM_REBUILD_CMD} ${NPM_REBUILD_FLAGS}; \ + done \ + done +. else + @for dir in `${APP_BUILDER_CMD} node-dep-tree --dir ${NPM_REBUILD_WRKSRC_ELECTRON} | ${JQ_CMD} -r '.[] | { dir: .dir, name: .deps[].name } | .dir + "/" + .name'`; do \ + for subdir in `${FIND} $${dir} -type f -name binding.gyp -exec ${DIRNAME} {} ';' 2> /dev/null`; do \ + cd $${subdir} && \ + ${ECHO_MSG} "===> Rebuilding native node modules for electron in $${subdir}" && \ + ${SETENV} ${MAKE_ENV} ${ELECTRON_REBUILD_ENV} ${NPM_EXEC_CMD} ${NPM_EXEC_FLAGS} node-gyp rebuild; \ + done \ + done +. endif +. else + @${DO_NADA} +. endif +. endif # _ELECTRON_FEATURE_REBUILD + +_USES_build+= 499:clean-up-backup-files + +clean-up-backup-files: + @${ECHO_MSG} "===> Cleaning up backup files in ${WRKSRC}" + @${FIND} ${WRKSRC} -type f \( -name '*.bak' -o -name '*.orig' \) -delete + +# When build feature is used, prepares an electron application in a +# distributable format using the specified package builder. +. if defined(_ELECTRON_FEATURE_BUILD) +ELECTRON_MAKE_FLAGS?= + +. if ${_ELECTRON_FEATURE_BUILD} == builder +ELECTRON_MAKE_CMD?= ${NPM_EXEC_CMD} ${NPM_EXEC_FLAGS} electron-builder +ELECTRON_MAKE_FLAGS+= --linux \ + --dir \ + --publish never \ + --config.npmRebuild=false \ + --config.electronVersion=${ELECTRON_VER} \ + --config.electronDist=${WRKDIR}/electron-dist +DO_MAKE_BUILD= ${SETENV} ${MAKE_ENV} ${ELECTRON_MAKE_CMD} ${ELECTRON_MAKE_FLAGS} +ELECTRON_BUILDER_APP_OUT_DIR= linux-${ARCH:S/aarch64/arm64-/:S/amd64//:S/i386/ia32-/}unpacked +. elif ${_ELECTRON_FEATURE_BUILD} == packager +ELECTRON_MAKE_CMD?= ${NPM_EXEC_CMD} ${NPM_EXEC_FLAGS} electron-packager +ELECTRON_MAKE_FLAGS+= --platform=linux \ + --no-download \ + --electron-version=${ELECTRON_VER} \ + --electron-zip-dir=${WRKDIR}/${ELECTRON_DOWNLOAD_CACHE_DIR} \ + --prune \ + --overwrite +DO_MAKE_BUILD= ${SETENV} ${MAKE_ENV} ${ELECTRON_MAKE_CMD} . ${ELECTRON_MAKE_FLAGS} +. elif ${_ELECTRON_FEATURE_BUILD} == forge +ELECTRON_MAKE_CMD?= ${NPM_EXEC_CMD} ${NPM_EXEC_FLAGS} electron-forge package +ELECTRON_MAKE_FLAGS+= --platform=linux +DO_MAKE_BUILD= ${SETENV} ${MAKE_ENV} ${ELECTRON_MAKE_CMD} ${ELECTRON_MAKE_FLAGS} +. endif +. if ${_NODEJS_NPM} == npm || ${_NODEJS_NPM} == yarn1 +ELECTRON_MAKE_CMD+= -- +. endif +ALL_TARGET= # empty +. endif + +NODEJS_REBUILD_ENV+= npm_config_nodedir=${LOCALBASE} +ELECTRON_REBUILD_ENV+= npm_config_runtime=electron +ELECTRON_REBUILD_ENV+= npm_config_target=${ELECTRON_VER} +ELECTRON_REBUILD_ENV+= npm_config_nodedir=${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR}/node_headers + +MAKE_ENV+= ELECTRON_OVERRIDE_DIST_PATH=${WRKDIR}/electron-dist +MAKE_ENV+= ELECTRON_SKIP_BINARY_DOWNLOAD=1 # don't download electron binary distribution +MAKE_ENV+= PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 # don't download browser for playwright +MAKE_ENV+= PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 # don't download chromium for puppeteer +MAKE_ENV+= SASS_FORCE_BUILD=true # always rebuild native node-sass module +MAKE_ENV+= USE_SYSTEM_APP_BUILDER=true # always use system app-builder for electron-builder +MAKE_ENV+= npm_config_build_from_source=true +SUB_LIST+= ELECTRON_VER_MAJOR=${ELECTRON_VER_MAJOR} + +.endif # _INCLUDE_USES_ELECTRON_MK diff --git a/audio/mpg123/Makefile b/audio/mpg123/Makefile index b2ba8a16ec17..20b1de48d8f1 100644 --- a/audio/mpg123/Makefile +++ b/audio/mpg123/Makefile @@ -1,5 +1,5 @@ PORTNAME= mpg123 -DISTVERSION= 1.33.3 +DISTVERSION= 1.33.4 CATEGORIES= audio MASTER_SITES= SF \ https://www.mpg123.de/download/ diff --git a/audio/mpg123/distinfo b/audio/mpg123/distinfo index 44064d06164c..9694f7f05ef3 100644 --- a/audio/mpg123/distinfo +++ b/audio/mpg123/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1759912072 -SHA256 (mpg123-1.33.3.tar.bz2) = 6a0c6472dd156e213c2068f40115ebbb73978c2d873e66bae2a250e2d2198d26 -SIZE (mpg123-1.33.3.tar.bz2) = 1121537 +TIMESTAMP = 1766297989 +SHA256 (mpg123-1.33.4.tar.bz2) = 3ae8c9ff80a97bfc0e22e89fbcd74687eca4fc1db315b12607f27f01cb5a47d9 +SIZE (mpg123-1.33.4.tar.bz2) = 1122088 diff --git a/cad/kicad-devel/Makefile b/cad/kicad-devel/Makefile index 243b475f5d0b..8c9cad0e5809 100644 --- a/cad/kicad-devel/Makefile +++ b/cad/kicad-devel/Makefile @@ -1,5 +1,6 @@ PORTNAME= kicad DISTVERSION= r${GIT_SRC_DATE} +PORTREVISION= 1 #PORTREVISION= 1 CATEGORIES= cad PKGNAMESUFFIX= -devel diff --git a/cad/kicad/Makefile b/cad/kicad/Makefile index f3e3678be54f..741dfc158596 100644 --- a/cad/kicad/Makefile +++ b/cad/kicad/Makefile @@ -1,6 +1,6 @@ PORTNAME= kicad DISTVERSION= 9.0.6 -PORTREVISION= 1 +PORTREVISION= 2 PORTEPOCH= 2 CATEGORIES= cad diff --git a/comms/chirp/Makefile b/comms/chirp/Makefile index 63e22a56b6f8..257c17b458a7 100644 --- a/comms/chirp/Makefile +++ b/comms/chirp/Makefile @@ -1,5 +1,6 @@ PORTNAME= chirp DISTVERSION= 20251106 +PORTREVISION= 1 CATEGORIES= comms hamradio PKGNAMESUFFIX= ${PYTHON_PKGNAMESUFFIX} DIST_SUBDIR= chirp diff --git a/comms/quisk/Makefile b/comms/quisk/Makefile index 17256d3771a9..d5522a7793a8 100644 --- a/comms/quisk/Makefile +++ b/comms/quisk/Makefile @@ -1,6 +1,6 @@ PORTNAME= quisk DISTVERSION= 4.2.36 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= comms hamradio MASTER_SITES= PYPI diff --git a/databases/grass8/Makefile b/databases/grass8/Makefile index 75b146aad364..17c46b0f6d7a 100644 --- a/databases/grass8/Makefile +++ b/databases/grass8/Makefile @@ -1,6 +1,6 @@ PORTNAME= grass DISTVERSION= 8.4.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= databases geography MASTER_SITES= https://grass.osgeo.org/%SUBDIR%/ \ http://grass.cict.fr/%SUBDIR%/ \ diff --git a/devel/qt6-base/Makefile b/devel/qt6-base/Makefile index 1f270aa9ad4b..3520f858266b 100644 --- a/devel/qt6-base/Makefile +++ b/devel/qt6-base/Makefile @@ -1,5 +1,6 @@ PORTNAME= base DISTVERSION= ${QT6_VERSION} +PORTREVISION= 1 CATEGORIES= devel PKGNAMEPREFIX= qt6- @@ -70,7 +71,8 @@ CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_CMAKE_BOOL= FEATURE_cups WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland -WAYLAND_CMAKE_BOOL= FEATURE_wayland +WAYLAND_CMAKE_BOOL= FEATURE_qtwaylandscanner \ + FEATURE_wayland X11_LIB_DEPENDS= libxcb-cursor.so:x11/xcb-util-cursor \ libxcb-icccm.so:x11/xcb-util-wm \ diff --git a/devel/qt6-base/pkg-plist b/devel/qt6-base/pkg-plist index c4360460bfdb..962c4b4e675d 100644 --- a/devel/qt6-base/pkg-plist +++ b/devel/qt6-base/pkg-plist @@ -3419,16 +3419,16 @@ lib/cmake/Qt6TestPrivate/Qt6TestPrivateVersionlessTargets.cmake %%WAYLAND%%lib/cmake/Qt6WaylandGlobalPrivate/Qt6WaylandGlobalPrivateTargets.cmake %%WAYLAND%%lib/cmake/Qt6WaylandGlobalPrivate/Qt6WaylandGlobalPrivateVersionlessAliasTargets.cmake %%WAYLAND%%lib/cmake/Qt6WaylandGlobalPrivate/Qt6WaylandGlobalPrivateVersionlessTargets.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandClientMacros.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandCompositorMacros.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsAdditionalTargetInfo.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsConfig.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsConfigVersion.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsConfigVersionImpl.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsDependencies.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsTargets-%%CMAKE_BUILD_TYPE%%.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsTargets.cmake -lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsVersionlessTargets.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandClientMacros.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandCompositorMacros.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsAdditionalTargetInfo.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsConfig.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsConfigVersion.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsConfigVersionImpl.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsDependencies.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsTargets-%%CMAKE_BUILD_TYPE%%.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsTargets.cmake +%%WAYLAND%%lib/cmake/Qt6WaylandScannerTools/Qt6WaylandScannerToolsVersionlessTargets.cmake lib/cmake/Qt6Widgets/Qt6WidgetsAdditionalTargetInfo.cmake lib/cmake/Qt6Widgets/Qt6WidgetsConfig.cmake lib/cmake/Qt6Widgets/Qt6WidgetsConfigVersion.cmake @@ -4137,7 +4137,7 @@ libdata/pkgconfig/Qt6Xml.pc %%QT_TOOLDIR%%/qt-internal-configure-tests %%QT_TOOLDIR%%/qt-testrunner.py %%QT_TOOLDIR%%/qvkgen -%%QT_TOOLDIR%%/qtwaylandscanner +%%WAYLAND%%%%QT_TOOLDIR%%/qtwaylandscanner %%QT_TOOLDIR%%/rcc %%QT_TOOLDIR%%/sanitizer-testrunner.py %%QT_TOOLDIR%%/syncqt diff --git a/editors/vscode/Makefile.version b/editors/vscode/Makefile.version index 57026b24956e..121e47fe5551 100644 --- a/editors/vscode/Makefile.version +++ b/editors/vscode/Makefile.version @@ -1,2 +1,2 @@ -VSCODE_VERSION= 1.107.0 -SOURCE_COMMIT_HASH= 302ff6a2e235c95b88e587d4a4b6eeb1b6613297 +VSCODE_VERSION= 1.107.1 +SOURCE_COMMIT_HASH= 994fd12f8d3a5aa16f17d42c041e5809167e845a diff --git a/editors/vscode/distinfo b/editors/vscode/distinfo index 5bc95718674c..aabacb98c484 100644 --- a/editors/vscode/distinfo +++ b/editors/vscode/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1765693727 -SHA256 (vscode/vscode-node-modules-1.107.0.tar.gz) = 2540f57eab612c3f8d773fa2ddd3634f55916d89e9f26385b21e25663b6e141a -SIZE (vscode/vscode-node-modules-1.107.0.tar.gz) = 467359399 -SHA256 (vscode/vscode-marketplace-exts-1.107.0.tar.gz) = 8b50dde24b1ced293323bb81900da5645dee952866dad8af6247cde6abee784b -SIZE (vscode/vscode-marketplace-exts-1.107.0.tar.gz) = 1711786 -SHA256 (vscode/microsoft-vscode-1.107.0_GH0.tar.gz) = 6233b61cb7b5f62eca82de2d2c6c960eaec4bccbdc27ed00076eb34dd27939e4 -SIZE (vscode/microsoft-vscode-1.107.0_GH0.tar.gz) = 24211409 +TIMESTAMP = 1766179261 +SHA256 (vscode/vscode-node-modules-1.107.1.tar.gz) = e9e393fdfa331362ce63664ffbd278a6951a8d0d5691bf7e2206c21599841e54 +SIZE (vscode/vscode-node-modules-1.107.1.tar.gz) = 467213984 +SHA256 (vscode/vscode-marketplace-exts-1.107.1.tar.gz) = 1c969e8c5d2ef824564888cc425387d585dc0a2926071d4d1d0a5bf425fbdff5 +SIZE (vscode/vscode-marketplace-exts-1.107.1.tar.gz) = 1702815 +SHA256 (vscode/microsoft-vscode-1.107.1_GH0.tar.gz) = 695707e9a46ce79fc03faece47db443ff940df0e59c5094562a0b9e0610caea2 +SIZE (vscode/microsoft-vscode-1.107.1_GH0.tar.gz) = 24211873 diff --git a/emulators/playonbsd/Makefile b/emulators/playonbsd/Makefile index 260b492a8331..59c9ca98ac61 100644 --- a/emulators/playonbsd/Makefile +++ b/emulators/playonbsd/Makefile @@ -1,6 +1,6 @@ PORTNAME= playonbsd PORTVERSION= 4.2.10 -PORTREVISION= 16 +PORTREVISION= 17 CATEGORIES= emulators games MAINTAINER= Clockwork6400@protonmail.com diff --git a/finance/homebank/Makefile b/finance/homebank/Makefile index cd6441ca67b0..d5a8ab99baa3 100644 --- a/finance/homebank/Makefile +++ b/finance/homebank/Makefile @@ -1,5 +1,5 @@ PORTNAME= homebank -PORTVERSION= 5.8.6 +PORTVERSION= 5.9.6 CATEGORIES= finance MASTER_SITES= https://www.gethomebank.org/public/sources/ diff --git a/finance/homebank/distinfo b/finance/homebank/distinfo index 6141cc5c8489..829cceebedf1 100644 --- a/finance/homebank/distinfo +++ b/finance/homebank/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1736216842 -SHA256 (homebank-5.8.6.tar.gz) = af138a7bf2cd795c1338c5e3d9e99909ee6b33d920c618dc35c6477fd826ddf5 -SIZE (homebank-5.8.6.tar.gz) = 3780388 +TIMESTAMP = 1766298583 +SHA256 (homebank-5.9.6.tar.gz) = f0320bfe04f2b18fded4372eb89e6a63abd7501638b9458da12cd468243eb77a +SIZE (homebank-5.9.6.tar.gz) = 4039965 diff --git a/finance/homebank/pkg-plist b/finance/homebank/pkg-plist index eb392a513039..f58a88078e45 100644 --- a/finance/homebank/pkg-plist +++ b/finance/homebank/pkg-plist @@ -1,71 +1,6 @@ bin/homebank -share/metainfo/homebank.appdata.xml share/application-registry/homebank.applications share/applications/homebank.desktop -share/icons/hicolor/16x16/apps/homebank.png -share/icons/hicolor/22x22/apps/homebank.png -share/icons/hicolor/24x24/apps/homebank.png -share/icons/hicolor/256x256/apps/homebank.png -share/icons/hicolor/32x32/apps/homebank.png -share/icons/hicolor/48x48/apps/homebank.png -share/locale/af/LC_MESSAGES/homebank.mo -share/locale/ar/LC_MESSAGES/homebank.mo -share/locale/be/LC_MESSAGES/homebank.mo -share/locale/bg/LC_MESSAGES/homebank.mo -share/locale/br/LC_MESSAGES/homebank.mo -share/locale/ca/LC_MESSAGES/homebank.mo -share/locale/ckb/LC_MESSAGES/homebank.mo -share/locale/cs/LC_MESSAGES/homebank.mo -share/locale/cy/LC_MESSAGES/homebank.mo -share/locale/da/LC_MESSAGES/homebank.mo -share/locale/de/LC_MESSAGES/homebank.mo -share/locale/el/LC_MESSAGES/homebank.mo -share/locale/en_AU/LC_MESSAGES/homebank.mo -share/locale/en_CA/LC_MESSAGES/homebank.mo -share/locale/en_GB/LC_MESSAGES/homebank.mo -share/locale/es/LC_MESSAGES/homebank.mo -share/locale/et/LC_MESSAGES/homebank.mo -share/locale/eu/LC_MESSAGES/homebank.mo -share/locale/fa/LC_MESSAGES/homebank.mo -share/locale/fi/LC_MESSAGES/homebank.mo -share/locale/fr/LC_MESSAGES/homebank.mo -share/locale/fr_CA/LC_MESSAGES/homebank.mo -share/locale/gl/LC_MESSAGES/homebank.mo -share/locale/he/LC_MESSAGES/homebank.mo -share/locale/hr/LC_MESSAGES/homebank.mo -share/locale/hu/LC_MESSAGES/homebank.mo -share/locale/id/LC_MESSAGES/homebank.mo -share/locale/is/LC_MESSAGES/homebank.mo -share/locale/it/LC_MESSAGES/homebank.mo -share/locale/ja/LC_MESSAGES/homebank.mo -share/locale/ko/LC_MESSAGES/homebank.mo -share/locale/lt/LC_MESSAGES/homebank.mo -share/locale/lv/LC_MESSAGES/homebank.mo -share/locale/ms/LC_MESSAGES/homebank.mo -share/locale/nb/LC_MESSAGES/homebank.mo -share/locale/nds/LC_MESSAGES/homebank.mo -share/locale/nl/LC_MESSAGES/homebank.mo -share/locale/oc/LC_MESSAGES/homebank.mo -share/locale/pl/LC_MESSAGES/homebank.mo -share/locale/pt_BR/LC_MESSAGES/homebank.mo -share/locale/pt/LC_MESSAGES/homebank.mo -share/locale/pt_PT/LC_MESSAGES/homebank.mo -share/locale/ro/LC_MESSAGES/homebank.mo -share/locale/ru/LC_MESSAGES/homebank.mo -share/locale/si/LC_MESSAGES/homebank.mo -share/locale/sl/LC_MESSAGES/homebank.mo -share/locale/sq/LC_MESSAGES/homebank.mo -share/locale/sr/LC_MESSAGES/homebank.mo -share/locale/sv/LC_MESSAGES/homebank.mo -share/locale/ta/LC_MESSAGES/homebank.mo -share/locale/tr/LC_MESSAGES/homebank.mo -share/locale/uk/LC_MESSAGES/homebank.mo -share/locale/vi/LC_MESSAGES/homebank.mo -share/locale/zh_CN/LC_MESSAGES/homebank.mo -share/locale/zh_TW/LC_MESSAGES/homebank.mo -share/mime-info/homebank.keys -share/mime-info/homebank.mime -share/mime/packages/homebank.xml %%DATADIR%%/datas/ChangeLog %%DATADIR%%/datas/example.xhb %%DATADIR%%/datas/hb-categories-cy.csv @@ -80,11 +15,12 @@ share/mime/packages/homebank.xml %%DATADIR%%/datas/hb-categories-pt.csv %%DATADIR%%/datas/hb-categories-ro.csv %%DATADIR%%/datas/hb-categories-ru.csv +%%DATADIR%%/datas/hb-categories-se.csv %%DATADIR%%/datas/hb-categories-sk.csv %%DATADIR%%/help/00-intro.html %%DATADIR%%/help/00-lexicon.html -%%DATADIR%%/help/00-previously.html %%DATADIR%%/help/00-notenglish.html +%%DATADIR%%/help/00-previously.html %%DATADIR%%/help/00-whatsnew.html %%DATADIR%%/help/dlg-acco.html %%DATADIR%%/help/dlg-arch.html @@ -104,17 +40,18 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/frm-main.html %%DATADIR%%/help/frm-navig.html %%DATADIR%%/help/help.css -%%DATADIR%%/help/images/10.png %%DATADIR%%/help/images/1.png +%%DATADIR%%/help/images/10.png %%DATADIR%%/help/images/2.png %%DATADIR%%/help/images/3.png +%%DATADIR%%/help/images/4.png %%DATADIR%%/help/images/45accfilter.png %%DATADIR%%/help/images/45topsending.png %%DATADIR%%/help/images/45txnsplit.png %%DATADIR%%/help/images/46fiscyear.png %%DATADIR%%/help/images/46schedwe.png %%DATADIR%%/help/images/46search.png -%%DATADIR%%/help/images/4.png +%%DATADIR%%/help/images/5.png %%DATADIR%%/help/images/50stackbudget.png %%DATADIR%%/help/images/50txnstatus.png %%DATADIR%%/help/images/53txntype.png @@ -130,13 +67,16 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/images/58flags.png %%DATADIR%%/help/images/58lifeenergy.png %%DATADIR%%/help/images/58tipfilters.png -%%DATADIR%%/help/images/5.png +%%DATADIR%%/help/images/59inlinecalc.png +%%DATADIR%%/help/images/59newicons.png +%%DATADIR%%/help/images/59sched.png %%DATADIR%%/help/images/6.png %%DATADIR%%/help/images/7.png %%DATADIR%%/help/images/8.png %%DATADIR%%/help/images/9.png %%DATADIR%%/help/images/arrow.png %%DATADIR%%/help/images/d-info.png +%%DATADIR%%/help/images/d-warn.png %%DATADIR%%/help/images/dlg-account1.png %%DATADIR%%/help/images/dlg-account2.png %%DATADIR%%/help/images/dlg-account3.png @@ -156,29 +96,34 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/images/dlg-filter6.png %%DATADIR%%/help/images/dlg-payee1.png %%DATADIR%%/help/images/dlg-payee2.png +%%DATADIR%%/help/images/dlg-prefs0.png %%DATADIR%%/help/images/dlg-prefs1.png %%DATADIR%%/help/images/dlg-prefs2.png +%%DATADIR%%/help/images/dlg-prefs2a.png +%%DATADIR%%/help/images/dlg-prefs2b.png %%DATADIR%%/help/images/dlg-prefs3.png %%DATADIR%%/help/images/dlg-prefs4.png -%%DATADIR%%/help/images/dlg-prefs5.png +%%DATADIR%%/help/images/dlg-prefs4a.png +%%DATADIR%%/help/images/dlg-prefs4b.png +%%DATADIR%%/help/images/dlg-prefs4c.png %%DATADIR%%/help/images/dlg-prefs6.png %%DATADIR%%/help/images/dlg-prefs7.png %%DATADIR%%/help/images/dlg-prefs8.png %%DATADIR%%/help/images/dlg-prefs9.png %%DATADIR%%/help/images/dlg-prefsA.png %%DATADIR%%/help/images/dlg-prefsB.png -%%DATADIR%%/help/images/dlg-prefsF.png +%%DATADIR%%/help/images/dlg-prefsC.png %%DATADIR%%/help/images/dlg-properties1.png %%DATADIR%%/help/images/dlg-split1.png %%DATADIR%%/help/images/dlg-tag.png %%DATADIR%%/help/images/dlg-template1.png +%%DATADIR%%/help/images/dlg-template2.png %%DATADIR%%/help/images/dlg-transaction1.png %%DATADIR%%/help/images/dlg-transaction2.png %%DATADIR%%/help/images/dlg-txnmultiple.png %%DATADIR%%/help/images/dlg-xferselection.png %%DATADIR%%/help/images/doc_balance.png %%DATADIR%%/help/images/doc_title.png -%%DATADIR%%/help/images/d-warn.png %%DATADIR%%/help/images/g_translate.png %%DATADIR%%/help/images/hb-ope-auto.png %%DATADIR%%/help/images/hb-ope-budget.png @@ -211,7 +156,6 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/images/pm-transfer.png %%DATADIR%%/help/images/tip-accorder.png %%DATADIR%%/help/images/tip-listsearch.png -%%DATADIR%%/help/images/use-assignment1.png %%DATADIR%%/help/images/use-assignment2b.png %%DATADIR%%/help/images/use-budget1.png %%DATADIR%%/help/images/use-budget2.png @@ -221,7 +165,6 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/images/use-import3a.png %%DATADIR%%/help/images/use-import3b.png %%DATADIR%%/help/images/use-import4.png -%%DATADIR%%/help/images/use-scheduled1.png %%DATADIR%%/help/images/use-scheduled2.png %%DATADIR%%/help/images/use-scheduled3.png %%DATADIR%%/help/images/use-vehiclecost1.png @@ -235,15 +178,9 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/images/win-budget2.png %%DATADIR%%/help/images/win-carcost1.png %%DATADIR%%/help/images/win-main.png -%%DATADIR%%/help/images/win-main1.png -%%DATADIR%%/help/images/win-main2.png -%%DATADIR%%/help/images/win-main3.png -%%DATADIR%%/help/images/win-main4.png -%%DATADIR%%/help/images/win-main5.png %%DATADIR%%/help/images/win-statistics1.png %%DATADIR%%/help/images/win-statistics2.png %%DATADIR%%/help/images/win-statistics3.png -%%DATADIR%%/help/images/win-statistics4.png %%DATADIR%%/help/images/win-trendtime1.png %%DATADIR%%/help/images/win-trendtime2.png %%DATADIR%%/help/index.html @@ -255,8 +192,8 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/use-budget.html %%DATADIR%%/help/use-favfilters.html %%DATADIR%%/help/use-import.html -%%DATADIR%%/help/use-loan-mortgage.html %%DATADIR%%/help/use-lend-refund.html +%%DATADIR%%/help/use-loan-mortgage.html %%DATADIR%%/help/use-reconcile.html %%DATADIR%%/help/use-tipsandtricks.html %%DATADIR%%/help/use-vehiclecost.html @@ -267,13 +204,111 @@ share/mime/packages/homebank.xml %%DATADIR%%/help/win-statistics.html %%DATADIR%%/help/win-trendtime.html %%DATADIR%%/help/win-vehiclecost.html -%%DATADIR%%/icons/hicolor/scalable/actions/data-usage-symbolic.svg -%%DATADIR%%/icons/hicolor/scalable/actions/eye-not-looking-symbolic.svg -%%DATADIR%%/icons/hicolor/scalable/actions/hb-go-down-symbolic.svg -%%DATADIR%%/icons/hicolor/scalable/actions/hb-go-up-symbolic.svg -%%DATADIR%%/icons/hicolor/scalable/actions/list-move-after-symbolic.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-account.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-archive.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-assign.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-budget.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-category.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-clear.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-document-new.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-document-open.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-document-print.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-document-save.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-donate.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-file-export.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-file-import.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-filter.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-go-down.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-go-up.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-help.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-legend.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-life-energy.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-add.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-cleared.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-delete.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-edit.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-future.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-herit.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-multiedit.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-reconciled.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-ope-show.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-payee.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-rate.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-rep-balance.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-rep-budget.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-rep-stats.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-rep-time.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-rep-vehicle.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-bar.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-column.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-donut.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-line.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-list.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-pie.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-progress.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-refresh.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-stack.svg +%%DATADIR%%/icons/Default/scalable/actions/hb-view-stack100.svg +%%DATADIR%%/icons/Default/scalable/status/hb-changes-allow.svg +%%DATADIR%%/icons/Default/scalable/status/hb-changes-prevent.svg +%%DATADIR%%/icons/Default/scalable/status/hb-file-invalid.svg +%%DATADIR%%/icons/Default/scalable/status/hb-file-valid.svg +%%DATADIR%%/icons/Default/scalable/status/hb-gf-blue.svg +%%DATADIR%%/icons/Default/scalable/status/hb-gf-green.svg +%%DATADIR%%/icons/Default/scalable/status/hb-gf-none.svg +%%DATADIR%%/icons/Default/scalable/status/hb-gf-orange.svg +%%DATADIR%%/icons/Default/scalable/status/hb-gf-purple.svg +%%DATADIR%%/icons/Default/scalable/status/hb-gf-red.svg +%%DATADIR%%/icons/Default/scalable/status/hb-gf-yellow.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-added.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-auto.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-budget.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-clear.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-closed.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-edited.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-forced.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-future.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-import.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-pending.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-recon.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-reconlock.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-remind.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-similar.svg +%%DATADIR%%/icons/Default/scalable/status/hb-item-void.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-cash.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-ccard.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-check.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-dcard.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-deposit.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-directdebit.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-epayment.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-fifee.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-intransfer.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-mobphone.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-none.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-standingorder.svg +%%DATADIR%%/icons/Default/scalable/status/hb-pm-transfer.svg +%%DATADIR%%/icons/Default/scalable/status/hb-quicktips.svg +%%DATADIR%%/icons/Default/scalable/status/prf-advanced.svg +%%DATADIR%%/icons/Default/scalable/status/prf-backup.svg +%%DATADIR%%/icons/Default/scalable/status/prf-euro.svg +%%DATADIR%%/icons/Default/scalable/status/prf-folder.svg +%%DATADIR%%/icons/Default/scalable/status/prf-forecast.svg +%%DATADIR%%/icons/Default/scalable/status/prf-general.svg +%%DATADIR%%/icons/Default/scalable/status/prf-import.svg +%%DATADIR%%/icons/Default/scalable/status/prf-interface-color.svg +%%DATADIR%%/icons/Default/scalable/status/prf-interface-theme.svg +%%DATADIR%%/icons/Default/scalable/status/prf-interface.svg +%%DATADIR%%/icons/Default/scalable/status/prf-locale.svg +%%DATADIR%%/icons/Default/scalable/status/prf-report.svg +%%DATADIR%%/icons/Default/scalable/status/prf-transaction-dialog.svg +%%DATADIR%%/icons/Default/scalable/status/prf-transaction-payment.svg +%%DATADIR%%/icons/Default/scalable/status/prf-transaction-transfer.svg +%%DATADIR%%/icons/Default/scalable/status/prf-transaction.svg %%DATADIR%%/icons/hicolor/16x16/status/hb-changes-allow.png %%DATADIR%%/icons/hicolor/16x16/status/hb-changes-prevent.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-file-invalid.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-file-valid.png %%DATADIR%%/icons/hicolor/16x16/status/hb-gf-blue.png %%DATADIR%%/icons/hicolor/16x16/status/hb-gf-green.png %%DATADIR%%/icons/hicolor/16x16/status/hb-gf-none.png @@ -281,66 +316,64 @@ share/mime/packages/homebank.xml %%DATADIR%%/icons/hicolor/16x16/status/hb-gf-purple.png %%DATADIR%%/icons/hicolor/16x16/status/hb-gf-red.png %%DATADIR%%/icons/hicolor/16x16/status/hb-gf-yellow.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-auto.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-budget.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-cleared.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-edit.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-forced.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-future.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-new.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-prefilled.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-reconciled.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-remind.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-similar.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-ope-void.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-added.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-auto.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-budget.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-clear.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-closed.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-edited.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-forced.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-future.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-import.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-pending.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-recon.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-reconlock.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-remind.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-similar.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-item-void.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-cash.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-ccard.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-check.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-dcard.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-deposit.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-directdebit.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-epayment.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-fifee.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-intransfer.png %%DATADIR%%/icons/hicolor/16x16/status/hb-pm-mobphone.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-none.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-standingorder.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-transfer.png +%%DATADIR%%/icons/hicolor/16x16/status/hb-quicktips.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-account.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-archive.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-assign.png -%%DATADIR%%/icons/hicolor/24x24/actions/hb-assign-run.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-budget.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-category.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-clear.png -%%DATADIR%%/icons/hicolor/24x24/actions/hb-currency.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-document-new.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-document-open.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-document-print.png -%%DATADIR%%/icons/hicolor/24x24/actions/hb-document-save-as.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-document-save.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-donate.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-file-export.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-file-import.png -%%DATADIR%%/icons/hicolor/24x24/actions/hb-file-invalid.png -%%DATADIR%%/icons/hicolor/24x24/actions/hb-file-valid.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-filter.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-go-down.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-go-up.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-help.png -%%DATADIR%%/icons/hicolor/24x24/actions/hb-life-energy.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-legend.png +%%DATADIR%%/icons/hicolor/24x24/actions/hb-life-energy.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-add.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-cleared.png -%%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-convert.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-delete.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-edit.png +%%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-future.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-herit.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-multiedit.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-reconciled.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-ope-show.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-payee.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-cash.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-ccard.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-check.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-dcard.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-deposit.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-directdebit.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-epayment.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-fifee.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-intransfer.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-none.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-standingorder.png -%%DATADIR%%/icons/hicolor/16x16/status/hb-pm-transfer.png -%%DATADIR%%/icons/hicolor/48x48/status/prf-advanced.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-rate.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-rep-balance.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-rep-budget.png @@ -357,25 +390,193 @@ share/mime/packages/homebank.xml %%DATADIR%%/icons/hicolor/24x24/actions/hb-view-refresh.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-view-stack.png %%DATADIR%%/icons/hicolor/24x24/actions/hb-view-stack100.png +%%DATADIR%%/icons/hicolor/48x48/status/prf-advanced.png %%DATADIR%%/icons/hicolor/48x48/status/prf-backup.png -%%DATADIR%%/icons/hicolor/48x48/status/prf-columns.png %%DATADIR%%/icons/hicolor/48x48/status/prf-euro.png %%DATADIR%%/icons/hicolor/48x48/status/prf-folder.png %%DATADIR%%/icons/hicolor/48x48/status/prf-forecast.png %%DATADIR%%/icons/hicolor/48x48/status/prf-general.png %%DATADIR%%/icons/hicolor/48x48/status/prf-import.png +%%DATADIR%%/icons/hicolor/48x48/status/prf-interface-color.png +%%DATADIR%%/icons/hicolor/48x48/status/prf-interface-theme.png %%DATADIR%%/icons/hicolor/48x48/status/prf-interface.png %%DATADIR%%/icons/hicolor/48x48/status/prf-locale.png -%%DATADIR%%/icons/hicolor/48x48/status/prf-payment.png %%DATADIR%%/icons/hicolor/48x48/status/prf-report.png +%%DATADIR%%/icons/hicolor/48x48/status/prf-transaction-dialog.png +%%DATADIR%%/icons/hicolor/48x48/status/prf-transaction-payment.png +%%DATADIR%%/icons/hicolor/48x48/status/prf-transaction-transfer.png +%%DATADIR%%/icons/hicolor/48x48/status/prf-transaction.png +%%DATADIR%%/icons/hicolor/scalable/actions/data-usage-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/edit-split-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/emblem-system-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/eye-not-looking-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-account-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-archive-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-assign-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-budget-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-category-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-clear-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-document-new-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-document-open-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-document-print-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-document-save-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-donate-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-file-export-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-file-import-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-filter-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-go-down-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-go-up-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-help-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-legend-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-life-energy-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-add-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-cleared-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-delete-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-edit-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-future-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-herit-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-multiedit-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-reconciled-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-ope-show-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-payee-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-rate-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-rep-balance-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-rep-budget-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-rep-stats-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-rep-time-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-rep-vehicle-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-bar-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-column-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-donut-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-line-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-list-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-pie-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-progress-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-refresh-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-stack-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/hb-view-stack100-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/list-collapse-all-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/list-duplicate-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/list-expand-all-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/list-merge-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/list-move-after-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/open-in-browser-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/actions/open-menu-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/text-casesensitive-symbolic.svg %%DATADIR%%/icons/hicolor/scalable/actions/text-regularexpression-symbolic.svg -%%DATADIR%%/icons/hicolor/scalable/actions/toggle-sign-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-changes-allow-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-changes-prevent-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-file-invalid-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-file-valid-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-added-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-auto-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-budget-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-clear-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-closed-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-edited-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-forced-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-future-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-import-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-pending-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-recon-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-reconlock-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-remind-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-similar-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-item-void-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-cash-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-ccard-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-check-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-dcard-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-deposit-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-directdebit-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-epayment-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-fifee-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-intransfer-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-mobphone-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-none-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-standingorder-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-pm-transfer-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/hb-quicktips-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-advanced-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-backup-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-euro-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-folder-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-forecast-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-general-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-import-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-interface-color-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-interface-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-interface-theme-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-locale-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-report-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-transaction-dialog-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-transaction-payment-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-transaction-symbolic.svg +%%DATADIR%%/icons/hicolor/scalable/status/prf-transaction-transfer-symbolic.svg %%DATADIR%%/images/homebank-icon.svg %%DATADIR%%/images/splash.png +share/icons/hicolor/16x16/apps/homebank.png +share/icons/hicolor/22x22/apps/homebank.png +share/icons/hicolor/24x24/apps/homebank.png +share/icons/hicolor/256x256/apps/homebank.png +share/icons/hicolor/32x32/apps/homebank.png +share/icons/hicolor/48x48/apps/homebank.png +share/locale/af/LC_MESSAGES/homebank.mo +share/locale/ar/LC_MESSAGES/homebank.mo +share/locale/be/LC_MESSAGES/homebank.mo +share/locale/bg/LC_MESSAGES/homebank.mo +share/locale/br/LC_MESSAGES/homebank.mo +share/locale/ca/LC_MESSAGES/homebank.mo +share/locale/ckb/LC_MESSAGES/homebank.mo +share/locale/cs/LC_MESSAGES/homebank.mo +share/locale/cy/LC_MESSAGES/homebank.mo +share/locale/da/LC_MESSAGES/homebank.mo +share/locale/de/LC_MESSAGES/homebank.mo +share/locale/el/LC_MESSAGES/homebank.mo +share/locale/en_AU/LC_MESSAGES/homebank.mo +share/locale/en_CA/LC_MESSAGES/homebank.mo +share/locale/en_GB/LC_MESSAGES/homebank.mo +share/locale/es/LC_MESSAGES/homebank.mo +share/locale/et/LC_MESSAGES/homebank.mo +share/locale/eu/LC_MESSAGES/homebank.mo +share/locale/fa/LC_MESSAGES/homebank.mo +share/locale/fi/LC_MESSAGES/homebank.mo +share/locale/fr/LC_MESSAGES/homebank.mo +share/locale/fr_CA/LC_MESSAGES/homebank.mo +share/locale/gl/LC_MESSAGES/homebank.mo +share/locale/he/LC_MESSAGES/homebank.mo +share/locale/hr/LC_MESSAGES/homebank.mo +share/locale/hu/LC_MESSAGES/homebank.mo +share/locale/id/LC_MESSAGES/homebank.mo +share/locale/is/LC_MESSAGES/homebank.mo +share/locale/it/LC_MESSAGES/homebank.mo +share/locale/ja/LC_MESSAGES/homebank.mo +share/locale/ko/LC_MESSAGES/homebank.mo +share/locale/lt/LC_MESSAGES/homebank.mo +share/locale/lv/LC_MESSAGES/homebank.mo +share/locale/ms/LC_MESSAGES/homebank.mo +share/locale/nb/LC_MESSAGES/homebank.mo +share/locale/nds/LC_MESSAGES/homebank.mo +share/locale/nl/LC_MESSAGES/homebank.mo +share/locale/oc/LC_MESSAGES/homebank.mo +share/locale/pl/LC_MESSAGES/homebank.mo +share/locale/pt/LC_MESSAGES/homebank.mo +share/locale/pt_BR/LC_MESSAGES/homebank.mo +share/locale/pt_PT/LC_MESSAGES/homebank.mo +share/locale/ro/LC_MESSAGES/homebank.mo +share/locale/ru/LC_MESSAGES/homebank.mo +share/locale/si/LC_MESSAGES/homebank.mo +share/locale/sl/LC_MESSAGES/homebank.mo +share/locale/sq/LC_MESSAGES/homebank.mo +share/locale/sr/LC_MESSAGES/homebank.mo +share/locale/sv/LC_MESSAGES/homebank.mo +share/locale/ta/LC_MESSAGES/homebank.mo +share/locale/tr/LC_MESSAGES/homebank.mo +share/locale/uk/LC_MESSAGES/homebank.mo +share/locale/vi/LC_MESSAGES/homebank.mo +share/locale/zh_CN/LC_MESSAGES/homebank.mo +share/locale/zh_TW/LC_MESSAGES/homebank.mo +share/metainfo/homebank.appdata.xml +share/mime-info/homebank.keys +share/mime-info/homebank.mime +share/mime/packages/homebank.xml diff --git a/graphics/py-mayavi/Makefile b/graphics/py-mayavi/Makefile index 3436526944e5..47ed81c0fcfa 100644 --- a/graphics/py-mayavi/Makefile +++ b/graphics/py-mayavi/Makefile @@ -1,6 +1,6 @@ PORTNAME= mayavi DISTVERSION= 4.8.2 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= graphics science python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/graphics/qgis-ltr/Makefile b/graphics/qgis-ltr/Makefile index 540a438a5e91..6672beaf5eb0 100644 --- a/graphics/qgis-ltr/Makefile +++ b/graphics/qgis-ltr/Makefile @@ -1,6 +1,5 @@ PORTNAME= qgis -DISTVERSION= 3.40.13 -PORTREVISION= 2 +DISTVERSION= 3.40.14 CATEGORIES= graphics geography MASTER_SITES= https://qgis.org/downloads/ PKGNAMESUFFIX= -ltr diff --git a/graphics/qgis-ltr/distinfo b/graphics/qgis-ltr/distinfo index 6fd8251baa3c..df71b643d5a8 100644 --- a/graphics/qgis-ltr/distinfo +++ b/graphics/qgis-ltr/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1763841419 -SHA256 (qgis-3.40.13.tar.bz2) = 2934325e873de4c3c9deba131c40eb3edf10f1f04d0016e2177ad2de90949ef0 -SIZE (qgis-3.40.13.tar.bz2) = 183637998 +TIMESTAMP = 1766241175 +SHA256 (qgis-3.40.14.tar.bz2) = c9277ee2c49de38e70571b3e598d8d17f7c99de088e6f15d4f69c39c290ed1ca +SIZE (qgis-3.40.14.tar.bz2) = 184396131 diff --git a/misc/pyobd/Makefile b/misc/pyobd/Makefile index ab6b38be4e3f..8aa6b9b5ba01 100644 --- a/misc/pyobd/Makefile +++ b/misc/pyobd/Makefile @@ -1,6 +1,6 @@ PORTNAME= pyobd DISTVERSION= 0.9.3 -PORTREVISION= 13 +PORTREVISION= 14 CATEGORIES= misc MASTER_SITES= http://www.obdtester.com/download/ DISTNAME= pyobd_${PORTVERSION} diff --git a/multimedia/kvazaar/Makefile b/multimedia/kvazaar/Makefile index 90a92c0bd480..6b9b696c03a4 100644 --- a/multimedia/kvazaar/Makefile +++ b/multimedia/kvazaar/Makefile @@ -1,11 +1,11 @@ PORTNAME= kvazaar +PORTVERSION= 2.3.2 DISTVERSIONPREFIX= v -DISTVERSION= 2.3.1 CATEGORIES= multimedia -MAINTAINER= ports@FreeBSD.org +MAINTAINER= danfe@FreeBSD.org COMMENT= H.265/HEVC encoder implemented in C -WWW= https://ultravideo.fi/#encoder_x +WWW= https://ultravideo.fi/kvazaar.html LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE diff --git a/multimedia/kvazaar/distinfo b/multimedia/kvazaar/distinfo index dce8db76b7a3..f2eb6eea656b 100644 --- a/multimedia/kvazaar/distinfo +++ b/multimedia/kvazaar/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1712745755 -SHA256 (ultravideo-kvazaar-v2.3.1_GH0.tar.gz) = c5a1699d0bd50bc6bdba485b3438a5681a43d7b2c4fd6311a144740bfa59c9cc -SIZE (ultravideo-kvazaar-v2.3.1_GH0.tar.gz) = 598516 +TIMESTAMP = 1758103669 +SHA256 (ultravideo-kvazaar-v2.3.2_GH0.tar.gz) = ddd0038696631ca5368d8e40efee36d2bbb805854b9b1dda8b12ea9b397ea951 +SIZE (ultravideo-kvazaar-v2.3.2_GH0.tar.gz) = 600315 SHA256 (silentbicycle-greatest-v1.0.0_GH0.tar.gz) = 18ee57a34869c6f6ce511cd71a5cc8661801cf69d64c4c66ff76773835df659b SIZE (silentbicycle-greatest-v1.0.0_GH0.tar.gz) = 11959 diff --git a/multimedia/kvazaar/pkg-plist b/multimedia/kvazaar/pkg-plist index 1e5081f4f598..8fb9db210a88 100644 --- a/multimedia/kvazaar/pkg-plist +++ b/multimedia/kvazaar/pkg-plist @@ -3,7 +3,7 @@ include/kvazaar.h lib/libkvazaar.a lib/libkvazaar.so lib/libkvazaar.so.7 -lib/libkvazaar.so.7.4.0 +lib/libkvazaar.so.7.5.0 libdata/pkgconfig/kvazaar.pc %%PORTDOCS%%%%DOCSDIR%%/CREDITS %%PORTDOCS%%%%DOCSDIR%%/LICENSE diff --git a/multimedia/photofilmstrip/Makefile b/multimedia/photofilmstrip/Makefile index 8f518e125de5..ee8586706115 100644 --- a/multimedia/photofilmstrip/Makefile +++ b/multimedia/photofilmstrip/Makefile @@ -1,6 +1,6 @@ PORTNAME= photofilmstrip DISTVERSION= 3.7.1 -PORTREVISION= 2 +PORTREVISION= 4 CATEGORIES= multimedia python MASTER_SITES= https://github.com/PhotoFilmStrip/PFS/releases/download/v${DISTVERSION}/ PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/net-im/dino/Makefile b/net-im/dino/Makefile index 11a49f080a2c..26e9847eb737 100644 --- a/net-im/dino/Makefile +++ b/net-im/dino/Makefile @@ -1,7 +1,7 @@ PORTNAME= dino DISTVERSIONPREFIX= v -DISTVERSION= 0.4.5 -PORTREVISION= 2 +DISTVERSION= 0.5.1 +PORTREVISION= 1 CATEGORIES= net-im MAINTAINER= ashish@FreeBSD.org @@ -20,12 +20,12 @@ LIB_DEPENDS= libadwaita-1.so:x11-toolkits/libadwaita \ libgspell-1.so:textproc/gspell \ libharfbuzz.so:print/harfbuzz \ libicuuc.so:devel/icu \ - libsoup-2.4.so:devel/libsoup \ + libsoup-3.0.so:devel/libsoup3 \ libsqlite3.so:databases/sqlite3 \ libsrtp2.so:net/libsrtp2 \ libvulkan.so:graphics/vulkan-loader -USES= cmake cpe desktop-file-utils gettext-tools gnome localbase \ +USES= meson cpe desktop-file-utils gettext-tools gnome localbase \ ninja pkgconfig vala:build USE_GITHUB= yes @@ -39,7 +39,8 @@ LDFLAGS+= -L${LOCALBASE}/lib LDFLAGS+= -Wl,--export-dynamic USE_LDCONFIG= yes -USE_GNOME= cairo gdkpixbuf glib20 gnomeprefix gtk40 intlhack +#USE_GNOME= cairo gdkpixbuf glib20 gnomeprefix gtk40 intlhack +USE_GNOME= cairo gdkpixbuf glib20 gtk40 intlhack CANBERRA_DESC= Notifications sounds support ICE_DESC= ICE NAT traversal plugin @@ -48,32 +49,32 @@ RTP_DESC= RTP plugin UPLOAD_DESC= HTTP file upload plugin ICE_LIB_DEPENDS= libgnutls.so:security/gnutls \ libnice.so:net-im/libnice -ICE_VARS= ENABLED_PLUGINS+=ice -ICE_VARS_OFF= DISABLED_PLUGINS+=ice +ICE_VARS= ENABLED_PLUGINS+=plugin-ice +ICE_VARS_OFF= DISABLED_PLUGINS+=plugin-ice RTP_LIB_DEPENDS= libgnutls.so:security/gnutls \ - libwebrtc_audio_processing.so:audio/webrtc-audio-processing0 + libwebrtc-audio-processing.so:audio/webrtc-audio-processing RTP_USES= gstreamer RTP_USE= GSTREAMER=gtk,opus,pulse,speex,srtp,v4l2,vpx,x264 -RTP_VARS= ENABLED_PLUGINS+=rtp -RTP_CMAKE_BOOL= RTP_ENABLE_H264 RTP_ENABLE_VP9 RTP_ENABLE_H264 RTP_ENABLE_VAAPI -RTP_VARS_OFF= DISABLED_PLUGINS+=rtp -OMEMO_GH_TUPLE= signalapp:libsignal-protocol-c:v2.3.3:signalapp/plugins/signal-protocol/libsignal-protocol-c -OMEMO_LIB_DEPENDS= libqrencode.so:graphics/libqrencode -OMEMO_VARS= ENABLED_PLUGINS+=omemo -OMEMO_CMAKE_BOOL= BUILD_LIBSIGNAL_IN_TREE -OMEMO_VARS_OFF= DISABLED_PLUGINS+=omemo -UPLOAD_CMAKE_ON= -DSOUP_VERSION:INT=2 -UPLOAD_VARS= ENABLED_PLUGINS+=http-files -UPLOAD_VARS_OFF= DISABLED_PLUGINS+=http-files +RTP_VARS= ENABLED_PLUGINS+= plugin-rtp plugin-rtp-h264 plugin-rtp-msdk \ + plugin-rtp-vaapi plugin-rtp-vp9 plugin-rtp-webrtc-audio-processing +RTP_VARS_OFF= DISABLED_PLUGINS+=plugin-rtp plugin-rtp-h264 plugin-rtp-msdk \ + plugin-rtp-vaapi plugin-rtp-vp9 plugin-rtp-webrtc-audio-processing +OMEMO_LIB_DEPENDS= libqrencode.so:graphics/libqrencode \ + libomemo-c.so:security/libomemo-c +OMEMO_VARS= ENABLED_PLUGINS+=plugin-omemo +OMEMO_VARS_OFF= DISABLED_PLUGINS+=plugin-omemo +UPLOAD_MESON_ON= -DSOUP_VERSION:INT=2 +UPLOAD_VARS= ENABLED_PLUGINS+=plugin-http-files +UPLOAD_VARS_OFF= DISABLED_PLUGINS+=plugin-http-files GNUPG_LIB_DEPENDS= libgpgme.so:security/gpgme -GNUPG_VARS= ENABLED_PLUGINS+=openpgp -GNUPG_VARS_OFF= DISABLED_PLUGINS+=openpgp -CANBERRA_VARS= ENABLED_PLUGINS+=notification-sound -CANBERRA_VARS_OFF= DISABLED_PLUGINS+=notification-sound +GNUPG_VARS= ENABLED_PLUGINS+=plugin-openpgp +GNUPG_VARS_OFF= DISABLED_PLUGINS+=plugin-openpgp +CANBERRA_VARS= ENABLED_PLUGINS+=plugin-notification-sound +CANBERRA_VARS_OFF= DISABLED_PLUGINS+=plugin-notification-sound CANBERRA_LIB_DEPENDS= libcanberra.so:audio/libcanberra -CMAKE_ARGS+= -DENABLED_PLUGINS="${ENABLED_PLUGINS:S/ /;/gW}" -CMAKE_ARGS+= -DDISABLED_PLUGINS="${DISABLED_PLUGINS:S/ /;/gW}" +OPT_MESON_ENABLED= "${ENABLED_PLUGINS}" +OPT_MESON_DISABLED= "${DISABLED_PLUGINS}" pre-configure: @if [ -z "${PACKAGE_BUILDING}" ]; then if ! ${PKG_BIN} query \ diff --git a/net-im/dino/distinfo b/net-im/dino/distinfo index 5bd5aa428880..3fe2406ba3c8 100644 --- a/net-im/dino/distinfo +++ b/net-im/dino/distinfo @@ -1,5 +1,3 @@ -TIMESTAMP = 1742741298 -SHA256 (dino-dino-v0.4.5_GH0.tar.gz) = 80761b625c4cb4cf6ed1a368dbd24a9df06b47a1c6379495aca4ed7e033d08be -SIZE (dino-dino-v0.4.5_GH0.tar.gz) = 887183 -SHA256 (signalapp-libsignal-protocol-c-v2.3.3_GH0.tar.gz) = c22e7690546e24d46210ca92dd808f17c3102e1344cd2f9a370136a96d22319d -SIZE (signalapp-libsignal-protocol-c-v2.3.3_GH0.tar.gz) = 272073 +TIMESTAMP = 1765851650 +SHA256 (dino-dino-v0.5.1_GH0.tar.gz) = 2658b83abe1203b2dd4d6444519f615b979faaac7e97f384e655bff85769584b +SIZE (dino-dino-v0.5.1_GH0.tar.gz) = 1004976 diff --git a/net-im/dino/pkg-plist b/net-im/dino/pkg-plist index e2deb19f880d..19ab39c3bc0c 100644 --- a/net-im/dino/pkg-plist +++ b/net-im/dino/pkg-plist @@ -1,15 +1,14 @@ bin/dino include/crypto-vala.h -include/dino.h include/dino_i18n.h +include/libdino.h include/qlite.h include/xmpp-vala.h -%%UPLOAD%%lib/dino/plugins/http-files.so -%%ICE%%lib/dino/plugins/ice.so -%%CANBERRA%%lib/dino/plugins/notification-sound.so -%%OMEMO%%lib/dino/plugins/omemo.so -%%GNUPG%%lib/dino/plugins/openpgp.so -%%RTP%%lib/dino/plugins/rtp.so +lib/dino/plugins/http-files.so +lib/dino/plugins/ice.so +lib/dino/plugins/omemo.so +lib/dino/plugins/openpgp.so +lib/dino/plugins/rtp.so lib/libcrypto-vala.so lib/libcrypto-vala.so.0 lib/libcrypto-vala.so.0.0 @@ -26,121 +25,137 @@ share/applications/im.dino.Dino.desktop share/dbus-1/services/im.dino.Dino.service share/icons/hicolor/scalable/apps/im.dino.Dino.svg share/icons/hicolor/symbolic/apps/im.dino.Dino-symbolic.svg -%%OMEMO%%share/locale/ar/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/ar/LC_MESSAGES/dino-openpgp.mo +share/locale/ar/LC_MESSAGES/dino-omemo.mo +share/locale/ar/LC_MESSAGES/dino-openpgp.mo share/locale/ar/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/ca/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/ca/LC_MESSAGES/dino-openpgp.mo +share/locale/ca/LC_MESSAGES/dino-omemo.mo +share/locale/ca/LC_MESSAGES/dino-openpgp.mo share/locale/ca/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/cs/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/cs/LC_MESSAGES/dino-openpgp.mo +share/locale/cs/LC_MESSAGES/dino-omemo.mo +share/locale/cs/LC_MESSAGES/dino-openpgp.mo share/locale/cs/LC_MESSAGES/dino.mo +share/locale/da/LC_MESSAGES/dino-omemo.mo +share/locale/da/LC_MESSAGES/dino-openpgp.mo share/locale/da/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/de/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/de/LC_MESSAGES/dino-openpgp.mo +share/locale/de/LC_MESSAGES/dino-omemo.mo +share/locale/de/LC_MESSAGES/dino-openpgp.mo share/locale/de/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/el/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/el/LC_MESSAGES/dino-openpgp.mo +share/locale/el/LC_MESSAGES/dino-omemo.mo +share/locale/el/LC_MESSAGES/dino-openpgp.mo share/locale/el/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/en/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/en/LC_MESSAGES/dino-openpgp.mo +share/locale/en/LC_MESSAGES/dino-omemo.mo +share/locale/en/LC_MESSAGES/dino-openpgp.mo share/locale/en/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/eo/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/eo/LC_MESSAGES/dino-openpgp.mo +share/locale/eo/LC_MESSAGES/dino-omemo.mo +share/locale/eo/LC_MESSAGES/dino-openpgp.mo share/locale/eo/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/es/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/es/LC_MESSAGES/dino-openpgp.mo +share/locale/es/LC_MESSAGES/dino-omemo.mo +share/locale/es/LC_MESSAGES/dino-openpgp.mo share/locale/es/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/eu/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/eu/LC_MESSAGES/dino-openpgp.mo +share/locale/et/LC_MESSAGES/dino-omemo.mo +share/locale/et/LC_MESSAGES/dino-openpgp.mo +share/locale/et/LC_MESSAGES/dino.mo +share/locale/eu/LC_MESSAGES/dino-omemo.mo +share/locale/eu/LC_MESSAGES/dino-openpgp.mo share/locale/eu/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/fa/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/fa/LC_MESSAGES/dino-openpgp.mo +share/locale/fa/LC_MESSAGES/dino-omemo.mo +share/locale/fa/LC_MESSAGES/dino-openpgp.mo share/locale/fa/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/fi/LC_MESSAGES/dino-omemo.mo +share/locale/fi/LC_MESSAGES/dino-omemo.mo +share/locale/fi/LC_MESSAGES/dino-openpgp.mo share/locale/fi/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/fr/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/fr/LC_MESSAGES/dino-openpgp.mo +share/locale/fr/LC_MESSAGES/dino-omemo.mo +share/locale/fr/LC_MESSAGES/dino-openpgp.mo share/locale/fr/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/gl/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/gl/LC_MESSAGES/dino-openpgp.mo +share/locale/gl/LC_MESSAGES/dino-omemo.mo +share/locale/gl/LC_MESSAGES/dino-openpgp.mo share/locale/gl/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/hu/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/hu/LC_MESSAGES/dino-openpgp.mo +share/locale/hi/LC_MESSAGES/dino.mo +share/locale/hu/LC_MESSAGES/dino-omemo.mo +share/locale/hu/LC_MESSAGES/dino-openpgp.mo share/locale/hu/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/id/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/id/LC_MESSAGES/dino-openpgp.mo +share/locale/hy/LC_MESSAGES/dino.mo +share/locale/ia/LC_MESSAGES/dino-openpgp.mo +share/locale/ia/LC_MESSAGES/dino.mo +share/locale/id/LC_MESSAGES/dino-omemo.mo +share/locale/id/LC_MESSAGES/dino-openpgp.mo share/locale/id/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/ie/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/ie/LC_MESSAGES/dino-openpgp.mo +share/locale/ie/LC_MESSAGES/dino-omemo.mo +share/locale/ie/LC_MESSAGES/dino-openpgp.mo share/locale/ie/LC_MESSAGES/dino.mo -%%GNUPG%%share/locale/is/LC_MESSAGES/dino-openpgp.mo +share/locale/is/LC_MESSAGES/dino-openpgp.mo share/locale/is/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/it/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/it/LC_MESSAGES/dino-openpgp.mo +share/locale/it/LC_MESSAGES/dino-omemo.mo +share/locale/it/LC_MESSAGES/dino-openpgp.mo share/locale/it/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/ja/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/ja/LC_MESSAGES/dino-openpgp.mo +share/locale/ja/LC_MESSAGES/dino-omemo.mo +share/locale/ja/LC_MESSAGES/dino-openpgp.mo share/locale/ja/LC_MESSAGES/dino.mo share/locale/kab/LC_MESSAGES/dino.mo -%%GNUPG%%share/locale/ko/LC_MESSAGES/dino-openpgp.mo +share/locale/ko/LC_MESSAGES/dino-openpgp.mo share/locale/ko/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/lb/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/lb/LC_MESSAGES/dino-openpgp.mo +share/locale/lb/LC_MESSAGES/dino-omemo.mo +share/locale/lb/LC_MESSAGES/dino-openpgp.mo share/locale/lb/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/lt/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/lt/LC_MESSAGES/dino-openpgp.mo +share/locale/lt/LC_MESSAGES/dino-omemo.mo +share/locale/lt/LC_MESSAGES/dino-openpgp.mo share/locale/lt/LC_MESSAGES/dino.mo -%%GNUPG%%share/locale/lv/LC_MESSAGES/dino-openpgp.mo +share/locale/lv/LC_MESSAGES/dino-openpgp.mo share/locale/lv/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/nb/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/nb/LC_MESSAGES/dino-openpgp.mo +share/locale/nb/LC_MESSAGES/dino-omemo.mo +share/locale/nb/LC_MESSAGES/dino-openpgp.mo share/locale/nb/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/nl/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/nl/LC_MESSAGES/dino-openpgp.mo +share/locale/nl/LC_MESSAGES/dino-omemo.mo +share/locale/nl/LC_MESSAGES/dino-openpgp.mo share/locale/nl/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/oc/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/oc/LC_MESSAGES/dino-openpgp.mo +share/locale/oc/LC_MESSAGES/dino-omemo.mo +share/locale/oc/LC_MESSAGES/dino-openpgp.mo share/locale/oc/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/pl/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/pl/LC_MESSAGES/dino-openpgp.mo +share/locale/pl/LC_MESSAGES/dino-omemo.mo +share/locale/pl/LC_MESSAGES/dino-openpgp.mo share/locale/pl/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/pt/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/pt/LC_MESSAGES/dino-openpgp.mo +share/locale/pt/LC_MESSAGES/dino-omemo.mo +share/locale/pt/LC_MESSAGES/dino-openpgp.mo share/locale/pt/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/pt_BR/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/pt_BR/LC_MESSAGES/dino-openpgp.mo +share/locale/pt_BR/LC_MESSAGES/dino-omemo.mo +share/locale/pt_BR/LC_MESSAGES/dino-openpgp.mo share/locale/pt_BR/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/ro/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/ro/LC_MESSAGES/dino-openpgp.mo +share/locale/ro/LC_MESSAGES/dino-omemo.mo +share/locale/ro/LC_MESSAGES/dino-openpgp.mo share/locale/ro/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/ru/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/ru/LC_MESSAGES/dino-openpgp.mo +share/locale/ru/LC_MESSAGES/dino-omemo.mo +share/locale/ru/LC_MESSAGES/dino-openpgp.mo share/locale/ru/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/sq/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/sq/LC_MESSAGES/dino-openpgp.mo +share/locale/si/LC_MESSAGES/dino.mo +share/locale/sq/LC_MESSAGES/dino-omemo.mo +share/locale/sq/LC_MESSAGES/dino-openpgp.mo share/locale/sq/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/sv/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/sv/LC_MESSAGES/dino-openpgp.mo +share/locale/sv/LC_MESSAGES/dino-omemo.mo +share/locale/sv/LC_MESSAGES/dino-openpgp.mo share/locale/sv/LC_MESSAGES/dino.mo +share/locale/ta/LC_MESSAGES/dino-omemo.mo +share/locale/ta/LC_MESSAGES/dino-openpgp.mo share/locale/ta/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/tr/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/tr/LC_MESSAGES/dino-openpgp.mo +share/locale/tr/LC_MESSAGES/dino-omemo.mo +share/locale/tr/LC_MESSAGES/dino-openpgp.mo share/locale/tr/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/uk/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/uk/LC_MESSAGES/dino-openpgp.mo +share/locale/uk/LC_MESSAGES/dino-omemo.mo +share/locale/uk/LC_MESSAGES/dino-openpgp.mo share/locale/uk/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/zh_CN/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/zh_CN/LC_MESSAGES/dino-openpgp.mo +share/locale/vi/LC_MESSAGES/dino-omemo.mo +share/locale/vi/LC_MESSAGES/dino-openpgp.mo +share/locale/vi/LC_MESSAGES/dino.mo +share/locale/zh_CN/LC_MESSAGES/dino-omemo.mo +share/locale/zh_CN/LC_MESSAGES/dino-openpgp.mo share/locale/zh_CN/LC_MESSAGES/dino.mo -%%OMEMO%%share/locale/zh_TW/LC_MESSAGES/dino-omemo.mo -%%GNUPG%%share/locale/zh_TW/LC_MESSAGES/dino-openpgp.mo +share/locale/zh_TW/LC_MESSAGES/dino-omemo.mo +share/locale/zh_TW/LC_MESSAGES/dino-openpgp.mo share/locale/zh_TW/LC_MESSAGES/dino.mo share/metainfo/im.dino.Dino.appdata.xml share/vala/vapi/crypto-vala.deps share/vala/vapi/crypto-vala.vapi share/vala/vapi/dino.deps -share/vala/vapi/dino.vapi +share/vala/vapi/libdino.vapi share/vala/vapi/qlite.deps share/vala/vapi/qlite.vapi share/vala/vapi/xmpp-vala.deps diff --git a/net-im/sshout/Makefile b/net-im/sshout/Makefile index 5746a4be1d48..f53a28192038 100644 --- a/net-im/sshout/Makefile +++ b/net-im/sshout/Makefile @@ -1,11 +1,10 @@ PORTNAME= sshout -DISTVERSION= 1.2.0 -PORTREVISION= 2 +DISTVERSION= 1.3.0 CATEGORIES= net-im -MASTER_SITES= SF/sshout/${PORTNAME}/ -DISTNAME= ${PORTNAME}-${PORTVERSION}-src +MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/ +DISTNAME= ${PORTNAME}-${DISTVERSION}-src -MAINTAINER= msl0000023508@gmail.com +MAINTAINER= whr@rivoreo.one COMMENT= Instant-messaging service based on SSH WWW= https://sourceforge.net/projects/sshout/ @@ -14,41 +13,42 @@ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libmhash.so:security/mhash -USES= tar:bz2 gmake readline +USES= gmake iconv readline tar:bz2 +USE_RC_SUBR= ${PORTNAME} -NO_WRKSUBDIR= yes -CPPFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${LOCALBASE}/lib - -MAKE_ENV= LIBEXECDIR=\${PREFIX}/libexec \ - MANDIR=\${PREFIX}/share/man +MAKE_ENV= ICONV_LIBS="${ICONV_LIB}" \ + LIBEXECDIR=${PREFIX}/libexec \ + MANDIR=${PREFIX}/share/man -USE_RC_SUBR= sshout +NO_WRKSUBDIR= yes -USERS= sshout -GROUPS= sshout +USERS= ${PORTNAME} +GROUPS= ${PORTNAME} -OPTIONS_DEFINE= NLS IRC +OPTIONS_DEFINE= IRC NLS OPTIONS_DEFAULT= NLS OPTIONS_GROUP= SUGGESTED OPTIONS_GROUP_SUGGESTED=XCLIP ELINKS -SUGGESTED_DESC= Suggested ports +OPTIONS_SUB= yes -XCLIP_DESC= Add dependency to xclip(1) for CLI pasteimage support -XCLIP_RUN_DEPENDS= xclip:x11/xclip ELINKS_DESC= Add dependency to elinks(1) for showing HTML messages in CLI +IRC_DESC= Experimental IRC over SSH frontend +SUGGESTED_DESC= Suggested ports +XCLIP_DESC= Add dependency to xclip(1) for CLI pasteimage support + ELINKS_RUN_DEPENDS= elinks>=0.12:www/elinks +IRC_CPPFLAGS= -D ENABLE_IRC_FRONTEND=1 + NLS_USES= gettext NLS_MAKE_ENV= NLS_LIBS="-l intl" NLS_MAKE_ENV_OFF= NO_NLS=1 -IRC_DESC= Experimental IRC over SSH frontend -IRC_CPPFLAGS= -D ENABLE_IRC_FRONTEND=1 - -OPTIONS_SUB= yes +XCLIP_RUN_DEPENDS= xclip:x11/xclip -.include <bsd.port.options.mk> +post-install: + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/sshoutd \ + ${STAGEDIR}${PREFIX}/sbin/sshoutcfg .include <bsd.port.mk> diff --git a/net-im/sshout/distinfo b/net-im/sshout/distinfo index d0f80eca969f..8993bbbda21b 100644 --- a/net-im/sshout/distinfo +++ b/net-im/sshout/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1599058479 -SHA256 (sshout-1.2.0-src.tar.bz2) = ced431585228186e5029f2c4cff76802b76eb6389fe78d5e9c14b0289a535b22 -SIZE (sshout-1.2.0-src.tar.bz2) = 45150 +TIMESTAMP = 1766203530 +SHA256 (sshout-1.3.0-src.tar.bz2) = 81d383ddb78a8abd0e5577152a1a9714a435075f52cf98dc73c784b5dc668af8 +SIZE (sshout-1.3.0-src.tar.bz2) = 46288 diff --git a/net-im/sshout/files/patch-Makefile b/net-im/sshout/files/patch-Makefile deleted file mode 100644 index 0cb7636ea882..000000000000 --- a/net-im/sshout/files/patch-Makefile +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.orig 2020-09-01 11:34:08 UTC -+++ Makefile -@@ -4,7 +4,7 @@ - INSTALL ?= install - MSGFMT ?= msgfmt - --CFLAGS += -Wall -Wno-switch -Wno-pointer-to-int-cast -O1 -+CFLAGS += -Wall -Wno-switch -Wno-pointer-to-int-cast - #LIBS += - - #SOCKET_LIBS := -l socket diff --git a/net-im/sshout/pkg-descr b/net-im/sshout/pkg-descr index f37119642b78..0ba448143d20 100644 --- a/net-im/sshout/pkg-descr +++ b/net-im/sshout/pkg-descr @@ -1,9 +1,9 @@ -Secure Shout Host Oriented Unified Talk is an instant-messaging platform -designed to make uses of the existing SSH server in your system. +SSHOUT is an instant-messaging platform designed to make uses of the existing +OpenSSH SSH server in your system. SSHOUT creates a private chat room in your host. The authentication of the chat room is done by SSH public authentication. Users can join your chat room -by either directly connecting your SSH server with any SSH client; or using a -SSHOUT client that implemented the client side SSHOUT API. -This package provides the SSHOUT server side programs; if you are finding a -SSHOUT client, go to project page and find out a suitable client; or you can -also write your own client using SSHOUT API. +by either directly connecting the SSH server with any SSH client, or by using +a SSHOUT client that implements the client side SSHOUT API. +This package provides the SSHOUT server side programs; if you are looking for +a SSHOUT client software, see the project page. You can also create your own +client software using the SSHOUT API. diff --git a/net-im/sshout/pkg-message b/net-im/sshout/pkg-message index 322176dbe53f..2dcb864d5e0a 100644 --- a/net-im/sshout/pkg-message +++ b/net-im/sshout/pkg-message @@ -1,3 +1,6 @@ +[ +{ type: install + message: <<EOM #### NOTES OF SSHOUT In order to start sshout service you need some more configuration: @@ -10,3 +13,6 @@ Suggested ports: x11/xclip For '/pasteimage' command to work in CLI frontend www/elinks For HTML messages be properly displayed in CLI frontend #### END +EOM +} +] diff --git a/net/traefik/Makefile b/net/traefik/Makefile index e78c585fe67d..4bd9e40ec8b3 100644 --- a/net/traefik/Makefile +++ b/net/traefik/Makefile @@ -1,6 +1,5 @@ PORTNAME= traefik -PORTVERSION= 3.6.2 -PORTREVISION= 1 +PORTVERSION= 3.6.5 CATEGORIES= net MASTER_SITES= LOCAL/riggs/${PORTNAME} diff --git a/net/traefik/distinfo b/net/traefik/distinfo index e5d75b16a364..7ae3015b9045 100644 --- a/net/traefik/distinfo +++ b/net/traefik/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1763853110 -SHA256 (traefik-3.6.2.tar.xz) = c046965f165b2a82c40a42d00f6fe7e263c1068f129de8b64b1ed2bb5a8548c3 -SIZE (traefik-3.6.2.tar.xz) = 26178072 +TIMESTAMP = 1766309063 +SHA256 (traefik-3.6.5.tar.xz) = 37bcfaa76950b9336c5099c0b530a6413a062b611ef74e3b9dd270d2698b9195 +SIZE (traefik-3.6.5.tar.xz) = 26457500 diff --git a/security/vuxml/vuln/2025.xml b/security/vuxml/vuln/2025.xml index 3e5428cd52a1..3fa157e87559 100644 --- a/security/vuxml/vuln/2025.xml +++ b/security/vuxml/vuln/2025.xml @@ -1,3 +1,74 @@ + <vuln vid="dc7e30db-de67-11f0-b893-5404a68ad561"> + <topic>traefik -- Inverted TLS Verification Logic in Kubernetes NGINX Provider</topic> + <affects> +<package> +<name>traefik</name> +<range><lt>3.6.3</lt></range> +</package> + </affects> + <description> + <body xmlns="http://www.w3.org/1999/xhtml"> + <p>The traefik project reports:</p> + <blockquote cite="https://github.com/traefik/traefik/security/advisories/GHSA-7vww-mvcr-x6vj"> + <p> + There is a potential vulnerability in Traefik NGINX + provider managing the + nginx.ingress.kubernetes.io/proxy-ssl-verify annotation. + The provider inverts the semantics of the + nginx.ingress.kubernetes.io/proxy-ssl-verify annotation. + Setting the annotation to "on" (intending to enable + backend TLS certificate verification) actually disables + verification, allowing man-in-the-middle attacks against + HTTPS backends when operators believe they are + protected. + </p> + </blockquote> + </body> + </description> + <references> + <cvename>CVE-2025-66491</cvename> + <url>https://nvd.nist.gov/vuln/detail/CVE-2025-66491</url> + </references> + <dates> + <discovery>2025-12-08</discovery> + <entry>2025-12-21</entry> + </dates> + </vuln> + + <vuln vid="91b9790e-de65-11f0-b893-5404a68ad561"> + <topic>traefik -- Bypassing security controls via special characters</topic> + <affects> +<package> +<name>traefik</name> +<range><lt>3.6.3</lt></range> +</package> + </affects> + <description> + <body xmlns="http://www.w3.org/1999/xhtml"> + <p>The traefik project reports:</p> + <blockquote cite="https://github.com/traefik/traefik/security/advisories/GHSA-gm3x-23wp-hc2c"> + <p>There is a potential vulnerability in Traefik managing + the requests using a PathPrefix, Path or PathRegex + matcher. + When Traefik is configured to route the requests to a + backend using a matcher based on the path; if the + request path contains an encoded restricted character + from the following set ('/', '', 'Null', ';', '?', '#'), + it is possible to target a backend, exposed using + another router, by-passing the middlewares chain.</p> + </blockquote> + </body> + </description> + <references> + <cvename>CVE-2025-66490</cvename> + <url>https://nvd.nist.gov/vuln/detail/CVE-2025-66490</url> + </references> + <dates> + <discovery>2025-12-08</discovery> + <entry>2025-12-21</entry> + </dates> + </vuln> + <vuln vid="c32cb4b7-ddcb-11f0-902c-b42e991fc52e"> <topic>smb4k -- Critical vulnerabilities in Mount Helper</topic> <affects> diff --git a/x11-toolkits/py-wxPython4/Makefile b/x11-toolkits/py-wxPython4/Makefile index a6ba4846eb7b..5655d2574f91 100644 --- a/x11-toolkits/py-wxPython4/Makefile +++ b/x11-toolkits/py-wxPython4/Makefile @@ -1,6 +1,5 @@ PORTNAME= wxPython -PORTVERSION= 4.2.2 -PORTREVISION= 2 +PORTVERSION= 4.2.3 CATEGORIES= x11-toolkits python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -17,12 +16,16 @@ LICENSE_NAME_WXWINDOWS= wxWindows Library Licence, Version 3.1 LICENSE_FILE_WXWINDOWS= ${WRKSRC}/license/licence.txt LICENSE_PERMS_WXWINDOWS= dist-mirror pkg-mirror auto-accept -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pathlib2>0:devel/py-pathlib2@${PY_FLAVOR} +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pathlib2>0:devel/py-pathlib2@${PY_FLAVOR} \ + ${PKGNAMEPREFIX}requests>=2.28.1:www/py-requests@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PKGNAMEPREFIX}requests>=2.28.1:www/py-requests@${PY_FLAVOR} USES= compiler:c++11-lib gl localbase pkgconfig python USE_GL= glu USE_WX= 3.2 -USE_PYTHON= distutils autoplist +USE_PYTHON= autoplist distutils OPTIONS_DEFINE= NLS diff --git a/x11-toolkits/py-wxPython4/distinfo b/x11-toolkits/py-wxPython4/distinfo index d652e878b837..e08eb2d2eddc 100644 --- a/x11-toolkits/py-wxPython4/distinfo +++ b/x11-toolkits/py-wxPython4/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1736528844 -SHA256 (python/wxPython-4.2.2.tar.gz) = 5dbcb0650f67fdc2c5965795a255ffaa3d7b09fb149aa8da2d0d9aa44e38e2ba -SIZE (python/wxPython-4.2.2.tar.gz) = 57358880 +TIMESTAMP = 1766213363 +SHA256 (python/wxPython-4.2.3.tar.gz) = 20d6e0c927e27ced85643719bd63e9f7fd501df6e9a8aab1489b039897fd7c01 +SIZE (python/wxPython-4.2.3.tar.gz) = 58861286 diff --git a/x11-toolkits/py-wxPython4/files/patch-setup.py b/x11-toolkits/py-wxPython4/files/patch-setup.py new file mode 100644 index 000000000000..8222dfc10e39 --- /dev/null +++ b/x11-toolkits/py-wxPython4/files/patch-setup.py @@ -0,0 +1,11 @@ +--- setup.py.orig 2024-11-05 05:01:05 UTC ++++ setup.py +@@ -18,7 +18,7 @@ from distutils.command.build import build as or + from setuptools.command.install import install as orig_install + from setuptools.command.bdist_egg import bdist_egg as orig_bdist_egg + from setuptools.command.sdist import sdist as orig_sdist +-from setuptools.command.bdist_wheel import bdist_wheel as orig_bdist_wheel ++from wheel.bdist_wheel import bdist_wheel as orig_bdist_wheel + + from buildtools.config import Config, msg, opj, runcmd, canGetSOName, getSOName + import buildtools.version as version |
