Djbdns version 1.05 - How to Download and Install on Mac OS X
Sunday the 22nd of November, 2009

    version 1.05

      View the most recent changes for the djbdns port at: djbdns.darwinports.com/diff
      Scroll down toward the bottom of the page to get installation instructions for djbdns.
      The raw portfile for djbdns 1.05 is located here:
      http://djbdns.darwinports.com/dports/net/djbdns/Portfile
      Find related portfiles with the unique DarwinPorts.com search feature.
      Check for any related Fink projects here: pdb.finkproject.org/pdb/package.php/djbdns


      The djbdns Portfile 57375 2009-09-10 08:16:41Z ryandesign macports.org $

      PortSystem 1.0
      Name: djbdns
      Version: 1.05
      Revision: 2
      Category: net
      Maintainers: blb openmaintainer
      Description: D.J. Bernstein's DNS tools
      Long Description: DJBDNS is a collection of Domain Name System tools. It includes several components: - The dnscache program is a local DNS cache. It accepts recursive DNS queries from local clients such as web browsers. It collects responses from remote DNS servers. - The tinydns program is a fast, UDP-only DNS server. It makes local DNS information available to the Internet. - The pickdns program is a load-balancing DNS server. It points clients to a dynamic selection of IP addresses. - The walldns program is a reverse DNS wall. It provides matching reverse and forward records while hiding local host information. - The dns library handles outgoing and incoming DNS packets. It can be used by clients such as web browsers to look up host addresses, host names, MX records, etc. It supports asynchronous resolution. - The dnsfilter program is a parallel IP-address-to-host-name converter. - The dnsip, dnsipq, dnsname, dnstxt, and dnsmx programs are simple command-line interfaces to DNS. - The dnsq and dnstrace programs are DNS debugging tools.

      Homepage: http://cr.yp.to/djbdns.html
      Master Sites: ${homepage} http://smarden.org/pape/djb/manpages/:man
      distfiles-append ${distname}-man-20031023.tar.gz:man
      extract.only ${distname}.tar.gz ${distname}-man-20031023.tar.gz
      Checksums: ${distname}${extract.suffix} md5 3147c5cd56832aa3b41955c7a51cbeb2 sha1 2efdb3a039d0c548f40936aa9cb30829e0ce8c3d rmd160 a832cbfd93e4ccec6a565492a4ee0b3c1b4b68ed ${distname}-man-20031023${extract.suffix} md5 14d7329cff69f604fac607436eb8485e sha1 3bac8a34a4bc681b9a0e603a77fa11492619e3ce rmd160 42a5b3305513851dfe1da46df6f405bc81602fbe
      Platform: darwin

      universal_variant no

      depends_run port:daemontools port:ucspi-tcp

      Patch Files: patch-Makefile patch-dnscache-conf.c patch-hier.c patch-dnsroots.global.diff patch-response.c.diff
      pre-patch {
      # The build process will create a tinydns executable, so this needs to
      # be renamed on case-insensitive file systems
      move ${worksrcpath}/TINYDNS ${worksrcpath}/TINYDNS.txt
      }

      configure {
      reinplace "s%/usr/local%${prefix}%" ${worksrcpath}/conf-home
      reinplace "s%__DESTROOT%${destroot}%" ${worksrcpath}/hier.c
      reinplace "s%__PREFIX%${prefix}%" ${worksrcpath}/hier.c
      reinplace "s%/etc/dnsrewrite%${prefix}&%" ${worksrcpath}/dns_rcrw.c
      }

      build.target default

      destroot.target setup check
      post-destroot {
      xinstall -d -m 0755 ${destroot}${prefix}/share/man/man1
      eval xinstall -m 0644 [glob ${workpath}/${name}-man/*.1] ${destroot}${prefix}/share/man/man1
      xinstall -d -m 0755 ${destroot}${prefix}/share/man/man8
      eval xinstall -m 0644 [glob ${workpath}/${name}-man/*.8] ${destroot}${prefix}/share/man/man8
      xinstall -m 0755 -d ${destroot}${prefix}/share/doc/${name}
      xinstall -m 0644 -W ${worksrcpath} CHANGES README TINYDNS.txt TODO ${destroot}${prefix}/share/doc/${name}
      xinstall -m 0644 -W ${workpath}/${name}-man README ${destroot}${prefix}/share/doc/${name}/README_MAN
      }

      set ipv6_diff ${distname}-test23.diff
      Variant: ipv6 conflicts dumpcache description {Patch in support for IPv6} {
      master_sites-append http://www.fefe.de/dns/:ipv6
      distfiles-append ${ipv6_diff}.bz2:ipv6
      checksums-append ${ipv6_diff}.bz2 md5 dc35e88e20ffe2670cef5bb4d8a2c183 sha1 34251597d211ff00791cb6546e8ef60d75ce5477 rmd160 33037f2a41abb49c305f3efec4402c6965c8b8b8
      post-patch {
      ui_info "$UI_PREFIX Applying ${ipv6_diff}"
      system "cd ${worksrcpath} && (bunzip2 -c ${distpath}/${ipv6_diff}.bz2 | patch -p1)"
      }
      }

      set dumpcache_diff patch-dnscache-dumpcache-v4.txt
      Variant: dumpcache conflicts ipv6 description {Enable cache dumping of running dnscache} {
      master_sites-append http://efge.free.fr/djbdns/:dumpcache
      distfiles-append ${dumpcache_diff}:dumpcache prettycache.pl:dumpcache
      checksums-append ${dumpcache_diff} md5 61441dec12dd627a7fea7c3059cc2542 sha1 0bf1bf159336944468c49bf47687b8fdcbd35393 rmd160 323ba626b3885b722c09ad6e3f6792053cc8ae11 prettycache.pl md5 6318e8e866c78adf9b411b58f5088fc2 sha1 ea5790ed4678be89e0e82e9c59788f9f4db40dff rmd160 2abc43a6a824e2d10919b6200048326b584e0d6b
      post-patch {
      ui_info "$UI_PREFIX Applying ${dumpcache_diff}"
      system "cd ${worksrcpath} && patch -p1 < ${distpath}/${dumpcache_diff}"
      }
      post-destroot {
      xinstall -m 0755 ${distpath}/prettycache.pl ${destroot}${prefix}/bin
      reinplace "s%^#!.*/perl%#![binaryInPath perl]%" ${destroot}${prefix}/bin/prettycache.pl
      }
      }

      set ignoreip_diff ${distname}-ignoreip2.patch
      Variant: ignoreip description {Patch to allow ignoring a list of IP addresses} {
      master_sites-append http://tinydns.org/:ignoreip
      distfiles-append ${ignoreip_diff}:ignoreip
      checksums-append ${ignoreip_diff} md5 c032250b209d055847a763c8d9c7e865 sha1 ec4281a6864bd044a84fbfcaaf42baa6b003976d rmd160 bf8a0d38ae7bfb09a8ab2a04600680613db10aaa
      post-patch {
      ui_info "$UI_PREFIX Applying ${ignoreip_diff}"
      system "cd ${worksrcpath} && patch -p1 < ${distpath}/${ignoreip_diff}"
      }
      }

      set persistmmap_diff tinydns-persistmmap-20040418.patch
      Variant: persistmmap description {Add persistmmap to improve some lookup tasks} {
      master_sites-append http://people.FreeBSD.org/~roam/ports/patches/dns/:persistmmap
      distfiles-append ${persistmmap_diff}:persistmmap
      checksums-append ${persistmmap_diff} md5 c721977364502180f9563b85cecf133b sha1 013690c863c4dbe60d6da4d5470d53afd0b1af11 rmd160 4a5747033fea7b1a304b30e42c90c68a5c70bdcc
      post-patch {
      ui_info "$UI_PREFIX Applying ${persistmmap_diff}"
      system "cd ${worksrcpath} && patch -p1 < ${distpath}/${persistmmap_diff}"
      }
      }

      livecheck.type regex
      livecheck.url http://cr.yp.to/djbdns/install.html
      livecheck.regex ${name}-(\[\\d.\]+)${extract.suffix}


    If you haven't already installed Darwin Ports, you can find easy instructions for doing so at the main Darwin Ports page.

    Once Darwin Ports has been installed, in a terminal window and while online, type the following and hit return:


      %  cd /opt/local/bin/portslocation/dports/djbdns
      % sudo port install djbdns
      Password:
    You will then be prompted for your root password, which you should enter. You may have to wait for a few minutes while the software is retrieved from the network and installed for you. Y ou should see something that looks similar to:

      ---> Fetching djbdns
      ---> Verifying checksum for djbdns
      ---> Extracting djbdns
      ---> Configuring djbdns
      ---> Building djbdns with target all
      ---> Staging djbdns into destroot
      ---> Installing djbdns
    - Make sure that you do not close the terminal window while Darwin Ports is working. Once the software has been installed, you can find further information about using djbdns with these commands:
      %  man djbdns
      % apropos djbdns
      % which djbdns
      % locate djbdns

     Where to find more information:

    Darwin Ports



    Lightbox this page.