Applications
Some applications come with shared defaults — Firefox hardened for privacy, VSCodium and Obsidian with a set of extensions — and each leaves a seam for a user to add their own on top. Git is set up to sign commits, and told which keys to trust.
Example
Section titled “Example”user = { firefox.enable = true; vscodium.extraExtensions = [ pkgs.vscode-extensions.ms-python.python ]; git.allowedSigners = '' ada@example.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA... '';};An extension or plugin adds to the shared defaults rather than replacing them.
Options
Section titled “Options”user.firefox.enableuser.firefox.extraExtensionsuser.vscodium.extraExtensionsuser.obsidian.extraPluginsuser.git.allowedSigners— the SSH keys git trusts to verify signed commits