195 lines
3.8 KiB
Nix
195 lines
3.8 KiB
Nix
{ config, pkgs, ... }:
|
|
let
|
|
realName = "Daniel Lundin";
|
|
email = "dln@arity.se";
|
|
in
|
|
{
|
|
home = {
|
|
username = "dln";
|
|
homeDirectory = "/home/dln";
|
|
packages = with pkgs; [
|
|
asciinema
|
|
openconnect
|
|
ouch
|
|
];
|
|
};
|
|
|
|
programs.atuin.settings = {
|
|
show_tabs = false;
|
|
|
|
cwd_filter = [
|
|
"^~/media"
|
|
"^/home/dln/media"
|
|
"^/tmp"
|
|
];
|
|
|
|
history_filter = [
|
|
"^kubectl create secret.*--from-literal"
|
|
"^kubectl delete ns"
|
|
"^kubectl delete namespace"
|
|
"^talosctl reset"
|
|
];
|
|
};
|
|
|
|
programs.git = {
|
|
userName = realName;
|
|
userEmail = email;
|
|
};
|
|
|
|
programs.helix = {
|
|
enable = true;
|
|
# extraPackages = [];
|
|
};
|
|
|
|
programs.jujutsu = {
|
|
settings = {
|
|
user = {
|
|
email = email;
|
|
name = realName;
|
|
};
|
|
|
|
signing = {
|
|
sign-all = true;
|
|
backend = "ssh";
|
|
backends.ssh.allowed-signers = "/home/dln/.ssh/authorized_keys";
|
|
key = "/home/dln/.ssh/git_signing_key.pub";
|
|
};
|
|
|
|
git = {
|
|
push-bookmark-prefix = "dln/push-";
|
|
};
|
|
|
|
ui = {
|
|
"default-command" = [
|
|
"log"
|
|
"--limit=10"
|
|
"-T"
|
|
"builtin_log_comfortable"
|
|
];
|
|
pager = "delta";
|
|
};
|
|
|
|
"merge-tools" = {
|
|
difft."diff-args" = [
|
|
"--color=always"
|
|
"--missing-as-empty"
|
|
"$left"
|
|
"$right"
|
|
];
|
|
difftu = {
|
|
program = "difft";
|
|
"diff-args" = [
|
|
"--color=always"
|
|
"--display=inline"
|
|
"--missing-as-empty"
|
|
"$left"
|
|
"$right"
|
|
];
|
|
};
|
|
};
|
|
|
|
aliases = {
|
|
l = [
|
|
"log"
|
|
"--limit=25"
|
|
"-T"
|
|
"builtin_log_comfortable"
|
|
"-r"
|
|
"(main..@) | (main..@)-"
|
|
];
|
|
la = [
|
|
"log"
|
|
"--limit=25"
|
|
"-T"
|
|
"builtin_log_oneline"
|
|
"-r"
|
|
"all()"
|
|
];
|
|
d = [
|
|
"diff"
|
|
"--tool=difftu"
|
|
];
|
|
dd = [
|
|
"diff"
|
|
"--git"
|
|
];
|
|
ds = [
|
|
"diff"
|
|
"--tool=difft"
|
|
];
|
|
s = [
|
|
"show"
|
|
"--tool=difftu"
|
|
];
|
|
ss = [
|
|
"show"
|
|
"--tool=difft"
|
|
];
|
|
};
|
|
|
|
"revset-aliases" = {
|
|
# Prevent rewriting commits on main@origin and commits authored by other users;
|
|
"user(x)" = "author(x) | committer(x)";
|
|
"trunk()" = "latest((present(main) | present(master)) & remote_bookmarks())";
|
|
"open" = "(mine() ~ ::trunk()) ~ heads(empty())";
|
|
"wip" = ''description("wip: ")'';
|
|
"ready" = "open() ~ (wip::)";
|
|
};
|
|
|
|
colors = {
|
|
"commit_id prefix" = {
|
|
bold = true;
|
|
};
|
|
|
|
"rest" = {
|
|
fg = "bright black";
|
|
bold = false;
|
|
};
|
|
|
|
"diff added token" = {
|
|
bg = "#002200";
|
|
fg = "#66ffcc";
|
|
underline = false;
|
|
};
|
|
"diff removed token" = {
|
|
bg = "#220011";
|
|
underline = true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
programs.ssh.extraConfig = ''
|
|
Include ${config.home.homeDirectory}/.ssh/config_local
|
|
'';
|
|
|
|
programs.ssh.matchBlocks = {
|
|
dev = {
|
|
hostname = "10.1.100.16";
|
|
forwardAgent = true;
|
|
};
|
|
|
|
nemo = {
|
|
hostname = "10.1.100.20";
|
|
forwardAgent = true;
|
|
localForwards = [
|
|
{
|
|
bind.address = "localhost";
|
|
bind.port = 8000;
|
|
host.address = "localhost";
|
|
host.port = 8000;
|
|
}
|
|
{
|
|
bind.address = "localhost";
|
|
bind.port = 8080;
|
|
host.address = "localhost";
|
|
host.port = 8080;
|
|
}
|
|
];
|
|
};
|
|
};
|
|
|
|
services.syncthing.enable = true;
|
|
|
|
home.stateVersion = "24.05"; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
|
}
|