# Get the tarball
cd
test -f installed/pixman-0.42.2.tar.gz &&
mv installed/pixman-0.42.2.tar.gz .
test ! -f pixman-0.42.2.tar.gz &&
wget https://cairographics.org/releases/pixman-0.42.2.tar.gz
# Get the sha512sum file
wget -nc https://cairographics.org/releases/\
pixman-0.42.2.tar.gz.sha512
# Now actually check the sha512sum:
cat pixman-0.42.2.tar.gz.sha512 | sha512sum -c
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "pixman-*" -exec rm -r {} \;
tar xzvf ~/pixman-0.42.2.tar.gz
cd pixman-0.42.2
test $UID = 0 && chown -R root:root .
# Configure the build for 64-bit
test $(uname -m) = 'x86_64' && ./configure --prefix=/usr --libdir=/usr/lib64
# Configure the build for anything else
test $(uname -m) != 'x86_64' && ./configure --prefix=/usr
# Build it
make
# Become root to install it
su
# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg pixman
# Install it
make install
ldconfig
# If you upgraded an old version with this one, look for old files here.
# Generally if the date is not today, and you already ran 'make install',
# then it's no longer part of pixman. It probably can't hurt any to just
# leave old shared library files there, the symlinks should be automatically
# updated when you upgrade it.
# /usr/include/pixman-1
# /usr/lib*/libpixman-1.*
# Make sure your non-root user can remove the source later
chown -R $(logname) .
chmod -R u+w .
# Become yourself again
exit
# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/pixman-*.tar.*
mv pixman-0.42.2.tar.gz installed/
# If you ever want to uninstall pixman, this should do it:
cd
su
test -d src/pixman-* && ( cd src/pixman-* ; make uninstall )
for libdir in /usr/lib /usr/lib64;
do
test -d $libdir &&
( cd $libdir ; rm -f libpixman-1.* pkgconfig/pixman-1.pc )
done
test -d /usr/include/pixman-1 && rm -r /usr/include/pixman-1
ldconfig
exit
find ~/src -maxdepth 1 -type d -name "pixman-*" -exec rm -r {} \;
rm -f ~/installed/pixman-*.tar.*