mirror of
https://github.com/davegallant/nix-config
synced 2025-10-10 20:06:01 +00:00
Compare commits
267 Commits
8baa55da8f
...
main
Author | SHA1 | Date | |
---|---|---|---|
|
29759341c7 | ||
a3fb44b156 | |||
c36503f30e | |||
d6ca6a0fcc | |||
ecb4f3a708 | |||
980d4a5e45 | |||
|
a74a25f1d5 | ||
0e5cb35ece | |||
|
cdd4324b62 | ||
2b3890c224 | |||
|
7b98bb9b91 | ||
|
df3e6e4f66 | ||
b6459c97a5 | |||
7a869f13fd | |||
f1b4bb105e | |||
155e5ac03a | |||
8eca3934bb | |||
ace5a83f4f | |||
280b267f2c | |||
|
1053bbc407 | ||
|
6d64acb78d | ||
a5a0acaf69 | |||
2743955fab | |||
abe2fd1208 | |||
34bfaf2910 | |||
058c5d9708 | |||
ab39bc9865 | |||
e832897293 | |||
1c3d04cc5b | |||
179169beec | |||
f33734e987 | |||
9ba223e4c0 | |||
eff635646f | |||
74ca0e7f31 | |||
|
7704c39229 | ||
1380600531 | |||
f74d0a2def | |||
7b6633aa20 | |||
176522cb7f | |||
e2e17ca2e7 | |||
95679cf94d | |||
|
915f862d6d | ||
f98b91a920 | |||
5cf140b745 | |||
30863ba79f | |||
2ce80b3274 | |||
40695df116 | |||
d8a924f6f2 | |||
f332d09faa | |||
1506dbaee0 | |||
|
d89ffad7f2 | ||
86605bb1e8 | |||
|
bc818b7704 | ||
e07b8cc249 | |||
424bd857d0 | |||
93cb12459a | |||
e9accf1d20 | |||
b0c4a4f565 | |||
cfe2d0ca50 | |||
1a267da6c8 | |||
46ebb413ed | |||
1ca9fbf8f7 | |||
e716076fba | |||
2ffe2e3c65 | |||
cd3c644849 | |||
5c93373262 | |||
81e673025a | |||
9dc9ae4f99 | |||
|
fdd3b5dcb4 | ||
cb24354153 | |||
68e924a019 | |||
f9864470dc | |||
ee60773030 | |||
460790c980 | |||
5b1c50f302 | |||
|
4680c295c3 | ||
6774cc1b4d | |||
e68558a91e | |||
bd345cc367 | |||
7d5cc886d1 | |||
dc1635c473 | |||
2daab8d4f2 | |||
1f9f0463e5 | |||
266bf47699 | |||
31a471f236 | |||
0ba103d9c3 | |||
4d0c30f964 | |||
95bb24dd9d | |||
8bedf50ba2 | |||
066282d7e7 | |||
fc87980ddd | |||
ee23d89e8a | |||
3730e8c2d9 | |||
b89a2057fe | |||
0e92f04ae7 | |||
df8ff112ad | |||
076bdfad54 | |||
|
410ee55c31 | ||
9724cfefff | |||
f693963f0e | |||
825334d0a0 | |||
c9ca940538 | |||
14315632ce | |||
417a477ea3 | |||
4325c113fe | |||
2ff5645d54 | |||
2b2b430ccd | |||
ab8861b97a | |||
c4f459d1a7 | |||
fcaeb714aa | |||
5046fc76e5 | |||
e4606f9638 | |||
6bf6ad6a43 | |||
|
0a19234c12 | ||
|
ab38096362 | ||
|
689d59979a | ||
032b527d2e | |||
d2297713af | |||
18d5e774a4 | |||
|
b1ca4fc2ef | ||
|
ecf9637673 | ||
|
130b7603da | ||
|
9bac637a14 | ||
|
3a8ce31fc0 | ||
|
93e27ff979 | ||
ffc5a61f9b | |||
7cdf454ea0 | |||
e3d785384b | |||
3b631b8d41 | |||
|
b3458473a0 | ||
83d4bc1e92 | |||
4c07653d59 | |||
139af57df7 | |||
3b6db87d42 | |||
33125cf4c6 | |||
e7c50bac19 | |||
5a6ad08648 | |||
6fd03e9468 | |||
d3befb31bd | |||
48167c1576 | |||
052bfa472c | |||
60ff9a629e | |||
ef28ae789b | |||
9e65855ec6 | |||
|
59f0dd31f1 | ||
|
5ebad3e40e | ||
|
49de5d3568 | ||
|
4fabe79459 | ||
|
f10e6c7c99 | ||
|
c7b5e8b4f4 | ||
|
422ebbe491 | ||
|
ad4aeb47cf | ||
|
0bacac0ac4 | ||
|
93594d85cc | ||
|
6824154402 | ||
|
d3532cb48f | ||
|
03c5aad74b | ||
|
21cf507f14 | ||
|
6551e9563f | ||
|
f675bb5a0f | ||
|
d7a78362b8 | ||
|
4287450229 | ||
|
18e03a9393 | ||
|
b19e49df63 | ||
|
d1ce11e457 | ||
|
2727ce6c8a | ||
|
7793d81d87 | ||
|
05f7d54773 | ||
|
3ca3c36268 | ||
|
8cb42bee03 | ||
|
d7411b2f37 | ||
|
d244f4e84a | ||
|
8a90821367 | ||
|
7aac7a530e | ||
|
faa5d0c039 | ||
|
bcd8b10de5 | ||
|
317d2a985a | ||
|
7b64acbe30 | ||
|
0ea4c70d24 | ||
|
3e8895a3ff | ||
|
8ca246c22b | ||
|
7f64cf264a | ||
|
360fb7b857 | ||
|
ba2de4f678 | ||
|
649a9e6b89 | ||
|
d731668b38 | ||
|
01b25a1424 | ||
|
dcebeb4484 | ||
|
f70393daf0 | ||
|
30b125d5a5 | ||
|
5a2942dcd9 | ||
|
8e71616701 | ||
|
a17fc24f24 | ||
|
0323a75e47 | ||
|
88351e46aa | ||
|
fbb9a63296 | ||
|
e6dbf58376 | ||
|
b40e932e95 | ||
|
503798d4e9 | ||
|
6352e14442 | ||
|
15a7ff294d | ||
|
5960a73eac | ||
|
2e64706d96 | ||
|
bce35a7e7e | ||
|
2e585a5d86 | ||
|
a5eae0df83 | ||
|
266401ceec | ||
|
755ba0ca57 | ||
|
47794f6de9 | ||
|
73de012d53 | ||
|
b4cd0e1f41 | ||
|
bbe00dee0b | ||
|
b4cf76d444 | ||
|
219ece6318 | ||
|
9f1df630c1 | ||
|
7160a736b3 | ||
|
d46b68b9c5 | ||
|
3d8743dcc4 | ||
|
d85dc4bb01 | ||
|
65f121ed4e | ||
|
a72cd56504 | ||
|
d7341c0605 | ||
|
267bb104c7 | ||
|
89cc1b727a | ||
|
6836fe81bc | ||
|
acdf14655d | ||
|
f71e33c07f | ||
|
d9e2eab4da | ||
|
7c5526f346 | ||
|
011c8a11d5 | ||
|
e88329dae1 | ||
|
8fbd76c089 | ||
|
ed37727fdf | ||
|
64ea05da34 | ||
|
cf31532f07 | ||
|
789a5db812 | ||
|
77ad215940 | ||
|
2d87ff9370 | ||
|
a3e2e0a87d | ||
|
ee50beb3b0 | ||
|
e86f87a130 | ||
|
23659314f5 | ||
|
48e4cd3da9 | ||
|
3d8eb87595 | ||
|
74ba3c99eb | ||
|
8ff005b130 | ||
|
7a4615ca67 | ||
|
aa8479adcb | ||
|
6a9345cf47 | ||
|
41a4a0657f | ||
|
e634948710 | ||
|
8fe01a43c2 | ||
|
4daba7f175 | ||
|
5e154f1b73 | ||
|
99c7c3e1ed | ||
|
8936b165e2 | ||
|
7f521f0086 | ||
|
b95f954856 | ||
|
cbc7f9c5fe | ||
|
bb85f6c50d | ||
|
fa8d471c71 | ||
|
35a475e4c9 | ||
|
4743b989f0 | ||
|
fd59832f92 | ||
|
13cc435bec | ||
|
fff2e9f812 | ||
|
022a8b59b6 |
6
.github/workflows/cachix.yml
vendored
6
.github/workflows/cachix.yml
vendored
@@ -14,11 +14,11 @@ jobs:
|
|||||||
build:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: cachix/install-nix-action@v30
|
- uses: cachix/install-nix-action@v31
|
||||||
with:
|
with:
|
||||||
nix_path: nixpkgs=channel:nixos-unstable
|
nix_path: nixpkgs=channel:nixos-unstable
|
||||||
- uses: cachix/cachix-action@v15
|
- uses: cachix/cachix-action@v16
|
||||||
with:
|
with:
|
||||||
name: davegallant
|
name: davegallant
|
||||||
authToken: '${{ secrets.CACHIX_API_KEY }}'
|
authToken: '${{ secrets.CACHIX_API_KEY }}'
|
||||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,4 +1,3 @@
|
|||||||
.pre-commit-config.yaml
|
.pre-commit-config.yaml
|
||||||
.vscode
|
.vscode
|
||||||
git-crypt-key
|
|
||||||
result
|
result
|
||||||
|
14
README.md
14
README.md
@@ -1,17 +1,17 @@
|
|||||||
# nix-config
|
# nix-config
|
||||||
|
|
||||||
This repo stores nix to manage my machines running [NixOS](https://nixos.org/) and macOS.
|
This repo stores nix configuration to manage my hosts running [NixOS](https://nixos.org/) and macOS.
|
||||||
|
|
||||||
The configuration is very specific to my own machines and setup, but it may be a useful reference for anyone else learning or experimenting with nix, whether it be on a personal workstation or a server environment.
|
The configuration is very specific to my own machines and setup, but it may be a useful reference for anyone else learning or experimenting with nix, whether it be on a personal workstation or a server environment.
|
||||||
|
|
||||||
## Setup
|
## Prerequisites
|
||||||
|
|
||||||
> on macOS: install the latest unstable nix from https://github.com/numtide/nix-unstable-installer (for nix flakes),
|
- [Determinate Nix](https://determinate.systems/nix-installer)
|
||||||
> and nix-darwin: https://github.com/LnL7/nix-darwin
|
- [just](https://github.com/casey/just)
|
||||||
|
|
||||||
Recipes are stored in a justfile. [just](https://github.com/casey/just) is required.
|
## Build
|
||||||
|
|
||||||
To run a rebuild:
|
To run a build/rebuild:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
just rebuild
|
just rebuild
|
||||||
@@ -45,4 +45,4 @@ just clean
|
|||||||
|
|
||||||
## Pre-commit hooks
|
## Pre-commit hooks
|
||||||
|
|
||||||
Pre-commit hooks are automatically activated when [direnv](https://github.com/direnv/direnv) is installed.
|
Run `nix develop` to install the pre-commit hooks.
|
||||||
|
@@ -1,13 +1,8 @@
|
|||||||
{
|
{
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
unstable,
|
unstable,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
|
||||||
inherit (pkgs) stdenv;
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# essentials
|
# essentials
|
||||||
@@ -21,50 +16,45 @@ in
|
|||||||
zip
|
zip
|
||||||
|
|
||||||
# modern cli
|
# modern cli
|
||||||
|
atuin
|
||||||
bat
|
bat
|
||||||
|
cd-fzf
|
||||||
doggo
|
doggo
|
||||||
eza
|
eza
|
||||||
fd
|
fd
|
||||||
|
github-cli
|
||||||
hadolint
|
hadolint
|
||||||
nodePackages.eslint
|
|
||||||
oha
|
|
||||||
pre-commit
|
pre-commit
|
||||||
progress
|
progress
|
||||||
ripgrep
|
ripgrep
|
||||||
shellcheck
|
shellcheck
|
||||||
shfmt
|
shfmt
|
||||||
tldr
|
|
||||||
tmux-sessionizer
|
|
||||||
unstable.atuin
|
|
||||||
unstable.github-cli
|
|
||||||
viddy
|
viddy
|
||||||
yq-go
|
yq-go
|
||||||
|
|
||||||
# containers
|
# containers
|
||||||
krew
|
unstable.argocd
|
||||||
kubecolor
|
|
||||||
kubectl
|
|
||||||
kubectx
|
|
||||||
minikube
|
|
||||||
stern
|
|
||||||
unstable.dive
|
|
||||||
unstable.helm-docs
|
|
||||||
unstable.k9s
|
unstable.k9s
|
||||||
|
unstable.krew
|
||||||
|
unstable.kubecolor
|
||||||
|
unstable.kubectl
|
||||||
|
unstable.kubectx
|
||||||
unstable.kubernetes-helm
|
unstable.kubernetes-helm
|
||||||
|
unstable.stern
|
||||||
|
|
||||||
# cloud
|
# cloud
|
||||||
unstable.awscli2
|
awscli2
|
||||||
unstable.google-cloud-sdk
|
google-cloud-sdk
|
||||||
unstable.terraform
|
terraform
|
||||||
|
|
||||||
# lsp
|
# lsp
|
||||||
nodePackages.bash-language-server
|
nodePackages.bash-language-server
|
||||||
|
nodePackages.eslint
|
||||||
nodePackages.yaml-language-server
|
nodePackages.yaml-language-server
|
||||||
terraform-ls
|
terraform-ls
|
||||||
|
|
||||||
# monitoring
|
# monitoring
|
||||||
htop
|
btop
|
||||||
procs
|
|
||||||
|
|
||||||
# golang
|
# golang
|
||||||
gofumpt
|
gofumpt
|
||||||
@@ -87,10 +77,9 @@ in
|
|||||||
openssl
|
openssl
|
||||||
openvpn
|
openvpn
|
||||||
tcpdump
|
tcpdump
|
||||||
vpngate
|
|
||||||
|
|
||||||
# rice
|
# rice
|
||||||
neofetch
|
fastfetch
|
||||||
|
|
||||||
# nix
|
# nix
|
||||||
nix-tree
|
nix-tree
|
||||||
@@ -99,10 +88,16 @@ in
|
|||||||
|
|
||||||
# python
|
# python
|
||||||
poetry
|
poetry
|
||||||
python313
|
(unstable.python3.withPackages (ps: [
|
||||||
|
ps.llm
|
||||||
|
ps.llm-ollama
|
||||||
|
]))
|
||||||
virtualenv
|
virtualenv
|
||||||
|
|
||||||
# media
|
# media
|
||||||
yt-dlp
|
yt-dlp
|
||||||
|
|
||||||
|
# llm
|
||||||
|
llm
|
||||||
];
|
];
|
||||||
}
|
}
|
14
default.nix
14
default.nix
@@ -1,14 +0,0 @@
|
|||||||
let
|
|
||||||
nix-pre-commit-hooks = import (
|
|
||||||
builtins.fetchTarball "https://github.com/cachix/git-hooks.nix/tarball/master"
|
|
||||||
);
|
|
||||||
in
|
|
||||||
{
|
|
||||||
pre-commit-check = nix-pre-commit-hooks.run {
|
|
||||||
src = ./.;
|
|
||||||
hooks = {
|
|
||||||
shellcheck.enable = true;
|
|
||||||
nixfmt.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
683
flake.lock
generated
683
flake.lock
generated
@@ -5,11 +5,11 @@
|
|||||||
"fromYaml": "fromYaml"
|
"fromYaml": "fromYaml"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1732200724,
|
"lastModified": 1746562888,
|
||||||
"narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
|
"narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=",
|
||||||
"owner": "SenchoPens",
|
"owner": "SenchoPens",
|
||||||
"repo": "base16.nix",
|
"repo": "base16.nix",
|
||||||
"rev": "153d52373b0fb2d343592871009a286ec8837aec",
|
"rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -37,11 +37,11 @@
|
|||||||
"base16-helix": {
|
"base16-helix": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725860795,
|
"lastModified": 1748408240,
|
||||||
"narHash": "sha256-Z2o8VBPW3I+KKTSfe25kskz0EUj7MpUh8u355Z1nVsU=",
|
"narHash": "sha256-9M2b1rMyMzJK0eusea0x3lyh3mu5nMeEDSc4RZkGm+g=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-helix",
|
"repo": "base16-helix",
|
||||||
"rev": "7f795bf75d38e0eea9fed287264067ca187b88a9",
|
"rev": "6c711ab1a9db6f51e2f6887cc3345530b33e152e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -53,16 +53,17 @@
|
|||||||
"base16-vim": {
|
"base16-vim": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731949548,
|
"lastModified": 1732806396,
|
||||||
"narHash": "sha256-XIDexXM66sSh5j/x70e054BnUsviibUShW7XhbDGhYo=",
|
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-vim",
|
"repo": "base16-vim",
|
||||||
"rev": "61165b1632409bd55e530f3dbdd4477f011cadc6",
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-vim",
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -73,55 +74,98 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733570843,
|
"lastModified": 1757432263,
|
||||||
"narHash": "sha256-sQJAxY1TYWD1UyibN/FnN97paTFuwBw3Vp3DNCyKsMk=",
|
"narHash": "sha256-qHn+/0+IOz5cG68BZUwL9BV3EO/e9eNKCjH3+N7wMdI=",
|
||||||
"owner": "lnl7",
|
"owner": "lnl7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "a35b08d09efda83625bef267eb24347b446c80b8",
|
"rev": "1fef4404de4d1596aa5ab2bd68078370e1b9dcdb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "lnl7",
|
"owner": "lnl7",
|
||||||
|
"ref": "nix-darwin-25.05",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"devshell": {
|
"determinate": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"determinate-nixd-aarch64-darwin": "determinate-nixd-aarch64-darwin",
|
||||||
"nixvim",
|
"determinate-nixd-aarch64-linux": "determinate-nixd-aarch64-linux",
|
||||||
"nixpkgs"
|
"determinate-nixd-x86_64-darwin": [
|
||||||
]
|
"determinate",
|
||||||
|
"determinate-nixd-aarch64-darwin"
|
||||||
|
],
|
||||||
|
"determinate-nixd-x86_64-linux": "determinate-nixd-x86_64-linux",
|
||||||
|
"nix": "nix",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1728330715,
|
"lastModified": 1757699119,
|
||||||
"narHash": "sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg=",
|
"narHash": "sha256-iOOoVdrkcyk95Xg68TuPeAwpz+v80mgZCqil0jpPZuY=",
|
||||||
"owner": "numtide",
|
"rev": "1e16c8f8a44573bb0648c76b6c98352436f5171e",
|
||||||
"repo": "devshell",
|
"revCount": 304,
|
||||||
"rev": "dd6b80932022cea34a019e2bb32f6fa9e494dfef",
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/determinate/3.11.2/01993f0b-1215-7072-ac1a-f2b27b566115/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/DeterminateSystems/determinate/%2A"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"determinate-nixd-aarch64-darwin": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"narHash": "sha256-q1tqDvmfjDgLk/wbYf4pRhyHDS94iY85Q79FPBtcv7g=",
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/macOS"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/macOS"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"determinate-nixd-aarch64-linux": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"narHash": "sha256-E1vGfcQ5dqtRG9EDP6eOQWCnCIRB2XFkFBp2C4FgQ8c=",
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/aarch64-linux"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/aarch64-linux"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"determinate-nixd-x86_64-linux": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"narHash": "sha256-GtxtkI0cOC2A30Xw6gCDTN7JxN1zJGh7/eIXr6AlTSA=",
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/x86_64-linux"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "file",
|
||||||
|
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/x86_64-linux"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"firefox-gnome-theme": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1748383148,
|
||||||
|
"narHash": "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=",
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"rev": "4eb2714fbed2b80e234312611a947d6cb7d70caf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "numtide",
|
"owner": "rafaelmardojai",
|
||||||
"repo": "devshell",
|
"repo": "firefox-gnome-theme",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1696426674,
|
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
|
||||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
|
||||||
"revCount": 57,
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat_2": {
|
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1696426674,
|
||||||
@@ -137,7 +181,44 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-compat_2": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1747046372,
|
||||||
|
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-parts": {
|
"flake-parts": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"determinate",
|
||||||
|
"nix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1748821116,
|
||||||
|
"narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=",
|
||||||
|
"rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1",
|
||||||
|
"revCount": 377,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/hercules-ci/flake-parts/0.1.377%2Brev-49f0870db23e8c1ca0b5259734a02cd9e1e371a1/01972f28-554a-73f8-91f4-d488cc502f08/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/hercules-ci/flake-parts/0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-lib": [
|
"nixpkgs-lib": [
|
||||||
"nixvim",
|
"nixvim",
|
||||||
@@ -145,11 +226,32 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733312601,
|
"lastModified": 1756770412,
|
||||||
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_3": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1749398372,
|
||||||
|
"narHash": "sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -178,10 +280,7 @@
|
|||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": [
|
"systems": "systems_4"
|
||||||
"stylix",
|
|
||||||
"systems"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1731533236,
|
||||||
@@ -213,41 +312,36 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"git-hooks": {
|
"git-hooks-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": "flake-compat",
|
||||||
"nixvim",
|
"gitignore": [
|
||||||
"flake-compat"
|
"determinate",
|
||||||
|
"nix"
|
||||||
],
|
],
|
||||||
"gitignore": "gitignore",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"determinate",
|
||||||
"nixpkgs"
|
"nix",
|
||||||
],
|
|
||||||
"nixpkgs-stable": [
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733665616,
|
"lastModified": 1747372754,
|
||||||
"narHash": "sha256-+XTFXYlFJBxohhMGLDpYdEnhUNdxN8dyTA8WAd+lh2A=",
|
"narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=",
|
||||||
"owner": "cachix",
|
"rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46",
|
||||||
"repo": "git-hooks.nix",
|
"revCount": 1026,
|
||||||
"rev": "d8c02f0ffef0ef39f6063731fc539d8c71eb463a",
|
"type": "tarball",
|
||||||
"type": "github"
|
"url": "https://api.flakehub.com/f/pinned/cachix/git-hooks.nix/0.1.1026%2Brev-80479b6ec16fefd9c1db3ea13aeb038c60530f46/0196d79a-1b35-7b8e-a021-c894fb62163d/source.tar.gz"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "cachix",
|
"type": "tarball",
|
||||||
"repo": "git-hooks.nix",
|
"url": "https://flakehub.com/f/cachix/git-hooks.nix/0.1.941"
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"gitignore": {
|
"gitignore": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"pre-commit-hooks",
|
||||||
"git-hooks",
|
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -268,81 +362,35 @@
|
|||||||
"gnome-shell": {
|
"gnome-shell": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1732369855,
|
"lastModified": 1744584021,
|
||||||
"narHash": "sha256-JhUWbcYPjHO3Xs3x9/Z9RuqXbcp5yhPluGjwsdE2GMg=",
|
"narHash": "sha256-0RJ4mJzf+klKF4Fuoc8VN8dpQQtZnKksFmR2jhWE1Ew=",
|
||||||
"owner": "GNOME",
|
"owner": "GNOME",
|
||||||
"repo": "gnome-shell",
|
"repo": "gnome-shell",
|
||||||
"rev": "dadd58f630eeea41d645ee225a63f719390829dc",
|
"rev": "52c517c8f6c199a1d6f5118fae500ef69ea845ae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "GNOME",
|
"owner": "GNOME",
|
||||||
"ref": "47.2",
|
"ref": "48.1",
|
||||||
"repo": "gnome-shell",
|
"repo": "gnome-shell",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": "nixpkgs_3"
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734366194,
|
"lastModified": 1758463745,
|
||||||
"narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=",
|
"narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f",
|
"rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "release-24.11",
|
"ref": "release-25.05",
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixvim",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1733951536,
|
|
||||||
"narHash": "sha256-Zb5ZCa7Xj+0gy5XVXINTSr71fCfAv+IKtmIXNrykT54=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "1318c3f3b068cdcea922fa7c1a0a1f0c96c22f5f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"ref": "release-24.11",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager_3": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"stylix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1733572789,
|
|
||||||
"narHash": "sha256-zjO6m5BqxXIyjrnUziAzk4+T4VleqjstNudSqWcpsHI=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "c7ffc9727d115e433fd884a62dc164b587ff651d",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"ref": "release-24.11",
|
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -361,79 +409,78 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729958008,
|
"lastModified": 1754860581,
|
||||||
"narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=",
|
"narHash": "sha256-EM0IE63OHxXCOpDHXaTyHIOk2cNvMCGPqLt/IdtVxgk=",
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"repo": "ixx",
|
"repo": "ixx",
|
||||||
"rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb",
|
"rev": "babfe85a876162c4acc9ab6fb4483df88fa1f281",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"ref": "v0.0.6",
|
"ref": "v0.1.1",
|
||||||
"repo": "ixx",
|
"repo": "ixx",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nix-darwin": {
|
"nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"flake-parts": "flake-parts",
|
||||||
"nixvim",
|
"git-hooks-nix": "git-hooks-nix",
|
||||||
"nixpkgs"
|
"nixpkgs": "nixpkgs",
|
||||||
]
|
"nixpkgs-23-11": "nixpkgs-23-11",
|
||||||
|
"nixpkgs-regression": "nixpkgs-regression"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733570843,
|
"lastModified": 1757694985,
|
||||||
"narHash": "sha256-sQJAxY1TYWD1UyibN/FnN97paTFuwBw3Vp3DNCyKsMk=",
|
"narHash": "sha256-3Ia+y7Hbwnzcuf1hyuVnFtbnSR6ErQeFjemHdVxjCNE=",
|
||||||
"owner": "lnl7",
|
"rev": "766f43aa6acb1b3578db488c19fbbedf04ed9f24",
|
||||||
"repo": "nix-darwin",
|
"revCount": 22340,
|
||||||
"rev": "a35b08d09efda83625bef267eb24347b446c80b8",
|
"type": "tarball",
|
||||||
"type": "github"
|
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.11.2/01993ee9-f8e7-7b80-80df-ec0a20a32514/source.tar.gz"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "lnl7",
|
"type": "tarball",
|
||||||
"repo": "nix-darwin",
|
"url": "https://flakehub.com/f/DeterminateSystems/nix-src/%2A"
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixos-hardware": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1734352517,
|
|
||||||
"narHash": "sha256-mfv+J/vO4nqmIOlq8Y1rRW8hVsGH3M+I2ESMjhuebDs=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixos-hardware",
|
|
||||||
"rev": "b12e314726a4226298fe82776b4baeaa7bcf3dcd",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixos-hardware",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734323986,
|
"lastModified": 1755922037,
|
||||||
"narHash": "sha256-m/lh6hYMIWDYHCAsn81CDAiXoT3gmxXI9J987W5tZrE=",
|
"narHash": "sha256-wY1+2JPH0ZZC4BQefoZw/k+3+DowFyfOxv17CN/idKs=",
|
||||||
|
"rev": "b1b3291469652d5a2edb0becc4ef0246fff97a7c",
|
||||||
|
"revCount": 808723,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2505.808723%2Brev-b1b3291469652d5a2edb0becc4ef0246fff97a7c/0198daf7-011a-7703-95d7-57146e794342/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/NixOS/nixpkgs/0.2505"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-23-11": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1717159533,
|
||||||
|
"narHash": "sha256-oamiKNfr2MS6yH64rUn99mIZjc45nGJlj9eGth/3Xuw=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "394571358ce82dff7411395829aa6a3aad45b907",
|
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-24.11",
|
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
|
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-master": {
|
"nixpkgs-master": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734557858,
|
"lastModified": 1758851780,
|
||||||
"narHash": "sha256-5GBXouhNa1P8LYPhDSNpNsG4cGW3sLb4+wYI4fBHUWQ=",
|
"narHash": "sha256-fWfJvHj+ncZRKCTKOKWKI9CkbKZXfG3GZNNsjp1y6co=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "1af8300a2de7019bcd46767d13b9616a737c58ec",
|
"rev": "d12318669276c1eaaa5c12940906742334067274",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -443,13 +490,91 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-regression": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734435836,
|
"lastModified": 1643052045,
|
||||||
"narHash": "sha256-kMBQ5PRiFLagltK0sH+08aiNt3zGERC2297iB6vrvlU=",
|
"narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4989a246d7a390a859852baddb1013f825435cee",
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-unstable": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1758690382,
|
||||||
|
"narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "e643668fd71b949c53f8626614b21ff71a07379d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1757034884,
|
||||||
|
"narHash": "sha256-PgLSZDBEWUHpfTRfFyklmiiLBE1i1aGCtz4eRA3POao=",
|
||||||
|
"rev": "ca77296380960cd497a765102eeb1356eb80fed0",
|
||||||
|
"revCount": 856744,
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nixpkgs-weekly/0.1.856744%2Brev-ca77296380960cd497a765102eeb1356eb80fed0/01992cf9-9347-761a-8963-9cbe43abe2fa/source.tar.gz"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"type": "tarball",
|
||||||
|
"url": "https://flakehub.com/f/DeterminateSystems/nixpkgs-weekly/0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1753345091,
|
||||||
|
"narHash": "sha256-CdX2Rtvp5I8HGu9swBmYuq+ILwRxpXdJwlpg8jvN4tU=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "3ff0e34b1383648053bba8ed03f201d3466f90c9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-25.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1758589230,
|
||||||
|
"narHash": "sha256-zMTCFGe8aVGTEr2RqUi/QzC1nOIQ0N1HRsbqB4f646k=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "d1d883129b193f0b495d75c148c2c3a7d95789a0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-25.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1758029226,
|
||||||
|
"narHash": "sha256-TjqVmbpoCqWywY9xIZLTf6ANFvDCXdctCjoYuYPYdMI=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "08b8f92ac6354983f5382124fef6006cade4a1c1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -459,51 +584,88 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733550349,
|
"lastModified": 1751211869,
|
||||||
"narHash": "sha256-NcGumB4Lr6KSDq+nIqXtNA8QwAQKDSZT7N9OTGWbTrs=",
|
"narHash": "sha256-1Cu92i1KSPbhPCKxoiVG5qnoRiKTgR5CcGSRyLpOd7Y=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e2605d0744c2417b09f8bf850dfca42fcf537d34",
|
"rev": "b43c397f6c213918d6cfe6e3550abfe79b5d1c51",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-24.11",
|
"ref": "nixos-25.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_7": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1743814133,
|
||||||
|
"narHash": "sha256-drDyYyUmjeYGiHmwB9eOPTQRjmrq3Yz26knwmMPLZFk=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "250b695f41e0e2f5afbf15c6b12480de1fe0001b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixvim": {
|
"nixvim": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"devshell": "devshell",
|
"flake-parts": "flake-parts_2",
|
||||||
"flake-compat": "flake-compat",
|
|
||||||
"flake-parts": "flake-parts",
|
|
||||||
"git-hooks": "git-hooks",
|
|
||||||
"home-manager": "home-manager_2",
|
|
||||||
"nix-darwin": "nix-darwin",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nuschtosSearch": "nuschtosSearch",
|
"nuschtosSearch": "nuschtosSearch",
|
||||||
"treefmt-nix": "treefmt-nix"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734447589,
|
"lastModified": 1758373036,
|
||||||
"narHash": "sha256-APyzO3pn6iiGJxkWczifnxm3pKZrNYgpJUPpnVfUwsk=",
|
"narHash": "sha256-tm73KNHsGQwAAoFEcAvuXAmHf3KaWLSuf/R9UQ6WMnU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"rev": "4f0d5e0d2947dbf111f2ce00c99ca4c6c659dc79",
|
"rev": "a30decbd5fc231e84dfefeb75bc7f57d8167726c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"ref": "nixos-24.11",
|
"ref": "nixos-25.05",
|
||||||
"repo": "nixvim",
|
"repo": "nixvim",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nur": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": [
|
||||||
|
"stylix",
|
||||||
|
"flake-parts"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"treefmt-nix": "treefmt-nix"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1751320053,
|
||||||
|
"narHash": "sha256-3m6RMw0FbbaUUa01PNaMLoO7D99aBClmY5ed9V3vz+0=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"rev": "cbde1735782f9c2bb2c63d5e05fba171a14a4670",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nuschtosSearch": {
|
"nuschtosSearch": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
@@ -514,11 +676,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733773348,
|
"lastModified": 1758272005,
|
||||||
"narHash": "sha256-Y47y+LesOCkJaLvj+dI/Oa6FAKj/T9sKVKDXLNsViPw=",
|
"narHash": "sha256-1u3xTH+3kaHhztPmWtLAD8LF5pTYLR2CpsPFWTFnVtQ=",
|
||||||
"owner": "NuschtOS",
|
"owner": "NuschtOS",
|
||||||
"repo": "search",
|
"repo": "search",
|
||||||
"rev": "3051be7f403bff1d1d380e4612f0c70675b44fc9",
|
"rev": "aa975a3757f28ce862812466c5848787b868e116",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -527,16 +689,38 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"pre-commit-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat_2",
|
||||||
|
"gitignore": "gitignore",
|
||||||
|
"nixpkgs": "nixpkgs_5"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1758108966,
|
||||||
|
"narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"darwin": "darwin",
|
"darwin": "darwin",
|
||||||
|
"determinate": "determinate",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixpkgs": "nixpkgs_4",
|
||||||
"nixpkgs": "nixpkgs",
|
|
||||||
"nixpkgs-master": "nixpkgs-master",
|
"nixpkgs-master": "nixpkgs-master",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"nixvim": "nixvim",
|
"nixvim": "nixvim",
|
||||||
"stylix": "stylix"
|
"pre-commit-hooks": "pre-commit-hooks",
|
||||||
|
"stylix": "stylix",
|
||||||
|
"vpngate": "vpngate"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"stylix": {
|
"stylix": {
|
||||||
@@ -545,27 +729,29 @@
|
|||||||
"base16-fish": "base16-fish",
|
"base16-fish": "base16-fish",
|
||||||
"base16-helix": "base16-helix",
|
"base16-helix": "base16-helix",
|
||||||
"base16-vim": "base16-vim",
|
"base16-vim": "base16-vim",
|
||||||
"flake-compat": "flake-compat_2",
|
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-parts": "flake-parts_3",
|
||||||
"gnome-shell": "gnome-shell",
|
"gnome-shell": "gnome-shell",
|
||||||
"home-manager": "home-manager_3",
|
"nixpkgs": "nixpkgs_6",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nur": "nur",
|
||||||
"systems": "systems_2",
|
"systems": "systems_3",
|
||||||
"tinted-foot": "tinted-foot",
|
"tinted-foot": "tinted-foot",
|
||||||
"tinted-kitty": "tinted-kitty",
|
"tinted-kitty": "tinted-kitty",
|
||||||
"tinted-tmux": "tinted-tmux"
|
"tinted-schemes": "tinted-schemes",
|
||||||
|
"tinted-tmux": "tinted-tmux",
|
||||||
|
"tinted-zed": "tinted-zed"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734110444,
|
"lastModified": 1758752640,
|
||||||
"narHash": "sha256-fp1iV2JldCSvz+7ODzXYUkQ+H7zyiWw5E0MQ4ILC4vw=",
|
"narHash": "sha256-UYkixkkd3VgoO7NeSlKcaE3Glt1r1FHmBlziwYijgMQ=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "9015d5d0d5d100f849129c43d257b827d300b089",
|
"rev": "fdfa65624eed1e28960c24a27ba27fffc92e9a32",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"ref": "release-24.11",
|
"ref": "release-25.05",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@@ -600,6 +786,36 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"tinted-foot": {
|
"tinted-foot": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -620,28 +836,43 @@
|
|||||||
"tinted-kitty": {
|
"tinted-kitty": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1716423189,
|
"lastModified": 1735730497,
|
||||||
"narHash": "sha256-2xF3sH7UIwegn+2gKzMpFi3pk5DlIlM18+vj17Uf82U=",
|
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "tinted-kitty",
|
"repo": "tinted-kitty",
|
||||||
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "tinted-kitty",
|
"repo": "tinted-kitty",
|
||||||
"rev": "eb39e141db14baef052893285df9f266df041ff8",
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-schemes": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1750770351,
|
||||||
|
"narHash": "sha256-LI+BnRoFNRa2ffbe3dcuIRYAUcGklBx0+EcFxlHj0SY=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"rev": "5a775c6ffd6e6125947b393872cde95867d85a2a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tinted-tmux": {
|
"tinted-tmux": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1729501581,
|
"lastModified": 1751159871,
|
||||||
"narHash": "sha256-1ohEFMC23elnl39kxWnjzH1l2DFWWx4DhFNNYDTYt54=",
|
"narHash": "sha256-UOHBN1fgHIEzvPmdNMHaDvdRMgLmEJh2hNmDrp3d3LE=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "tinted-tmux",
|
"repo": "tinted-tmux",
|
||||||
"rev": "f0e7f7974a6441033eb0a172a0342e96722b4f14",
|
"rev": "bded5e24407cec9d01bd47a317d15b9223a1546c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -650,19 +881,36 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"tinted-zed": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1751158968,
|
||||||
|
"narHash": "sha256-ksOyv7D3SRRtebpXxgpG4TK8gZSKFc4TIZpR+C98jX8=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"rev": "86a470d94204f7652b906ab0d378e4231a5b3384",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"treefmt-nix": {
|
"treefmt-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixvim",
|
"stylix",
|
||||||
|
"nur",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733761991,
|
"lastModified": 1733222881,
|
||||||
"narHash": "sha256-s4DalCDepD22jtKL5Nw6f4LP5UwoMcPzPZgHWjAfqbQ=",
|
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"rev": "0ce9d149d99bc383d1f2d85f31f6ebd146e46085",
|
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -670,6 +918,25 @@
|
|||||||
"repo": "treefmt-nix",
|
"repo": "treefmt-nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"vpngate": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": "nixpkgs_7"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1753748785,
|
||||||
|
"narHash": "sha256-IPdoF8KSFbAKp9gpTWi9qQv5+9qPjGDVPZKawIE0H+8=",
|
||||||
|
"owner": "davegallant",
|
||||||
|
"repo": "vpngate",
|
||||||
|
"rev": "0167804252a2297c1f81b5cbf1fbb772d26d3e1f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "davegallant",
|
||||||
|
"repo": "vpngate",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
72
flake.nix
72
flake.nix
@@ -2,38 +2,62 @@
|
|||||||
description = "nixos and macos configurations";
|
description = "nixos and macos configurations";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
determinate.url = "https://flakehub.com/f/DeterminateSystems/determinate/*";
|
||||||
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
|
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
|
||||||
|
pre-commit-hooks.url = "github:cachix/git-hooks.nix";
|
||||||
darwin = {
|
darwin = {
|
||||||
url = "github:lnl7/nix-darwin";
|
url = "github:lnl7/nix-darwin/nix-darwin-25.05";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
home-manager = {
|
|
||||||
url = "github:nix-community/home-manager/release-24.11";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
home-manager.url = "github:nix-community/home-manager/release-25.05";
|
||||||
nixvim = {
|
nixvim = {
|
||||||
url = "github:nix-community/nixvim/nixos-24.11";
|
url = "github:nix-community/nixvim/nixos-25.05";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
stylix.url = "github:danth/stylix/release-24.11";
|
stylix.url = "github:danth/stylix/release-25.05";
|
||||||
|
vpngate.url = "github:davegallant/vpngate";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
{
|
{
|
||||||
self,
|
self,
|
||||||
darwin,
|
darwin,
|
||||||
|
determinate,
|
||||||
home-manager,
|
home-manager,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
nixpkgs-unstable,
|
nixpkgs-unstable,
|
||||||
nixpkgs-master,
|
nixpkgs-master,
|
||||||
nixos-hardware,
|
|
||||||
stylix,
|
stylix,
|
||||||
|
vpngate,
|
||||||
...
|
...
|
||||||
}@inputs:
|
}@inputs:
|
||||||
|
let
|
||||||
|
supportedSystems = [
|
||||||
|
"x86_64-linux"
|
||||||
|
"aarch64-linux"
|
||||||
|
"x86_64-darwin"
|
||||||
|
"aarch64-darwin"
|
||||||
|
];
|
||||||
|
|
||||||
|
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
||||||
|
in
|
||||||
{
|
{
|
||||||
|
checks = forAllSystems (system: {
|
||||||
|
pre-commit-check = inputs.pre-commit-hooks.lib.${system}.run {
|
||||||
|
src = ./.;
|
||||||
|
hooks = {
|
||||||
|
nixfmt-rfc-style.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
});
|
||||||
|
devShells = forAllSystems (system: {
|
||||||
|
default = nixpkgs.legacyPackages.${system}.mkShell {
|
||||||
|
inherit (self.checks.${system}.pre-commit-check) shellHook;
|
||||||
|
buildInputs = self.checks.${system}.pre-commit-check.enabledPackages;
|
||||||
|
};
|
||||||
|
});
|
||||||
nixosConfigurations =
|
nixosConfigurations =
|
||||||
let
|
let
|
||||||
unstable = import nixpkgs-unstable {
|
unstable = import nixpkgs-unstable {
|
||||||
@@ -50,18 +74,17 @@
|
|||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit unstable;
|
inherit unstable;
|
||||||
inherit master;
|
inherit master;
|
||||||
|
inherit vpngate;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
./fonts.nix
|
./hosts/hephaestus.nix
|
||||||
./machines/hephaestus/configuration.nix
|
./common-packages.nix
|
||||||
./packages.nix
|
|
||||||
./services/netdata/default.nix
|
|
||||||
./upgrade-diff.nix
|
./upgrade-diff.nix
|
||||||
|
determinate.nixosModules.default
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
stylix.nixosModules.stylix
|
stylix.nixosModules.stylix
|
||||||
|
|
||||||
(
|
(
|
||||||
{ config, lib, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
config = {
|
config = {
|
||||||
nix = {
|
nix = {
|
||||||
@@ -71,9 +94,10 @@
|
|||||||
substituters = [ "https://davegallant.cachix.org" ];
|
substituters = [ "https://davegallant.cachix.org" ];
|
||||||
trusted-users = [
|
trusted-users = [
|
||||||
"root"
|
"root"
|
||||||
"dave"
|
|
||||||
];
|
];
|
||||||
trusted-public-keys = [ "davegallant.cachix.org-1:SsUMqL4+tF2R3/G6X903E9laLlY1rES2QKFfePegF08=" ];
|
trusted-public-keys = [
|
||||||
|
"davegallant.cachix.org-1:SsUMqL4+tF2R3/G6X903E9laLlY1rES2QKFfePegF08="
|
||||||
|
];
|
||||||
};
|
};
|
||||||
registry = {
|
registry = {
|
||||||
nixpkgs.flake = nixpkgs;
|
nixpkgs.flake = nixpkgs;
|
||||||
@@ -91,7 +115,7 @@
|
|||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
users.dave.imports = [
|
users.dave.imports = [
|
||||||
./home/default.nix
|
./home.nix
|
||||||
inputs.nixvim.homeManagerModules.nixvim
|
inputs.nixvim.homeManagerModules.nixvim
|
||||||
];
|
];
|
||||||
extraSpecialArgs = {
|
extraSpecialArgs = {
|
||||||
@@ -129,12 +153,12 @@
|
|||||||
modules = [
|
modules = [
|
||||||
home-manager.darwinModules.home-manager
|
home-manager.darwinModules.home-manager
|
||||||
stylix.darwinModules.stylix
|
stylix.darwinModules.stylix
|
||||||
./machines/zelus/configuration.nix
|
./hosts/zelus.nix
|
||||||
./packages.nix
|
./common-packages.nix
|
||||||
./upgrade-diff.nix
|
./upgrade-diff.nix
|
||||||
|
|
||||||
(
|
(
|
||||||
{ config, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
config = {
|
config = {
|
||||||
nixpkgs.overlays = [ (import ./overlays) ];
|
nixpkgs.overlays = [ (import ./overlays) ];
|
||||||
@@ -142,7 +166,7 @@
|
|||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
users."dave.gallant".imports = [
|
users."dave.gallant".imports = [
|
||||||
./home/default.nix
|
./home.nix
|
||||||
inputs.nixvim.homeManagerModules.nixvim
|
inputs.nixvim.homeManagerModules.nixvim
|
||||||
];
|
];
|
||||||
extraSpecialArgs = {
|
extraSpecialArgs = {
|
||||||
|
24
fonts.nix
24
fonts.nix
@@ -1,24 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
fonts.packages = with pkgs; [
|
|
||||||
dejavu_fonts
|
|
||||||
fira-code
|
|
||||||
fira-code-symbols
|
|
||||||
fira-mono
|
|
||||||
font-awesome
|
|
||||||
google-fonts
|
|
||||||
liberation_ttf
|
|
||||||
nerdfonts
|
|
||||||
noto-fonts
|
|
||||||
noto-fonts-cjk-sans
|
|
||||||
noto-fonts-emoji
|
|
||||||
noto-fonts-extra
|
|
||||||
];
|
|
||||||
|
|
||||||
fonts.fontconfig.defaultFonts = {
|
|
||||||
sansSerif = [ "Noto Sans" ];
|
|
||||||
serif = [ "Noto Serif" ];
|
|
||||||
monospace = [ "Noto Sans Mono" ];
|
|
||||||
emoji = [ "Noto Color Emoji" ];
|
|
||||||
};
|
|
||||||
}
|
|
@@ -2,29 +2,19 @@
|
|||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
unstable,
|
unstable,
|
||||||
master,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (pkgs) stdenv;
|
inherit (pkgs) stdenv;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
home.stateVersion = "24.11";
|
home.stateVersion = "25.05";
|
||||||
|
|
||||||
home.packages = with pkgs; [ just ];
|
home.packages = with pkgs; [ just ];
|
||||||
|
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml";
|
||||||
targets = {
|
|
||||||
alacritty.enable = true;
|
|
||||||
tmux.enable = true;
|
|
||||||
vscode.enable = false; # overrides synced settings
|
|
||||||
};
|
|
||||||
|
|
||||||
opacity.terminal = 1.0;
|
|
||||||
|
|
||||||
fonts.sizes = if stdenv.isLinux then { terminal = 20; } else { terminal = 16; };
|
|
||||||
|
|
||||||
fonts.monospace = {
|
fonts.monospace = {
|
||||||
name = "FiraCode Nerd Font Mono";
|
name = "FiraCode Nerd Font Mono";
|
||||||
@@ -60,12 +50,15 @@ in
|
|||||||
|
|
||||||
userName = "Dave Gallant";
|
userName = "Dave Gallant";
|
||||||
|
|
||||||
|
diff-so-fancy.enable = true;
|
||||||
|
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
|
|
||||||
aliases = {
|
aliases = {
|
||||||
aa = "add -A .";
|
aa = "add -A .";
|
||||||
br = "branch";
|
br = "branch";
|
||||||
c = "commit -S";
|
c = "commit -S";
|
||||||
|
cm = "commit -S -m";
|
||||||
ca = "commit -S --amend";
|
ca = "commit -S --amend";
|
||||||
cane = "commit -S --amend --no-edit";
|
cane = "commit -S --amend --no-edit";
|
||||||
cb = "checkout -b";
|
cb = "checkout -b";
|
||||||
@@ -86,21 +79,6 @@ in
|
|||||||
|
|
||||||
includes = [ { path = "~/.gitconfig-work"; } ];
|
includes = [ { path = "~/.gitconfig-work"; } ];
|
||||||
|
|
||||||
delta = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
options = {
|
|
||||||
features = "line-numbers decorations";
|
|
||||||
whitespace-error-style = "22 reverse";
|
|
||||||
plus-style = "green bold ul '#198214'";
|
|
||||||
decorations = {
|
|
||||||
commit-decoration-style = "bold yellow box ul";
|
|
||||||
file-style = "bold yellow ul";
|
|
||||||
file-decoration-style = "none";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
extraConfig = {
|
extraConfig = {
|
||||||
push = {
|
push = {
|
||||||
default = "current";
|
default = "current";
|
||||||
@@ -111,13 +89,31 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
alacritty = {
|
||||||
|
enable = stdenv.isLinux;
|
||||||
|
settings = {
|
||||||
|
window.padding.x = 10;
|
||||||
|
window.padding.y = 10;
|
||||||
|
scrolling.history = 100000;
|
||||||
|
general.live_config_reload = true;
|
||||||
|
terminal.shell = {
|
||||||
|
program = "zsh";
|
||||||
|
};
|
||||||
|
font = {
|
||||||
|
size = lib.mkForce 18.0;
|
||||||
|
};
|
||||||
|
window = {
|
||||||
|
opacity = lib.mkForce 0.9;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
starship = {
|
starship = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
add_newline = false;
|
add_newline = false;
|
||||||
scan_timeout = 10;
|
|
||||||
gcloud = {
|
gcloud = {
|
||||||
format = "";
|
format = "";
|
||||||
};
|
};
|
||||||
@@ -145,6 +141,11 @@ in
|
|||||||
envExtra = ''
|
envExtra = ''
|
||||||
export PAGER=less
|
export PAGER=less
|
||||||
export EDITOR=vim
|
export EDITOR=vim
|
||||||
|
export DOCKER_CLI_HINTS=false
|
||||||
|
export TERM=xterm-256color
|
||||||
|
|
||||||
|
export DOCKER_DEFAULT_PLATFORM=linux/amd64
|
||||||
|
export NNN_FIFO="$XDG_RUNTIME_DIR/nnn.fifo";
|
||||||
|
|
||||||
export PATH=$PATH:~/.cargo/bin
|
export PATH=$PATH:~/.cargo/bin
|
||||||
export PATH=$PATH:~/.local/bin
|
export PATH=$PATH:~/.local/bin
|
||||||
@@ -157,7 +158,7 @@ in
|
|||||||
export PATH=$PATH:$GOBIN
|
export PATH=$PATH:$GOBIN
|
||||||
'';
|
'';
|
||||||
|
|
||||||
initExtra = ''
|
initContent = ''
|
||||||
setopt noincappendhistory
|
setopt noincappendhistory
|
||||||
|
|
||||||
source $HOME/.zsh-work
|
source $HOME/.zsh-work
|
||||||
@@ -196,9 +197,7 @@ in
|
|||||||
l = "eza -la --git --group-directories-first";
|
l = "eza -la --git --group-directories-first";
|
||||||
m = "make";
|
m = "make";
|
||||||
nix-install = "nix-env -iA";
|
nix-install = "nix-env -iA";
|
||||||
ps = "procs";
|
t = "cd-fzf";
|
||||||
t = "tms";
|
|
||||||
ts = "tms switch";
|
|
||||||
tf = "terraform";
|
tf = "terraform";
|
||||||
tree = "eza --tree";
|
tree = "eza --tree";
|
||||||
v = "nvim";
|
v = "nvim";
|
||||||
@@ -209,128 +208,40 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
alacritty = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
window.padding.x = 10;
|
|
||||||
window.padding.y = 10;
|
|
||||||
scrolling.history = 100000;
|
|
||||||
general.live_config_reload = true;
|
|
||||||
mouse.hide_when_typing = false;
|
|
||||||
|
|
||||||
terminal.shell = {
|
|
||||||
program = "zsh";
|
|
||||||
args = [
|
|
||||||
"-l"
|
|
||||||
"-c"
|
|
||||||
"tmux"
|
|
||||||
"u"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
go = {
|
go = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
tmux = {
|
|
||||||
enable = true;
|
|
||||||
clock24 = true;
|
|
||||||
terminal = "tmux-256color";
|
|
||||||
customPaneNavigationAndResize = true;
|
|
||||||
plugins = with pkgs.tmuxPlugins; [
|
|
||||||
{
|
|
||||||
plugin = pain-control;
|
|
||||||
extraConfig = "set -g @plugin 'tmux-plugins/tmux-pain-control'";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = sensible;
|
|
||||||
extraConfig = "set -g @plugin 'tmux-plugins/tmux-sensible'";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = sessionist;
|
|
||||||
extraConfig = "set -g @plugin 'tmux-plugins/tmux-sessionist'";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = yank;
|
|
||||||
extraConfig = "set -g @plugin 'tmux-plugins/tmux-yank'";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = copycat;
|
|
||||||
extraConfig = "set -g @plugin 'tmux-plugins/tmux-copycat'";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = tmux-colors-solarized;
|
|
||||||
extraConfig = ''
|
|
||||||
set -g @plugin 'seebi/tmux-colors-solarized'
|
|
||||||
set -g @colors-solarized 'dark'
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = resurrect;
|
|
||||||
extraConfig = ''
|
|
||||||
set -g @plugin 'tmux-plugins/tmux-resurrect'
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = continuum;
|
|
||||||
extraConfig = ''
|
|
||||||
set -g @plugin 'tmux-plugins/tmux-continuum'
|
|
||||||
set -g @continuum-restore 'on'
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
{
|
|
||||||
plugin = open;
|
|
||||||
extraConfig = ''
|
|
||||||
set -g @plugin 'tmux-plugins/tmux-open'
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
];
|
|
||||||
extraConfig = ''
|
|
||||||
set-window-option -g automatic-rename on
|
|
||||||
set-option -g set-titles on
|
|
||||||
|
|
||||||
# Proper colors
|
|
||||||
set-option -sa terminal-features ',alacritty:RGB'
|
|
||||||
|
|
||||||
# Undercurl
|
|
||||||
set-option -g default-terminal "tmux-256color"
|
|
||||||
set-option -ga terminal-features ",alacritty:usstyle"
|
|
||||||
|
|
||||||
set -g mouse on
|
|
||||||
|
|
||||||
set -g status-left-length 30
|
|
||||||
set -g status-right-length 150
|
|
||||||
|
|
||||||
set -g xterm-keys on
|
|
||||||
|
|
||||||
set -g pane-border-status top
|
|
||||||
|
|
||||||
set -g set-titles on
|
|
||||||
set -g display-panes-time 800
|
|
||||||
set -g display-time 2000
|
|
||||||
|
|
||||||
set -q -g utf8 on
|
|
||||||
|
|
||||||
set -g monitor-activity on
|
|
||||||
set -g visual-activity off
|
|
||||||
|
|
||||||
set -g status-right '#(gitmux #{pane_current_path})'
|
|
||||||
|
|
||||||
#unbind -T copy-mode-vi MouseDragEnd1Pane
|
|
||||||
set-window-option -g mode-keys vi
|
|
||||||
bind-key -T copy-mode-vi v send -X begin-selection
|
|
||||||
bind-key -T copy-mode-vi V send -X select-line
|
|
||||||
bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel 'xclip -in -selection clipboard'
|
|
||||||
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
fzf = {
|
fzf = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nnn = {
|
||||||
|
enable = stdenv.isLinux;
|
||||||
|
package = pkgs.nnn.override ({ withNerdIcons = true; });
|
||||||
|
bookmarks = {
|
||||||
|
d = "~/Downloads";
|
||||||
|
p = "~/src/";
|
||||||
|
c = "~/.config";
|
||||||
|
h = "~";
|
||||||
|
};
|
||||||
|
extraPackages = with pkgs; [
|
||||||
|
bat
|
||||||
|
eza
|
||||||
|
fzf
|
||||||
|
imv
|
||||||
|
mediainfo
|
||||||
|
ffmpegthumbnailer
|
||||||
|
];
|
||||||
|
plugins = {
|
||||||
|
src = "${pkgs.nnn.src}/plugins";
|
||||||
|
mappings = {
|
||||||
|
p = "preview-tui";
|
||||||
|
o = "fzopen";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
nixvim = {
|
nixvim = {
|
||||||
enable = true;
|
enable = true;
|
||||||
viAlias = true;
|
viAlias = true;
|
||||||
@@ -382,8 +293,7 @@ in
|
|||||||
];
|
];
|
||||||
|
|
||||||
plugins = {
|
plugins = {
|
||||||
auto-save.enable = false;
|
auto-save.enable = true;
|
||||||
copilot-vim.enable = true;
|
|
||||||
cmp-path.enable = true;
|
cmp-path.enable = true;
|
||||||
cmp-treesitter.enable = true;
|
cmp-treesitter.enable = true;
|
||||||
commentary.enable = true;
|
commentary.enable = true;
|
||||||
@@ -414,10 +324,6 @@ in
|
|||||||
};
|
};
|
||||||
cmp.enable = true;
|
cmp.enable = true;
|
||||||
nvim-tree.enable = true;
|
nvim-tree.enable = true;
|
||||||
packer = {
|
|
||||||
enable = true;
|
|
||||||
plugins = [ ];
|
|
||||||
};
|
|
||||||
rainbow-delimiters.enable = true;
|
rainbow-delimiters.enable = true;
|
||||||
treesitter.enable = true;
|
treesitter.enable = true;
|
||||||
telescope = {
|
telescope = {
|
||||||
@@ -515,23 +421,43 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
vscode = {
|
zed-editor = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.vscode;
|
package = unstable.zed-editor;
|
||||||
extensions =
|
extensions = [
|
||||||
with pkgs.vscode-extensions;
|
"ansible"
|
||||||
[
|
"color-highlight"
|
||||||
bbenoist.nix
|
"dockerfile"
|
||||||
github.vscode-pull-request-github
|
"html"
|
||||||
golang.go
|
"make"
|
||||||
hashicorp.terraform
|
"material-icon-theme"
|
||||||
ms-dotnettools.csharp
|
"nix"
|
||||||
ms-kubernetes-tools.vscode-kubernetes-tools
|
"tokyo-night"
|
||||||
redhat.vscode-yaml
|
"toml"
|
||||||
]
|
"vue"
|
||||||
++ lib.optionals stdenv.isLinux [
|
];
|
||||||
ms-python.python
|
userSettings = {
|
||||||
];
|
icon_theme = "Material Icon Theme";
|
||||||
|
theme = lib.mkForce "Tokyo Night";
|
||||||
|
features = {
|
||||||
|
edit_prediction_provider = "copilot";
|
||||||
|
};
|
||||||
|
vim_mode = true;
|
||||||
|
vim = {
|
||||||
|
use_system_clipboard = "on_yank";
|
||||||
|
};
|
||||||
|
autosave = "on_focus_change";
|
||||||
|
format_on_save = "off";
|
||||||
|
}
|
||||||
|
// (
|
||||||
|
if pkgs.stdenv.isLinux then
|
||||||
|
{
|
||||||
|
ui_font_size = lib.mkForce 24;
|
||||||
|
buffer_font_size = lib.mkForce 22;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{ }
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
firefox = {
|
firefox = {
|
508
hosts/hephaestus.nix
Normal file
508
hosts/hephaestus.nix
Normal file
@@ -0,0 +1,508 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
master,
|
||||||
|
modulesPath,
|
||||||
|
pkgs,
|
||||||
|
unstable,
|
||||||
|
vpngate,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
gnomeExtensions = with pkgs.gnomeExtensions; [
|
||||||
|
caffeine
|
||||||
|
clipboard-history
|
||||||
|
grand-theft-focus
|
||||||
|
];
|
||||||
|
in
|
||||||
|
{
|
||||||
|
|
||||||
|
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||||
|
|
||||||
|
stylix = {
|
||||||
|
enable = true;
|
||||||
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml";
|
||||||
|
image = pkgs.fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/davegallant/nix-config/refs/heads/main/nixos-wallpaper.png";
|
||||||
|
sha256 = "Ztqn9+CHslr6wZdnOTeo/YNi/ICerpcFLyMArsZ/PIY=";
|
||||||
|
};
|
||||||
|
polarity = "dark";
|
||||||
|
};
|
||||||
|
|
||||||
|
security.sudo-rs = {
|
||||||
|
enable = true;
|
||||||
|
execWheelOnly = true;
|
||||||
|
wheelNeedsPassword = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
boot = {
|
||||||
|
kernelModules = [
|
||||||
|
"kvm-amd"
|
||||||
|
"vfio_pci"
|
||||||
|
"vfio"
|
||||||
|
"vfio_iommu_type1"
|
||||||
|
"vfio_virqfd"
|
||||||
|
];
|
||||||
|
kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
kernelParams = [
|
||||||
|
"amd_iommu=on"
|
||||||
|
];
|
||||||
|
|
||||||
|
loader = {
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
efi.efiSysMountPoint = "/boot/efi";
|
||||||
|
grub = {
|
||||||
|
enable = true;
|
||||||
|
device = "nodev";
|
||||||
|
efiSupport = true;
|
||||||
|
enableCryptodisk = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
supportedFilesystems = [
|
||||||
|
"ntfs"
|
||||||
|
];
|
||||||
|
|
||||||
|
initrd = {
|
||||||
|
availableKernelModules = [
|
||||||
|
"ahci"
|
||||||
|
"nvme"
|
||||||
|
"sd_mod"
|
||||||
|
"usb_storage"
|
||||||
|
"usbhid"
|
||||||
|
"xhci_pci"
|
||||||
|
];
|
||||||
|
luks.devices."root" = {
|
||||||
|
allowDiscards = true;
|
||||||
|
device = "/dev/disk/by-uuid/21cd166c-1528-49a4-b31b-0d408d48aa80";
|
||||||
|
preLVM = true;
|
||||||
|
keyFile = "./keyfile0.bin";
|
||||||
|
};
|
||||||
|
secrets = {
|
||||||
|
"keyfile0.bin" = "/etc/secrets/initrd/keyfile0.bin";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages =
|
||||||
|
with pkgs;
|
||||||
|
[
|
||||||
|
android-studio
|
||||||
|
android-tools
|
||||||
|
bleachbit
|
||||||
|
calibre
|
||||||
|
chromium
|
||||||
|
cryptsetup
|
||||||
|
dbeaver-bin
|
||||||
|
discord
|
||||||
|
freefilesync
|
||||||
|
gimp-with-plugins
|
||||||
|
gnome-tweaks
|
||||||
|
google-chrome
|
||||||
|
httpie-desktop
|
||||||
|
iputils
|
||||||
|
libation
|
||||||
|
mission-center
|
||||||
|
mupen64plus
|
||||||
|
nfs-utils
|
||||||
|
onlyoffice-desktopeditors
|
||||||
|
opensnitch-ui
|
||||||
|
pavucontrol
|
||||||
|
pciutils
|
||||||
|
pika-backup
|
||||||
|
pinentry-curses
|
||||||
|
pinta
|
||||||
|
protonvpn-gui
|
||||||
|
qemu
|
||||||
|
traceroute
|
||||||
|
unityhub
|
||||||
|
unstable.podman
|
||||||
|
unstable.podman-compose
|
||||||
|
unstable.podman-desktop
|
||||||
|
unstable.beszel
|
||||||
|
unstable.obsidian
|
||||||
|
unstable.ryubing
|
||||||
|
unstable.signal-desktop-bin
|
||||||
|
unstable.spotify
|
||||||
|
unstable.tailscale
|
||||||
|
unstable.zoom-us
|
||||||
|
usbutils
|
||||||
|
virt-manager
|
||||||
|
vlc
|
||||||
|
vpngate.packages.x86_64-linux.default
|
||||||
|
whois
|
||||||
|
wine
|
||||||
|
]
|
||||||
|
++ gnomeExtensions;
|
||||||
|
|
||||||
|
fileSystems = {
|
||||||
|
"/" = {
|
||||||
|
device = "/dev/disk/by-uuid/a6723178-6f18-428e-b541-9ac901861125";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
"/home" = {
|
||||||
|
device = "/dev/disk/by-uuid/e3ab2e1a-bddf-4ae0-b00a-bf954c6c182b";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
"/boot/efi" = {
|
||||||
|
device = "/dev/disk/by-uuid/3CFD-D749";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
"/mnt/synology-2b/media" = {
|
||||||
|
device = "192.168.1.178:/volume1/Media";
|
||||||
|
fsType = "nfs";
|
||||||
|
};
|
||||||
|
"/mnt/truenas/home/backups" = {
|
||||||
|
device = "192.168.1.132:/mnt/wd4t/data/home/backup/";
|
||||||
|
fsType = "nfs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
dejavu_fonts
|
||||||
|
fira-mono
|
||||||
|
font-awesome
|
||||||
|
google-fonts
|
||||||
|
liberation_ttf
|
||||||
|
nerd-fonts.droid-sans-mono
|
||||||
|
nerd-fonts.fira-code
|
||||||
|
nerd-fonts.symbols-only
|
||||||
|
nerd-fonts.ubuntu
|
||||||
|
nerd-fonts.ubuntu-mono
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-cjk-sans
|
||||||
|
noto-fonts-emoji
|
||||||
|
noto-fonts-extra
|
||||||
|
];
|
||||||
|
|
||||||
|
fonts.fontconfig.defaultFonts = {
|
||||||
|
sansSerif = [ "Noto Sans" ];
|
||||||
|
serif = [ "Noto Serif" ];
|
||||||
|
monospace = [ "Noto Sans Mono" ];
|
||||||
|
emoji = [ "Noto Color Emoji" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs = {
|
||||||
|
hostPlatform = "x86_64-linux";
|
||||||
|
config = {
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
iproute2.enable = true;
|
||||||
|
hostName = "hephaestus";
|
||||||
|
hostId = "0e8aad53";
|
||||||
|
interfaces."enp34s0" = {
|
||||||
|
useDHCP = true;
|
||||||
|
wakeOnLan = {
|
||||||
|
enable = true;
|
||||||
|
policy = [ "magic" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
firewall = {
|
||||||
|
allowPing = false;
|
||||||
|
enable = true;
|
||||||
|
checkReversePath = "loose";
|
||||||
|
trustedInterfaces = [ "tailscale0" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.beszel = {
|
||||||
|
isSystemUser = true;
|
||||||
|
group = "beszel";
|
||||||
|
description = "Beszel Agent service user";
|
||||||
|
};
|
||||||
|
users.groups.beszel = { };
|
||||||
|
|
||||||
|
systemd.services = {
|
||||||
|
NetworkManager-wait-online.enable = false;
|
||||||
|
|
||||||
|
beszel-agent = {
|
||||||
|
description = "Beszel Agent Service";
|
||||||
|
after = [ "network-online.target" ];
|
||||||
|
wants = [ "network-online.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
Environment = [
|
||||||
|
"PORT=45876"
|
||||||
|
''KEY="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEaNtnkc+3+fJU+bTO6fibID9FHgFjei0sjJNqvcYtG8"''
|
||||||
|
];
|
||||||
|
ExecStart = "${lib.getBin unstable.beszel}/bin/beszel-agent";
|
||||||
|
User = "beszel";
|
||||||
|
Restart = "always";
|
||||||
|
RestartSec = 5;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
system = {
|
||||||
|
autoUpgrade.enable = true;
|
||||||
|
stateVersion = "25.05";
|
||||||
|
};
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
extraOptions = "experimental-features = nix-command flakes";
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.dave = {
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [
|
||||||
|
"wheel"
|
||||||
|
"libvirtd"
|
||||||
|
"corectrl"
|
||||||
|
];
|
||||||
|
shell = pkgs.zsh;
|
||||||
|
};
|
||||||
|
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
|
i18n.inputMethod = {
|
||||||
|
enable = true;
|
||||||
|
type = "ibus";
|
||||||
|
ibus.engines = with pkgs.ibus-engines; [ anthy ];
|
||||||
|
};
|
||||||
|
|
||||||
|
time.timeZone = "America/Toronto";
|
||||||
|
|
||||||
|
hardware.graphics = {
|
||||||
|
enable = true;
|
||||||
|
enable32Bit = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
gnupg.agent = {
|
||||||
|
enable = true;
|
||||||
|
enableSSHSupport = true;
|
||||||
|
};
|
||||||
|
nix-ld.enable = true;
|
||||||
|
steam = {
|
||||||
|
enable = true;
|
||||||
|
remotePlay.openFirewall = true;
|
||||||
|
};
|
||||||
|
zsh.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.avahi = {
|
||||||
|
enable = true;
|
||||||
|
nssmdns4 = true;
|
||||||
|
publish = {
|
||||||
|
enable = true;
|
||||||
|
addresses = true;
|
||||||
|
domain = true;
|
||||||
|
hinfo = true;
|
||||||
|
userServices = true;
|
||||||
|
workstation = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.flatpak.enable = true;
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
services.resolved.enable = true;
|
||||||
|
|
||||||
|
services.sshd.enable = true;
|
||||||
|
|
||||||
|
services.tailscale = {
|
||||||
|
enable = true;
|
||||||
|
package = unstable.tailscale;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.xserver = {
|
||||||
|
enable = true;
|
||||||
|
displayManager = {
|
||||||
|
gdm = {
|
||||||
|
enable = true;
|
||||||
|
wayland = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
desktopManager.gnome.enable = true;
|
||||||
|
videoDrivers = [ "amdgpu" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.ollama = {
|
||||||
|
package = master.ollama;
|
||||||
|
enable = true;
|
||||||
|
acceleration = "rocm";
|
||||||
|
host = "0.0.0.0";
|
||||||
|
environmentVariables = {
|
||||||
|
HSA_OVERRIDE_GFX_VERSION = "11.0.2";
|
||||||
|
};
|
||||||
|
loadModels = [
|
||||||
|
"dolphin3:8b"
|
||||||
|
"llama3.1"
|
||||||
|
"llava"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.open-webui = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.open-webui;
|
||||||
|
host = "0.0.0.0";
|
||||||
|
environment = {
|
||||||
|
ANONYMIZED_TELEMETRY = "False";
|
||||||
|
DO_NOT_TRACK = "True";
|
||||||
|
SCARF_NO_ANALYTICS = "True";
|
||||||
|
OLLAMA_API_BASE_URL = "http://127.0.0.1:11434/api";
|
||||||
|
OLLAMA_BASE_URL = "http://127.0.0.1:11434";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.opensnitch = {
|
||||||
|
enable = true;
|
||||||
|
rules = {
|
||||||
|
avahi-ipv4 = {
|
||||||
|
name = "Allow avahi daemon IPv4";
|
||||||
|
enabled = true;
|
||||||
|
action = "allow";
|
||||||
|
duration = "always";
|
||||||
|
operator = {
|
||||||
|
type = "list";
|
||||||
|
operand = "list";
|
||||||
|
list = [
|
||||||
|
{
|
||||||
|
type = "simple";
|
||||||
|
operand = "process.path";
|
||||||
|
sensitive = false;
|
||||||
|
data = "${lib.getBin pkgs.avahi}/bin/avahi-daemon";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "network";
|
||||||
|
operand = "dest.network";
|
||||||
|
data = "224.0.0.0/24";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
systemd-timesyncd = {
|
||||||
|
name = "systemd-timesyncd";
|
||||||
|
enabled = true;
|
||||||
|
action = "allow";
|
||||||
|
duration = "always";
|
||||||
|
operator = {
|
||||||
|
type = "simple";
|
||||||
|
sensitive = false;
|
||||||
|
operand = "process.path";
|
||||||
|
data = "${lib.getBin pkgs.systemd}/lib/systemd/systemd-timesyncd";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
systemd-resolved = {
|
||||||
|
name = "systemd-resolved";
|
||||||
|
enabled = true;
|
||||||
|
action = "allow";
|
||||||
|
duration = "always";
|
||||||
|
operator = {
|
||||||
|
type = "simple";
|
||||||
|
sensitive = false;
|
||||||
|
operand = "process.path";
|
||||||
|
data = "${lib.getBin pkgs.systemd}/lib/systemd/systemd-resolved";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
localhost = {
|
||||||
|
name = "Allow all localhost";
|
||||||
|
enabled = true;
|
||||||
|
action = "allow";
|
||||||
|
duration = "always";
|
||||||
|
operator = {
|
||||||
|
type = "regexp";
|
||||||
|
operand = "dest.ip";
|
||||||
|
sensitive = false;
|
||||||
|
data = "^(127\\.0\\.0\\.1|::1)$";
|
||||||
|
list = [ ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
nix-update = {
|
||||||
|
name = "Allow Nix";
|
||||||
|
enabled = true;
|
||||||
|
action = "allow";
|
||||||
|
duration = "always";
|
||||||
|
operator = {
|
||||||
|
type = "list";
|
||||||
|
operand = "list";
|
||||||
|
list = [
|
||||||
|
{
|
||||||
|
type = "simple";
|
||||||
|
sensitive = false;
|
||||||
|
operand = "process.path";
|
||||||
|
data = "${lib.getBin pkgs.nix}/bin/nix";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "regexp";
|
||||||
|
operand = "dest.host";
|
||||||
|
sensitive = false;
|
||||||
|
data = "^(([a-z0-9|-]+\\.)*github\\.com|([a-z0-9|-]+\\.)*nixos\\.org)$";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
NetworkManager = {
|
||||||
|
name = "Allow NetworkManager";
|
||||||
|
enabled = true;
|
||||||
|
action = "allow";
|
||||||
|
duration = "always";
|
||||||
|
operator = {
|
||||||
|
type = "list";
|
||||||
|
operand = "list";
|
||||||
|
list = [
|
||||||
|
{
|
||||||
|
type = "simple";
|
||||||
|
sensitive = false;
|
||||||
|
operand = "process.path";
|
||||||
|
data = "${lib.getBin pkgs.networkmanager}/bin/NetworkManager";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "simple";
|
||||||
|
operand = "dest.port";
|
||||||
|
sensitive = false;
|
||||||
|
data = "67";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "simple";
|
||||||
|
operand = "protocol";
|
||||||
|
sensitive = false;
|
||||||
|
data = "udp";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
ssh-github = {
|
||||||
|
name = "Allow SSH to github";
|
||||||
|
enabled = true;
|
||||||
|
action = "allow";
|
||||||
|
duration = "always";
|
||||||
|
operator = {
|
||||||
|
type = "list";
|
||||||
|
operand = "list";
|
||||||
|
list = [
|
||||||
|
{
|
||||||
|
type = "simple";
|
||||||
|
sensitive = false;
|
||||||
|
operand = "process.path";
|
||||||
|
data = "${lib.getBin pkgs.openssh}/bin/ssh";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
type = "simple";
|
||||||
|
operand = "dest.host";
|
||||||
|
sensitive = false;
|
||||||
|
data = "github.com";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
virtualisation = {
|
||||||
|
podman.enable = true;
|
||||||
|
libvirtd = {
|
||||||
|
enable = true;
|
||||||
|
qemu.swtpm.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
136
hosts/zelus.nix
Normal file
136
hosts/zelus.nix
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
nixpkgs = {
|
||||||
|
config = {
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
hostName = "zelus";
|
||||||
|
};
|
||||||
|
|
||||||
|
nix.enable = false;
|
||||||
|
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
# https://github.com/nix-community/home-manager/issues/108#issuecomment-340397178
|
||||||
|
enableCompletion = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
system.stateVersion = 4;
|
||||||
|
|
||||||
|
users.users."dave.gallant".home = "/Users/dave.gallant";
|
||||||
|
|
||||||
|
system.primaryUser = "dave.gallant";
|
||||||
|
|
||||||
|
system.defaults = {
|
||||||
|
|
||||||
|
trackpad = {
|
||||||
|
ActuationStrength = 0;
|
||||||
|
Clicking = true;
|
||||||
|
FirstClickThreshold = 1;
|
||||||
|
SecondClickThreshold = 1;
|
||||||
|
TrackpadRightClick = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
dock = {
|
||||||
|
autohide = true;
|
||||||
|
tilesize = 50;
|
||||||
|
orientation = "bottom";
|
||||||
|
persistent-apps = [
|
||||||
|
"/Applications/iTerm.app"
|
||||||
|
"/Applications/Google Chrome.app"
|
||||||
|
"/Applications/LibreWolf.app"
|
||||||
|
"/Applications/Obsidian.app"
|
||||||
|
"/Applications/Slack.app"
|
||||||
|
"/Applications/zoom.us.app"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
NSGlobalDomain.AppleShowAllExtensions = true;
|
||||||
|
NSGlobalDomain.AppleShowScrollBars = "Always";
|
||||||
|
NSGlobalDomain.NSUseAnimatedFocusRing = false;
|
||||||
|
NSGlobalDomain.NSNavPanelExpandedStateForSaveMode = true;
|
||||||
|
NSGlobalDomain.NSNavPanelExpandedStateForSaveMode2 = true;
|
||||||
|
NSGlobalDomain.PMPrintingExpandedStateForPrint = true;
|
||||||
|
NSGlobalDomain.PMPrintingExpandedStateForPrint2 = true;
|
||||||
|
NSGlobalDomain.NSDocumentSaveNewDocumentsToCloud = false;
|
||||||
|
NSGlobalDomain.ApplePressAndHoldEnabled = false;
|
||||||
|
NSGlobalDomain.InitialKeyRepeat = 25;
|
||||||
|
NSGlobalDomain.KeyRepeat = 2;
|
||||||
|
NSGlobalDomain."com.apple.mouse.tapBehavior" = 1;
|
||||||
|
NSGlobalDomain.NSWindowShouldDragOnGesture = true;
|
||||||
|
NSGlobalDomain.NSAutomaticSpellingCorrectionEnabled = false;
|
||||||
|
LaunchServices.LSQuarantine = false; # disables "Are you sure?" for new apps
|
||||||
|
loginwindow.GuestEnabled = false;
|
||||||
|
finder.FXPreferredViewStyle = "Nlsv";
|
||||||
|
};
|
||||||
|
|
||||||
|
security.pam.services.sudo_local.touchIdAuth = true;
|
||||||
|
|
||||||
|
homebrew = {
|
||||||
|
enable = true;
|
||||||
|
onActivation = {
|
||||||
|
cleanup = "zap";
|
||||||
|
autoUpdate = true;
|
||||||
|
upgrade = true;
|
||||||
|
};
|
||||||
|
global = {
|
||||||
|
brewfile = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
brews = [
|
||||||
|
"argocd"
|
||||||
|
"azure-cli"
|
||||||
|
"coreutils"
|
||||||
|
"gnu-sed"
|
||||||
|
"gnu-tar"
|
||||||
|
"k6"
|
||||||
|
"node"
|
||||||
|
"oras"
|
||||||
|
"vault"
|
||||||
|
];
|
||||||
|
|
||||||
|
casks = [
|
||||||
|
"discord"
|
||||||
|
"dbeaver-community"
|
||||||
|
"font-fira-code-nerd-font"
|
||||||
|
"font-hack-nerd-font"
|
||||||
|
"fork"
|
||||||
|
"freelens"
|
||||||
|
"iterm2"
|
||||||
|
"karabiner-elements"
|
||||||
|
"knockknock"
|
||||||
|
"librewolf"
|
||||||
|
"lulu"
|
||||||
|
"notunes"
|
||||||
|
"obsidian"
|
||||||
|
"ollama"
|
||||||
|
"raycast"
|
||||||
|
"rectangle"
|
||||||
|
"signal"
|
||||||
|
"slack"
|
||||||
|
"spotify"
|
||||||
|
"stats"
|
||||||
|
"steam"
|
||||||
|
"taskexplorer"
|
||||||
|
"tailscale"
|
||||||
|
"vlc"
|
||||||
|
];
|
||||||
|
|
||||||
|
taps = [
|
||||||
|
"hashicorp/tap"
|
||||||
|
"homebrew/bundle"
|
||||||
|
"homebrew/cask-fonts"
|
||||||
|
"homebrew/cask-versions"
|
||||||
|
"homebrew/services"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
stylix = {
|
||||||
|
enable = true;
|
||||||
|
image = "/Library/tokyo-night.jpg";
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
8
justfile
8
justfile
@@ -8,20 +8,20 @@ arch := `uname -s`
|
|||||||
cmd := if arch == "Linux" { "nixos-rebuild --use-remote-sudo" } else { "darwin-rebuild" }
|
cmd := if arch == "Linux" { "nixos-rebuild --use-remote-sudo" } else { "darwin-rebuild" }
|
||||||
|
|
||||||
rebuild:
|
rebuild:
|
||||||
$cmd switch --flake . -I nixos-config="machines/$(hostname)/configuration.nix"
|
sudo $cmd switch --flake . -I nixos-config="hosts/$(hostname).nix"
|
||||||
|
|
||||||
rollback:
|
rollback:
|
||||||
$cmd switch --rollback --flake .
|
sudo $cmd switch --rollback --flake .
|
||||||
|
|
||||||
channel-update:
|
channel-update:
|
||||||
nix-channel --update
|
nix-channel --update
|
||||||
sudo nix-channel --update
|
sudo nix-channel --update
|
||||||
|
|
||||||
update:
|
update:
|
||||||
@./nix-flake-update.sh
|
@./update-flake.sh
|
||||||
|
|
||||||
fmt:
|
fmt:
|
||||||
nixfmt .
|
nixfmt *.nix
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
echo 'Cleaning user...'
|
echo 'Cleaning user...'
|
||||||
|
@@ -1,290 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
modulesPath,
|
|
||||||
pkgs,
|
|
||||||
unstable,
|
|
||||||
master,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
gnomeExtensions = with pkgs.gnomeExtensions; [
|
|
||||||
appindicator
|
|
||||||
bluetooth-quick-connect
|
|
||||||
blur-my-shell
|
|
||||||
caffeine
|
|
||||||
clipboard-indicator
|
|
||||||
grand-theft-focus
|
|
||||||
notification-banner-reloaded
|
|
||||||
quick-settings-tweaker
|
|
||||||
tailscale-status
|
|
||||||
tray-icons-reloaded
|
|
||||||
];
|
|
||||||
in
|
|
||||||
{
|
|
||||||
|
|
||||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
|
||||||
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/tokyo-night-dark.yaml";
|
|
||||||
image = pkgs.fetchurl {
|
|
||||||
url = "https://raw.githubusercontent.com/davegallant/nix-config/refs/heads/main/nixos-wallpaper.png";
|
|
||||||
sha256 = "Ztqn9+CHslr6wZdnOTeo/YNi/ICerpcFLyMArsZ/PIY=";
|
|
||||||
};
|
|
||||||
polarity = "dark";
|
|
||||||
fonts.sizes.desktop = 24;
|
|
||||||
};
|
|
||||||
|
|
||||||
boot = {
|
|
||||||
extraModulePackages = with config.boot.kernelPackages; [ xpadneo ];
|
|
||||||
kernelModules = [ "kvm-amd" ];
|
|
||||||
kernelPackages = pkgs.linuxPackages;
|
|
||||||
|
|
||||||
loader = {
|
|
||||||
efi.canTouchEfiVariables = true;
|
|
||||||
efi.efiSysMountPoint = "/boot/efi";
|
|
||||||
grub = {
|
|
||||||
enable = true;
|
|
||||||
device = "nodev";
|
|
||||||
efiSupport = true;
|
|
||||||
enableCryptodisk = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
supportedFilesystems = [
|
|
||||||
"ntfs"
|
|
||||||
"zfs"
|
|
||||||
];
|
|
||||||
|
|
||||||
initrd = {
|
|
||||||
availableKernelModules = [
|
|
||||||
"ahci"
|
|
||||||
"nvme"
|
|
||||||
"sd_mod"
|
|
||||||
"usb_storage"
|
|
||||||
"usbhid"
|
|
||||||
"xhci_pci"
|
|
||||||
];
|
|
||||||
luks.devices."root" = {
|
|
||||||
allowDiscards = true;
|
|
||||||
device = "/dev/disk/by-uuid/21cd166c-1528-49a4-b31b-0d408d48aa80";
|
|
||||||
preLVM = true;
|
|
||||||
keyFile = "./keyfile0.bin";
|
|
||||||
};
|
|
||||||
secrets = {
|
|
||||||
"keyfile0.bin" = "/etc/secrets/initrd/keyfile0.bin";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
console = {
|
|
||||||
font = "Lat2-Terminus16";
|
|
||||||
keyMap = "us";
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages =
|
|
||||||
with pkgs;
|
|
||||||
[
|
|
||||||
albert
|
|
||||||
android-tools
|
|
||||||
blender
|
|
||||||
cartridges
|
|
||||||
cryptsetup
|
|
||||||
discord
|
|
||||||
docker
|
|
||||||
docker-compose
|
|
||||||
ghostscript
|
|
||||||
gimp-with-plugins
|
|
||||||
glibcLocales
|
|
||||||
httpie-desktop
|
|
||||||
gnome-tweaks
|
|
||||||
google-chrome
|
|
||||||
iputils
|
|
||||||
kazam
|
|
||||||
legendary-gl
|
|
||||||
libation
|
|
||||||
lm_sensors
|
|
||||||
logseq
|
|
||||||
master.lutris
|
|
||||||
mitmproxy
|
|
||||||
mullvad-vpn
|
|
||||||
netdata
|
|
||||||
nfs-utils
|
|
||||||
pavucontrol
|
|
||||||
pika-backup
|
|
||||||
pinentry-curses
|
|
||||||
podman
|
|
||||||
qemu
|
|
||||||
sbx-h6-rgb
|
|
||||||
strace
|
|
||||||
traceroute
|
|
||||||
unstable.burpsuite
|
|
||||||
unstable.dotnet-sdk_8
|
|
||||||
unstable.ryujinx
|
|
||||||
unstable.signal-desktop
|
|
||||||
unstable.spotify
|
|
||||||
unstable.tailscale
|
|
||||||
unstable.unityhub
|
|
||||||
unstable.zoom-us
|
|
||||||
unstable.zulip
|
|
||||||
usbutils
|
|
||||||
virt-manager
|
|
||||||
vlc
|
|
||||||
whois
|
|
||||||
wireshark-qt
|
|
||||||
]
|
|
||||||
++ gnomeExtensions;
|
|
||||||
|
|
||||||
fileSystems = {
|
|
||||||
"/" = {
|
|
||||||
device = "/dev/disk/by-uuid/a6723178-6f18-428e-b541-9ac901861125";
|
|
||||||
fsType = "ext4";
|
|
||||||
};
|
|
||||||
"/home" = {
|
|
||||||
device = "/dev/disk/by-uuid/e3ab2e1a-bddf-4ae0-b00a-bf954c6c182b";
|
|
||||||
fsType = "ext4";
|
|
||||||
};
|
|
||||||
"/boot/efi" = {
|
|
||||||
device = "/dev/disk/by-uuid/3CFD-D749";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
"/mnt/synology-2b/media" = {
|
|
||||||
device = "192.168.1.178:/volume1/Media";
|
|
||||||
fsType = "nfs";
|
|
||||||
};
|
|
||||||
"/mnt/synology-2b/backups" = {
|
|
||||||
device = "192.168.1.178:/volume1/Backups";
|
|
||||||
fsType = "nfs";
|
|
||||||
};
|
|
||||||
"/mnt/zfs/backups" = {
|
|
||||||
device = "zpool/backups";
|
|
||||||
fsType = "zfs";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [ { device = "/dev/disk/by-uuid/5d6d0388-2b15-4ff1-9f0f-391818a76090"; } ];
|
|
||||||
|
|
||||||
nixpkgs = {
|
|
||||||
hostPlatform = "x86_64-linux";
|
|
||||||
config = {
|
|
||||||
allowUnfree = true;
|
|
||||||
permittedInsecurePackages = [ "electron-27.3.11" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
iproute2.enable = true;
|
|
||||||
hostName = "hephaestus";
|
|
||||||
hostId = "0e8aad53";
|
|
||||||
interfaces.enp34s0 = {
|
|
||||||
useDHCP = true;
|
|
||||||
};
|
|
||||||
firewall = {
|
|
||||||
allowPing = false;
|
|
||||||
enable = true;
|
|
||||||
checkReversePath = "loose";
|
|
||||||
trustedInterfaces = [ "tailscale0" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
systemd.services = {
|
|
||||||
NetworkManager-wait-online.enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
system = {
|
|
||||||
autoUpgrade.enable = true;
|
|
||||||
stateVersion = "24.11";
|
|
||||||
};
|
|
||||||
|
|
||||||
nix = {
|
|
||||||
extraOptions = "experimental-features = nix-command flakes";
|
|
||||||
};
|
|
||||||
|
|
||||||
users.users.dave = {
|
|
||||||
isNormalUser = true;
|
|
||||||
extraGroups = [
|
|
||||||
"docker"
|
|
||||||
"wheel"
|
|
||||||
"libvirtd"
|
|
||||||
"corectrl"
|
|
||||||
];
|
|
||||||
shell = pkgs.zsh;
|
|
||||||
};
|
|
||||||
|
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
|
||||||
|
|
||||||
i18n.inputMethod = {
|
|
||||||
enable = true;
|
|
||||||
type = "ibus";
|
|
||||||
ibus.engines = with pkgs.ibus-engines; [ anthy ];
|
|
||||||
};
|
|
||||||
|
|
||||||
time.timeZone = "America/Toronto";
|
|
||||||
|
|
||||||
hardware.graphics.enable = true;
|
|
||||||
hardware.graphics.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ];
|
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
|
|
||||||
programs = {
|
|
||||||
corectrl.enable = true;
|
|
||||||
gnupg.agent = {
|
|
||||||
enable = true;
|
|
||||||
enableSSHSupport = true;
|
|
||||||
};
|
|
||||||
nix-ld.enable = true;
|
|
||||||
steam = {
|
|
||||||
enable = true;
|
|
||||||
remotePlay.openFirewall = true;
|
|
||||||
};
|
|
||||||
zsh.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
|
||||||
avahi = {
|
|
||||||
enable = true;
|
|
||||||
nssmdns4 = true;
|
|
||||||
publish = {
|
|
||||||
enable = true;
|
|
||||||
addresses = true;
|
|
||||||
domain = true;
|
|
||||||
hinfo = true;
|
|
||||||
userServices = true;
|
|
||||||
workstation = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
gnome.gnome-keyring.enable = true;
|
|
||||||
mullvad-vpn.enable = false;
|
|
||||||
printing.enable = true;
|
|
||||||
resolved.enable = true;
|
|
||||||
sshd.enable = true;
|
|
||||||
tailscale = {
|
|
||||||
enable = true;
|
|
||||||
package = unstable.tailscale;
|
|
||||||
};
|
|
||||||
udev.extraRules = ''
|
|
||||||
ACTION=="add", ATTR{idVendor}=="041e", ATTR{idProduct}=="3255", RUN+="${pkgs.sbx-h6-rgb}/bin/sbx-h6-ctl -c c010ff 041e:3255"
|
|
||||||
'';
|
|
||||||
xserver = {
|
|
||||||
enable = true;
|
|
||||||
displayManager = {
|
|
||||||
gdm = {
|
|
||||||
enable = true;
|
|
||||||
wayland = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
desktopManager.gnome.enable = true;
|
|
||||||
videoDrivers = [ "amdgpu" ];
|
|
||||||
};
|
|
||||||
zfs = {
|
|
||||||
autoScrub.enable = true;
|
|
||||||
autoSnapshot.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
virtualisation = {
|
|
||||||
docker.enable = true;
|
|
||||||
libvirtd.enable = true;
|
|
||||||
podman.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,124 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
let
|
|
||||||
checkBrew = "command -v brew > /dev/null";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
nixpkgs = {
|
|
||||||
config = {
|
|
||||||
allowUnfree = true;
|
|
||||||
permittedInsecurePackages = [ ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
hostName = "zelus";
|
|
||||||
};
|
|
||||||
|
|
||||||
services.nix-daemon.enable = true;
|
|
||||||
|
|
||||||
nix.extraOptions = "experimental-features = nix-command flakes";
|
|
||||||
nix.package = pkgs.nixVersions.stable;
|
|
||||||
|
|
||||||
programs.zsh = {
|
|
||||||
enable = true;
|
|
||||||
# https://github.com/nix-community/home-manager/issues/108#issuecomment-340397178
|
|
||||||
enableCompletion = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
system.stateVersion = 4;
|
|
||||||
users.users."dave.gallant".home = "/Users/dave.gallant";
|
|
||||||
|
|
||||||
environment = {
|
|
||||||
extraInit = ''
|
|
||||||
${checkBrew} || >&2 echo "brew is not installed (install it via https://brew.sh)"
|
|
||||||
'';
|
|
||||||
variables = {
|
|
||||||
LANG = "en_US.UTF-8";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
system.defaults = {
|
|
||||||
|
|
||||||
trackpad = {
|
|
||||||
ActuationStrength = 0;
|
|
||||||
Clicking = true;
|
|
||||||
FirstClickThreshold = 1;
|
|
||||||
SecondClickThreshold = 1;
|
|
||||||
TrackpadRightClick = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
dock = {
|
|
||||||
autohide = true;
|
|
||||||
autohide-delay = 0.0;
|
|
||||||
autohide-time-modifier = 1.0;
|
|
||||||
tilesize = 50;
|
|
||||||
static-only = false;
|
|
||||||
showhidden = false;
|
|
||||||
show-recents = false;
|
|
||||||
show-process-indicators = true;
|
|
||||||
orientation = "bottom";
|
|
||||||
mru-spaces = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
NSGlobalDomain = {
|
|
||||||
"com.apple.sound.beep.feedback" = 0;
|
|
||||||
"com.apple.sound.beep.volume" = 0.0;
|
|
||||||
ApplePressAndHoldEnabled = false;
|
|
||||||
InitialKeyRepeat = 10;
|
|
||||||
KeyRepeat = 2;
|
|
||||||
AppleShowAllExtensions = true;
|
|
||||||
AppleShowScrollBars = "Automatic";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
homebrew = {
|
|
||||||
enable = true;
|
|
||||||
onActivation.autoUpdate = false;
|
|
||||||
onActivation.upgrade = false;
|
|
||||||
global = {
|
|
||||||
brewfile = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
brews = [
|
|
||||||
"azure-cli"
|
|
||||||
"coreutils"
|
|
||||||
"gnu-sed"
|
|
||||||
"gnu-tar"
|
|
||||||
"netdata"
|
|
||||||
"node"
|
|
||||||
"podman"
|
|
||||||
"podman-compose"
|
|
||||||
];
|
|
||||||
|
|
||||||
casks = [
|
|
||||||
"dbeaver-community"
|
|
||||||
"font-fira-code-nerd-font"
|
|
||||||
"font-hack-nerd-font"
|
|
||||||
"fork"
|
|
||||||
"iterm2"
|
|
||||||
"karabiner-elements"
|
|
||||||
"librewolf"
|
|
||||||
"logseq"
|
|
||||||
"lulu"
|
|
||||||
"mitmproxy"
|
|
||||||
"notunes"
|
|
||||||
"postman"
|
|
||||||
"raycast"
|
|
||||||
"rectangle"
|
|
||||||
"stats"
|
|
||||||
];
|
|
||||||
|
|
||||||
taps = [
|
|
||||||
"homebrew/bundle"
|
|
||||||
"homebrew/cask-fonts"
|
|
||||||
"homebrew/cask-versions"
|
|
||||||
"homebrew/services"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
stylix = {
|
|
||||||
# enable = true;
|
|
||||||
image = "/Library/tokyo-night.jpg";
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
17
overlays/cd-fzf/cd-fzf
Executable file
17
overlays/cd-fzf/cd-fzf
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
readarray -t directories < ~/.config/cd-fzf
|
||||||
|
|
||||||
|
if [[ $# -eq 1 ]]; then
|
||||||
|
selected=$1
|
||||||
|
else
|
||||||
|
selected=$(find "${directories[@]}" -mindepth 1 -maxdepth 1 -type d | fzf --exact)
|
||||||
|
fi
|
||||||
|
if [[ -z $selected ]]; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd "$selected"
|
||||||
|
$SHELL
|
19
overlays/cd-fzf/default.nix
Normal file
19
overlays/cd-fzf/default.nix
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
stdenv,
|
||||||
|
lib,
|
||||||
|
fetchurl,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "cd-fzf";
|
||||||
|
version = "0.0.1";
|
||||||
|
executable = ./cd-fzf;
|
||||||
|
phases = [ "unpackPhase" ]; # Remove all other phases
|
||||||
|
unpackPhase = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp ${executable} $out/bin/cd-fzf
|
||||||
|
'';
|
||||||
|
meta = with lib; {
|
||||||
|
description = "\n Fuzzy find change directory";
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
@@ -1,4 +1,3 @@
|
|||||||
final: prev: {
|
final: prev: {
|
||||||
sbx-h6-rgb = prev.callPackage ./sbx-h6-rgb { };
|
cd-fzf = prev.callPackage ./cd-fzf { };
|
||||||
vpngate = prev.callPackage ./vpngate { };
|
|
||||||
}
|
}
|
||||||
|
@@ -1,35 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
fetchFromGitHub,
|
|
||||||
pkgs,
|
|
||||||
stdenv,
|
|
||||||
}:
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
pname = "sbx-h6-rgb";
|
|
||||||
version = "95b4ef9788ef94e557a4d1e815079d5ea8a70943";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "Oscillope";
|
|
||||||
repo = "sbx-h6-rgb";
|
|
||||||
rev = version;
|
|
||||||
sha256 = "sha256-tKKNdzijloBiGBHf5C604824B/BbxBxvCL/ms4orT9M=";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = with pkgs; [ hidapi ];
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
make
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
install -D sbx-h6-ctl $out/bin/sbx-h6-ctl
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
description = "Creative SoundBlasterX RGB LED setter.";
|
|
||||||
license = licenses.gpl3;
|
|
||||||
maintainers = with maintainers; [ davegallant ];
|
|
||||||
platforms = platforms.linux;
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
@@ -1,28 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
fetchFromGitHub,
|
|
||||||
buildGoModule,
|
|
||||||
}:
|
|
||||||
buildGoModule rec {
|
|
||||||
pname = "vpngate";
|
|
||||||
version = "v0.3.0";
|
|
||||||
|
|
||||||
vendorHash = "sha256-4JeVXLoiXdZoQM76cHOt5i31ZZGTId0rt8RkMH62/EM=";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "davegallant";
|
|
||||||
repo = "vpngate";
|
|
||||||
rev = version;
|
|
||||||
sha256 = "sha256-P3eQvdUfjpq4a0Q2Hxby4zZ2uTSPjG1oXHxt8cW6fTQ=";
|
|
||||||
};
|
|
||||||
|
|
||||||
doCheck = false;
|
|
||||||
|
|
||||||
meta = with lib; {
|
|
||||||
homepage = "https://www.vpngate.net";
|
|
||||||
description = "a client for vpngate.net";
|
|
||||||
license = licenses.gpl3;
|
|
||||||
maintainers = with maintainers; [ davegallant ];
|
|
||||||
platforms = platforms.linux ++ platforms.darwin;
|
|
||||||
};
|
|
||||||
}
|
|
@@ -1,43 +0,0 @@
|
|||||||
{ config, pkgs, ... }:
|
|
||||||
let
|
|
||||||
netdata = pkgs.netdata;
|
|
||||||
netdataConf = ./netdata.conf;
|
|
||||||
netdataDir = "/var/lib/netdata";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
users.extraGroups.netdata.gid = 220008;
|
|
||||||
users.users.netdata.group = "netdata";
|
|
||||||
users.extraUsers.netdata = {
|
|
||||||
description = "Netdata server user";
|
|
||||||
isSystemUser = true;
|
|
||||||
name = "netdata";
|
|
||||||
uid = 200008;
|
|
||||||
};
|
|
||||||
systemd.services.netdata = {
|
|
||||||
wantedBy = [ "multi-user.target" ];
|
|
||||||
after = [ "network.target" ];
|
|
||||||
preStart = ''
|
|
||||||
mkdir -p ${netdataDir}/config
|
|
||||||
mkdir -p ${netdataDir}/logs
|
|
||||||
cp -r ${netdata}/share/netdata/web ${netdataDir}/web
|
|
||||||
chmod -R 700 ${netdataDir}
|
|
||||||
chown -R netdata:netdata ${netdataDir}
|
|
||||||
'';
|
|
||||||
serviceConfig = {
|
|
||||||
Type = "forking";
|
|
||||||
ExecStart = "${netdata}/bin/netdata -c ${netdataConf} -u netdata";
|
|
||||||
Restart = "on-failure";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.nginx.httpConfig = ''
|
|
||||||
server {
|
|
||||||
server_name netdata.thume.net;
|
|
||||||
location / {
|
|
||||||
proxy_set_header Host $http_host;
|
|
||||||
proxy_redirect off;
|
|
||||||
proxy_pass http://127.0.0.1:19999;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
}
|
|
@@ -1,21 +0,0 @@
|
|||||||
[global]
|
|
||||||
run as user = netdata
|
|
||||||
|
|
||||||
config directory = /var/lib/netdata/config
|
|
||||||
web files directory = /var/lib/netdata/web
|
|
||||||
cache directory = /var/lib/netdata
|
|
||||||
log directory = /var/lib/netdata/logs
|
|
||||||
|
|
||||||
# the default database size - 1 hour
|
|
||||||
history = 3600
|
|
||||||
|
|
||||||
# some defaults to run netdata with least priority
|
|
||||||
process scheduling policy = idle
|
|
||||||
OOM score = 1000
|
|
||||||
|
|
||||||
[web]
|
|
||||||
# web files owner = root
|
|
||||||
web files group = netdata
|
|
||||||
|
|
||||||
# by default do not expose the netdata port
|
|
||||||
bind to = localhost
|
|
13
shell.nix
13
shell.nix
@@ -1,13 +0,0 @@
|
|||||||
let
|
|
||||||
nixpkgs = fetchTarball "https://github.com/NixOS/nixpkgs/tarball/nixos-24.11";
|
|
||||||
pkgs = import nixpkgs {
|
|
||||||
config = { };
|
|
||||||
overlays = [ ];
|
|
||||||
};
|
|
||||||
|
|
||||||
in
|
|
||||||
pkgs.mkShell {
|
|
||||||
shellHook = ''
|
|
||||||
${(import ./default.nix).pre-commit-check.shellHook}
|
|
||||||
'';
|
|
||||||
}
|
|
@@ -6,6 +6,12 @@ git pull
|
|||||||
update_msg=$(nix flake update 2>&1 | grep -v 'warning:')
|
update_msg=$(nix flake update 2>&1 | grep -v 'warning:')
|
||||||
just rebuild
|
just rebuild
|
||||||
git add .
|
git add .
|
||||||
|
|
||||||
|
read -p "Commit and push changes? [yN]? " -r
|
||||||
|
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
git commit -S -m "nix flake update: $(TZ=UTC date '+%Y-%m-%d %H:%M:%S %Z')
|
git commit -S -m "nix flake update: $(TZ=UTC date '+%Y-%m-%d %H:%M:%S %Z')
|
||||||
|
|
||||||
$update_msg"
|
$update_msg"
|
Reference in New Issue
Block a user