Set up the basics of a Jekyll site
This commit is contained in:
parent
d92a7c5f53
commit
3f19c1be35
4
.dockerignore
Normal file
4
.dockerignore
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
*
|
||||||
|
!Dockerfile
|
||||||
|
!Gemfile
|
||||||
|
!Gemfile.lock
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -30,3 +30,7 @@ Cargo.lock
|
|||||||
|
|
||||||
# MacOS
|
# MacOS
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
||||||
|
# Jekyll
|
||||||
|
.jekyll-cache/
|
||||||
|
_site/
|
@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
"MD033": false,
|
"MD033": false,
|
||||||
"MD013": false,
|
"MD013": false,
|
||||||
"MD025": false
|
"MD025": false,
|
||||||
|
"MD041": false
|
||||||
}
|
}
|
41
Dockerfile
Normal file
41
Dockerfile
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
FROM ruby:3.3.5-alpine3.20
|
||||||
|
|
||||||
|
ENV SETUPDIR=/setup
|
||||||
|
WORKDIR ${SETUPDIR}
|
||||||
|
ARG GEMFILE_DIR=.
|
||||||
|
COPY $GEMFILE_DIR/Gemfile* $GEMFILE_DIR/packages* ./
|
||||||
|
|
||||||
|
# Install build dependencies
|
||||||
|
RUN set -eux; \
|
||||||
|
apk add --no-cache --virtual build-deps \
|
||||||
|
build-base \
|
||||||
|
zlib-dev \
|
||||||
|
;
|
||||||
|
|
||||||
|
# Install Bundler
|
||||||
|
RUN set -eux; gem install bundler
|
||||||
|
|
||||||
|
# Install extra packages if needed
|
||||||
|
RUN set -eux; \
|
||||||
|
if [ -e packages ]; then \
|
||||||
|
apk add --no-cache --virtual extra-pkgs $(cat packages); \
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Install gems from `Gemfile` via Bundler
|
||||||
|
RUN set -eux; bundler install
|
||||||
|
|
||||||
|
# Remove build dependencies
|
||||||
|
RUN set -eux; apk del --no-cache build-deps
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
WORKDIR /srv/jekyll
|
||||||
|
RUN set -eux; \
|
||||||
|
rm -rf \
|
||||||
|
${SETUPDIR} \
|
||||||
|
/usr/gem/cache \
|
||||||
|
/root/.bundle/cache \
|
||||||
|
;
|
||||||
|
|
||||||
|
EXPOSE 4000
|
||||||
|
ENTRYPOINT ["bundler", "exec", "jekyll"]
|
||||||
|
CMD ["--version"]
|
24
Gemfile
Normal file
24
Gemfile
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
gem "jekyll", "~> 4.3.3"
|
||||||
|
|
||||||
|
group :jekyll_plugins do
|
||||||
|
gem "jekyll-feed", "~> 0.12"
|
||||||
|
end
|
||||||
|
|
||||||
|
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
|
||||||
|
# and associated library.
|
||||||
|
platforms :mingw, :x64_mingw, :mswin, :jruby do
|
||||||
|
gem "tzinfo", "~> 1.2"
|
||||||
|
gem "tzinfo-data"
|
||||||
|
end
|
||||||
|
|
||||||
|
# Performance-booster for watching directories on Windows
|
||||||
|
gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
|
||||||
|
|
||||||
|
# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem
|
||||||
|
# do not have a Java counterpart.
|
||||||
|
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]
|
||||||
|
|
||||||
|
# Various others
|
||||||
|
gem "webrick", "~> 1.9"
|
||||||
|
gem "kramdown", "~> 2.4"
|
84
Gemfile.lock
Normal file
84
Gemfile.lock
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
addressable (2.8.7)
|
||||||
|
public_suffix (>= 2.0.2, < 7.0)
|
||||||
|
bigdecimal (3.1.8)
|
||||||
|
colorator (1.1.0)
|
||||||
|
concurrent-ruby (1.3.4)
|
||||||
|
em-websocket (0.5.3)
|
||||||
|
eventmachine (>= 0.12.9)
|
||||||
|
http_parser.rb (~> 0)
|
||||||
|
eventmachine (1.2.7)
|
||||||
|
ffi (1.17.0-aarch64-linux-musl)
|
||||||
|
forwardable-extended (2.6.0)
|
||||||
|
google-protobuf (4.28.3-aarch64-linux)
|
||||||
|
bigdecimal
|
||||||
|
rake (>= 13)
|
||||||
|
http_parser.rb (0.8.0)
|
||||||
|
i18n (1.14.6)
|
||||||
|
concurrent-ruby (~> 1.0)
|
||||||
|
jekyll (4.3.4)
|
||||||
|
addressable (~> 2.4)
|
||||||
|
colorator (~> 1.0)
|
||||||
|
em-websocket (~> 0.5)
|
||||||
|
i18n (~> 1.0)
|
||||||
|
jekyll-sass-converter (>= 2.0, < 4.0)
|
||||||
|
jekyll-watch (~> 2.0)
|
||||||
|
kramdown (~> 2.3, >= 2.3.1)
|
||||||
|
kramdown-parser-gfm (~> 1.0)
|
||||||
|
liquid (~> 4.0)
|
||||||
|
mercenary (>= 0.3.6, < 0.5)
|
||||||
|
pathutil (~> 0.9)
|
||||||
|
rouge (>= 3.0, < 5.0)
|
||||||
|
safe_yaml (~> 1.0)
|
||||||
|
terminal-table (>= 1.8, < 4.0)
|
||||||
|
webrick (~> 1.7)
|
||||||
|
jekyll-feed (0.17.0)
|
||||||
|
jekyll (>= 3.7, < 5.0)
|
||||||
|
jekyll-sass-converter (3.0.0)
|
||||||
|
sass-embedded (~> 1.54)
|
||||||
|
jekyll-watch (2.2.1)
|
||||||
|
listen (~> 3.0)
|
||||||
|
kramdown (2.4.0)
|
||||||
|
rexml
|
||||||
|
kramdown-parser-gfm (1.1.0)
|
||||||
|
kramdown (~> 2.0)
|
||||||
|
liquid (4.0.4)
|
||||||
|
listen (3.9.0)
|
||||||
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||||
|
rb-inotify (~> 0.9, >= 0.9.10)
|
||||||
|
mercenary (0.4.0)
|
||||||
|
pathutil (0.16.2)
|
||||||
|
forwardable-extended (~> 2.6)
|
||||||
|
public_suffix (6.0.1)
|
||||||
|
rake (13.2.1)
|
||||||
|
rb-fsevent (0.11.2)
|
||||||
|
rb-inotify (0.11.1)
|
||||||
|
ffi (~> 1.0)
|
||||||
|
rexml (3.2.5)
|
||||||
|
rouge (4.5.1)
|
||||||
|
safe_yaml (1.0.5)
|
||||||
|
sass-embedded (1.81.0-aarch64-linux-musl)
|
||||||
|
google-protobuf (~> 4.28)
|
||||||
|
terminal-table (3.0.2)
|
||||||
|
unicode-display_width (>= 1.1.1, < 3)
|
||||||
|
unicode-display_width (2.6.0)
|
||||||
|
webrick (1.9.0)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
aarch64-linux-musl
|
||||||
|
x86_64-linux-musl
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
http_parser.rb (~> 0.6.0)
|
||||||
|
jekyll (~> 4.3.3)
|
||||||
|
jekyll-feed (~> 0.12)
|
||||||
|
kramdown (~> 2.4)
|
||||||
|
tzinfo (~> 1.2)
|
||||||
|
tzinfo-data
|
||||||
|
wdm (~> 0.1.1)
|
||||||
|
webrick (~> 1.9)
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
2.3.25
|
43
_config.yml
Normal file
43
_config.yml
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
# Site
|
||||||
|
title: Evan Pratten
|
||||||
|
description: Evan Pratten is a software developer, amateur radio operator, and more. This is his website.
|
||||||
|
encoding: utf-8
|
||||||
|
source: src
|
||||||
|
|
||||||
|
# Development settings
|
||||||
|
host: 0.0.0.0
|
||||||
|
port: 4000
|
||||||
|
livereload: true
|
||||||
|
|
||||||
|
|
||||||
|
# URL
|
||||||
|
baseurl: /
|
||||||
|
url: https://ewpratten.com
|
||||||
|
|
||||||
|
# Markdown
|
||||||
|
markdown: kramdown
|
||||||
|
kramdown:
|
||||||
|
input: GFM
|
||||||
|
|
||||||
|
# Plugins
|
||||||
|
plugins:
|
||||||
|
- jekyll-feed
|
||||||
|
|
||||||
|
# Exclusions
|
||||||
|
exclude:
|
||||||
|
- .sass-cache/
|
||||||
|
- .jekyll-cache/
|
||||||
|
- gemfiles/
|
||||||
|
- Gemfile
|
||||||
|
- Gemfile.lock
|
||||||
|
- node_modules/
|
||||||
|
- vendor/bundle/
|
||||||
|
- vendor/cache/
|
||||||
|
- vendor/gems/
|
||||||
|
- vendor/ruby/
|
||||||
|
|
||||||
|
# Zola migration
|
||||||
|
- content/
|
||||||
|
- static/
|
||||||
|
- templates/
|
||||||
|
- sass/
|
13
docker-compose.yml
Normal file
13
docker-compose.yml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
services:
|
||||||
|
jekyll:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
command: serve --watch
|
||||||
|
platform: linux/x86_64
|
||||||
|
stdin_open: true
|
||||||
|
tty: true
|
||||||
|
volumes:
|
||||||
|
- .:/srv/jekyll:Z
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:4000:4000"
|
14
src/_layouts/default.html
Normal file
14
src/_layouts/default.html
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
---
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>{% if page.override_title %}{{page.override_title}}{% else %}{{page.title}} | {{site.title}}{% endif %}</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
{{ content }}
|
||||||
|
</body>
|
||||||
|
</html>
|
25
src/index.md
Normal file
25
src/index.md
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
override_title: Evan Pratten
|
||||||
|
---
|
||||||
|
## About me
|
||||||
|
|
||||||
|
I am a **Software Developer**, specializing in *automation* and *computer networking*.
|
||||||
|
|
||||||
|
In my free time, I bounce around between a large collection of interests, with the common focus of wanting to learn how things *really work*. I take deep dives into topics that I find interesting, and occasionally write about them on [my blog](/blog).
|
||||||
|
|
||||||
|
## What I'm up to
|
||||||
|
|
||||||
|
I am currently:
|
||||||
|
|
||||||
|
- Performing technological wizardry at Cloudflare
|
||||||
|
- Maintaining AS54041, a small computer network
|
||||||
|
- [Writing and publishing electronic music](/music)
|
||||||
|
- Taking occasional [photos](/photography)
|
||||||
|
|
||||||
|
## Previous work
|
||||||
|
|
||||||
|
Some of the more notable things I've worked on in the past are:
|
||||||
|
|
||||||
|
- The animated TV series [PAW Patrol](https://www.imdb.com/title/tt3121722/) and [Daniel Spellbound](https://www.imdb.com/title/tt13983670/)
|
||||||
|
- A [fleet of robots](/robotics/5024) at Raider Robotics
|
Loading…
x
Reference in New Issue
Block a user