After spending some time researching possible solutions for non containerised development environments on NixOS, I have finally settled on Devbox from Jetpack. This enables me to configure required services per project, quickly and easily, on any machine.
GNU Stow
I use GNU Stow in order to have important .dot
files, usually located in separate directories in the filesystem, version controlled in git
from a designated repository.
Easier to use a tool like this than to do it manually.
Nix-shell
According to the manual:
The command nix-shell will build the dependencies of the specified derivation, but not the derivation itself. It will then start an interactive shell in which all environment variables defined by the derivation path have been set to their corresponding values, and the script $stdenv/setup has been sourced. This is useful for reproducing the environment of a derivation for development.
How does that help me?
NixOS
I’ve been reading a lot about NixOS lately and wanted to learn more so I’ve took the plunge and now using it as my daily driver. Hopefully I’ll learn more and get a better understanding of it by actually using it. Not sure if I’ll keep it permanently or go back to Fedora Silverblue, but nothing ventured nothing gained.
NixOS, a Linux distribution based on the purely functional package management system Nix, that is composed using modules and packages defined in the Nixpkgs project.
Schedule tasks in systemd
Given that cron
is not installed by default on a Fedora Silverblue host, it can either be added as a layered package or you can use systemd
which is available by default.