mirror of
https://codeberg.org/leana8959/.files.git
synced 2025-12-06 06:39:14 +00:00
118 lines
2.7 KiB
Nix
118 lines
2.7 KiB
Nix
{
|
|
pkgs,
|
|
lib,
|
|
config,
|
|
...
|
|
}: {
|
|
home.packages = [
|
|
# preview markdown
|
|
pkgs.python3Packages.grip
|
|
|
|
# For nix contribution
|
|
pkgs.gh
|
|
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;
|
|
repositories =
|
|
lib.map (path: config.home.homeDirectory + "/${path}")
|
|
[
|
|
"r/nixos/nixpkgs"
|
|
];
|
|
};
|
|
includes = let
|
|
hasconfigRemoteCondition = cfg:
|
|
cfg // {condition = "hasconfig:remote.*.url:" + cfg.condition;};
|
|
|
|
haskellIdentity = {
|
|
init.defaultBranch = "main";
|
|
user.name = "Léana Jiang";
|
|
};
|
|
|
|
universityIdentity = {
|
|
init.defaultBranch = "main";
|
|
user = {
|
|
name = "Léana CHIANG";
|
|
email = "leana.chiang@etudiant.univ-rennes1.fr";
|
|
signingKey = "0x32035DB97E777EEB";
|
|
};
|
|
};
|
|
|
|
blameIgnore = {
|
|
blame.ignoreRevsFile = ".git-blame-ignore-revs";
|
|
};
|
|
in
|
|
map hasconfigRemoteCondition [
|
|
# Univ stuff
|
|
{
|
|
condition = "git@gitlab.istic.univ-rennes1.fr";
|
|
contents = universityIdentity;
|
|
}
|
|
{
|
|
condition = "git@gitlab2.istic.univ-rennes1.fr";
|
|
contents = universityIdentity;
|
|
}
|
|
|
|
# Haskell
|
|
{
|
|
condition = "git@gitlab.haskell.org:*/**";
|
|
contents = lib.mkMerge [
|
|
haskellIdentity
|
|
blameIgnore
|
|
];
|
|
}
|
|
|
|
# Blame
|
|
# Turning this on globally will fail if the file doesn't exist
|
|
{
|
|
condition = "git@github.com:nixos/nixpkgs.git";
|
|
contents = blameIgnore;
|
|
}
|
|
];
|
|
};
|
|
|
|
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"
|
|
];
|
|
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="
|
|
];
|
|
};
|
|
};
|
|
}
|