Skip to content

0xcf/decal-web

Repository files navigation

OCF/XCF Linux SysAdmin DeCal Website

Build Status

This is the source of the OCF/XCF Unix System Administration DeCal website, currently available at decal.ocf.berkeley.edu.

The current iteration uses Jekyll to produce pages.

Development

decal-web is built for Jekyll, a static site generator. View the quick start guide for more information.

Developing using Docker

This is the reccomended method for development.

  1. Install Docker following instructions from here
  2. Pull the Docker image
$ docker pull jekyll/jekyll
  1. Clone this repository
$ git clone https://github.com/0xcf/decal-web
$ cd decal-web
  1. Build the site
$ docker run --rm --volume=$PWD:/srv/jekyll:Z  \
    --volume=$PWD/vendor/bundle:/usr/local/bundle:Z \
    jekyll/jekyll:latest jekyll build

The first volume is necessary to provide the build files to Jekyll but the second volume is optional and used to cache Gems. 5. Serve the site on your local machine

$ docker run --rm --volume=$PWD:/srv/jekyll:Z  \
    --volume=$PWD/vendor/bundle:/usr/local/bundle:Z \
    --publish [::1]:4000:4000 jekyll/jekyll:latest jekyll serve

The website should be served on http://localhost:4000 and will reflect changes that you make.

Developing on Supernova

This method currently does not work.

  1. SSH into supernova
$ ssh <ocf-username>@supernova.ocf.berkeley.edu
  1. Clone this repository
$ git clone https://github.com/0xcf/decal-web
  1. Start the Jekyll server on supernova with:
$ cd decal-web
$ make supernova

The console should ouput a web address (http://supernova.ocf.berkeley.edu:8xxx/). This web-page will update as you make changes, reload your browser tab to preview the changes.

Developing on your local machine

You will need Ruby 2 to build the site (it has been tested on Ruby2.7.4).

  • On Ubuntu 20.04, Ruby can be installed using sudo apt install ruby-full.
  • If using Arch, follow this guide to install it.
  • ruby-install is a helpful script- you can run ruby-install 2.7.4 if Ruby is on the wrong version in your package manager.
  • You can also use asdf-vm. After installing Ruby ( asdf install ruby 2.7.2 ), prepend asdf exec to all commands that require it (example: asdf exec bundle exec jekyll serve).

You may also need to install Bundler 2.3.10: gem install bundler:2.3.10

  1. Install Jekyll
$ bundle install
  1. Start your local Jekyll server. You can also use make local-dev.
$ bundle exec jekyll serve
  1. The console should output a server address (localhost:8xxx). Open that address in your browser.
  2. Reload your web browser after making a change to preview its effect.

For more information, refer to Just the Docs.