+6
-6
.github/workflows/flake-update.yml
+6
-6
.github/workflows/flake-update.yml
···
7
8
jobs:
9
generate_matrix:
10
-
runs-on: ubuntu-20.04
11
outputs:
12
packages: ${{ steps.gen_packages.outputs.packages }}
13
checks: ${{ steps.gen_checks.outputs.checks }}
···
39
printf "::set-output name=checks::%s" "$checks"
40
41
update_flake:
42
-
runs-on: ubuntu-20.04
43
steps:
44
- name: Clone repository
45
uses: actions/checkout@v4
···
68
path: flake.lock
69
70
build_flake:
71
-
runs-on: ubuntu-20.04
72
needs: [generate_matrix, update_flake]
73
strategy:
74
fail-fast: false
···
114
run: nix build .#${{ matrix.package }}
115
116
build_checks:
117
-
runs-on: ubuntu-20.04
118
needs: [generate_matrix, update_flake]
119
strategy:
120
fail-fast: false
···
150
run: nix build .#checks.x86_64-linux.${{ matrix.check }} --no-link
151
152
check_flake:
153
-
runs-on: ubuntu-20.04
154
needs: [update_flake]
155
continue-on-error: true
156
steps:
···
177
nix flake check --keep-going
178
179
push_update:
180
-
runs-on: ubuntu-20.04
181
permissions: write-all
182
needs: [update_flake, build_flake, build_checks, check_flake]
183
steps:
···
7
8
jobs:
9
generate_matrix:
10
+
runs-on: ubuntu-24.04
11
outputs:
12
packages: ${{ steps.gen_packages.outputs.packages }}
13
checks: ${{ steps.gen_checks.outputs.checks }}
···
39
printf "::set-output name=checks::%s" "$checks"
40
41
update_flake:
42
+
runs-on: ubuntu-24.04
43
steps:
44
- name: Clone repository
45
uses: actions/checkout@v4
···
68
path: flake.lock
69
70
build_flake:
71
+
runs-on: ubuntu-24.04
72
needs: [generate_matrix, update_flake]
73
strategy:
74
fail-fast: false
···
114
run: nix build .#${{ matrix.package }}
115
116
build_checks:
117
+
runs-on: ubuntu-24.04
118
needs: [generate_matrix, update_flake]
119
strategy:
120
fail-fast: false
···
150
run: nix build .#checks.x86_64-linux.${{ matrix.check }} --no-link
151
152
check_flake:
153
+
runs-on: ubuntu-24.04
154
needs: [update_flake]
155
continue-on-error: true
156
steps:
···
177
nix flake check --keep-going
178
179
push_update:
180
+
runs-on: ubuntu-24.04
181
permissions: write-all
182
needs: [update_flake, build_flake, build_checks, check_flake]
183
steps:
+4
-4
.github/workflows/pull-check.yml
+4
-4
.github/workflows/pull-check.yml
···
5
6
jobs:
7
generate_matrix:
8
-
runs-on: ubuntu-20.04
9
outputs:
10
packages: ${{ steps.gen_packages.outputs.packages }}
11
checks: ${{ steps.gen_checks.outputs.checks }}
···
37
printf "checks=%s" "$checks" >> $GITHUB_OUTPUT
38
39
build_flake:
40
-
runs-on: ubuntu-20.04
41
needs: [generate_matrix]
42
strategy:
43
fail-fast: false
···
71
run: nix build .#${{ matrix.package }}
72
73
build_checks:
74
-
runs-on: ubuntu-20.04
75
needs: [generate_matrix]
76
strategy:
77
fail-fast: false
···
97
run: nix build .#checks.x86_64-linux.${{ matrix.check }} --no-link
98
99
check_flake:
100
-
runs-on: ubuntu-20.04
101
continue-on-error: true
102
steps:
103
- name: Clone repository
···
5
6
jobs:
7
generate_matrix:
8
+
runs-on: ubuntu-24.04
9
outputs:
10
packages: ${{ steps.gen_packages.outputs.packages }}
11
checks: ${{ steps.gen_checks.outputs.checks }}
···
37
printf "checks=%s" "$checks" >> $GITHUB_OUTPUT
38
39
build_flake:
40
+
runs-on: ubuntu-24.04
41
needs: [generate_matrix]
42
strategy:
43
fail-fast: false
···
71
run: nix build .#${{ matrix.package }}
72
73
build_checks:
74
+
runs-on: ubuntu-24.04
75
needs: [generate_matrix]
76
strategy:
77
fail-fast: false
···
97
run: nix build .#checks.x86_64-linux.${{ matrix.check }} --no-link
98
99
check_flake:
100
+
runs-on: ubuntu-24.04
101
continue-on-error: true
102
steps:
103
- name: Clone repository
+100
-55
flake.lock
+100
-55
flake.lock
···
3
"cargo2nix": {
4
"inputs": {
5
"flake-compat": "flake-compat_3",
6
-
"flake-utils": "flake-utils_2",
7
"nixpkgs": [
8
"switcher",
9
"nixpkgs"
···
37
]
38
},
39
"locked": {
40
-
"lastModified": 1742696362,
41
-
"narHash": "sha256-9DcLAVEdNXy26l2NucUSu27V2aqUfcp6bE/1tinwLqE=",
42
"owner": "nix-community",
43
"repo": "emacs-overlay",
44
-
"rev": "bcc49aba7034c9ec53a9a2cb84f738b6e0096031",
45
"type": "github"
46
},
47
"original": {
···
99
}
100
},
101
"flake-utils": {
102
"inputs": {
103
"systems": "systems"
104
},
···
116
"type": "github"
117
}
118
},
119
-
"flake-utils_2": {
120
"inputs": {
121
"systems": "systems_2"
122
},
···
247
]
248
},
249
"locked": {
250
-
"lastModified": 1742670145,
251
-
"narHash": "sha256-xQ2F9f+ICAGBp/nNv3ddD2U4ZvzuLOci0u/5lyMXPvk=",
252
"owner": "nix-community",
253
"repo": "home-manager",
254
-
"rev": "63e77d09a133ac641a0c204e7cfb0c97e133706d",
255
"type": "github"
256
},
257
"original": {
···
288
"nixpkgs-regression": "nixpkgs-regression"
289
},
290
"locked": {
291
-
"lastModified": 1742586486,
292
-
"narHash": "sha256-dNh2y30KpNjGyhVv6CALzLmwSfB30q2BB2b70lc1drY=",
293
"owner": "nixos",
294
"repo": "nix",
295
-
"rev": "d975d32d6793b7ad6c2e1ec5b6cf2cb114f374ac",
296
"type": "github"
297
},
298
"original": {
···
301
"type": "github"
302
}
303
},
304
-
"nixos-vscode-server": {
305
"inputs": {
306
"flake-utils": "flake-utils",
307
"nixpkgs": [
···
309
]
310
},
311
"locked": {
312
"lastModified": 1729422940,
313
"narHash": "sha256-DlvJv33ml5UTKgu4b0HauOfFIoDx6QXtbqUF3vWeRCY=",
314
"owner": "msteen",
···
324
},
325
"nixpkgs": {
326
"locked": {
327
-
"lastModified": 1734359947,
328
-
"narHash": "sha256-1Noao/H+N8nFB4Beoy8fgwrcOQLVm9o4zKW1ODaqK9E=",
329
"owner": "NixOS",
330
"repo": "nixpkgs",
331
-
"rev": "48d12d5e70ee91fe8481378e540433a7303dbf6a",
332
"type": "github"
333
},
334
"original": {
335
"owner": "NixOS",
336
-
"ref": "release-24.11",
337
"repo": "nixpkgs",
338
"type": "github"
339
}
···
420
},
421
"nixpkgs_2": {
422
"locked": {
423
-
"lastModified": 1742422364,
424
-
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
425
"owner": "nixos",
426
"repo": "nixpkgs",
427
-
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
428
"type": "github"
429
},
430
"original": {
···
436
},
437
"nixpkgs_3": {
438
"locked": {
439
-
"lastModified": 1742272065,
440
-
"narHash": "sha256-ud8vcSzJsZ/CK+r8/v0lyf4yUntVmDq6Z0A41ODfWbE=",
441
-
"owner": "nixos",
442
-
"repo": "nixpkgs",
443
-
"rev": "3549532663732bfd89993204d40543e9edaec4f2",
444
-
"type": "github"
445
-
},
446
-
"original": {
447
-
"owner": "nixos",
448
-
"ref": "nixpkgs-unstable",
449
-
"repo": "nixpkgs",
450
-
"type": "github"
451
-
}
452
-
},
453
-
"nixpkgs_4": {
454
-
"locked": {
455
-
"lastModified": 1741865919,
456
-
"narHash": "sha256-4thdbnP6dlbdq+qZWTsm4ffAwoS8Tiq1YResB+RP6WE=",
457
"owner": "NixOS",
458
"repo": "nixpkgs",
459
-
"rev": "573c650e8a14b2faa0041645ab18aed7e60f0c9a",
460
"type": "github"
461
},
462
"original": {
···
466
"type": "github"
467
}
468
},
469
-
"nixpkgs_5": {
470
"locked": {
471
"lastModified": 1728538411,
472
"narHash": "sha256-f0SBJz1eZ2yOuKUr5CA9BHULGXVSn6miBuUWdTyhUhU=",
···
485
"nvim": {
486
"inputs": {
487
"gen-luarc": "gen-luarc",
488
-
"nixpkgs": "nixpkgs_3",
489
"nixpkgs-emmy": "nixpkgs-emmy",
490
"parts": [
491
"parts"
492
-
]
493
},
494
"locked": {
495
-
"lastModified": 1742504498,
496
-
"narHash": "sha256-7mibOy8ljpXdwsS0T8718Af7vOSQ9IaFBXS3FfF38YY=",
497
"owner": "nobbz",
498
"repo": "nobbz-vim",
499
-
"rev": "e9f4d82853f1f8d02fa4b35208bb58cc6ec84642",
500
"type": "github"
501
},
502
"original": {
···
512
]
513
},
514
"locked": {
515
-
"lastModified": 1741352980,
516
-
"narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=",
517
"owner": "hercules-ci",
518
"repo": "flake-parts",
519
-
"rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9",
520
"type": "github"
521
},
522
"original": {
···
533
"utils": "utils"
534
},
535
"locked": {
536
-
"lastModified": 1742664323,
537
-
"narHash": "sha256-3bFgz+kesKup1CNsNZlL1wR+FONLkiktzZgeEewIQM4=",
538
"owner": "wamserma",
539
"repo": "flake-programs-sqlite",
540
-
"rev": "a55e58db918a6c29b7606fb5c89c515471f64011",
541
"type": "github"
542
},
543
"original": {
···
551
"emacs": "emacs",
552
"home-manager": "home-manager",
553
"nix": "nix",
554
"nixos-vscode-server": "nixos-vscode-server",
555
"nixpkgs": "nixpkgs_2",
556
"nixpkgs-insync-v3": [
···
566
},
567
"rust-overlay": {
568
"inputs": {
569
-
"nixpkgs": "nixpkgs_5"
570
},
571
"locked": {
572
"lastModified": 1734402816,
···
584
},
585
"sops-nix": {
586
"inputs": {
587
-
"nixpkgs": "nixpkgs_4"
588
},
589
"locked": {
590
-
"lastModified": 1742595978,
591
-
"narHash": "sha256-05onsoMrLyXE4XleDCeLC3bXnC4nyUbKWInGwM7v6hU=",
592
"owner": "Mic92",
593
"repo": "sops-nix",
594
-
"rev": "b7756921b002de60fb66782effad3ce8bdb5b25d",
595
"type": "github"
596
},
597
"original": {
···
668
"original": {
669
"owner": "numtide",
670
"repo": "flake-utils",
671
"type": "github"
672
}
673
}
···
3
"cargo2nix": {
4
"inputs": {
5
"flake-compat": "flake-compat_3",
6
+
"flake-utils": "flake-utils_3",
7
"nixpkgs": [
8
"switcher",
9
"nixpkgs"
···
37
]
38
},
39
"locked": {
40
+
"lastModified": 1749090069,
41
+
"narHash": "sha256-uN3Mp+o7IfVT9H/OuwEtJ17NktCaF4t9Ond3TKt+BE4=",
42
"owner": "nix-community",
43
"repo": "emacs-overlay",
44
+
"rev": "c17506666090e412a50b01c57944386ab81d2aa8",
45
"type": "github"
46
},
47
"original": {
···
99
}
100
},
101
"flake-utils": {
102
+
"locked": {
103
+
"lastModified": 1659877975,
104
+
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
105
+
"owner": "numtide",
106
+
"repo": "flake-utils",
107
+
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
108
+
"type": "github"
109
+
},
110
+
"original": {
111
+
"owner": "numtide",
112
+
"repo": "flake-utils",
113
+
"type": "github"
114
+
}
115
+
},
116
+
"flake-utils_2": {
117
"inputs": {
118
"systems": "systems"
119
},
···
131
"type": "github"
132
}
133
},
134
+
"flake-utils_3": {
135
"inputs": {
136
"systems": "systems_2"
137
},
···
262
]
263
},
264
"locked": {
265
+
"lastModified": 1749062139,
266
+
"narHash": "sha256-gGGLujmeWU+ZjFzfMvFMI0hp9xONsSbm88187wJr82Q=",
267
"owner": "nix-community",
268
"repo": "home-manager",
269
+
"rev": "86b95fc1ed2b9b04a451a08ccf13d78fb421859c",
270
"type": "github"
271
},
272
"original": {
···
303
"nixpkgs-regression": "nixpkgs-regression"
304
},
305
"locked": {
306
+
"lastModified": 1749012568,
307
+
"narHash": "sha256-7IltFTct/oe6pGkwB6f/1WhWA65hFnsBY6XaGjodf3k=",
308
"owner": "nixos",
309
"repo": "nix",
310
+
"rev": "4751cbef6303d10479f3db1b13db69197d9c3446",
311
"type": "github"
312
},
313
"original": {
···
316
"type": "github"
317
}
318
},
319
+
"nix-gl": {
320
"inputs": {
321
"flake-utils": "flake-utils",
322
"nixpkgs": [
···
324
]
325
},
326
"locked": {
327
+
"lastModified": 1713543440,
328
+
"narHash": "sha256-lnzZQYG0+EXl/6NkGpyIz+FEOc/DSEG57AP1VsdeNrM=",
329
+
"owner": "nix-community",
330
+
"repo": "nixgl",
331
+
"rev": "310f8e49a149e4c9ea52f1adf70cdc768ec53f8a",
332
+
"type": "github"
333
+
},
334
+
"original": {
335
+
"owner": "nix-community",
336
+
"repo": "nixgl",
337
+
"type": "github"
338
+
}
339
+
},
340
+
"nixos-vscode-server": {
341
+
"inputs": {
342
+
"flake-utils": "flake-utils_2",
343
+
"nixpkgs": [
344
+
"nixpkgs"
345
+
]
346
+
},
347
+
"locked": {
348
"lastModified": 1729422940,
349
"narHash": "sha256-DlvJv33ml5UTKgu4b0HauOfFIoDx6QXtbqUF3vWeRCY=",
350
"owner": "msteen",
···
360
},
361
"nixpkgs": {
362
"locked": {
363
+
"lastModified": 1747179050,
364
+
"narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=",
365
"owner": "NixOS",
366
"repo": "nixpkgs",
367
+
"rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e",
368
"type": "github"
369
},
370
"original": {
371
"owner": "NixOS",
372
+
"ref": "nixos-unstable",
373
"repo": "nixpkgs",
374
"type": "github"
375
}
···
456
},
457
"nixpkgs_2": {
458
"locked": {
459
+
"lastModified": 1748929857,
460
+
"narHash": "sha256-lcZQ8RhsmhsK8u7LIFsJhsLh/pzR9yZ8yqpTzyGdj+Q=",
461
"owner": "nixos",
462
"repo": "nixpkgs",
463
+
"rev": "c2a03962b8e24e669fb37b7df10e7c79531ff1a4",
464
"type": "github"
465
},
466
"original": {
···
472
},
473
"nixpkgs_3": {
474
"locked": {
475
+
"lastModified": 1744868846,
476
+
"narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=",
477
"owner": "NixOS",
478
"repo": "nixpkgs",
479
+
"rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c",
480
"type": "github"
481
},
482
"original": {
···
486
"type": "github"
487
}
488
},
489
+
"nixpkgs_4": {
490
"locked": {
491
"lastModified": 1728538411,
492
"narHash": "sha256-f0SBJz1eZ2yOuKUr5CA9BHULGXVSn6miBuUWdTyhUhU=",
···
505
"nvim": {
506
"inputs": {
507
"gen-luarc": "gen-luarc",
508
+
"nixpkgs": [
509
+
"nixpkgs"
510
+
],
511
"nixpkgs-emmy": "nixpkgs-emmy",
512
"parts": [
513
"parts"
514
+
],
515
+
"wrapper-manager": "wrapper-manager"
516
},
517
"locked": {
518
+
"lastModified": 1748686149,
519
+
"narHash": "sha256-RdLAPiha8lr1wQiL158p4DTFhLcWcjRv6ioCTd3athQ=",
520
"owner": "nobbz",
521
"repo": "nobbz-vim",
522
+
"rev": "a22303075cac32d83edfd79ef79c0386a38b02ce",
523
"type": "github"
524
},
525
"original": {
···
535
]
536
},
537
"locked": {
538
+
"lastModified": 1748821116,
539
+
"narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=",
540
"owner": "hercules-ci",
541
"repo": "flake-parts",
542
+
"rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1",
543
"type": "github"
544
},
545
"original": {
···
556
"utils": "utils"
557
},
558
"locked": {
559
+
"lastModified": 1749055058,
560
+
"narHash": "sha256-OgCTSX0WXPpEi/ukjbBRrElSo+TR2/pzCCcY5yfou58=",
561
"owner": "wamserma",
562
"repo": "flake-programs-sqlite",
563
+
"rev": "78d23d728abddce902528922f93967f0630f1cfe",
564
"type": "github"
565
},
566
"original": {
···
574
"emacs": "emacs",
575
"home-manager": "home-manager",
576
"nix": "nix",
577
+
"nix-gl": "nix-gl",
578
"nixos-vscode-server": "nixos-vscode-server",
579
"nixpkgs": "nixpkgs_2",
580
"nixpkgs-insync-v3": [
···
590
},
591
"rust-overlay": {
592
"inputs": {
593
+
"nixpkgs": "nixpkgs_4"
594
},
595
"locked": {
596
"lastModified": 1734402816,
···
608
},
609
"sops-nix": {
610
"inputs": {
611
+
"nixpkgs": "nixpkgs_3"
612
},
613
"locked": {
614
+
"lastModified": 1747603214,
615
+
"narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=",
616
"owner": "Mic92",
617
"repo": "sops-nix",
618
+
"rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd",
619
"type": "github"
620
},
621
"original": {
···
692
"original": {
693
"owner": "numtide",
694
"repo": "flake-utils",
695
+
"type": "github"
696
+
}
697
+
},
698
+
"wrapper-manager": {
699
+
"inputs": {
700
+
"nixpkgs": [
701
+
"nvim",
702
+
"nixpkgs"
703
+
]
704
+
},
705
+
"locked": {
706
+
"lastModified": 1747562021,
707
+
"narHash": "sha256-XfF+5zjoWbAcAiGNb++og6yDGJRwWYpADr9P6WuieQA=",
708
+
"owner": "viperml",
709
+
"repo": "wrapper-manager",
710
+
"rev": "f2b0bec5140403cf24cae96f6764d97b5d59b0e2",
711
+
"type": "github"
712
+
},
713
+
"original": {
714
+
"owner": "viperml",
715
+
"repo": "wrapper-manager",
716
"type": "github"
717
}
718
}
+4
flake.nix
+4
flake.nix
···
36
37
nvim.url = "github:nobbz/nobbz-vim";
38
nvim.inputs.parts.follows = "parts";
39
40
switcher.url = "github:nobbz/nix-switcher?ref=main";
41
switcher.inputs.nixpkgs.follows = "nixpkgs";
···
52
# a libgit2 in the current version fails to build with the nix provided patches.
53
# therefore using upstreams pin for now.
54
# nix.inputs.nixpkgs.follows = "nixpkgs";
55
56
home-manager.url = "github:nix-community/home-manager";
57
home-manager.inputs.nixpkgs.follows = "nixpkgs";
···
36
37
nvim.url = "github:nobbz/nobbz-vim";
38
nvim.inputs.parts.follows = "parts";
39
+
nvim.inputs.nixpkgs.follows = "nixpkgs";
40
41
switcher.url = "github:nobbz/nix-switcher?ref=main";
42
switcher.inputs.nixpkgs.follows = "nixpkgs";
···
53
# a libgit2 in the current version fails to build with the nix provided patches.
54
# therefore using upstreams pin for now.
55
# nix.inputs.nixpkgs.follows = "nixpkgs";
56
+
57
+
nix-gl.url = "github:nix-community/nixgl";
58
+
nix-gl.inputs.nixpkgs.follows = "nixpkgs";
59
60
home-manager.url = "github:nix-community/home-manager";
61
home-manager.inputs.nixpkgs.follows = "nixpkgs";
+2
-1
home/configurations/nmelzer_at_phoebe.nix
+2
-1
home/configurations/nmelzer_at_phoebe.nix
···
14
in {
15
nixpkgs.allowedUnfree = ["google-chrome" "vscode" "discord" "obsidian" "slack"];
16
nixpkgs.config.permittedInsecurePackages = ["electron-25.9.0"];
17
18
nix.checkConfig = false;
19
nix.settings.extra-experimental-features = ["flakes" "nix-command"];
···
67
68
services.playerctld.enable = true;
69
70
-
home.file."${config.gtk.gtk2.configLocation}".force = true;
71
72
programs.ssh.includes = [
73
config.sops.secrets.ssh.path
···
14
in {
15
nixpkgs.allowedUnfree = ["google-chrome" "vscode" "discord" "obsidian" "slack"];
16
nixpkgs.config.permittedInsecurePackages = ["electron-25.9.0"];
17
+
profiles.base.needsGL = true;
18
19
nix.checkConfig = false;
20
nix.settings.extra-experimental-features = ["flakes" "nix-command"];
···
68
69
services.playerctld.enable = true;
70
71
+
gtk.gtk2.force = true;
72
73
programs.ssh.includes = [
74
config.sops.secrets.ssh.path
-2
home/modules/default.nix
-2
home/modules/default.nix
···
9
"programs/eza" = ./programs/eza;
10
"programs/ghostty" = ./programs/ghostty;
11
"programs/nixpkgs" = ./programs/nixpkgs;
12
-
"programs/openshift" = ./programs/openshift;
13
"programs/p10k" = ./programs/p10k;
14
"programs/rbw" = ./programs/rbw;
15
"programs/wezterm" = ./programs/wezterm;
16
17
"services/insync" = ./services/insync;
18
-
"services/restic" = ./services/restic;
19
"services/rustic" = ./services/rustic;
20
21
"misc/awesome" = ./misc/awesome;
···
9
"programs/eza" = ./programs/eza;
10
"programs/ghostty" = ./programs/ghostty;
11
"programs/nixpkgs" = ./programs/nixpkgs;
12
"programs/p10k" = ./programs/p10k;
13
"programs/rbw" = ./programs/rbw;
14
"programs/wezterm" = ./programs/wezterm;
15
16
"services/insync" = ./services/insync;
17
"services/rustic" = ./services/rustic;
18
19
"misc/awesome" = ./misc/awesome;
+15
-2
home/modules/profiles/base/default.nix
+15
-2
home/modules/profiles/base/default.nix
···
2
self,
3
nix,
4
nvim,
5
...
6
}: {
7
config,
···
49
in {
50
options.profiles.base = {
51
enable = lib.mkEnableOption "The base profile, should be always enabled";
52
};
53
54
config = lib.mkIf cfg.enable {
···
98
| sed -E 's/([0-9])([A-Za-z])/\1 \2/')" \
99
"$(numfmt --to=none --format="%'f" ''${saved})"
100
'';
101
in
102
-
[optisave pkgs.departure-mono pkgs.hydra-check nvim.packages.x86_64-linux.default] ++ lib.optionals pkgs.stdenv.isLinux [pkgs.dconf];
103
104
# dconf.enable = lib.mkMerge [
105
# (lib.mkIf pkgs.stdenv.isLinux true)
···
238
}
239
];
240
241
-
initExtra = ''
242
bindkey "^[[1;5D" backward-word
243
bindkey "^[[1;5C" forward-word
244
···
2
self,
3
nix,
4
nvim,
5
+
nix-gl,
6
...
7
}: {
8
config,
···
50
in {
51
options.profiles.base = {
52
enable = lib.mkEnableOption "The base profile, should be always enabled";
53
+
54
+
needsGL = lib.mkEnableOption "nix-gl wrappers";
55
};
56
57
config = lib.mkIf cfg.enable {
···
101
| sed -E 's/([0-9])([A-Za-z])/\1 \2/')" \
102
"$(numfmt --to=none --format="%'f" ''${saved})"
103
'';
104
+
neovide =
105
+
if cfg.needsGL
106
+
then
107
+
pkgs.writeShellScriptBin nvim.packages.x86_64-linux.neovide.meta.mainProgram ''
108
+
exec ${lib.getExe nix-gl.packages.x86_64-linux.nixGLIntel} ${lib.getExe nvim.packages.x86_64-linux.neovide} "$@"
109
+
''
110
+
else nvim.packages.x86_64-linux.neovide;
111
in
112
+
lib.mkMerge [
113
+
[optisave pkgs.departure-mono pkgs.hydra-check nvim.packages.x86_64-linux.neovim neovide]
114
+
(lib.mkIf pkgs.stdenv.isLinux [pkgs.dconf])
115
+
];
116
117
# dconf.enable = lib.mkMerge [
118
# (lib.mkIf pkgs.stdenv.isLinux true)
···
251
}
252
];
253
254
+
initContent = ''
255
bindkey "^[[1;5D" backward-word
256
bindkey "^[[1;5C" forward-word
257
+22
-3
home/modules/profiles/development/default.nix
+22
-3
home/modules/profiles/development/default.nix
···
13
};
14
15
config = lib.mkIf cfg.enable {
16
programs.gh.enable = true;
17
programs.git = {
18
enable = true;
···
26
inputs = builtins.attrValues {inherit (pkgs) git fzf ripgrep;};
27
interpreter = "${pkgs.bash}/bin/bash";
28
execer = ["cannot:${pkgs.git}/bin/git" "cannot:${pkgs.fzf}/bin/fzf"];
29
-
} ''
30
git log --graph --color=always --format="%C(auto)%h%d %s0x09%C(white)%C(bold)%cr" "$@" |
31
fzf --ansi --no-sort --reverse --tiebreak=index \
32
--bind=ctrl-s:toggle-sort \
···
39
inputs = builtins.attrValues {inherit (pkgs) git fzf coreutils gawk;};
40
interpreter = "${pkgs.bash}/bin/bash";
41
execer = ["cannot:${pkgs.git}/bin/git" "cannot:${pkgs.fzf}/bin/fzf"];
42
-
} ''
43
# Function to determine the ref type
44
function get_ref_type() {
45
local ref="$1"
···
119
hopbase = ''!f() { set -o nounset; tag=$(git describe --abbrev=0 --tag "$1") && git rebase -i "''${tag}"; }; f'';
120
comfix = "!${mkFixupAlias "fixup"}";
121
comreb = "!${mkFixupAlias "rebase"}";
122
};
123
124
extraConfig = {
125
init.defaultBranch = "main";
126
pull.rebase = false;
127
rerere.enabled = true;
128
};
···
167
];
168
};
169
170
-
home.packages = [pkgs.ripgrep];
171
};
172
}
···
13
};
14
15
config = lib.mkIf cfg.enable {
16
+
programs.jujutsu = {
17
+
enable = true;
18
+
settings = {
19
+
user = {
20
+
name = config.programs.git.userName;
21
+
email = config.programs.git.userEmail;
22
+
};
23
+
24
+
ui.diff.tool = [config.programs.git.extraConfig.diff.external "$left" "$right"];
25
+
};
26
+
};
27
+
28
programs.gh.enable = true;
29
programs.git = {
30
enable = true;
···
38
inputs = builtins.attrValues {inherit (pkgs) git fzf ripgrep;};
39
interpreter = "${pkgs.bash}/bin/bash";
40
execer = ["cannot:${pkgs.git}/bin/git" "cannot:${pkgs.fzf}/bin/fzf"];
41
+
}
42
+
# bash
43
+
''
44
git log --graph --color=always --format="%C(auto)%h%d %s0x09%C(white)%C(bold)%cr" "$@" |
45
fzf --ansi --no-sort --reverse --tiebreak=index \
46
--bind=ctrl-s:toggle-sort \
···
53
inputs = builtins.attrValues {inherit (pkgs) git fzf coreutils gawk;};
54
interpreter = "${pkgs.bash}/bin/bash";
55
execer = ["cannot:${pkgs.git}/bin/git" "cannot:${pkgs.fzf}/bin/fzf"];
56
+
}
57
+
# bash
58
+
''
59
# Function to determine the ref type
60
function get_ref_type() {
61
local ref="$1"
···
135
hopbase = ''!f() { set -o nounset; tag=$(git describe --abbrev=0 --tag "$1") && git rebase -i "''${tag}"; }; f'';
136
comfix = "!${mkFixupAlias "fixup"}";
137
comreb = "!${mkFixupAlias "rebase"}";
138
+
show = "show --ext-diff";
139
+
lp = "log -p --ext-diff";
140
};
141
142
extraConfig = {
143
init.defaultBranch = "main";
144
+
diff.external = lib.getExe pkgs.difftastic;
145
pull.rebase = false;
146
rerere.enabled = true;
147
};
···
186
];
187
};
188
189
+
home.packages = [pkgs.ripgrep pkgs.difftastic];
190
};
191
}
-23
home/modules/programs/openshift/default.nix
-23
home/modules/programs/openshift/default.nix
···
1
-
_: {
2
-
pkgs,
3
-
lib,
4
-
config,
5
-
...
6
-
}: let
7
-
cfg = config.programs.openshift;
8
-
in {
9
-
options.programs.openshift = {
10
-
enable = lib.mkEnableOption "Tools to manage openshift instances";
11
-
};
12
-
13
-
config = lib.mkIf cfg.enable {
14
-
home.packages = [pkgs.sops pkgs.openshift (lib.setPrio 0 pkgs.kubectl) pkgs.kubernetes-helm];
15
-
16
-
programs.zsh.initExtra = ''
17
-
# Enable autocomplete for oc, kubectl and helm
18
-
eval "$(${pkgs.openshift}/bin/oc completion zsh)"
19
-
eval "$(${pkgs.kubectl}/bin/kubectl completion zsh)"
20
-
eval "$(${pkgs.kubernetes-helm}/bin/helm completion zsh)"
21
-
'';
22
-
};
23
-
}
···
+6
home/modules/programs/wezterm/default.nix
+6
home/modules/programs/wezterm/default.nix
···
34
-- For example, changing the color scheme:
35
config.color_scheme = "Catppuccin Mocha"
36
37
+
-- show a scrollbar
38
+
config.enable_scroll_bar = true
39
+
40
+
-- forbid window size change on change of fontsize
41
+
config.adjust_window_size_when_changing_font_size = false
42
+
43
-- disable ligatures
44
config.harfbuzz_features = { 'calt=0', 'clig=0', 'liga=0' }
45
-85
home/modules/services/restic/default.nix
-85
home/modules/services/restic/default.nix
···
1
-
{self, ...}: {
2
-
config,
3
-
lib,
4
-
pkgs,
5
-
self,
6
-
...
7
-
}: let
8
-
cfg = config.services.restic;
9
-
10
-
bin = "${cfg.package}/bin/restic";
11
-
excludes = builtins.concatStringsSep " " (builtins.map (e: "--exclude=${e}") cfg.exclude);
12
-
xFlags = lib.optionalString cfg.oneFileSystem "-x";
13
-
compressFlag = "--compression ${cfg.compression}";
14
-
flags = "${xFlags} ${compressFlag} ${excludes}";
15
-
16
-
command = "${bin} --tag home -vv backup ${flags} %h";
17
-
in {
18
-
options.services.restic = {
19
-
enable = lib.mkEnableOption "Restic Backup Tool";
20
-
21
-
package = lib.mkOption {
22
-
type = lib.types.package;
23
-
default = pkgs.restic;
24
-
description = "Restic derivation to use";
25
-
};
26
-
27
-
exclude = lib.mkOption {
28
-
type = lib.types.listOf lib.types.str;
29
-
default = [];
30
-
description = "Corresponds to `--exclude`. Use `%h` instead of `~`";
31
-
};
32
-
33
-
oneFileSystem = lib.mkOption {
34
-
type = lib.types.bool;
35
-
default = false;
36
-
description = "If true, exclude other file systems, don't cross filesystem boundaries and subvolumes";
37
-
};
38
-
39
-
repo = lib.mkOption {
40
-
type = lib.types.str;
41
-
description = "Location of the repository";
42
-
};
43
-
44
-
compression = lib.mkOption {
45
-
type = lib.types.enum ["off" "auto" "max"];
46
-
description = "The compression mode to use";
47
-
default = "auto";
48
-
};
49
-
50
-
# TODO: Add options for inlcude, password file, etc
51
-
};
52
-
53
-
config = lib.mkIf cfg.enable {
54
-
home.packages = [cfg.package];
55
-
56
-
systemd.user.services.restic-backup = {
57
-
Unit = {
58
-
Description = "Restic Backup Tool";
59
-
StartLimitIntervalSec = "25m";
60
-
StartLimitBurst = "4";
61
-
};
62
-
63
-
Service = {
64
-
Environment = [
65
-
"PATH=${lib.makeBinPath [pkgs.openssh]}"
66
-
"RESTIC_PASSWORD_FILE=%h/.config/restic/password"
67
-
"RESTIC_REPOSITORY=${cfg.repo}"
68
-
];
69
-
Type = "oneshot";
70
-
ExecStart = command;
71
-
Restart = "on-failure";
72
-
RestartSec = "2m";
73
-
};
74
-
};
75
-
76
-
systemd.user.timers.restic-backup = {
77
-
Unit.Description = "Restic periodic backup";
78
-
Timer = {
79
-
Unit = "restic-backup.service";
80
-
OnCalendar = "hourly";
81
-
};
82
-
Install.WantedBy = ["timers.target"];
83
-
};
84
-
};
85
-
}
···
+3
nixos/configurations/mimas.nix
+3
nixos/configurations/mimas.nix
+1
packages/advcp/default.nix
+1
packages/advcp/default.nix
+1
packages/rofi-unicode/default.nix
+1
packages/rofi-unicode/default.nix