summaryrefslogtreecommitdiff
path: root/posts/jekyll.md
diff options
context:
space:
mode:
authorBradley Taunt <brad@bt.ht>2023-11-27 12:25:51 -0500
committerBradley Taunt <brad@bt.ht>2023-11-27 12:25:51 -0500
commit14d227d46a2177a8928333894252d6299f531097 (patch)
treed41d48383d012f53823c9816a820e4e88c572c41 /posts/jekyll.md
parentf6eed1a8c2f4fbf91fac9edd11e50f5c0ec939a2 (diff)
Trying to render posts all at once
Diffstat (limited to 'posts/jekyll.md')
-rw-r--r--posts/jekyll.md96
1 files changed, 96 insertions, 0 deletions
diff --git a/posts/jekyll.md b/posts/jekyll.md
new file mode 100644
index 0000000..d6e7093
--- /dev/null
+++ b/posts/jekyll.md
@@ -0,0 +1,96 @@
+# Setup Jekyll from Scratch on a New Linux System
+
+2022-09-19
+
+**Special Note:** Credit needs to be given to user [Achraf JEDAY](https://stackoverflow.com/users/4974784/achraf-jeday) for putting these instructions together on Stack Overflow (although his comments were targeting an older version of Ruby). This post is more for my own personal notes than anything else.
+
+I find myself constantly running into small issues when trying to setup existing Jekyll projects on new Linux systems. I *could* use something like Docker, but that just seems so beefy and slow to me. So here is a step-by-step way (and foolproof from my own testing) to get Jekyll running smoothly in no time!
+
+## Figuring out Ruby First
+
+The first item of business is removing the default Ruby that ships with most Linux distros:
+
+
+ sudo apt-get remove ruby
+
+
+Then we check for updates and install everything we need:
+
+
+ sudo apt update
+ sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev
+
+
+Now we can install `rbenv` and `ruby-build`:
+
+
+ curl -sL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-installer | bash -
+
+
+After both of those install, you will want to add those to your system **PATH**:
+
+### Bash
+
+
+ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
+ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
+ source ~/.bashrc
+
+
+### ZSH
+
+
+ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
+ echo 'eval "$(rbenv init -)"' >> ~/.zshrc
+ source ~/.zshrc
+
+
+With that complete, we can now install the version of Ruby we wish to use and set it globally (at this time of writing it is `3.1.2`):
+
+
+ rbenv install 3.1.2
+ rbenv global 3.1.2
+
+
+And `rehash` so our changes take:
+
+
+ rbenv rehash
+
+
+Now you should see the properly set Ruby version when you run the following:
+
+
+ ruby -v
+
+
+## Getting Ruby Gems
+
+In case you don't have it installed already, be sure to grab `rubygems`:
+
+
+ sudo apt install rubygems
+
+
+## Running Jekyll
+
+We are almost done! Navigate to your Jekyll project's directory and run:
+
+
+ gem install jekyll bundler
+ bundle install
+
+
+That's it! Now if you run `bundle exec jekyll serve` you'll find your Jekyll project running locally! Hopefully this helps others when needing to port any Jekyll projects over to a new Linux system. I know it will save me time!
+
+## Alpine Linux on Wayland
+
+Save yourself a world of trouble: just use `docker`. The docker image below (jekyll-serve) works out-of-the-box:
+
+[https://github.com/BretFisher/jekyll-serve](https://github.com/BretFisher/jekyll-serve)
+
+Then run the following inside your project:
+
+
+ docker run -p 4000:4000 -v $(pwd):/site bretfisher/jekyll-serve
+