# ht://Dig
# ========
# Slackware 8.1, 9.0, 9.1, 10.0, 10.1, and 10.2's 'htdig' packages all
# include version 3.1.6
#
# Slackware 12.0, .1, .2, 13.0, .1, .37, 14.0, .1, .2 all include version
# 3.2.0b6
# ht://Dig version 3.1.6 was released 2002-02-01
# ht://Dig version 3.2.0b6 was released 2004-06-16
# There have been no further releases, but there is a fork of ht://Dig
# called hl://Dig
# Get it
cd
test -f installed/htdig-3.2.0b6.tar.gz && mv installed/htdig-3.2.0b6.tar.gz .
test ! -f htdig-3.2.0b6.tar.gz &&
wget http://downloads.sourceforge.net/htdig/htdig-3.2.0b6.tar.gz
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "htdig-*" -exec rm -r {} \;
tar xzvf ~/htdig-3.2.0b6.tar.gz
cd htdig-3.2.0b6
test $UID = 0 && chown -R root:root .
# Get a patch from Slackware to allow building the 2004 software with 2019
# build tools
wget -nc ftp://ftp.slackware.com/pub/slackware/slackware64-current/source/n/\
htdig/htdig-3.2.0b6.diff.gz &&
zcat htdig-3.2.0b6.diff.gz | patch -p0
# Read ./README, but keep in mind that anywhere that www.htdig.org is
# referenced, replace that with htdig.sourceforge.net
cat README | sed 's/www\.htdig\.org/htdig.sourceforge.net/' | less
# If upgrading (from something > 15 years old), read the ChangeLog
less ./ChangeLog
# HTML documentation is in ./htdoc/
lynx ./htdoc/contents.html
# The default prefix is /opt/www
# If you want something else like /usr/local/htdig, use
# --prefix=/usr/local/htdig
#
# Same goes for --with-search-dir
# The default there is /opt/www/htdocs/htdig
# You can either symlink (if Apache allows them there) the ht://Dig images
# from /opt/www/htdocs/htdig to your desired location under
# /usr/local/apache2/htdocs/... or use
# --with-image-dir=/usr/local/apache2/htdocs/...
# to put them where you need them directly
# Similar situation for --with-cgi-bin-dir=/usr/local/apache2/cgi-bin
# If you want OpenSSL, and have it installed in /usr or /usr/local, with
# libraries in /usr/lib, /usr/local/lib, or something covered by
# /etc/ld.so.conf, you should be able to pass --with-ssl to configure
#
# If you have it installed under the /usr/local/ssl prefix, use
# --with-ssl=/usr/local/ssl and if it can not find lib64 or anything
# like that, you may need to use LDFLAGS=-L/usr/local/ssl/lib64
# Configure the build
LIBDIR=/opt/www/lib
test $(uname -m) = 'x86_64' && LIBDIR=/opt/www/lib64
./configure --libdir=${LIBDIR} --mandir=/usr/man --with-ssl \
--with-cgi-bin-dir=/usr/local/apache2/cgi-bin
unset LIBDIR
# Build it
make
# Become root to install it
su
# If you're going to remove the Slackware package next, back up your files,
# especially DB files in /var/lib/htdig
# After removing the package, you may still have a /var/lib/htdig and a
# /etc/htdig
# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg htdig
# Install it
make install
# Add /opt/www/bin to your PATH
echo '#!/bin/sh' > /etc/profile.d/htdig.sh
echo 'PATH=$PATH:/opt/www/bin' >> /etc/profile.d/htdig.sh
# Become your non-root user again
exit
# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/htdig-*.tar.*
mv htdig-3.2.0b6.tar.gz installed/
# Get it
cd
test -f installed/htdig-3.1.6.tar.gz && mv installed/htdig-3.1.6.tar.gz .
test ! -f htdig-3.1.6.tar.gz &&
wget http://www.htdig.org/files/htdig-3.1.6.tar.gz
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "htdig-*" -exec rm -r {} \;
tar xzvf ~/htdig-3.1.6.tar.gz
cd htdig-3.1.6
test $UID = 0 && chown -R root:root .
# Patch htnotify to prevent an endless loop while building the db(s):
wget -nc http://englanders.us/pub/linux/patches/notmine/\
htdig-3.1.6-htnotify_loop.patch &&
patch -p0 < htdig-3.1.6-htnotify_loop.patch
# The server that I use ht://Dig on has apache 1.x installed which is under
# /usr/local/apache (if it was apache 2.x, it would be /usr/local/apache2).
# I have most of the site's images installed under htdocs/images/, so I tell
# ht://Dig to put the images there.
# If you still use GCC 2.x for some reason (ie. you are a lousy SysAdmin
# <g>), remove the CPPFLAGS part below.
# I don't think this is the case any more, but older versions of KDE required
# ht://Dig and Slackware's KDE was set to use Slackware's ht://Dig (in
# /opt/www), so you may want to just leave that one installed if you've got
# it. If you don't have KDE installed, or you know that KDE isn't using it,
# run 'removepkg htdig' to uninstall the old one.
su -c "make install"
# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/htdig-*.tar.*
mv htdig-3.1.6.tar.gz installed/