modules | ||
packages | ||
secrets | ||
.gitignore | ||
flake.lock | ||
flake.nix | ||
install.sh | ||
LICENSE.md | ||
README.org |
Golgi
The Golgi apparatus is responsible for transporting, modifying, and packaging proteins and lipids into vesicles for delivery to targeted destinations. It is located in the cytoplasm next to the endoplasmic reticulum and near the cell nucleus. — Encyclopedia Britanica
This server will be an apparatus for better managing my personal projects. It sits near the idea-generation and idea-translation components of my workflow. It will be responsible for storing my work as a remote repository, transporting the work between local development machines, and as a web server to improve the ease of access of my work, both for myself and anybody curious.
Alternatively put, this is an experiment in Clown Computing 🤡
Let's hope it works well!
Setup
I'm using Hetnezer as a host. Their value for money with VPS offerings is pretty alluring.
Additionally I've found a handy blog post about deploy-rs
on Hetzner, which is
remarkably convenient. They were even kind enough to link to a repo which I've
shamelessly used as a starting point.
Unfortunately, Hetnezer doesn't offer a NixOS image, but they do allow you to mount a NixOS install volume (22.05 as of writing) to your server after creating it. After doing so, starting the VM we can get it set up simply with:
sudo -s
nix-shell -p git
git clone https://github.com/tecosaur/golgi
cd golgi
./install.sh
# wait a bit, then create root password
shutdown -h now
Deploying
Deploying is simply a matter of entering the deploy nix shell nix develop
and
deploy .#golgi.system
.
In order for this image to be built, the sandbox will need to be set to false
or
relaxed
(for the custom zsh build). This can be done by adding the line sandbox = relaxed
to /etc/nix/nix.conf
. Just note that the nix-daemon will need to be restarted
for this new setting to take full effect.