tangled
alpha
login
or
join now
ptr.pet
/
ark
3
fork
atom
nix machine / user configurations
3
fork
atom
overview
issues
pulls
pipelines
stuff
ptr.pet
3 years ago
7395765b
d29cb12b
+38
-31
9 changed files
expand all
collapse all
unified
split
flake.nix
hosts
default.nix
lungmen
default.nix
lib
default.nix
modules
base
default.nix
pkgs-set
default.nix
pkgs-to-export.nix
shells
default.nix
users
patriot
default.nix
+9
-4
flake.nix
···
13
13
};
14
14
15
15
outputs = inputs: let
16
16
-
lib = (import ./lib inputs.nixos.lib).extend (_: lib: rec {
16
16
+
lib = inputs.nixos.lib.extend (_: _: builtins);
17
17
+
tlib = (import ./lib lib).extend (_: prev: rec {
17
18
makePkgs = system:
18
19
import ./pkgs-set {
19
20
inherit system lib;
21
21
+
tlib = prev;
20
22
stable = inputs.nixos;
21
23
unstable = inputs.latest;
22
24
};
23
23
-
genPkgs = f: lib.genSystems (system: f (makePkgs system));
25
25
+
genPkgs = f: prev.genSystems (system: f (makePkgs system));
24
26
});
25
27
in rec {
26
26
-
nixosConfigurations = import ./hosts {inherit lib inputs;};
27
27
-
devShells = import ./shells {inherit lib inputs;};
28
28
+
nixosConfigurations = import ./hosts {inherit lib tlib inputs;};
29
29
+
30
30
+
packages = tlib.genPkgs (pkgs: pkgs._exported);
31
31
+
32
32
+
devShells = import ./shells {inherit lib tlib inputs;};
28
33
devShell = lib.mapAttrs (_: value: value.default) devShells;
29
34
};
30
35
}
+11
-13
hosts/default.nix
···
1
1
{
2
2
inputs,
3
3
lib,
4
4
+
tlib,
5
5
+
...
4
6
}: let
5
7
baseModules = [
6
8
../modules
···
10
12
];
11
13
12
14
mkSystem = name: system: let
13
13
-
pkgs = lib.makePkgs system;
15
15
+
pkgs = tlib.makePkgs system;
14
16
in
15
17
lib.nixosSystem {
16
18
inherit system;
17
19
modules =
18
20
baseModules
19
21
++ [
20
20
-
{
21
21
-
nixpkgs = {
22
22
-
inherit pkgs;
23
23
-
};
24
24
-
}
22
22
+
{nixpkgs.pkgs = pkgs;}
25
23
(import (./. + "/${name}/default.nix"))
26
24
];
27
27
-
specialArgs = {
28
28
-
inherit inputs;
29
29
-
tlib = lib;
30
30
-
};
25
25
+
specialArgs = {inherit inputs tlib;};
31
26
};
32
32
-
in {
33
33
-
lungmen = mkSystem "lungmen" "x86_64-linux";
34
34
-
}
27
27
+
28
28
+
systems = {
29
29
+
lungmen = "x86_64-linux";
30
30
+
};
31
31
+
in
32
32
+
lib.mapAttrs mkSystem systems
+1
-1
hosts/lungmen/default.nix
···
176
176
};
177
177
178
178
environment = {
179
179
-
systemPackages = [btrfsDiff];
179
179
+
systemPackages = [btrfsDiff pkgs.ntfs3g];
180
180
pathsToLink = ["/share/zsh"];
181
181
persistence."/persist" = {
182
182
directories = ["/etc/nixos"];
+2
-2
lib/default.nix
···
1
1
lib:
2
2
-
(lib.extend (_: _: builtins)).extend (_: lib: rec {
2
2
+
lib.makeExtensible (self: {
3
3
defaultSystems = import ./systems.nix;
4
4
-
genSystems = lib.genAttrs defaultSystems;
4
4
+
genSystems = lib.genAttrs self.defaultSystems;
5
5
6
6
pkgBin = pkgs: id:
7
7
if lib.isString id
-1
modules/base/default.nix
···
48
48
git
49
49
lm_sensors
50
50
mkpasswd
51
51
-
ntfs3g
52
51
zoxide
53
52
bottom
54
53
amber
+5
pkgs-set/default.nix
···
3
3
unstable,
4
4
system,
5
5
lib,
6
6
+
...
6
7
}: let
7
8
overlays =
8
9
lib.mapAttrsToList
···
17
18
config.allowUnfree = true;
18
19
overlays = [(_: _: import ./from-unstable.nix unstablePkgs)] ++ overlays;
19
20
};
21
21
+
pkgsToExport = import ./pkgs-to-export.nix;
20
22
in
21
23
pkgs
24
24
+
// {
25
25
+
_exported = lib.getAttrs pkgsToExport pkgs;
26
26
+
}
+1
pkgs-set/pkgs-to-export.nix
···
1
1
+
[]
+3
-3
shells/default.nix
···
1
1
-
{lib, ...}:
2
2
-
lib.genPkgs (pkgs: {
1
1
+
{tlib, ...}:
2
2
+
tlib.genPkgs (pkgs: {
3
3
default = with pkgs;
4
4
mkShell {
5
5
name = "prts";
6
6
-
buildInputs = [git git-crypt];
6
6
+
buildInputs = [git git-crypt alejandra helix];
7
7
shellHook = "echo \"$(tput bold)welcome to PRTS, $USER$(tput sgr0)\"";
8
8
};
9
9
})
+6
-7
users/patriot/default.nix
···
87
87
};
88
88
};
89
89
};
90
90
-
systemd.user.services.gnome-session-restart-dbus.serviceConfig = {Slice = "-.slice";};
91
90
systemd = {
92
92
-
targets = {network-online.enable = false;};
91
91
+
targets.network-online.enable = false;
93
92
services = {
94
93
systemd-networkd-wait-online.enable = false;
95
94
NetworkManager-wait-online.enable = false;
···
223
222
};
224
223
fonts = [fontComb];
225
224
extraEnv = ''
226
226
-
export SDL_VIDEODRIVER=wayland
225
225
+
# export SDL_VIDEODRIVER=wayland
227
226
# needs qt5.qtwayland in systemPackages
228
227
export QT_QPA_PLATFORM=wayland
229
228
#export QT_WAYLAND_DISABLE_WINDOWDECORATION="1"
···
521
520
envExtra = extraEnv;
522
521
loginExtra = ''
523
522
if [ "$(${pkgs.coreutils}/bin/tty)" = "/dev/tty1" ]; then
524
524
-
exec sway
523
523
+
exec sway
525
524
fi
526
525
'';
527
526
initExtra = ''
···
529
528
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
530
529
531
530
function tomp4 () {
532
532
-
${pkgs.ffmpeg}/bin/ffmpeg -i $1 -c:v libx264 -preset slow -crf 30 -c:a aac -b:a 128k "$1.mp4"
531
531
+
${pkgBin "ffmpeg"} -i $1 -c:v libx264 -preset slow -crf 30 -c:a aac -b:a 128k "$1.mp4"
533
532
}
534
533
535
534
function topng () {
536
536
-
${pkgs.ffmpeg}/bin/ffmpeg -i $1 "$1.png"
535
535
+
${pkgBin "ffmpeg"} -i $1 "$1.png"
537
536
}
538
537
539
538
bindkey "$terminfo[kRIT5]" forward-word
···
546
545
nixosConfig.environment.shellAliases
547
546
// {
548
547
harmony-ssh = ''
549
549
-
${pkgs.mosh}/bin/mosh root@chat.harmonyapp.io
548
548
+
${pkgBin "mosh"} root@chat.harmonyapp.io
550
549
'';
551
550
};
552
551
};