uuid: - value: 49ef1a05-b415-4537-b2c7-285827e27463 langcode: - value: en type: - target_id: daily_email target_type: node_type target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7 revision_timestamp: - value: '2025-05-11T09:00:04+00:00' revision_uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 revision_log: { } status: - value: true uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 title: - value: 'Managing dotfiles with Nix' created: - value: '2024-11-29T00:00:00+00:00' changed: - value: '2025-05-11T09:00:04+00:00' promote: - value: false sticky: - value: false default_langcode: - value: true revision_translation_affected: - value: true path: - alias: /daily/2024/11/29/managing-dotfiles-with-nix langcode: en body: - value: |
As well as Nix managing packages and NixOS as your operating system, you can use Nix to manage your user configuration and dotfiles.
Enter, Home Manager.
Home Manager is available as a module for NixOS and a standalone package for other Linux distributions and macOS.
With it, you can install and configure programs for specific users and create and manage dotfiles such as .gitconfig, .tmux.conf and .zshrc instead of using a tool like Stow.
There's also the extra benefit that you can write these files in the Nix language and only focus on one configuration language.
Nix and Home Manager will create the desired output file in whatever the program wants, whether it's JSON, ini, YAML or something else.
A good example is my .gitconfig configuration. It includes settings for Git itself, aliases, global excludes, adds extra packages such as git-instafix and some environment variables.
All in one file and all in one language.
format: full_html processed: |As well as Nix managing packages and NixOS as your operating system, you can use Nix to manage your user configuration and dotfiles.
Enter, Home Manager.
Home Manager is available as a module for NixOS and a standalone package for other Linux distributions and macOS.
With it, you can install and configure programs for specific users and create and manage dotfiles such as .gitconfig, .tmux.conf and .zshrc instead of using a tool like Stow.
There's also the extra benefit that you can write these files in the Nix language and only focus on one configuration language.
Nix and Home Manager will create the desired output file in whatever the program wants, whether it's JSON, ini, YAML or something else.
A good example is my .gitconfig configuration. It includes settings for Git itself, aliases, global excludes, adds extra packages such as git-instafix and some environment variables.
All in one file and all in one language.
summary: null field_daily_email_cta: { }