tangled
alpha
login
or
join now
bwc9876.dev
/
nixos-config
1
fork
atom
Flake for my NixOS devices
1
fork
atom
overview
issues
pulls
pipelines
Re-add waybar binds, switch over screenrec.nu
bwc9876.dev
3 months ago
6c5b70f4
f66ede5e
verified
This commit was signed with the committer's
known signature
.
bwc9876.dev
SSH Key Fingerprint:
SHA256:DanMEP/RNlSC7pAVbnXO6wzQV00rqyKj053tz4uH5gQ=
+208
-35
4 changed files
expand all
collapse all
unified
split
flake.lock
homeModules
gdi.nix
waybar.nix
res
screenrec.nu
+202
-25
flake.lock
···
74
74
"type": "github"
75
75
}
76
76
},
77
77
+
"dankMaterialShell": {
78
78
+
"inputs": {
79
79
+
"dgop": "dgop",
80
80
+
"dms-cli": "dms-cli",
81
81
+
"nixpkgs": [
82
82
+
"spoon",
83
83
+
"nixpkgs"
84
84
+
]
85
85
+
},
86
86
+
"locked": {
87
87
+
"lastModified": 1762812757,
88
88
+
"narHash": "sha256-VPmzq5tYJIwIV9LQyn+wCiNRHiVHO8wrqoM7pz6LVPs=",
89
89
+
"owner": "AvengeMedia",
90
90
+
"repo": "DankMaterialShell",
91
91
+
"rev": "37a10bd453da057fb4e69cf600c413eb4467bd72",
92
92
+
"type": "github"
93
93
+
},
94
94
+
"original": {
95
95
+
"owner": "AvengeMedia",
96
96
+
"repo": "DankMaterialShell",
97
97
+
"type": "github"
98
98
+
}
99
99
+
},
77
100
"deploy-rs": {
78
101
"inputs": {
79
102
"flake-compat": "flake-compat_2",
···
84
107
"utils": "utils"
85
108
},
86
109
"locked": {
87
87
-
"lastModified": 1756719547,
88
88
-
"narHash": "sha256-N9gBKUmjwRKPxAafXEk1EGadfk2qDZPBQp4vXWPHINQ=",
110
110
+
"lastModified": 1762286984,
111
111
+
"narHash": "sha256-9I2H9x5We6Pl+DBYHjR1s3UT8wgwcpAH03kn9CqtdQc=",
89
112
"owner": "serokell",
90
113
"repo": "deploy-rs",
91
91
-
"rev": "125ae9e3ecf62fb2c0fd4f2d894eb971f1ecaed2",
114
114
+
"rev": "9c870f63e28ec1e83305f7f6cb73c941e699f74f",
92
115
"type": "github"
93
116
},
94
117
"original": {
···
97
120
"type": "github"
98
121
}
99
122
},
123
123
+
"dgop": {
124
124
+
"inputs": {
125
125
+
"nixpkgs": [
126
126
+
"spoon",
127
127
+
"dankMaterialShell",
128
128
+
"nixpkgs"
129
129
+
]
130
130
+
},
131
131
+
"locked": {
132
132
+
"lastModified": 1762435535,
133
133
+
"narHash": "sha256-QhzRn7pYN35IFpKjjxJAj3GPJECuC+VLhoGem3ezycc=",
134
134
+
"owner": "AvengeMedia",
135
135
+
"repo": "dgop",
136
136
+
"rev": "6cf638dde818f9f8a2e26d0243179c43cb3458d7",
137
137
+
"type": "github"
138
138
+
},
139
139
+
"original": {
140
140
+
"owner": "AvengeMedia",
141
141
+
"repo": "dgop",
142
142
+
"type": "github"
143
143
+
}
144
144
+
},
145
145
+
"dms-cli": {
146
146
+
"inputs": {
147
147
+
"nixpkgs": [
148
148
+
"spoon",
149
149
+
"dankMaterialShell",
150
150
+
"nixpkgs"
151
151
+
]
152
152
+
},
153
153
+
"locked": {
154
154
+
"lastModified": 1762491516,
155
155
+
"narHash": "sha256-oGLH5Gje/p2Hc1kO3m8P5eAZ7JldBI30EmwzEET4cNU=",
156
156
+
"owner": "AvengeMedia",
157
157
+
"repo": "danklinux",
158
158
+
"rev": "050cf28a2963a7698ed4759736fe5fe77eee7cc2",
159
159
+
"type": "github"
160
160
+
},
161
161
+
"original": {
162
162
+
"owner": "AvengeMedia",
163
163
+
"repo": "danklinux",
164
164
+
"type": "github"
165
165
+
}
166
166
+
},
100
167
"fenix": {
101
168
"inputs": {
102
169
"nixpkgs": [
···
128
195
"rust-analyzer-src": "rust-analyzer-src_2"
129
196
},
130
197
"locked": {
131
131
-
"lastModified": 1761460927,
132
132
-
"narHash": "sha256-9BUyZfPBh3mh58fmpseqfMAB73PNm+iwl8UpjCbThk0=",
198
198
+
"lastModified": 1762757174,
199
199
+
"narHash": "sha256-i2CZAiJNQsC7Wwk8fUZHS130W8HHLbmYqgT6ErYp5Zw=",
133
200
"owner": "nix-community",
134
201
"repo": "fenix",
135
135
-
"rev": "0f19d25425626ea42bded065029f45ca5f526ca1",
202
202
+
"rev": "9ada5aa8ebd5062c8c399ae59c3f77f266216a24",
136
203
"type": "github"
137
204
},
138
205
"original": {
···
503
570
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
504
571
},
505
572
"locked": {
506
506
-
"lastModified": 1762857797,
507
507
-
"narHash": "sha256-puoFJGlbL6khrQKozCO6Wgpq/IhA2Sfnz+ui/87lbQQ=",
573
573
+
"lastModified": 1762938849,
574
574
+
"narHash": "sha256-ltM04Wy+vMm/EAwhGTl2BYjCgF+Kq4lltpDH9NEh264=",
575
575
+
"owner": "sodiboo",
576
576
+
"repo": "niri-flake",
577
577
+
"rev": "ea9b76cfa921d42a7502260b2d1296798089dfe6",
578
578
+
"type": "github"
579
579
+
},
580
580
+
"original": {
581
581
+
"owner": "sodiboo",
582
582
+
"repo": "niri-flake",
583
583
+
"type": "github"
584
584
+
}
585
585
+
},
586
586
+
"niri-flake": {
587
587
+
"inputs": {
588
588
+
"niri-stable": "niri-stable_2",
589
589
+
"niri-unstable": "niri-unstable_2",
590
590
+
"nixpkgs": [
591
591
+
"spoon",
592
592
+
"nixpkgs"
593
593
+
],
594
594
+
"nixpkgs-stable": "nixpkgs-stable_2",
595
595
+
"xwayland-satellite-stable": "xwayland-satellite-stable_2",
596
596
+
"xwayland-satellite-unstable": "xwayland-satellite-unstable_2"
597
597
+
},
598
598
+
"locked": {
599
599
+
"lastModified": 1762810134,
600
600
+
"narHash": "sha256-eu8Gkb/y/5pRS3Ml/sg3oeUtFFzlJMpDrJRgPgOXz38=",
508
601
"owner": "sodiboo",
509
602
"repo": "niri-flake",
510
510
-
"rev": "2ff3443b4226f6721a43b75e76b6ca59caa34fec",
603
603
+
"rev": "44c5a2c19b7b22d1b2375ef95f656291a0af3a1b",
511
604
"type": "github"
512
605
},
513
606
"original": {
···
533
626
"type": "github"
534
627
}
535
628
},
629
629
+
"niri-stable_2": {
630
630
+
"flake": false,
631
631
+
"locked": {
632
632
+
"lastModified": 1756556321,
633
633
+
"narHash": "sha256-RLD89dfjN0RVO86C/Mot0T7aduCygPGaYbog566F0Qo=",
634
634
+
"owner": "YaLTeR",
635
635
+
"repo": "niri",
636
636
+
"rev": "01be0e65f4eb91a9cd624ac0b76aaeab765c7294",
637
637
+
"type": "github"
638
638
+
},
639
639
+
"original": {
640
640
+
"owner": "YaLTeR",
641
641
+
"ref": "v25.08",
642
642
+
"repo": "niri",
643
643
+
"type": "github"
644
644
+
}
645
645
+
},
536
646
"niri-unstable": {
537
647
"flake": false,
538
648
"locked": {
539
539
-
"lastModified": 1762854265,
540
540
-
"narHash": "sha256-iykTzCzU8hI7b8LvAquYY4Asl2xj3AcLzWZv6rm8MGY=",
649
649
+
"lastModified": 1762881062,
650
650
+
"narHash": "sha256-j0Gxopn4jGYQae/90V2v4u4+Ec+gFLq3UbSaGfczpOM=",
651
651
+
"owner": "YaLTeR",
652
652
+
"repo": "niri",
653
653
+
"rev": "5b77107161c504376b962107913bf74b575703e7",
654
654
+
"type": "github"
655
655
+
},
656
656
+
"original": {
657
657
+
"owner": "YaLTeR",
658
658
+
"repo": "niri",
659
659
+
"type": "github"
660
660
+
}
661
661
+
},
662
662
+
"niri-unstable_2": {
663
663
+
"flake": false,
664
664
+
"locked": {
665
665
+
"lastModified": 1762804232,
666
666
+
"narHash": "sha256-LCddK36/6u73jed1yuqbu6JKWIITsc42qoM883DgwJg=",
541
667
"owner": "YaLTeR",
542
668
"repo": "niri",
543
543
-
"rev": "fb2f67c8a036f674e9101e15a7bb1cf61524ebde",
669
669
+
"rev": "978c4e6c8afc0199e2cbd9037bdc7c41fbbab2a3",
544
670
"type": "github"
545
671
},
546
672
"original": {
···
586
712
},
587
713
"nixpkgs": {
588
714
"locked": {
589
589
-
"lastModified": 1762596750,
590
590
-
"narHash": "sha256-rXXuz51Bq7DHBlfIjN7jO8Bu3du5TV+3DSADBX7/9YQ=",
715
715
+
"lastModified": 1762844143,
716
716
+
"narHash": "sha256-SlybxLZ1/e4T2lb1czEtWVzDCVSTvk9WLwGhmxFmBxI=",
591
717
"owner": "NixOS",
592
718
"repo": "nixpkgs",
593
593
-
"rev": "b6a8526db03f735b89dd5ff348f53f752e7ddc8e",
719
719
+
"rev": "9da7f1cf7f8a6e2a7cb3001b048546c92a8258b4",
594
720
"type": "github"
595
721
},
596
722
"original": {
···
616
742
"type": "github"
617
743
}
618
744
},
745
745
+
"nixpkgs-stable_2": {
746
746
+
"locked": {
747
747
+
"lastModified": 1762756533,
748
748
+
"narHash": "sha256-HiRDeUOD1VLklHeOmaKDzf+8Hb7vSWPVFcWwaTrpm+U=",
749
749
+
"owner": "NixOS",
750
750
+
"repo": "nixpkgs",
751
751
+
"rev": "c2448301fb856e351aab33e64c33a3fc8bcf637d",
752
752
+
"type": "github"
753
753
+
},
754
754
+
"original": {
755
755
+
"owner": "NixOS",
756
756
+
"ref": "nixos-25.05",
757
757
+
"repo": "nixpkgs",
758
758
+
"type": "github"
759
759
+
}
760
760
+
},
619
761
"nixvim": {
620
762
"inputs": {
621
763
"flake-parts": "flake-parts_2",
···
626
768
"systems": "systems_2"
627
769
},
628
770
"locked": {
629
629
-
"lastModified": 1762865386,
630
630
-
"narHash": "sha256-2hkqfvY2wH+78M85X/ZApyZURnFc926b2mAHiyHcGDE=",
771
771
+
"lastModified": 1762904125,
772
772
+
"narHash": "sha256-+T9oUulnXOQmy37GGOivHSvEyViA4gQ41mFZEPEDuOA=",
631
773
"owner": "nix-community",
632
774
"repo": "nixvim",
633
633
-
"rev": "9e556e752505263eef8c0d0f982e2ab9029cc512",
775
775
+
"rev": "84902b354fd0f122c40880b90dc8ac89d4d0daea",
634
776
"type": "github"
635
777
},
636
778
"original": {
···
799
941
"rust-analyzer-src_2": {
800
942
"flake": false,
801
943
"locked": {
802
802
-
"lastModified": 1761412493,
803
803
-
"narHash": "sha256-Ig2yUk5ek3vSFR+m+rtmg0kJyRLPYol55QgsYsoSGI4=",
944
944
+
"lastModified": 1762722525,
945
945
+
"narHash": "sha256-cM1u88yehAW7S4Y4t7+fDHwmtXSOZUh24ELmAtYH37c=",
804
946
"owner": "rust-lang",
805
947
"repo": "rust-analyzer",
806
806
-
"rev": "daf1cd953fe878226e3a5b0356468f5a61995bf0",
948
948
+
"rev": "21f8445ea523e83cd4f11b0a67a3a5ced2b1f56f",
807
949
"type": "github"
808
950
},
809
951
"original": {
···
836
978
},
837
979
"spoon": {
838
980
"inputs": {
981
981
+
"dankMaterialShell": "dankMaterialShell",
839
982
"deploy-rs": "deploy-rs",
840
983
"fenix": "fenix_2",
841
984
"flakelight": [
···
847
990
"impermanence": [
848
991
"imperm"
849
992
],
993
993
+
"niri-flake": "niri-flake",
850
994
"nixpkgs": [
851
995
"nixpkgs"
852
996
]
853
997
},
854
998
"locked": {
855
855
-
"lastModified": 1762836691,
856
856
-
"narHash": "sha256-4g00XF3VcjC2WkX+DQHhsL6Sv7OHK3PzzGOjh2m1uPo=",
999
999
+
"lastModified": 1762901396,
1000
1000
+
"narHash": "sha256-Vq6TAdLR5Owo1N/6HGI01BUplqdGD6IzL44WFMZG4Pw=",
857
1001
"ref": "refs/heads/main",
858
858
-
"rev": "06976dab800f19002798fe5be33733cb5a0ca835",
859
859
-
"revCount": 294,
1002
1002
+
"rev": "ed08c933f9d2e121ae737378526b03722ecddc37",
1003
1003
+
"revCount": 299,
860
1004
"type": "git",
861
1005
"url": "https://codeberg.org/spoonbaker/mono"
862
1006
},
···
991
1135
"type": "github"
992
1136
}
993
1137
},
1138
1138
+
"xwayland-satellite-stable_2": {
1139
1139
+
"flake": false,
1140
1140
+
"locked": {
1141
1141
+
"lastModified": 1755491097,
1142
1142
+
"narHash": "sha256-m+9tUfsmBeF2Gn4HWa6vSITZ4Gz1eA1F5Kh62B0N4oE=",
1143
1143
+
"owner": "Supreeeme",
1144
1144
+
"repo": "xwayland-satellite",
1145
1145
+
"rev": "388d291e82ffbc73be18169d39470f340707edaa",
1146
1146
+
"type": "github"
1147
1147
+
},
1148
1148
+
"original": {
1149
1149
+
"owner": "Supreeeme",
1150
1150
+
"ref": "v0.7",
1151
1151
+
"repo": "xwayland-satellite",
1152
1152
+
"type": "github"
1153
1153
+
}
1154
1154
+
},
994
1155
"xwayland-satellite-unstable": {
1156
1156
+
"flake": false,
1157
1157
+
"locked": {
1158
1158
+
"lastModified": 1762747449,
1159
1159
+
"narHash": "sha256-Z1TKiux8K09a93w4PFDFsj8HFugXNy3iCC3Z8MpR5Rk=",
1160
1160
+
"owner": "Supreeeme",
1161
1161
+
"repo": "xwayland-satellite",
1162
1162
+
"rev": "6338574bc5c036487486acde264f38f39ea15fad",
1163
1163
+
"type": "github"
1164
1164
+
},
1165
1165
+
"original": {
1166
1166
+
"owner": "Supreeeme",
1167
1167
+
"repo": "xwayland-satellite",
1168
1168
+
"type": "github"
1169
1169
+
}
1170
1170
+
},
1171
1171
+
"xwayland-satellite-unstable_2": {
995
1172
"flake": false,
996
1173
"locked": {
997
1174
"lastModified": 1762747449,
+5
-1
homeModules/gdi.nix
···
136
136
move-column-to-workspace = n: { move-column-to-workspace = [ n ]; };
137
137
terminal = pkgs.wezterm;
138
138
spawnTerm = spawnPkg terminal;
139
139
-
spawnNu = spawnPkg pkgs.nushell;
140
139
spawnPlayerctl = spawnPkg pkgs.playerctl;
141
140
spawnRofi = spawn "rofi";
142
141
spawnSh = spawn "sh" "-c";
···
210
209
allow-inhibiting = false;
211
210
};
212
211
212
212
+
"Mod+W".action = spawn "systemctl" "--user" "restart" "waybar.service";
213
213
+
"Mod+Shift+W".action = spawn "systemctl" "--user" "stop" "waybar.service";
214
214
+
215
215
+
"Mod+Shift+R".action =
216
216
+
spawnSh "pkill wf-recorder --signal SIGINT ||${pkgs.nushell}/bin/nu ${../res/screenrec.nu}";
213
217
"Mod+Shift+S".action = {
214
218
screenshot = [ ];
215
219
};
-4
homeModules/waybar.nix
···
17
17
};
18
18
in
19
19
lib.mkIf config.cow.waybar.enable {
20
20
-
wayland.windowManager.hyprland.settings.bind = [
21
21
-
"SUPER,W,exec,systemctl restart --user waybar"
22
22
-
"SUPER SHIFT,W,exec,systemctl stop --user waybar"
23
23
-
];
24
20
programs.waybar = {
25
21
enable = true;
26
22
systemd.enable = true;
+1
-5
res/screenrec.nu
···
10
10
11
11
let out_name = date now | format date $"($captures_folder)/($date_format).mp4"
12
12
13
13
-
let workspaces = hyprctl monitors -j | from json | get activeWorkspace.id
14
14
-
let windows = hyprctl clients -j | from json | where workspace.id in $workspaces
15
15
-
let geom = $windows | each { |w| $"($w.at.0),($w.at.1) ($w.size.0)x($w.size.1)" } | str join "\n"
16
16
-
17
17
-
let stat = do { echo $geom | slurp -d } | complete
13
13
+
let stat = do { slurp -d } | complete
18
14
19
15
if $stat.exit_code == 1 {
20
16
echo "No selection made"