pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/www/privoxy
Module Name: pkgsrc
Committed By: wiz
Date: Thu Aug 13 18:17:58 UTC 2026
Modified Files:
pkgsrc/www/privoxy: Makefile PLIST distinfo options.mk
Added Files:
pkgsrc/www/privoxy/patches: patch-GNUmakefile.in patch-config
patch-configure.in patch-man_privoxy.8 patch-man_uagen.1
patch-tools_uagen.pl
Removed Files:
pkgsrc/www/privoxy/patches: patch-aa patch-ab patch-ac patch-ag
Log Message:
privoxy: update to 4.2.0.
Provided by Stepan Ipatov in pkgsrc-wip.
Privoxy 4.2.0 fixes a couple of bugs and brings general improvements
such as support for elliptic-curve keys.
Two potential security problems have been reported and addressed.
To generate a diff of this commit:
cvs rdiff -u -r1.72 -r1.73 pkgsrc/www/privoxy/Makefile
cvs rdiff -u -r1.14 -r1.15 pkgsrc/www/privoxy/PLIST
cvs rdiff -u -r1.28 -r1.29 pkgsrc/www/privoxy/distinfo
cvs rdiff -u -r1.1 -r1.2 pkgsrc/www/privoxy/options.mk
cvs rdiff -u -r0 -r1.1 pkgsrc/www/privoxy/patches/patch-GNUmakefile.in \
pkgsrc/www/privoxy/patches/patch-config \
pkgsrc/www/privoxy/patches/patch-configure.in \
pkgsrc/www/privoxy/patches/patch-man_privoxy.8 \
pkgsrc/www/privoxy/patches/patch-man_uagen.1 \
pkgsrc/www/privoxy/patches/patch-tools_uagen.pl
cvs rdiff -u -r1.4 -r0 pkgsrc/www/privoxy/patches/patch-aa
cvs rdiff -u -r1.9 -r0 pkgsrc/www/privoxy/patches/patch-ab
cvs rdiff -u -r1.3 -r0 pkgsrc/www/privoxy/patches/patch-ac
cvs rdiff -u -r1.5 -r0 pkgsrc/www/privoxy/patches/patch-ag
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/www/privoxy/Makefile
diff -u pkgsrc/www/privoxy/Makefile:1.72 pkgsrc/www/privoxy/Makefile:1.73
--- pkgsrc/www/privoxy/Makefile:1.72 Thu May 29 13:24:48 2025
+++ pkgsrc/www/privoxy/Makefile Thu Aug 13 18:17:58 2026
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.72 2025/05/29 13:24:48 khorben Exp $
+# $NetBSD: Makefile,v 1.73 2026/08/13 18:17:58 wiz Exp $
DISTNAME= ${PKGNAME_NOREV}-stable-src
-PKGNAME= privoxy-3.0.29
-PKGREVISION= 4
+PKGNAME= privoxy-4.2.0
CATEGORIES= www
MASTER_SITES= https://www.privoxy.org/sf-download-mirror/Sources/${PKGVERSION_NOREV}%20(stable)/
@@ -11,65 +10,90 @@ HOMEPAGE= https://www.privoxy.org/
COMMENT= Web proxy with advanced filtering capabilities
LICENSE= gnu-gpl-v2
-.include "../../mk/bsd.prefs.mk"
+WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}-stable
-PRIVOXY_USER?= privoxy
-PRIVOXY_GROUP?= privoxy
-PKG_GROUPS_VARS+= PRIVOXY_GROUP
-PKG_USERS_VARS+= PRIVOXY_USER
+.include "options.mk"
+.include "../../mk/bsd.prefs.mk"
-PKG_SYSCONFSUBDIR?= privoxy
+PKG_SYSCONFSUBDIR= privoxy
+PRIVOXY_EGDIR= ${PREFIX}/share/examples/${PKGBASE}
+PRIVOXY_DOCDIR= ${PREFIX}/share/doc/${PKGBASE}
+PRIVOXY_LOGDIR= ${VARBASE}/log/privoxy
-RCD_SCRIPTS= privoxy
-PKG_GROUPS= ${PRIVOXY_GROUP}
-PKG_USERS= ${PRIVOXY_USER}:${PRIVOXY_GROUP}
+USE_TOOLS+= gmake mktemp autoconf autoheader perl:run
-EGDIR= ${PREFIX}/share/examples/privoxy
+SUBST_CLASSES+= paths
+SUBST_FILES.paths= config man/privoxy.8 man/uagen.1 tools/uagen.pl
+SUBST_VARS.paths= PREFIX VARBASE PKG_SYSCONFDIR PRIVOXY_LOGDIR PRIVOXY_DOCDIR
+SUBST_STAGE.paths= pre-configure
-CPPFLAGS+= -Dunix
+REPLACE_PERL+= tools/privoxy-log-parser.pl \
+ tools/privoxy-regression-test.pl \
+ tools/url-pattern-translator.pl \
+ tools/uagen.pl
-WRKSRC= ${WRKDIR}/${PKGNAME_NOREV}-stable
+GNU_CONFIGURE= YES
+CONFIGURE_ARGS+= --localstatedir=${VARBASE}
+CONFIGURE_ARGS+= --sysconfdir=${PRIVOXY_EGDIR}
+CONFIGURE_ARGS+= --with-user=${PRIVOXY_USER:Q}
+CONFIGURE_ARGS+= --with-group=${PRIVOXY_GROUP:Q}
-USE_FEATURES= snprintf
-USE_TOOLS+= gmake mktemp autoconf autoheader
-BUILD_DEFS+= VARBASE
MAKE_FILE= GNUmakefile
-USE_TOOLS+= perl
+BUILD_DEFS+= VARBASE
+PRIVOXY_USER= privoxy
+PRIVOXY_GROUP= privoxy
+PRIVOXY_HOME= ${VARBASE}/lib/privoxy
+PKG_USERS_VARS+= PRIVOXY_USER
+PKG_GROUPS_VARS+= PRIVOXY_GROUP
+PKG_GROUPS= ${PRIVOXY_GROUP}
+PKG_USERS= ${PRIVOXY_USER}:${PRIVOXY_GROUP}
+PKG_GECOS.${PRIVOXY_USER}= Privoxy user
-PTHREAD_AUTO_VARS= yes
-PTHREAD_OPTS+= require
+OWN_DIRS_PERMS+= ${PRIVOXY_HOME} ${PRIVOXY_USER} ${PRIVOXY_GROUP} 0770
-GNU_CONFIGURE= YES
-CONFIGURE_ARGS+= --localstatedir=${VARBASE:Q}
-CONFIGURE_ARGS+= --sysconfdir=${EGDIR:Q}
-CONFIGURE_ARGS+= --with-user=${PRIVOXY_USER:Q}
-CONFIGURE_ARGS+= --with-group=${PRIVOXY_GROUP:Q}
-CONFIGURE_ARGS+= --enable-compression
+FILES_SUBST+= PRIVOXY_USER=${PRIVOXY_USER:Q}
+.if ${INIT_SYSTEM} == "rc.d"
+RCD_SCRIPTS+= privoxy
+.endif
USER_GROUP= ${PRIVOXY_USER} ${PRIVOXY_GROUP}
-.for i in \
- config trust default.action user.action user.filter default.filter match-all.action
-CONF_FILES_PERMS+= ${EGDIR}/${i} ${PKG_SYSCONFDIR}/${i} ${USER_GROUP} 0660
-.endfor
+OWN_DIRS_PERMS+= ${PKG_SYSCONFDIR}/templates ${USER_GROUP} 0755
-OWN_DIRS_PERMS+= /var/log/privoxy ${USER_GROUP} 0775
-CONF_FILES_PERMS+= /dev/null /var/log/privoxy/logfile ${USER_GROUP} 0660
+PRIVOXY_CONF_FILES= config default.action default.filter \
+ match-all.action trust user.action user.filter
-FILES_SUBST+= PRIVOXY_USER=${PRIVOXY_USER:Q}
+PRIVOXY_TEMPLATE_FILES= blocked cgi-error-404 cgi-error-bad-param \
+ cgi-error-disabled cgi-error-file \
+ cgi-error-file-read-only cgi-error-modified \
+ cgi-error-parse cgi-style.css client-tags \
+ connect-failed connection-timeout default \
+ edit-actions-add-url-form edit-actions-for-url \
+ edit-actions-for-url-filter \
+ edit-actions-for-url-string-action mod-title \
+ edit-actions-list edit-actions-list-button \
+ edit-actions-list-section edit-actions-list-url \
+ edit-actions-remove-url-form edit-actions-url-form \
+ forwarding-failed mod-local-help \
+ mod-support-and-service mod-unstable-warning \
+ no-server-data no-such-domain show-request show-status \
+ show-status-file show-url-info toggle toggle-mini \
+ untrusted url-info-osd.xml wpad.dat
-SUBST_CLASSES+= paths
-SUBST_FILES.paths= config
-SUBST_VARS.paths= PKG_SYSCONFDIR
-SUBST_STAGE.paths= pre-configure
+.for f in ${PRIVOXY_CONF_FILES}
+CONF_FILES+= ${PRIVOXY_EGDIR}/${f} ${PKG_SYSCONFDIR}/${f}
+.endfor
-.include "options.mk"
+.for f in ${PRIVOXY_TEMPLATE_FILES}
+CONF_FILES+= ${PRIVOXY_EGDIR}/templates/${f} ${PKG_SYSCONFDIR}/templates/${f}
+.endfor
+
+OWN_DIRS_PERMS+= ${PRIVOXY_LOGDIR} ${USER_GROUP} 0755
pre-configure:
cd ${WRKSRC} && autoheader && autoconf
-.include "../../devel/pcre/buildlink3.mk"
-.include "../../devel/zlib/buildlink3.mk"
+.include "../../devel/pcre2/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/www/privoxy/PLIST
diff -u pkgsrc/www/privoxy/PLIST:1.14 pkgsrc/www/privoxy/PLIST:1.15
--- pkgsrc/www/privoxy/PLIST:1.14 Thu Feb 4 16:29:14 2021
+++ pkgsrc/www/privoxy/PLIST Thu Aug 13 18:17:58 2026
@@ -1,5 +1,11 @@
-@comment $NetBSD: PLIST,v 1.14 2021/02/04 16:29:14 wiz Exp $
-man/man1/privoxy.1
+@comment $NetBSD: PLIST,v 1.15 2026/08/13 18:17:58 wiz Exp $
+bin/privoxy-log-parser
+bin/privoxy-regression-test
+bin/uagen
+man/man1/privoxy-log-parser.1
+man/man1/privoxy-regression-test.1
+man/man1/uagen.1
+man/man8/privoxy.8
sbin/privoxy
share/doc/privoxy/AUTHORS
share/doc/privoxy/ChangeLog
@@ -23,7 +29,10 @@ share/doc/privoxy/faq/installation.html
share/doc/privoxy/faq/misc.html
share/doc/privoxy/faq/trouble.html
share/doc/privoxy/index.html
+share/doc/privoxy/man-page/privoxy-log-parser.1.html
share/doc/privoxy/man-page/privoxy-man-page.html
+share/doc/privoxy/man-page/privoxy-regression-test.1.html
+share/doc/privoxy/man-page/uagen.1.html
share/doc/privoxy/p_doc.css
share/doc/privoxy/user-manual/actions-file.html
share/doc/privoxy/user-manual/appendix.html
@@ -33,6 +42,7 @@ share/doc/privoxy/user-manual/contact.ht
share/doc/privoxy/user-manual/copyright.html
share/doc/privoxy/user-manual/files-in-use.jpg
share/doc/privoxy/user-manual/filter-file.html
+share/doc/privoxy/user-manual/howto.html
share/doc/privoxy/user-manual/index.html
share/doc/privoxy/user-manual/installation.html
share/doc/privoxy/user-manual/introduction.html
@@ -65,6 +75,7 @@ share/examples/privoxy/templates/default
share/examples/privoxy/templates/edit-actions-add-url-form
share/examples/privoxy/templates/edit-actions-for-url
share/examples/privoxy/templates/edit-actions-for-url-filter
+share/examples/privoxy/templates/edit-actions-for-url-string-action
share/examples/privoxy/templates/edit-actions-list
share/examples/privoxy/templates/edit-actions-list-button
share/examples/privoxy/templates/edit-actions-list-section
@@ -86,7 +97,7 @@ share/examples/privoxy/templates/toggle
share/examples/privoxy/templates/toggle-mini
share/examples/privoxy/templates/untrusted
share/examples/privoxy/templates/url-info-osd.xml
+share/examples/privoxy/templates/wpad.dat
share/examples/privoxy/trust
share/examples/privoxy/user.action
share/examples/privoxy/user.filter
-@pkgdir share/doc/privoxy/images
Index: pkgsrc/www/privoxy/distinfo
diff -u pkgsrc/www/privoxy/distinfo:1.28 pkgsrc/www/privoxy/distinfo:1.29
--- pkgsrc/www/privoxy/distinfo:1.28 Tue Oct 26 11:30:26 2021
+++ pkgsrc/www/privoxy/distinfo Thu Aug 13 18:17:58 2026
@@ -1,9 +1,11 @@
-$NetBSD: distinfo,v 1.28 2021/10/26 11:30:26 nia Exp $
+$NetBSD: distinfo,v 1.29 2026/08/13 18:17:58 wiz Exp $
-BLAKE2s (privoxy-3.0.29-stable-src.tar.gz) = a153b3e25d0f286d342bd06384f41030f645e6a3a334a3be67b3edf08323c0a3
-SHA512 (privoxy-3.0.29-stable-src.tar.gz) = 2f483a37d697738815f4c58a775fbf116a34ac5e0e74d19814252c5ff1572350181066d468327189faf20c92d808d551b0017a9525ec98276330ee539554c1ba
-Size (privoxy-3.0.29-stable-src.tar.gz) = 1830550 bytes
-SHA1 (patch-aa) = d5296d7440b92b76c28136453d098c617d4e439b
-SHA1 (patch-ab) = c54a5845ad76d36ea281697cce17237d1d2ee0bd
-SHA1 (patch-ac) = 2d1a1efc53b4cd017d3ce21080adf1bfcc5cc97c
-SHA1 (patch-ag) = 64957682dbb3ff8b78ef47cc936d591facf9eb3a
+BLAKE2s (privoxy-4.2.0-stable-src.tar.gz) = 80f41f73a6b47eef30bfe5c7fe3332e37c0bcfe212e13b190477e04b90731e9d
+SHA512 (privoxy-4.2.0-stable-src.tar.gz) = e727a16ead5759e3e976d42558ad0c0af137a7f74d8ccc83ed53a34320654362489a77d3bd54c9b4d5b84c5b4ecf8e375d2c1d0e3108eb26acce3014dfbefdb0
+Size (privoxy-4.2.0-stable-src.tar.gz) = 1791064 bytes
+SHA1 (patch-GNUmakefile.in) = b8b5d36d63c5b522d46580462cf08d4131fdbaa9
+SHA1 (patch-config) = a111b0d25be9166d64632e8c3b4b5ef61a6f0cb1
+SHA1 (patch-configure.in) = ffbfaf2d1347d9ac7430500078d678ad0e8c7059
+SHA1 (patch-man_privoxy.8) = 3ec0da5655f9ae94b648b9d04511f4e18079fa89
+SHA1 (patch-man_uagen.1) = da9026d395b659bc0634520c0d0bf9365314a8ed
+SHA1 (patch-tools_uagen.pl) = 0f2c1ba3ff40baba1ea2afac1279b776ae3ff505
Index: pkgsrc/www/privoxy/options.mk
diff -u pkgsrc/www/privoxy/options.mk:1.1 pkgsrc/www/privoxy/options.mk:1.2
--- pkgsrc/www/privoxy/options.mk:1.1 Wed Mar 21 23:18:09 2018
+++ pkgsrc/www/privoxy/options.mk Thu Aug 13 18:17:58 2026
@@ -1,9 +1,9 @@
-# $NetBSD: options.mk,v 1.1 2018/03/21 23:18:09 gdt Exp $
+# $NetBSD: options.mk,v 1.2 2026/08/13 18:17:58 wiz Exp $
#
PKG_OPTIONS_VAR= PKG_OPTIONS.privoxy
-PKG_SUPPORTED_OPTIONS+= inet6
-PKG_SUGGESTED_OPTIONS+= inet6
+PKG_SUPPORTED_OPTIONS+= inet6 zlib zstd
+PKG_SUGGESTED_OPTIONS+= inet6 zlib zstd
.include "../../mk/bsd.options.mk"
@@ -12,3 +12,17 @@ CONFIGURE_ARGS+= --enable-ipv6-support
.else
CONFIGURE_ARGS+= --disable-ipv6-support
.endif
+
+.if !empty(PKG_OPTIONS:Mzlib)
+CONFIGURE_ARGS+= --enable-zlib --enable-compression
+.include "../../devel/zlib/buildlink3.mk"
+.else
+CONFIGURE_ARGS+= --disable-zlib --disable-compression
+.endif
+
+.if !empty(PKG_OPTIONS:Mzstd)
+CONFIGURE_ARGS+= --with-zstd
+.include "../../archivers/zstd/buildlink3.mk"
+.else
+CONFIGURE_ARGS+= --without-zstd
+.endif
Added files:
Index: pkgsrc/www/privoxy/patches/patch-GNUmakefile.in
diff -u /dev/null pkgsrc/www/privoxy/patches/patch-GNUmakefile.in:1.1
--- /dev/null Thu Aug 13 18:17:58 2026
+++ pkgsrc/www/privoxy/patches/patch-GNUmakefile.in Thu Aug 13 18:17:58 2026
@@ -0,0 +1,120 @@
+$NetBSD: patch-GNUmakefile.in,v 1.1 2026/08/13 18:17:58 wiz Exp $
+
+Drop user/group existence checks; pkgsrc handles their creation.
+
+--- GNUmakefile.in.orig 2026-06-02 15:06:25.000000000 +0000
++++ GNUmakefile.in
+@@ -858,16 +858,6 @@ install-strip:
+ # Perhaps the whole user/group validation should be done here, and simplified.
+ PROGRAM_V = Privoxy $(VERSION) $(CODE_STATUS)
+ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
+- @# Quick test for valid USER.
+- @if [ -n "$(USER)" ]; then \
+- $(ID) $(USER) >/dev/null || exit 1;\
+- fi
+- @# Test for valid group. FIXME. USER does not have to belong to GROUP
+- @# for file ownership purposes.
+-# if [ -n "$(GROUP_T)" ] && [ -n "$(USER)" ] && ! $(GROUPS) $(USER) | $(GREP) "\<$(GROUP_T)\>" >/dev/null; then \
+-# $(ECHO) Group $(GROUP_T) for User $(USER) is invalid && exit 1 ;\
+-# fi
+-
+ @$(ECHO) "Creating directories, and preparing $(PROGRAM_V) installation"
+ $(CHMOD) $(DIR_MODE) $(MKDIR)
+ @$(MKDIR) $(DESTDIR)$(BIN_DEST) $(DESTDIR)$(SBIN_DEST) \
+@@ -945,93 +935,24 @@ install: CONF_DEST LOG_DEST PID_DEST che
+ $(INSTALL) $(INSTALL_T) $$i $(DESTDIR)$(CONF_DEST)/templates ;\
+ done
+
+- @# FIXME: group/user validation is overly convoluted.
+- @# If superuser install ... we require a minimum of group ownership
+- @# of those files the daemon writes to, to be non-root owned.
+- @if [ "`$(ID) |sed 's/(.*//' |sed 's/.*=//'`" = "0" ] ;then\
+- if [ x$(USER) = x ] || [ $(USER) = root ]; then \
+- if [ x$(GROUP) = x ] || [ $(GROUP) = root ]; then \
+- if [ "`$(ID) privoxy`" ] && \
+- $(GROUPS) privoxy | $(SED) 's/^.*://' |$(GREP) "\<privoxy\>" >/dev/null; then \
+- $(ECHO) "Warning: Setting group owner to privoxy";\
+- GROUP_T=privoxy ;\
+- else \
+- $(ECHO) "******************************************************************" ;\
+- $(ECHO) " WARNING! Installing config files as root!" ;\
+- $(ECHO) " It is strongly recommended to run $(PROGRAM) as a non-root user," ;\
+- $(ECHO) " and to install the config files as that user and/or group!" ;\
+- $(ECHO) " Please read INSTALL, and create a privoxy user and group!" ;\
+- $(ECHO) "*******************************************************************" ;\
+- GROUP_T=$(GROUP) ;\
+- fi ;\
+- else \
+- GROUP_T=$(GROUP) ;\
+- fi ;\
+- if [ x$(GROUP_T) != x ]; then \
+- INSTALL_CONF="$(INSTALL_R) -g $$GROUP_T " ;\
+- else \
+- INSTALL_CONF="$(INSTALL_R)" ;\
+- fi ;\
+- else \
+- $(ECHO) "Superuser install, installing config files as $(USER):$(GROUP_T)" ;\
+- INSTALL_CONF="$(INSTALL_R) -o $(USER) -g $(GROUP_T)" ;\
+- GROUP_T=$(GROUP_T) ;\
+- fi ;\
+- else \
+- if [ ! "`id $(USER)`" = "`id`" ] ;then \
+- $(ECHO) "** WARNING ** current install user different from configured user!!" ;\
+- $(ECHO) "Edit may fail." ;\
+- fi ;\
+- INSTALL_CONF="$(INSTALL_R)" ;\
+- fi ;\
+ $(ECHO) Installing configuration files to $(DESTDIR)$(CONF_DEST);\
+ for i in $(CONFIGS); do \
+ if [ "$$i" = "default.action" ] || [ "$$i" = "default.filter" ] ; then \
+ $(RM) $(DESTDIR)$(CONF_DEST)/$$i ;\
+ $(ECHO) Installing fresh $$i;\
+- $(INSTALL) $$INSTALL_CONF $$i $(DESTDIR)$(CONF_DEST) || exit 1;\
++ $(INSTALL) $(INSTALL_T) $$i $(DESTDIR)$(CONF_DEST) || exit 1;\
+ elif [ -s "$(DESTDIR)$(CONF_DEST)/$$i" ]; then \
+ $(ECHO) Installing $$i as $$i.new ;\
+- $(INSTALL) $$INSTALL_CONF $$i $(DESTDIR)$(CONF_DEST)/$$i.new || exit 1;\
++ $(INSTALL) $(INSTALL_T) $$i $(DESTDIR)$(CONF_DEST)/$$i.new || exit 1;\
+ NEW=1;\
+ else \
+- $(INSTALL) $$INSTALL_CONF $$i $(DESTDIR)$(CONF_DEST) || exit 1;\
++ $(INSTALL) $(INSTALL_T) $$i $(DESTDIR)$(CONF_DEST) || exit 1;\
+ fi ;\
+ done ;\
+ if [ -n "$$NEW" ]; then \
+ $(CHMOD) $(RWD_MODE) $(DESTDIR)$(CONF_DEST)/*.new || exit 1 ;\
+ $(ECHO) "Warning: Older config files are preserved. Check new versions for changes!" ;\
+ fi ;\
+- [ ! -f $(DESTDIR)$(LOG_DEST)/logfile ] && $(ECHO) Creating logfiles in $(DESTDIR)$(LOG_DEST) || \
+- $(ECHO) Checking logfiles in $(DESTDIR)$(LOG_DEST) ;\
+- $(TOUCH) $(DESTDIR)$(LOG_DEST)/logfile || exit 1 ;\
+- if [ x$$USER != x ]; then \
+- $(CHOWN) $$USER $(DESTDIR)$(LOG_DEST)/logfile || \
+- $(ECHO) "** WARNING ** current install user different from configured user. Logging may fail!!" ;\
+- fi ;\
+- if [ x$$GROUP_T != x ]; then \
+- $(CHGRP) $$GROUP_T $(DESTDIR)$(LOG_DEST)/logfile || \
+- $(ECHO) "** WARNING ** current install user different from configured user. Logging may fail!!" ;\
+- fi ;\
+- $(CHMOD) $(RWD_MODE) $(DESTDIR)$(LOG_DEST)/logfile || exit 1 ;\
+- if [ "$(prefix)" = "/usr/local" ] || [ "$(prefix)" = "/usr" ]; then \
+- if [ -f /etc/slackware-version ] && [ -d /etc/rc.d/ ] && [ -w /etc/rc.d/ ] ; then \
+- $(SED) 's+%PROGRAM%+$(PROGRAM)+' slackware/rc.privoxy.in | \
+- $(SED) 's+%SBIN_DEST%+$(SBIN_DEST)+' | \
+- $(SED) 's+%CONF_DEST%+$(CONF_DEST)+' | \
+- $(SED) 's+%USER%+$(USER)+' | \
+- $(SED) 's+%GROUP%+$(GROUP_T)+' >slackware/rc.privoxy ;\
+- $(INSTALL) $(INSTALL_P) slackware/rc.privoxy $(DESTDIR)/etc/rc.d/ ;\
+- $(ECHO) "Installing for Slackware." ;\
+- $(ECHO) "Don't forget to add the rc.privoxy to rc.local if you want it started at every boot" ;\
+- elif [ -d $(DESTDIR)/etc/init.d ] && [ -w $(DESTDIR)/etc/init.d ] ; then \
+- $(ECHO) "Installing generic init script to $(DESTDIR)/etc/init.d/privoxy" ;\
+- $(ECHO) "Please check that the PATHs are correct, and edit if needed." ;\
+- $(INSTALL) $(INSTALL_P) privoxy-generic.init $(DESTDIR)/etc/init.d/privoxy ;\
+- fi ;\
+- else \
+- $(ECHO) "No init script installed, install it manually if needed" ;\
+- fi
+ $(RM) config.base config.tmp
+ @# mmmmm, good.
+ @$(ECHO) "$(PROGRAM_V) installation succeeded!"
Index: pkgsrc/www/privoxy/patches/patch-config
diff -u /dev/null pkgsrc/www/privoxy/patches/patch-config:1.1
--- /dev/null Thu Aug 13 18:17:58 2026
+++ pkgsrc/www/privoxy/patches/patch-config Thu Aug 13 18:17:58 2026
@@ -0,0 +1,75 @@
+$NetBSD: patch-config,v 1.1 2026/08/13 18:17:58 wiz Exp $
+
+Replace hardcoded paths with paths configured by pkgsrc.
+
+--- config.orig 2026-06-02 15:06:25.000000000 +0000
++++ config
+@@ -109,7 +109,7 @@
+ # The best all purpose solution is simply to put the full local
+ # PATH to where the User Manual is located:
+ #
+-# user-manual /usr/share/doc/privoxy/user-manual
++# user-manual @PRIVOXY_DOCDIR@/user-manual
+ #
+ # The User Manual is then available to anyone with access to
+ # Privoxy, by following the built-in URL: http://
+@@ -249,7 +249,7 @@
+ #
+ # Default value:
+ #
+-# /etc/privoxy (Unix) or Privoxy installation dir (Windows)
++# @PKG_SYSCONFDIR@ (Unix) or Privoxy installation dir (Windows)
+ #
+ # Effect if unset:
+ #
+@@ -259,7 +259,7 @@
+ #
+ # No trailing "/", please.
+ #
+-confdir .
++confdir @PKG_SYSCONFDIR@
+ #
+ # 2.2. templdir
+ # ==============
+@@ -334,7 +334,7 @@ confdir .
+ #
+ # Default value:
+ #
+-# /var/log/privoxy (Unix) or Privoxy installation dir (Windows)
++# @PRIVOXY_LOGDIR@ (Unix) or Privoxy installation dir (Windows)
+ #
+ # Effect if unset:
+ #
+@@ -344,7 +344,7 @@ confdir .
+ #
+ # No trailing "/", please.
+ #
+-logdir .
++logdir @PRIVOXY_LOGDIR@
+ #
+ # 2.5. actionsfile
+ # =================
+@@ -2483,9 +2483,9 @@ socket-timeout 300
+ #
+ # Example:
+ #
+-# ca-directory /usr/local/etc/privoxy/CA
++# ca-directory @PKG_SYSCONFDIR@/CA
+ #
+-#ca-directory /usr/local/etc/privoxy/CA
++#ca-directory @PKG_SYSCONFDIR@/CA
+ #
+ # 7.2. ca-cert-file
+ # ==================
+@@ -2650,9 +2650,9 @@ socket-timeout 300
+ # +-----------------------------------------------------+
+ # Example:
+ #
+-# certificate-directory /usr/local/var/privoxy/certs
++# certificate-directory @VARBASE@/privoxy/certs
+ #
+-#certificate-directory /usr/local/var/privoxy/certs
++#certificate-directory @VARBASE@/privoxy/certs
+ #
+ # 7.6. elliptic-curve-keys
+ # =========================
Index: pkgsrc/www/privoxy/patches/patch-configure.in
diff -u /dev/null pkgsrc/www/privoxy/patches/patch-configure.in:1.1
--- /dev/null Thu Aug 13 18:17:58 2026
+++ pkgsrc/www/privoxy/patches/patch-configure.in Thu Aug 13 18:17:58 2026
@@ -0,0 +1,361 @@
+$NetBSD: patch-configure.in,v 1.1 2026/08/13 18:17:58 wiz Exp $
+
+Drop user/group existence checks; pkgsrc handles their creation.
+Improve detection of gethostbyaddr_r and gethostbyname_r by using
+compile-time checks with implicit function declarations disabled.
+
+--- configure.in.orig 2026-06-02 15:06:25.000000000 +0000
++++ configure.in
+@@ -189,30 +189,12 @@ if test "$host_os" = haiku; then
+ echo "Skipping user and group validity stuff.";
+
+ else
+-
+- $ID privoxy >/dev/null 2>/dev/null
+- if test $? -ne 0 ; then
+- AC_MSG_WARN(There is no user 'privoxy' on this system)
+- fi
+ AC_MSG_CHECKING([for user])
+ AC_ARG_WITH(user,
+ [ --with-user=privoxy Set user under which privoxy will run],
+ [
+- if test "x$withval" != "xyes"; then
+- if test $ID = no ; then
+- AC_MSG_ERROR(There is no 'id' program on this system)
+- else
+- AC_MSG_RESULT($with_user)
+- $ID $with_user 2>/dev/null >/dev/null
+- if test $? -eq 0 ; then
+- USER=$with_user;
+- else
+- AC_MSG_ERROR(There is no user '$with_user' on this system)
+- fi
+- fi
+- else
+- AC_MSG_ERROR(We need a user if you give me this parameter)
+- fi
++ AC_MSG_RESULT($with_user)
++ USER=$with_user;
+ ],
+ [
+ if test $ID = no ; then
+@@ -229,29 +211,8 @@ else
+ AC_ARG_WITH(group,
+ [ --with-group=privoxy Set group for privoxy],
+ [
+- if test "x$withval" != "xyes"; then
+- if test $BGROUPS = no ; then
+- AC_MSG_ERROR(There is no 'groups' program on this system)
+- else
+- AC_MSG_RESULT($with_group)
+- $BGROUPS $USER >/dev/null
+- if test $? -eq 0 ; then
+- for i in `$BGROUPS $USER | sed 's/.*: //' 2>/dev/null`; do
+- if test "x$i" = "x$with_group" ; then
+- GROUP=$with_group
+- break
+- fi
+- done
+- if test "x$GROUP" != "x$with_group" ; then
+- AC_MSG_ERROR(The given value '$withval' does not match group entry)
+- fi
+- else
+- AC_MSG_ERROR(There is no group entry for user '$USER')
+- fi
+- fi
+- else
+- AC_MSG_ERROR(We need a group if you give me this parameter)
+- fi
++ AC_MSG_RESULT($with_group)
++ GROUP=$with_group
+ ],
+ [
+ if test $BGROUPS = no ; then
+@@ -523,92 +484,192 @@ dnl ====================================
+ dnl Next line needed to find the gethost*_r functions on Solaris
+ AC_CHECK_LIB(nsl, gethostbyname)
+
+-AC_CHECK_FUNC(gethostbyaddr_r, [
+- AC_MSG_CHECKING([signature of gethostbyaddr_r])
+- AC_TRY_COMPILE([
+-# include <netdb.h>
+- ], [
+- struct hostent *h, *hp;
+- char *a, *b;
+- int l, bl, t, e;
+- (void) gethostbyaddr_r(a, l, t, h, b, bl, &hp, &e)
+- ], [
+- AC_DEFINE(HAVE_GETHOSTBYADDR_R_8_ARGS)
+- AC_MSG_RESULT([8 args])
+- ], [
+- AC_TRY_COMPILE([
+-# include <netdb.h>
+- ], [
+- struct hostent *h;
+- char *a, *b;
+- int l, bl, t, e;
+- (void) gethostbyaddr_r(a, l, t, h, b, bl, &e)
+- ], [
+- AC_DEFINE(HAVE_GETHOSTBYADDR_R_7_ARGS)
+- AC_MSG_RESULT([7 args])
+- ], [
+- AC_TRY_COMPILE([
+-# include <netdb.h>
+- ], [
+- struct hostent_data *d;
+- struct hostent *h;
+- char a,
+- int l, t;
+- (void) gethostbyaddr_r(a, l, t, h, d)
+- ], [
+- AC_DEFINE(HAVE_GETHOSTBYADDR_R_5_ARGS)
+- AC_MSG_RESULT([5 args])
+- ], [
+- AC_MSG_RESULT(unrecognised)
+- ])
+- ])
+- ])
+-], [
+- AC_MSG_RESULT(no)
+-])
++AC_MSG_CHECKING([for gethostbyaddr_r])
++AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ #if defined(__GNUC__) || defined(__clang__)
++ #pragma GCC diagnostic error "-Wimplicit-function-declaration"
++ #endif
++ ]],
++ [[
++ (void)gethostbyaddr_r;
++ ]]
++ )],
++ [
++ AC_MSG_RESULT([yes])
++ AC_MSG_CHECKING([signature of gethostbyaddr_r])
++
++ AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ ]],
++ [[
++ struct hostent *h, *hp;
++ char *a, *b;
++ int l, bl, t, e;
++ (void)gethostbyaddr_r(a, l, t, h, b, bl, &hp, &e);
++ ]]
++ )],
++ [
++ AC_DEFINE([HAVE_GETHOSTBYADDR_R], [1],
++ [Define if gethostbyaddr_r is available.])
++ AC_DEFINE([HAVE_GETHOSTBYADDR_R_8_ARGS], [1],
++ [Define if gethostbyaddr_r has 8 arguments.])
++ AC_MSG_RESULT([8 args])
++ ],
++ [
++ AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ ]],
++ [[
++ struct hostent *h;
++ char *a, *b;
++ int l, bl, t, e;
++ (void)gethostbyaddr_r(a, l, t, h, b, bl, &e);
++ ]]
++ )],
++ [
++ AC_DEFINE([HAVE_GETHOSTBYADDR_R], [1],
++ [Define if gethostbyaddr_r is available.])
++ AC_DEFINE([HAVE_GETHOSTBYADDR_R_7_ARGS], [1],
++ [Define if gethostbyaddr_r has 7 arguments.])
++ AC_MSG_RESULT([7 args])
++ ],
++ [
++ AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ ]],
++ [[
++ struct hostent_data *d;
++ struct hostent *h;
++ char *a;
++ int l, t;
++ (void)gethostbyaddr_r(a, l, t, h, d);
++ ]]
++ )],
++ [
++ AC_DEFINE([HAVE_GETHOSTBYADDR_R], [1],
++ [Define if gethostbyaddr_r is available.])
++ AC_DEFINE([HAVE_GETHOSTBYADDR_R_5_ARGS], [1],
++ [Define if gethostbyaddr_r has 5 arguments.])
++ AC_MSG_RESULT([5 args])
++ ],
++ [
++ AC_MSG_RESULT([unrecognised])
++ AC_MSG_WARN(
++ [gethostbyaddr_r is declared, but its signature is unrecognised]
++ )
++ ]
++ )
++ ]
++ )
++ ]
++ )
++ ],
++ [
++ AC_MSG_RESULT([no])
++ ]
++)
+
+-AC_CHECK_FUNC(gethostbyname_r, [
+- AC_MSG_CHECKING([signature of gethostbyname_r])
+- AC_TRY_COMPILE([
+-# include <netdb.h>
+- ], [
+- struct hostent *h, *r;
+- char *n, *b;
+- int bl, e;
+- (void) gethostbyname_r(n, h, b, bl, &r, &e)
+- ], [
+- AC_DEFINE(HAVE_GETHOSTBYNAME_R_6_ARGS)
+- AC_MSG_RESULT([6 args])
+- ], [
+- AC_TRY_COMPILE([
+-# include <netdb.h>
+- ], [
+- struct hostent *h;
+- char *n, *b;
+- int bl, e;
+- (void) gethostbyname_r(n, h, b, bl, &e)
+- ], [
+- AC_DEFINE(HAVE_GETHOSTBYNAME_R_5_ARGS)
+- AC_MSG_RESULT([5 args])
+- ], [
+- AC_TRY_COMPILE([
+-# include <netdb.h>
+- ], [
+- struct hostent_data *d;
+- struct hostent *h;
+- char *n,
+- (void) gethostbyname_r(n, h, d)
+- ], [
+- AC_DEFINE(HAVE_GETHOSTBYNAME_R_3_ARGS)
+- AC_MSG_RESULT([3 args])
+- ], [
+- AC_MSG_RESULT(unrecognised)
+- ])
+- ])
+- ])
+-], [
+- AC_MSG_RESULT(no)
+-])
++AC_MSG_CHECKING([for gethostbyname_r])
++AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ #if defined(__GNUC__) || defined(__clang__)
++ #pragma GCC diagnostic error "-Wimplicit-function-declaration"
++ #endif
++ ]],
++ [[
++ (void)gethostbyname_r;
++ ]]
++ )],
++ [
++ AC_MSG_RESULT([yes])
++ AC_MSG_CHECKING([signature of gethostbyname_r])
++
++ AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ ]],
++ [[
++ struct hostent *h, *r;
++ char *n, *b;
++ int bl, e;
++ (void)gethostbyname_r(n, h, b, bl, &r, &e);
++ ]]
++ )],
++ [
++ AC_DEFINE([HAVE_GETHOSTBYNAME_R], [1],
++ [Define if gethostbyname_r is available.])
++ AC_DEFINE([HAVE_GETHOSTBYNAME_R_6_ARGS], [1],
++ [Define if gethostbyname_r has 6 arguments.])
++ AC_MSG_RESULT([6 args])
++ ],
++ [
++ AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ ]],
++ [[
++ struct hostent *h;
++ char *n, *b;
++ int bl, e;
++ (void)gethostbyname_r(n, h, b, bl, &e);
++ ]]
++ )],
++ [
++ AC_DEFINE([HAVE_GETHOSTBYNAME_R], [1],
++ [Define if gethostbyname_r is available.])
++ AC_DEFINE([HAVE_GETHOSTBYNAME_R_5_ARGS], [1],
++ [Define if gethostbyname_r has 5 arguments.])
++ AC_MSG_RESULT([5 args])
++ ],
++ [
++ AC_COMPILE_IFELSE(
++ [AC_LANG_PROGRAM(
++ [[
++ #include <netdb.h>
++ ]],
++ [[
++ struct hostent_data *d;
++ struct hostent *h;
++ char *n;
++ (void)gethostbyname_r(n, h, d);
++ ]]
++ )],
++ [
++ AC_DEFINE([HAVE_GETHOSTBYNAME_R], [1],
++ [Define if gethostbyname_r is available.])
++ AC_DEFINE([HAVE_GETHOSTBYNAME_R_3_ARGS], [1],
++ [Define if gethostbyname_r has 3 arguments.])
++ AC_MSG_RESULT([3 args])
++ ],
++ [
++ AC_MSG_RESULT([unrecognised])
++ AC_MSG_WARN(
++ [gethostbyname_r is declared, but its signature is unrecognised]
++ )
++ ]
++ )
++ ]
++ )
++ ]
++ )
++ ],
++ [
++ AC_MSG_RESULT([no])
++ ]
++)
+
+ AC_CHECK_FUNC(gmtime_r, [
+ AC_MSG_CHECKING([signature of gmtime_r])
+@@ -779,9 +840,7 @@ AC_CHECK_FUNCS([ \
+ calloc \
+ getcwd \
+ gethostbyaddr \
+- gethostbyaddr_r \
+ gethostbyname \
+- gethostbyname_r \
+ gettimeofday \
+ inet_ntoa \
+ memchr \
Index: pkgsrc/www/privoxy/patches/patch-man_privoxy.8
diff -u /dev/null pkgsrc/www/privoxy/patches/patch-man_privoxy.8:1.1
--- /dev/null Thu Aug 13 18:17:58 2026
+++ pkgsrc/www/privoxy/patches/patch-man_privoxy.8 Thu Aug 13 18:17:58 2026
@@ -0,0 +1,42 @@
+$NetBSD: patch-man_privoxy.8,v 1.1 2026/08/13 18:17:58 wiz Exp $
+
+Replace hardcoded paths with paths configured by pkgsrc.
+
+--- man/privoxy.8.orig 2026-06-02 15:06:25.000000000 +0000
++++ man/privoxy.8
+@@ -122,7 +122,7 @@ be used for locally defined exceptions t
+ \fImatch-all.action\fR and \fIdefault.action\fR,
+ and \fIuser.filter\fR for locally defined filters. These are
+ well commented. On Unix and Unix-like systems, these are located in
+-\fI/etc/privoxy/\fR by default.
++\fI@PKG_SYSCONFDIR@/\fR by default.
+ .PP
+ \fBPrivoxy\fR uses the concept of \fBactions\fR
+ in order to manipulate the data stream between the browser and remote sites.
+@@ -145,16 +145,16 @@ features and notes on upgrading.
+ .SH "FILES"
+
+ .nf
+- \fI/usr/sbin/privoxy\fR
+- \fI/etc/privoxy/config\fR
+- \fI/etc/privoxy/match-all.action\fR
+- \fI/etc/privoxy/default.action\fR
+- \fI/etc/privoxy/user.action\fR
+- \fI/etc/privoxy/default.filter\fR
+- \fI/etc/privoxy/user.filter\fR
+- \fI/etc/privoxy/trust\fR
+- \fI/etc/privoxy/templates/*\fR
+- \fI/var/log/privoxy/logfile\fR
++ \fI@PREFIX@/sbin/privoxy\fR
++ \fI@PKG_SYSCONFDIR@/config\fR
++ \fI@PKG_SYSCONFDIR@/match-all.action\fR
++ \fI@PKG_SYSCONFDIR@/default.action\fR
++ \fI@PKG_SYSCONFDIR@/user.action\fR
++ \fI@PKG_SYSCONFDIR@/default.filter\fR
++ \fI@PKG_SYSCONFDIR@/user.filter\fR
++ \fI@PKG_SYSCONFDIR@/trust\fR
++ \fI@PKG_SYSCONFDIR@/templates/*\fR
++ \fI@PRIVOXY_LOGDIR@/logfile\fR
+ .fi
+ .PP
+ Various other files should be included, but may vary depending on platform
Index: pkgsrc/www/privoxy/patches/patch-man_uagen.1
diff -u /dev/null pkgsrc/www/privoxy/patches/patch-man_uagen.1:1.1
--- /dev/null Thu Aug 13 18:17:58 2026
+++ pkgsrc/www/privoxy/patches/patch-man_uagen.1 Thu Aug 13 18:17:58 2026
@@ -0,0 +1,24 @@
+$NetBSD: patch-man_uagen.1,v 1.1 2026/08/13 18:17:58 wiz Exp $
+
+Replace hardcoded paths with paths configured by pkgsrc.
+
+--- man/uagen.1.orig 2026-06-02 15:06:25.000000000 +0000
++++ man/uagen.1
+@@ -91,7 +91,7 @@ used by many Mozilla browsers.
+ .SH OPTIONS
+ .IX Header "OPTIONS"
+ \&\fB\-\-action\-file\fR \fIaction_file\fR Privoxy action file to write the
+-generated actions into. Default is /etc/privoxy/user\-agent.action.
++generated actions into. Default is @PKG_SYSCONFDIR@/user\-agent.action.
+ .PP
+ \&\fB\-\-action\-injection\fR Don\*(Aqt generate a new action file from scratch,
+ but read an old one and just replace the action values. Useful
+@@ -124,7 +124,7 @@ User\-Agent, by default the chosen langu
+ \&\fBhide\-accept\-language\fR parameter.
+ .PP
+ \&\fB\-\-logfile\fR \fIlogfile\fR Logfile to save error messages and the generated
+-User\-Agents. Default is /var/log/uagen.log.
++User\-Agents. Default is @VARBASE@/log/uagen.log.
+ .PP
+ \&\fB\-\-loop\fR Don\*(Aqt exit after the generation of the action file. Sleep for
+ a while and generate a new one instead. Useful if you don\*(Aqt have \fBcron\fR\|(8).
Index: pkgsrc/www/privoxy/patches/patch-tools_uagen.pl
diff -u /dev/null pkgsrc/www/privoxy/patches/patch-tools_uagen.pl:1.1
--- /dev/null Thu Aug 13 18:17:58 2026
+++ pkgsrc/www/privoxy/patches/patch-tools_uagen.pl Thu Aug 13 18:17:58 2026
@@ -0,0 +1,26 @@
+$NetBSD: patch-tools_uagen.pl,v 1.1 2026/08/13 18:17:58 wiz Exp $
+
+Replace hardcoded paths with paths configured by pkgsrc.
+
+--- tools/uagen.pl.orig 2026-08-12 13:09:18.065429443 +0000
++++ tools/uagen.pl
+@@ -41,8 +41,8 @@ use constant {
+
+ UAGEN_VERSION => 'uagen 1.2.7',
+
+- UAGEN_LOGFILE => '/var/log/uagen.log',
+- ACTION_FILE => '/etc/privoxy/user-agent.action',
++ UAGEN_LOGFILE => '@VARBASE@/log/uagen.log',
++ ACTION_FILE => '@PKG_SYSCONFDIR@/user-agent.action',
+ MOZILLA_PREFS_FILE => '',
+ SILENT => 0,
+ NO_LOGGING => 0,
+@@ -477,7 +477,7 @@ used by many Mozilla browsers.
+ =head1 OPTIONS
+
+ B<--action-file> I<action_file> Privoxy action file to write the
+-generated actions into. Default is /etc/privoxy/user-agent.action.
++generated actions into. Default is @PKG_SYSCONFDIR@/user-agent.action.
+
+ B<--action-injection> Don't generate a new action file from scratch,
+ but read an old one and just replace the action values. Useful
Home |
Main Index |
Thread Index |
Old Index