The OpenMW team reacted positively to my Apple Silicon build work and has asked for help in merging my changes upstream, as well as setting up build pipelines for Apple Silicon and the BSDs.
These tasks are very much in my wheelhouse, and I am very excited to contribute to such an awesome project. This FOSS work will help many more people play one of the greatest Western RPGs of all time. I will be documenting this work in future blog posts.
I recently managed to compile OpenMW for Apple Silicon. These are brief notes on how to do it. This is still less stable than the x86–64 version.
Instructions are adapted from this OpenMW wiki page: https://webcache.googleusercontent.com/search?q=cache:djVFTKYH5MgJ:https://wiki.openmw.org/index.php/Development_Environment_Setup+&cd=1&hl=en&ct=clnk&gl=us&client=safari
brew install cmake
brew install pkg-config
brew install qt@5
brew install lz4
3. Clone my fork of the OpenMW dependency repository (I’ve only added one commit in case you’re interested in cherry picking it):
git clone firstname.lastname@example.org:enzuru/openmw-deps-mac.git
git checkout adjust-for-apple-silicon
I noticed that the InfluxDB Helm chart did not have a variable allowing me to set ingressClassName, an important variable on Kubernetes 1.8 clusters that was simply an annotation in previous Kubernetes versions. For instance, I can set this variable to something like “nginx” to get nginx as my ingress.
I submitted a PR that was quickly merged that will provide that feature, and it seems to be working fine.
For one, they are too obsessed with location and order. I would like to re-order items within my household budget at any moment due to pure whimsy and not have things break. There is probably a way to do this with spreadsheets, but there is certainly an easier way with code.
Setting up Emacs as a modern Objective-C editor
.emacs.d/ only requires a few software packages and custom Lisp functions to function as a modern Objective-C editor. These instructions are primarily aimed at people developing on GNUstep but could probably be adapted easily for an Apple macOS environment.
This technology is powered by the Language Server Protocol which provides these IDE features to text editors through a separate server process.
When I first tried to compile on NEXTSPACE, I ran into a number of issues. The fix involved patching the OS (CentOS 7) and patching Emacs. My Emacs patch was just committed to master so I’ll explain how to compile Emacs.app from the latest master branch against the latest NEXTSPACE.
First off, this article assumes that you have successfully compiled and installed the latest version of NEXTSPACE locally, and can compile regular Emacs successfully from…
I discovered an incredible project called NEXTSPACE which is building a complete desktop environment (and perhaps eventually a Linux distribution) using GNUstep, which is a FOSS implementation of Cocoa.
Starting as a starving college student, I spent around a decade programming in Objective-C and Cocoa for iOS. While I’m less interested in Apple’s closed source platforms these days, I really enjoyed developing in Objective-C and Cocoa, and I am glad that I can use that skillset to build rich GUI applications for Linux.
The two primary things that I need to know when I engineer modern DevOps pipelines for companies are my:
These two determine which environments and clusters will be affected by my
I use the fish shell which offers a fresh approach to the command line with powerful autosuggestions. I installed an Oh My Fish plugin which allows me to change AWS profiles very easily: https://github.com/oh-my-fish/plugin-aws
I then customize my prompt by modifying the
.config/fish/functions/fish_prompt.fish file to look like this:
set awsenv (aws profile)
set kubenv (kubectl config current-context)
set wpath (pwd)
echo "[$awsenv][$kubenv][$wpath]> "
This gives me a prompt that looks like: