NixOS configuration for bootstrapping Daniel's station (Darwin)
At the current point in time, this configuration is aimed at aarch64-darwin architecture (Apple Silicon)
Just follow this guide ↗ from DeterminateSystems
nix profile install home-manager
# remote bootstrap
nix run nix-darwin -- switch --flake git+https://codeberg.org/dminca/nix-config.git
# run the flake and activate
nix run . -- switch --flake .
# run home-manager stuff
home-manager switch --flake .
- sample
.sops.yaml
&secrets/example.yaml
↗ source
# create dir where key will be added
mkdir -vp ~/.config/sops/age
# generate key
nix-shell -p age --run "age-keygen -o ~/.config/sops/age/keys.txt"
# prepare data to encrypt
vi secrets/example.yaml
# have .sops.yaml filled
# encrypt data
nix-shell -p sops --run "sops --encrypt secrets/example.yaml" | pbcopy
# add/remove entries from secrets file
nix-shell -p sops --run "sops secrets/example.yaml"
Important
These plugins can only be used within home-manager
setup (it's the only way I tested).
The search will retrieve a list of packages from the Nix Store, this means
you can add them in the plugins = []
section
nix-env -f '<nixpkgs>' -qaP -A vimPlugins
nix-env -f '<nixpkgs>' -qaP -A tmuxPlugins
It's just not straightforward. This case covers only fonts installed via
Home-Manager
After nix run -- switch --flake .
this needs to be executed
# reload font cache
fc-cache
# check font was installed; in this case 'Hack' (part of nerdfonts family)
fc-list -v | grep -i 'hack'
Should retrieve a list of garbled stuff referencing 'Hack' in there.
More info ↗ here.
- port all brew packages (all packages are listed in Brewfile
- port dotfiles (zshrc, neovim etc.)
- install
kubectl
for user profile - install
helm
for user profile - install
kubectx
for user profile