# Get the tarball
cd
test -f installed/fping-5.3.tar.gz && mv installed/fping-5.3.tar.gz .
test ! -f fping-5.3.tar.gz && wget https://fping.org/dist/fping-5.3.tar.gz
# Verify tarball w/ sha256sum:
# (this came from my gpg-verified tarball)
echo "d57bd0141aea082e3adfc198bfc3db5dfd12a7014c7c2655e97f61cd54901d\
0e fping-5.3.tar.gz" | sha256sum -c
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "fping-*" -exec rm -r {} \;
tar xzvf ~/fping-5.3.tar.gz
cd fping-5.3
test $UID = 0 && chown -R root:root .
# Read ./README.md and ./CHANGELOG.md if upgrading
# If you have 'pandoc' installed, you can convert the .md to .html or
# other formats
pandoc README.md | lynx -stdin
pandoc CHANGELOG.md | lynx -stdin
# Configure the build
./configure --mandir=/usr/local/man
# Build it
make
# Become root to install it
su
# Install it
make install
# Make it setuid root to be able to just run 'fping' as any user
# (without 'su' or 'sudo')
chmod u+s /usr/local/sbin/fping
# Make sure your non-root user can remove the source later
chown -R $(logname) .
chmod -R u+w .
# Become your non-root user again
exit
# Save the tarball for later
cd
mkdir -p -m 0700 installed
rm -f installed/fping-*.tar.* installed/fping.tar.gz
mv fping-5.3.tar.gz installed/
# If you ever want to uninstall fping, this should do it:
cd
su
test -d src/fping-* && ( cd src/fping-* ; make uninstall )
rm -f /usr/local/sbin/fping /usr/local/man/man8/fping.8
exit
find ~/src -maxdepth 1 -type d -name "fping-*" -exec rm -r {} \;
rm -f ~/installed/fping-*.tar.* ~/installed/fping.tar.gz