summaryrefslogtreecommitdiff
path: root/gnu/packages/dns.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-04-26 13:48:06 +0200
committerMarius Bakke <mbakke@fastmail.com>2020-04-26 13:48:06 +0200
commitf589cbc4dc4119e3501a0c20822e72cf841d08f3 (patch)
tree776e10b00c08deb9b5baef64050d512d97468cb8 /gnu/packages/dns.scm
parent0e72d49ef7cb7463012704b3d107fe38b085a562 (diff)
parent2b829898c77c4f5655db6f70de2b3a51e8f35947 (diff)
downloadguix-patches-f589cbc4dc4119e3501a0c20822e72cf841d08f3.tar
guix-patches-f589cbc4dc4119e3501a0c20822e72cf841d08f3.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/dns.scm')
-rw-r--r--gnu/packages/dns.scm57
1 files changed, 57 insertions, 0 deletions
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index e1198d4381..00c99d90ad 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -14,6 +14,7 @@
;;; Copyright © 2019 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -42,6 +43,7 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
#:use-module (gnu packages groff)
#:use-module (gnu packages groff)
@@ -949,3 +951,58 @@ could) directly register names in the Domain Name System (DNS). Some examples
of public suffixes are .com, .co.uk and pvt.k12.ma.us. This is a list of all
known public suffixes.")
(license license:mpl2.0))))
+
+(define-public maradns
+ (package
+ (name "maradns")
+ (version "3.5.0004")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://maradns.samiam.org/download/"
+ (version-major+minor version) "/"
+ version "/maradns-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1zv0i6m4m05ay5zlhwq1h88hgjq2d81cjanpnb3gyhr0xhmjwk6a"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; need to be root to run tests
+ #:make-flags
+ (list
+ (string-append "CC="
+ (if ,(%current-target-system)
+ (string-append (assoc-ref %build-inputs "cross-gcc")
+ "/bin/" ,(%current-target-system) "-gcc")
+ "gcc"))
+ (string-append "PREFIX=" %output)
+ (string-append "RPM_BUILD_ROOT=" %output))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key native-inputs target #:allow-other-keys)
+ ;; make_32bit_tables generates a header file that is used during
+ ;; compilation. Hence, during cross compilation, it should be
+ ;; built for the host system.
+ (when target
+ (substitute* "rng/Makefile"
+ (("\\$\\(CC\\) -o make_32bit_tables")
+ (string-append (assoc-ref native-inputs "gcc")
+ "/bin/gcc -o make_32bit_tables"))))
+ (invoke "./configure")))
+ (add-before 'install 'create-install-directories
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (for-each (lambda (dir)
+ (mkdir-p (string-append out dir)))
+ (list "/bin" "/sbin" "/etc"
+ "/share/man/man1"
+ "/share/man/man5"
+ "/share/man/man8"))
+ #t))))))
+ (home-page "https://maradns.samiam.org")
+ (synopsis "Small lightweight DNS server")
+ (description "MaraDNS is a small and lightweight DNS server. MaraDNS
+consists of a UDP-only authoritative DNS server for hosting domains, and a UDP
+and TCP-capable recursive DNS server for finding domains on the internet.")
+ (license license:bsd-2)))