.files/nix/configurations/vanadium/home/dev.nix
Léana 江 ebf8468807
tree-wide: format with nixfmt
Another saturday another useless formatter change.
It's my dotfiles, after all

alejandra doesn't handle c-style inline comments well.
2025-11-08 10:15:58 +08:00

80 lines
1.9 KiB
Nix

{
pkgs,
lib,
config,
...
}:
{
home.packages = [
# preview markdown
pkgs.python3Packages.grip
# For {nix,haskell} contribution
pkgs.gh
pkgs.act
pkgs.nixfmt-rfc-style
pkgs.nix-doc
pkgs.nixpkgs-review
pkgs.shellcheck
pkgs.lua-language-server
pkgs.stylua # lua
pkgs.nil # nix
pkgs.fish-lsp # fish
pkgs.pyright # python
pkgs.taplo # toml
pkgs.vscode-langservers-extracted # JSON etc
pkgs.yaml-language-server # yaml
# bash
pkgs.shfmt
pkgs.nodePackages.bash-language-server
];
programs.git = {
enable = true;
signing.signByDefault = true;
maintenance = {
enable = true;
# We don't deal with worktree folders anyway
repositories = lib.map (path: "${config.home.homeDirectory}/r/${path}") [
"nixos/nixpkgs"
"ghc/ghc"
"haskell/cabal"
];
};
includes =
let
fromList = import ../../../git-identities/git-compat.nix;
identities = import ../../../git-identities/list.nix;
in
fromList identities;
};
programs.gpg.enable = true;
# programs.vscode = {
# enable = true;
# profiles.default.extensions = [
# pkgs.vscode-extensions.redhat.java
# pkgs.vscode-extensions.vscjava.vscode-java-pack
# ];
# };
nix = {
settings = {
extra-substituters = [
"https://ghc-nix.cachix.org"
"https://haskell-language-server.cachix.org"
"https://helix.cachix.org"
"https://cache.iog.io"
];
extra-trusted-public-keys = [
"ghc-nix.cachix.org-1:ziC/I4BPqeA4VbtOFpFpu6D1t6ymFvRWke/lc2+qjcg="
"haskell-language-server.cachix.org-1:juFfHrwkOxqIOZShtC4YC1uT1bBcq2RSvC7OMKx0Nz8="
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
"hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
];
};
};
}