Ghost on Arch Linux

Ghost is an open source blogging platform written in Node.js, Ghost offers a simple and user friendly User Interface that lets you manage posts, pages and users It also uses Handlebars for Theme templating. Ghost is one of the most user friendly and easy to use blogging platform and has a dead simple install instruction. Ghost let you write your blog posts and pages in markdown with a markdown preview, that parses markdown in real time. Ghost also lets you add media and other post/page assets with a simple drag and drop. Ghost also has a very responsive design that lets you use it in comfort in every form factor and size. Ghost is available as a AUR Package that can be installed with a few simple steps.

Installing

We need to install Yaourt.
To install Yaourt you need to the following in /etc/pacman.conf

[archlinuxfr]
SigLevel = Never  
Server = http://repo.archlinux.fr/$arch  

Now we need to update our local package database and install yaourt

sudo pacman -Sy yaourt  

Now we need to download and install ghost from yaourt, the Ghost AUR package will install all the required dependencies and run npm install --production too

yaourt -S ghost  

Once you have Ghost installed we can start it using SystemD.

sudo systemctl start ghost.service  

We can also let Ghost start as a startup service.

sudo systemctl enable ghost.service  

You Ghost config file is config.js, You can make changes to it to suit your needs.
We can also install NGINX and reverse proxy Ghost at port 80

Installing NGINX

sudo pacman -S nginx  

You can replace the /etc/nginx.conf to this simple reverse proxy config optimized for Ghost.

http {  
        server {
        listen 80;
        location / {
        proxy_pass       http://127.0.0.1:2368;
        proxy_set_header Host      $host;
        proxy_set_header X-Real-IP $remote_addr;
        }
    }
}
events {  
        worker_connections  5000;
}

Now you can start NGINX

sudo systemctl start nginx.service  

To enable NGINX at startup.

sudo systemctl enable nginx.service  

We now have Ghost installed. Happy Blogging!