Add a section on Nix, Nixos and related tools #30
3 changed files with 30 additions and 9 deletions
BIN
_git.tar.gz
(Stored with Git LFS)
BIN
_git.tar.gz
(Stored with Git LFS)
Binary file not shown.
|
@ -31,3 +31,6 @@ plugins:
|
|||
enable_creation_date: true
|
||||
markdown_extensions:
|
||||
- tables
|
||||
- pymdownx.caret
|
||||
- pymdownx.mark
|
||||
- pymdownx.tilde
|
|
@ -137,8 +137,24 @@ For a full explanation of its key features I would like to point you to the [Lix
|
|||
We use Lix instead of CppNix as the goals of Lix align with the viewpoints and ideologies that our members hold and what we want to represent as a (computer) society.
|
||||
|
||||
## Why we use it
|
||||
{Details of how the config was ascattered and hard to find}
|
||||
{Also embracing devops and reduced manpower}
|
||||
Back in [January 2023 we got disconnected from teh internet][skynet_disconnect].
|
||||
For the purposes of this document the root cause is not of importance.
|
||||
What *is* the mad Indian Jones ~~treasure~~ config hunt that it triggered.
|
||||
![Brendan delving for configs][skynet_disconnect_reenactment]
|
||||
Additionally ITD require us to update our systems regularly (as they should be).
|
||||
Technically this config delving is an ongoing effort, the old hard drives are occasionally connected up and raided.
|
||||
|
||||
As you would imagine this is not ideal, a exasperating factor was that many programs had changed both the location and format of their configuration over the decades that Skynet has been using them.
|
||||
|
||||
This is where teh strengths of NixOS lie.
|
||||
The config for the entire cluster is located in a singular location.
|
||||
Using modules which work as a translation layer if the requirements for the programs change this dont impact us.
|
||||
Not to mention we can fearlessly (and regularly) update our systems it is a match made is heaven.
|
||||
|
||||
Currently the Skynet cluster is comprised of 15 servers which have NixOS on them.
|
||||
A combination of LXC's (Linux Containers) and physical bare metal servers.
|
||||
Since these systems share a base config (with tehir individual applications layered on top) we are able to efficiently build them, building a package for one will also built it for other servers.
|
||||
Combine that with teh ability to deploy them via our own selfhosted CI/CD we have a strong foundation to work off of.
|
||||
|
||||
## How we use it
|
||||
### Requirements
|
||||
|
@ -166,3 +182,5 @@ We use Lix instead of CppNix as the goals of Lix align with the viewpoints and i
|
|||
[nix_dns]: https://forgejo.skynet.ie/Skynet/nixos/src/branch/main/applications/dns/dns.nix
|
||||
[nix_lix]: https://lix.systems/
|
||||
[nix_lix_about]: https://lix.systems/about/
|
||||
[skynet_disconnect]: https://public.skynet.ie/postmortem/2023-01-12_Loss-of-network-access.html
|
||||
[skynet_disconnect_reenactment]: https://forgejo.skynet.ie/Computer_Society/presentations_compsoc/media/branch/main/src/slides/skynet/0_intro_img1.png
|
Loading…
Reference in a new issue