summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authormoksh <mysticmoksh@riseup.net>2026-04-12 17:07:03 +0530
committerSharlatan Hellseher <sharlatanus@gmail.com>2026-08-14 20:51:53 +0100
commit5e534cf980a204038ec6ff57cbd9070d05b0e6dc (patch)
tree260ad2e097270c48dd3e6dbdb4fdc9489aece602 /gnu/packages
parentd0d3d40e013512f5cfda5598a112c6c447db60d1 (diff)
gnu: dnscrypt-proxy: Update to 2.1.18.
v1.9.5 is EOL and the project migrated to Go in v2. * gnu/packages/dns.scm (dnscrypt-proxy): Update to 2.1.18. [source] <snippet>: Remove "vendor" directory and substitute version of Go module "github.com/coreos/go-systemd". [build-system]: Switch to go-build-system. [phases]{install-config-file}: New phase. [inputs]: Remove libltdl and libsodium. [native-inputs]: Remove pkg-config, automake, autoconf, and libtool; add go-codeberg-org-miekg-dns, go-github-com-burntsushi-toml, go-github-com-dchest-safefile, go-github-com-coreos-go-systemd-v22, go-github-com-fsnotify-fsnotify, go-github-com-gorilla-websocket, go-github-com-hashicorp-go-immutable-radix, go-github-com-hectane-go-acl, go-github-com-jedisct1-dlog, go-github-com-jedisct1-go-clocksmith, go-github-com-jedisct1-go-dnsstamps, go-github-com-jedisct1-go-hpke-compact, go-github-com-jedisct1-go-ipcrypt, go-github-com-jedisct1-go-minisign, go-github-com-jedisct1-go-sieve-cache, go-github-com-jedisct1-xsecretbox, go-github-com-k-sone-critbitgo, go-github-com-kardianos-service, go-github-com-lifenjoiner-dhcpdns, go-github-com-miekg-dns, go-github-com-powerman-check, go-github-com-quic-go-quic-go, go-github-com-vividcortex-ewma, go-golang-org-x-crypto, go-golang-org-x-net, go-golang-org-x-sys, and go-gopkg-in-natefinch-lumberjack-v2. [home-page]: Fix URL for v2. [license]: Keep only ISC one as Libevent and "src/ext/queue.h" have been dropped from the source. Fixes: guix/guix#7584 Merges: guix/guix!7744 Co-authored-by: Sharlatan Hellseher <sharlatanus@gmail.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/dns.scm110
1 files changed, 77 insertions, 33 deletions
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index f31925b37a4..82608f5d778 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -28,6 +28,8 @@
28;;; Copyright © 2024-2026 Ashish SHUKLA <ashish.is@lostca.se> 28;;; Copyright © 2024-2026 Ashish SHUKLA <ashish.is@lostca.se>
29;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com> 29;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
30;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com> 30;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
31;;; Copyright © 2026 moksh <mysticmoksh@riseup.net>
32;;; Copyright © 2026 Sharlatan Hellseher <sharlatanus@gmail.com>
31;;; 33;;;
32;;; This file is part of GNU Guix. 34;;; This file is part of GNU Guix.
33;;; 35;;;
@@ -63,6 +65,12 @@
63 #:use-module (gnu packages gcc) 65 #:use-module (gnu packages gcc)
64 #:use-module (gnu packages gettext) 66 #:use-module (gnu packages gettext)
65 #:use-module (gnu packages glib) 67 #:use-module (gnu packages glib)
68 #:use-module (gnu packages golang)
69 #:use-module (gnu packages golang-web)
70 #:use-module (gnu packages golang-crypto)
71 #:use-module (gnu packages golang-build)
72 #:use-module (gnu packages golang-check)
73 #:use-module (gnu packages golang-xyz)
66 #:use-module (gnu packages groff) 74 #:use-module (gnu packages groff)
67 #:use-module (gnu packages gtk) 75 #:use-module (gnu packages gtk)
68 #:use-module (gnu packages libdaemon) 76 #:use-module (gnu packages libdaemon)
@@ -96,6 +104,7 @@
96 #:use-module (guix build-system cmake) 104 #:use-module (guix build-system cmake)
97 #:use-module (guix build-system copy) 105 #:use-module (guix build-system copy)
98 #:use-module (guix build-system glib-or-gtk) 106 #:use-module (guix build-system glib-or-gtk)
107 #:use-module (guix build-system go)
99 #:use-module (guix build-system gnu) 108 #:use-module (guix build-system gnu)
100 #:use-module (guix build-system meson) 109 #:use-module (guix build-system meson)
101 #:use-module (guix build-system pyproject) 110 #:use-module (guix build-system pyproject)
@@ -796,37 +805,74 @@ Dynamic DNS update utility
796(define-public dnscrypt-proxy 805(define-public dnscrypt-proxy
797 (package 806 (package
798 (name "dnscrypt-proxy") 807 (name "dnscrypt-proxy")
799 (version "1.9.5") 808 (version "2.1.18")
800 (source (origin 809 (source
801 (method url-fetch) 810 (origin
802 (uri (string-append 811 (method git-fetch)
803 "https://download.dnscrypt.org/dnscrypt-proxy/" 812 (uri (git-reference
804 "dnscrypt-proxy-" version ".tar.bz2")) 813 (url "https://github.com/DNSCrypt/dnscrypt-proxy")
805 (sha256 814 (commit version)))
806 (base32 815 (file-name (git-file-name name version))
807 "1dhvklr4dg2vlw108n11xbamacaryyg3dbrg629b76lp7685p7z8")) 816 (sha256
808 (modules '((guix build utils))) 817 (base32 "1dh22j428a631nxg7wgf4szmnyscwpm7z1dj8pizabjmsgcm4p9s"))
809 (snippet 818 (snippet
810 ;; Delete bundled libltdl. XXX: This package also bundles 819 #~(begin
811 ;; a modified libevent that cannot currently be removed. 820 (use-modules (guix build utils))
812 '(begin 821 (delete-file-recursively "vendor")
813 (delete-file-recursively "libltdl") 822 ;; Old version has been deprecated for a long time use v22 instead.
814 #t)))) 823 (substitute* (find-files "." "\\.go$")
815 (build-system gnu-build-system) 824 (("github.com/coreos/go-systemd")
825 "github.com/coreos/go-systemd/v22"))))))
826 (build-system go-build-system)
816 (arguments 827 (arguments
817 `(#:phases 828 (list
818 (modify-phases %standard-phases 829 #:install-source? #f
819 (add-after 'unpack 'autoreconf 830 #:import-path "github.com/dnscrypt/dnscrypt-proxy/dnscrypt-proxy"
820 (lambda _ 831 #:unpack-path "github.com/dnscrypt/dnscrypt-proxy"
821 ;; Re-generate build files due to unbundling ltdl. 832 #:test-subdirs #~(list "../...")
822 ;; TODO: Prevent generating new libltdl and building it. 833 #:phases
823 ;; The system version is still favored and referenced. 834 #~(modify-phases %standard-phases
824 (invoke "autoreconf" "-vif")))))) 835 (add-after 'install 'install-config-file
836 (lambda* (#:key unpack-path #:allow-other-keys)
837 (with-directory-excursion (string-append "src/" unpack-path)
838 (let* ((etc (string-append #$output "/etc"))
839 (cfg-example
840 "dnscrypt-proxy/example-dnscrypt-proxy.toml")
841 (cfg-src
842 (string-append etc "/example-dnscrypt-proxy.toml"))
843 (cfg-dst (string-append etc "/dnscrypt-proxy.toml")))
844 (install-file cfg-example etc)
845 (rename-file cfg-src cfg-dst))))))))
825 (native-inputs 846 (native-inputs
826 (list pkg-config automake autoconf libtool)) 847 (list go-codeberg-org-miekg-dns
827 (inputs 848 go-github-com-burntsushi-toml
828 (list libltdl libsodium)) 849 go-github-com-vividcortex-ewma
829 (home-page "https://www.dnscrypt.org/") 850 go-github-com-cloudflare-circl
851 go-github-com-coreos-go-systemd-v22
852 go-github-com-dchest-safefile
853 go-github-com-fsnotify-fsnotify
854 go-github-com-gorilla-websocket
855 go-github-com-hashicorp-go-immutable-radix
856 go-github-com-hectane-go-acl
857 go-github-com-jedisct1-dlog
858 go-github-com-jedisct1-go-clocksmith
859 go-github-com-jedisct1-go-dnsstamps
860 go-github-com-jedisct1-go-hpke-compact
861 go-github-com-jedisct1-go-ipcrypt
862 go-github-com-jedisct1-go-minisign
863 go-github-com-jedisct1-go-sieve-cache
864 go-github-com-jedisct1-xsecretbox
865 go-github-com-k-sone-critbitgo
866 go-github-com-kardianos-service
867 go-github-com-lifenjoiner-dhcpdns
868 go-github-com-miekg-dns
869 go-github-com-powerman-check
870 go-github-com-quic-go-quic-go
871 go-golang-org-x-crypto
872 go-golang-org-x-net
873 go-golang-org-x-sys
874 go-gopkg-in-natefinch-lumberjack-v2))
875 (home-page "https://dnscrypt.info/")
830 (synopsis "Securely send DNS requests to a remote server") 876 (synopsis "Securely send DNS requests to a remote server")
831 (description 877 (description
832 "@command{dnscrypt-proxy} is a tool for securing communications 878 "@command{dnscrypt-proxy} is a tool for securing communications
@@ -836,10 +882,8 @@ tampered with. For optimal performance it is recommended to use this as
836a forwarder for a caching DNS resolver such as @command{dnsmasq}, but it 882a forwarder for a caching DNS resolver such as @command{dnsmasq}, but it
837can also be used as a normal DNS \"server\". A list of public dnscrypt 883can also be used as a normal DNS \"server\". A list of public dnscrypt
838servers is included, and an up-to-date version is available at 884servers is included, and an up-to-date version is available at
839@url{https://download.dnscrypt.org/dnscrypt-proxy/dnscrypt-resolvers.csv}.") 885@url{https://status.dnscrypt.info/}.")
840 (license (list license:isc 886 (license license:isc)))
841 ;; Libevent and src/ext/queue.h is 3-clause BSD.
842 license:bsd-3))))
843 887
844(define-public dnscrypt-wrapper 888(define-public dnscrypt-wrapper
845 (package 889 (package