I’m a Linux systems administrator. This means I am not as skilled at supporting and maintaining windows based systems as I am Linux systems. As such my personal laptop has Debian installed, and I have a number of Debian servers (some hosted at a VPS provider, some at home). I also have a Desktop that I built myself, using high spec components (at the time). As the desktop was intended to be used for gaming I bought a Windows license for it. At the time the intent was to install Debian, and then create a KVM virtual machine to run Windows in. However out of impatience, laziness, and hubris (I could always fix it later right?) I installed windows directly onto the system drive. And now the hinge on my laptop lid is broken. As my blog is split across two git repositories (one private, and one public) and publishing new posts involves a workflow that requires me to use a number of linux based systems this is a sub-optimal state of affairs.

So the work flow as it is involves the private git repository, which contains my site as a jekyll site. This is checked out on my laptop, and I make edits using vim. I use jekyll to serve a version of this site on localhost whilst I am making changes to ensure I am happy with how it looks (well as happy as I can be given the design, I still need to work on that). These changes are then built to a directory that is a copy of the public repository also checked out on my laptop, but on a non-default branch. I then commit these changes, push them to my git server and raise a pull request. Once the pull request is merged the changes are pushed to the servers. Now I recognise that this is a slightly clunky workflow, and I could probably improve it with a little effort. But it works for me, on Linux, that I am used too. Now that my laptop is broken (actually I’ve fixed it, but the fix is temporary at best) I should probably get this workflow working somewhere that is usable.

So I have a Windows 10 desktop computer, which has plenty of system resources, and outside of the command line a GUI is a GUI, and I can work reasonably comfortably in KDE or Windows without too much mental effort to switch (subject to the differences between the software packages in use). So all I really need for this workflow is a browser (I favour Firefox, which I use on Windows and Debian) and a Linux command line. Windows 10 has a feature Windows Subsystem for Linux. So I already had a basic Debian install set up, but I have only really used this to ssh to my servers. Well now is the time to install Ruby, Jekyll, git, and vim (oh and tmux, but that is less important for this workflow).

Well it turns out to work quite well. Running jekyll on WSL allows you to access the site in Firefox in Windows. I have written this post on my Windows desktop, which has two high resolution monitors. I move windows to the background less often. It’s still the same clunky workflow as it was before, but slightly less clunky. I should have tried this ages ago. I still need to configure a few things. Vim has a spell checker that I need to configure on my desktop. I need to configure tmux. But otherwise everything works quite well.

posted at 9:30 pm on 2 Aug 2020 by Craig Stewart

Tags:sysadmin jekyll blog git