How I Set-Up My Blog (part 2)

2 minute read

Last time I wrote about how I set-up my blog. I wrote I had a Github pages site and a regular site, which I decided to host a blog on. This is the continuation of that blog, with more information about it. If you missed it, view it at this page

So as I continued with developing my blog, I used the jekyll docs to write some basic stuff. I linked the site in my previous article. A screenshot is visible below of what I eg used of the jekyll docs.

The Jekyll site which had the docs I needed

I had to store the docs I had on my current site, which were keybase.txt and KPN killed XS4ALL. These are also visible in the below images.

The keybase document

The song lyrics

The old song index looked like below image by the way:

The song lyrics index (which I still need to host again on my site)

Then I found out I had to remove the PPA of certbot a tool by the Electronic Frontier Foundation, which helps with TLS certificates for https. So I used an article on how to delete PPAs as I sometimes forget how it works. I also updated my packages. As I use ubuntu I did the following:

$ ls /etc/apt/sources.list.d
certbot-ubuntu-certbot-bionic.list                [..]           [..]
certbot-ubuntu-certbot-bionic.list.distUpgrade    [..]
$ rm /etc/apt/sources.list.d/certbot*
$ ls /etc/apt/sources.list.d
[..]        [..]      [..]
$ sudo apt update
password for $USER:

I was using the documents of setting up certbot hosted by the EFF for nginx, but later I realized I had to use the Apache docs. I verified the snap package was correct by visiting the official snap site. Then I used the right commands to set it up:

$ sudo snap install --classic certbot
$ ls /etc/apache2/sites-available/
000-default.conf    defatult-ssl.conf
$ sudo vim /etc/apache2/sites-available/

Then I changed the DocumentRoot to the right directory, and I did the same for the file /etc/apache2/sites-available/, this was pretty easy and necessary for the next step.

I then had to set-up my site’s jekyll stuff, which I did in the following way:

$ sudo certbot --apache
$ sudo chmod 755 $WEBDIR
$ sudo chown $USER:$(id -gn) $WEBDIR
$ cd $WEBDIR
$ rm -r html
$ sudo certbot renew --dry-run
$ sudo apt-get install ruby-full build-essential zlib1g-dev
$ echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc && echo 'export GEM_HOME="$HOME/gems"' >> ~/.bashrc && echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.bashrc && . ~/.bashrc
$ gem install jekyll bundler
$ jekyll new $WEBDIR --force

The above set-up my site to install cerbot, change the modus of the webdir to 755, which is drwxr-xr-x. Then it changes ownership to my user and group, change into the webdir, remove HTML, rerun certbot, set-up jekyll build tools. For this I actually resized my server to increase CPU and RAM and storage, because I lacked enough power to build. Then I set-up Ruby gems to use my homedir, and use my user’s .bashrc so I didn’t need root for gems. Then I installed jekyll, and set-up a jekyll to my webroot directory.

I also decided I will have to fix my personal connection to the server, as I borked it up. I also want to fix jekyll to deploy automatically. Though at the moment I solved it temporarily by using Github and logging into my machine to pull and push.

Next time I will write up about how I set-up my site to be the way it is now. Until next time!