How to Install Gitit on CentOS 7

Posted on

Gitit is a full featured wiki program written in the Haskell programming language. By storing pages and files in a git repository and using Markdown as the default markup language, gitit is attracting more geeks nowadays.

In this tutorial, I will explain how to install gitit on a CentOS 7 server.


  • A newly deployed Vultr CentOS 7 server instance.
  • If the RAM of your server instance is less than 2G, you need to enable swap to achieve at least 2G of addressable memory (RAM + swap).

Step 1: Update the system

Log in as root, and then update the system to the latest stable status:

yum install epel-release -y
yum update -y
shutdown -r now

Step 2: Install dependencies for gitit

Install the Haskell stack tool:

curl -sSL | sh

Update the PATH environment variable:

echo 'export PATH=/root/.local/bin:$PATH' >>/etc/profile
source /etc/profile

Install git, zlib, and zlib-devel using YUM:

yum install git zlib zlib-devel -y

Step 3: Compile and install gitit using stack

cd /opt
git clone
cd gitit
stack setup
stack install

Compiling gitit could take a while, depending on the performance of your machine. After the compilation, you can verify the result using the following command:

gitit --version

The output will read like something as below:

gitit version -plugins
Copyright (C) 2008 John MacFarlane

Step 4: Configure and run gitit

Before running gitit, you should get into a writable directory where all of the wiki data will be stored in:


For now, you can already start gitit using the default configuration by type gitit. However, if you want to customize your gitit wiki, you can export the default configuration to a file for modification:

gitit --print-default-config > my-gitit.conf

Then you can use the vi editor to modify the configuration as you wish:

vi my-gitit.conf

After the modification, start gitit using the new configuration:

gitit -f my-gitit.conf

Step 5: Visit gitit from a web browser

In order to allow web access to gitit, you need to open the port you specified in the gitit configuration file, which is 5001 by default:

sudo firewall-cmd --zone=public --add-port=5001/tcp --permanent
sudo systemctl reload firewalld.service

Finally, point your web browser to http://<your-server-IP>:5001 to explore the web interface of gitit.

That concludes our tutorial. Thank you for reading.

Want to contribute?

You could earn up to $300 by adding new articles

Submit your article
Suggest an update
Request an article

Leave a Reply

Your email address will not be published. Required fields are marked *