-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdev.mod.nix
77 lines (72 loc) · 1.88 KB
/
dev.mod.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
{
universal.modules = [
({
pkgs,
lib,
...
}: {
nixpkgs.overlays = [
(final: prev: {
# Getting a shell to run in annoying, non-tty nested environments
# e.g. for debugging stuff inside of xwayland-run without using xterm
# or in the environment of `niri msg action spawn` without needing to spawn a graphical window
sodi-revshell = final.symlinkJoin {
name = "revshell";
paths = [
(final.writeScriptBin "revsh-attach" ''
${lib.getExe final.socat} file:$(tty),raw,echo=0 tcp:127.0.0.1:"$1"
'')
(final.writeScriptBin "revsh-here" ''
${lib.getExe final.socat} exec:"sh -lic $SHELL",pty,stderr,setsid,sigint,sane tcp-listen:"$1"
'')
];
};
})
];
environment.systemPackages = with pkgs; [
chase
tldr
eza
bat
fd
ripgrep
bottom
entr
difftastic
kakoune
socat
jq
just
file
bc
dust
moreutils
sodi-revshell
];
})
{
# This domain has improperly configured IPv6 for now
# And that causes svn to hang for at least 4 minutes
networking.extraHosts = ''
176.31.12.55 servers.simutrans.org
'';
}
];
universal.home_modules = [
({pkgs, ...}: {
home.packages = with pkgs; [
clang
bun
];
programs.git.enable = true;
programs.git.userName = "sodiboo";
programs.git.userEmail = "git@sodi.boo";
programs.gh.enable = true;
programs.gh.gitCredentialHelper.enable = true;
programs.lazygit.enable = true;
programs.direnv.enable = true;
programs.direnv.nix-direnv.enable = true;
programs.git.ignores = ["**/.vscode"];
})
];
}