From the Petrify website, I downloaded the "New version 4.2 (only for Linux)" (clicking will download the file).
I unpacked it using tar
:
tar xfz petrify-4.2-linux.tgz
Inside the created petrify
directory is the INSTALL
file you quoted from, and the directories it refers to, bin
and man
. The files are all ready to use and no compiling is required. The two symlinks to the petrify
binary in bin
apparently require a program called Dot, but the link to that program on the Petrify website is broken, so I did not attempt to get those two commands working.
Firstly I suggest testing the petrify
binary. Because it's a 32-bit binary, if you are using a 64-bit system, you will probably get this baffling error:
bash: ./petrify: No such file or directory
This is explained in this answer by Gilles.
For me it was sufficient to install libc6:i386
:
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libc6:i386
Now the program should run, but it won't do anything without input. If you don't have any files to work on, you can download some examples (clicking will download) from the site for testing. This file will need to be unpacked with tar xfz <file>
too. I tested it, but I have no idea how to interpret the output, so I can only tell you that some output files were generated, and there weren't any errors!
To answer your actual question (finally), the reason you might want to set those environment variables is so that you can run petrify
and man petrify
from anywhere. Rather than modifying your PATH or setting MANPATH, you could simply copy the files to appropriate locations. Assuming you are in the petrify
directory where you found the INSTALL
file, you could run
mkdir -p ~/bin
cp bin/petrify ~/bin
This directory is automatically prepended to your PATH if it exists by a piece of code in the default ~/.profile
on Ubuntu. You need to source ~/.profile
to have it adjusted immediately, or log out and log back in for it to take effect (you only have to do that once). Now you can run petrify
anywhere.
Alternatively, you could copy to /usr/local/bin
:
sudo cp bin/petrify /usr/local/bin
This is already in the default PATH. This is the better option if multiple users need access to the program. You can also copy the symlinks from the bin
directory to the same location as petrify
.
For the man
, I copied the file to /usr/share/man/man1
where the other man
files on my system live:
chmod 644 man/man1/petrify.1
sudo cp man/man1/petrify.1 /usr/share/man/man1
Running man petrify
now brings up a comprehensive man
page.
If you prefer to configure the PATH and keep the files isolated, you can set the environment variables in your ~/.profile
instead. You can add a line like this to append to the PATH:
PATH="$PATH:/path/to/petrify/bin"
replacing /path/to/petrify/bin
with the actual path to the parent directory of the petrify
binary file, wherever you put it.
Setting MANPATH can also be done in ~/.profile
. Note that the directory structure is
man
└── man1
└── petrify.1
If the full path of petrify.1
were
/home/zanna/petrify/man/man1/petrify.1
I would set the MANPATH in ~/.profile
like this (without man1
):
export MANPATH=":$HOME/petrify/man"
The leading colon is important here and must not be omitted. Also note that you do not need to export
PATH (it is already exported, and changes to it will be inherited) but you do need to export
MANPATH.