Skip to content

Instantly share code, notes, and snippets.

@Chandler-Kluser
Created September 20, 2025 07:54
Show Gist options
  • Select an option

  • Save Chandler-Kluser/816f6e07dc89930e1704d2136392cd8e to your computer and use it in GitHub Desktop.

Select an option

Save Chandler-Kluser/816f6e07dc89930e1704d2136392cd8e to your computer and use it in GitHub Desktop.
Small Archlinux guide to build BlueRetro Web Config Ruby Jekyll Web Server

Blueretro Web Config Server

Small Archlinux guide to build BlueRetro Web Config Ruby Jekyll Web Server

Build Instructions

Make sure to have RVM to manage Ruby versions:

sudo pacman -S ruby ruby-erb gcc14 gcc14-libs curl
curl -L get.rvm.io > rvm-install
bash ./rvm-install

You will need OpenSSL 1.1.1g to run Ruby Jekyll Server:

cd $HOME/.rvm/src/
wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz
tar zxvf openssl-1.1.1g.tar.gz && cd openssl-1.1.1g
./config --prefix=$HOME/.openssl/openssl-1.1.1g --openssldir=$HOME/.openssl/openssl-1.1.1g
make
make test # you might get a few tests failing but just ignore
make install

Make a shell build environment to build as well as to run Jekyll Server, this environment must have GCC and G++ 14 as default compilers:

/bin/bash --login
export CC=/usr/bin/gcc-14
export CXX=/usr/bin/g++-14

You will need to install openssl-1.1.1g from source:

rvm install 2.7.8 --with-openssl-dir=$HOME/.openssl/openssl-1.1.1g
rvm use 2.7.8@BlueRetroWebCfg --create

Add the following line to Gemfile:

cp Gemfile Gemfile_bk # make a backup
echo "gem 'ffi', '~> 1.15.5'" >> Gemfile

Then run bundle to get all Gems:

bundle install

Generating a Self Signed Certificate with OpenSSL

Make sure to generate a certificate before running server for the first time

openssl req -x509 -newkey rsa:2048 -nodes -sha256 -days 365 -keyout localhost.key -out localhost.crt -subj "/CN=localhost"

Running Server

cd $HOME/BlueRetroWebCfg
/bin/bash --login
rvm use 2.7.8@BlueRetroWebCfg
bundle exec jekyll serve --port 443 --host 0.0.0.0 --ssl-key localhost.key --ssl-cert localhost.crt

Big Thanks to

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment