# Get the source tarball
cd
test -f installed/pinentry-1.3.0.tar.bz2 &&
mv installed/pinentry-1.3.0.tar.bz2 .
test ! -f pinentry-1.3.0.tar.bz2 &&
wget https://www.gnupg.org/ftp/gcrypt/pinentry/pinentry-1.3.0.tar.bz2
# Verify tarball w/ sha256sum:
# (this came from my gpg-verified tarball)
echo "9b3cd5226e7597f2fded399a3bc659923351536559e9db0826981bca316494\
de pinentry-1.3.0.tar.bz2" | sha256sum -c
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "pinentry-*" -exec rm -r {} \;
tar xjvf ~/pinentry-1.3.0.tar.bz2
cd pinentry-1.3.0
test $UID = 0 && chown -R root:root .
# Read through ./README
# If upgrading, also read through NEWS and/or ChangeLog
# If configure detects something and you don't want to use it, see
# ./configure --help
# Configure the build
./configure --prefix=/usr --disable-pinentry-emacs --disable-inside-emacs \
--disable-pinentry-qt4
# Build it
make
# Become root to install it
su
# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg pinentry
# Install it
make install
# Make sure your non-root user can remove the source later
chown -R $(logname) .
chmod -R u+w .
# Become yourself again
exit
# Save the tarball for later
cd
mkdir -p -m 0700 installed
rm -f installed/pinentry-*.tar.*
mv pinentry-1.3.0.tar.bz2 installed/
# If you ever need to uninstall pinentry, this should do it:
test -d ~/src/pinentry-* && ( cd ~/src/pinentry-* ; make uninstall )
su
for pfx in /usr /usr/local;
do
( cd ${pfx}/bin
find . -executable -name "pinentry-*" -exec rm {} \; )
rm -f ${pfx}/bin/pinentry ${pfx}/info/pinentry.info*
done
exit
find ~/src -maxdepth 1 -type d -name "pinentry-*" -exec rm -r {} \;
rm -f ~/installed/pinentry-*.tar.*