Compare commits

...

98 Commits

Author SHA1 Message Date
k
6b669988f0 clean up
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 56s
2026-01-28 01:02:43 -05:00
k
ae74da869a update flake 2026-01-28 01:02:43 -05:00
k
f8eccabdb3 Updated formating 2026-01-28 01:02:43 -05:00
k
07fd3a6afc Changed colors 2026-01-28 01:02:43 -05:00
k
64e97bd330 Changed to niri 2026-01-28 01:02:43 -05:00
k
52569da057 Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 1m11s
2025-12-20 02:34:03 +00:00
k
b7ff106a25 disabled homeassistent 2025-12-20 02:33:57 +00:00
k
ecd325b830 removed unimportant packages
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 1m1s
2025-12-15 21:05:54 +00:00
k
52e7d921d6 Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs 2025-12-13 19:05:33 +00:00
k
567f8ca405 add docker 2025-12-13 19:05:29 +00:00
k
4f5a315521 added some emacs bindings
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 1m2s
2025-12-10 00:27:49 -05:00
k
a6496a874d switched to hyprland 2025-12-09 23:09:31 -05:00
k
7fea267494 changed style 2025-12-09 23:09:03 -05:00
k
d668ea2616 update to 25.11 2025-12-09 23:08:03 -05:00
k
0fc551c8c5 update
All checks were successful
Verify Nix Flake / verify_build (push) Successful in 1m42s
2025-12-03 12:40:13 -05:00
k
f17f1de522 spesify more emacs 2025-12-03 12:40:13 -05:00
k
c78505aa09 enable virt 2025-12-03 12:40:13 -05:00
k
3cd724436b useing gnome 2025-12-03 12:40:13 -05:00
k
c183a0a551 Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs
Some checks failed
Verify Nix Flake / verify_build (push) Has been cancelled
2025-12-03 17:38:52 +00:00
k
c0a1f5495f current config 2025-12-03 17:38:31 +00:00
k
5996a33269 Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs
All checks were successful
Verify Nix Flake / verify_build (push) Successful in 1m53s
2025-10-15 05:08:46 +00:00
k
51045c91d6 disabled ui 2025-10-15 05:08:18 +00:00
k
0a2fb9609c Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs
All checks were successful
Verify Nix Flake / verify_build (push) Successful in 1m23s
2025-07-30 17:55:42 +00:00
k
b121b0e556 added android tv to home mgr 2025-07-30 17:53:00 +00:00
k
48ed783db5 updated flake
All checks were successful
Verify Nix Flake / verify_build (push) Successful in 1m12s
2025-07-30 17:51:01 +00:00
k
dd4a2adcfd fixed dektop 2025-07-30 17:50:50 +00:00
k
6c6af12ef6 clean up
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 50s
2025-07-13 10:35:02 -04:00
k
fd2e474229 added kodi 2025-07-13 10:33:52 -04:00
k
70cc2587aa added cockpit 2025-07-13 10:32:20 -04:00
k
80c6d1bfe2 tweeked ollama 2025-07-13 10:29:55 -04:00
k
a9a6518dee update nix flake
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 57s
2025-07-12 17:05:33 -04:00
k
1cafcc70b5 testing chrome insted of firefox 2025-07-12 17:02:24 -04:00
k
e4225a8156 cleanup 2025-07-12 16:54:59 -04:00
k
2b9c7d57ba switch to plasma 2025-07-12 16:47:24 -04:00
k
fc3f547192 misc changes
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 55s
2025-06-22 02:58:14 -04:00
k
a9beac4f61 switch to gnome 2025-06-22 02:57:43 -04:00
k
aa461a8344 tile changes 2025-06-22 02:52:54 -04:00
k
7592ee3f2f back to zsh 2025-06-22 02:49:40 -04:00
k
7ac853ab56 got off unstable
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 1m1s
2025-06-08 19:10:33 -04:00
k
142c8309fd add missing programs 2025-06-08 19:09:40 -04:00
k
25a8b04f18 sub broken 2025-06-08 19:09:05 -04:00
k
48f9a7ad02 add libvirt 2025-06-08 19:08:49 -04:00
k
5199d55c29 move to gnome
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 43s
2025-05-23 15:33:01 -04:00
k
a915a3a779 update
All checks were successful
Verify Nix Flake / verify_build (push) Successful in 1m11s
2025-05-18 15:12:43 -04:00
k
5dfff01c9f update desktop
All checks were successful
Verify Nix Flake / verify_build (push) Successful in 1m8s
2025-05-12 18:37:24 -04:00
k
dd30c16492 update
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 49s
2025-05-12 16:47:17 -04:00
k
a20313d46a Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 1m2s
2025-04-06 22:20:38 +00:00
k
c345431928 kvmgt 2025-04-06 22:18:59 +00:00
k
789c83686f update to unstable
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 43s
2025-03-26 15:06:26 -04:00
k
293d5a7f6e update 2025-03-16 01:22:55 -04:00
k
ca3c259fd4 fixed tablet
All checks were successful
Verify Nix Flake / verify_build (push) Successful in 1m24s
2025-03-01 18:35:20 -05:00
k
8e4526a986 working action
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 1m19s
2025-03-01 17:55:54 -05:00
k
4248dd25af updated nix action to v30
Some checks failed
Verify Nix Flake / verify_build (push) Failing after 0s
2025-03-01 17:20:34 -05:00
k
5b358a7bc1 merge 2025-03-01 22:08:22 +00:00
k
75e661a2c7 changed action
Some checks failed
Verify Nix Flake Build / verify_build (push) Failing after 58s
2025-03-01 16:56:35 -05:00
k
35313911ab changed name 2025-03-01 16:44:01 -05:00
k
6a600e45ac testing gitea actions 2025-03-01 16:41:52 -05:00
k
9db98508fb added bolt and removed activitywatch 2025-03-01 16:41:52 -05:00
k
437e3d2abe updates 2025-03-01 16:41:52 -05:00
k
ff16108fb9 canged to nushell 2025-03-01 00:58:47 +00:00
k
e29e0fefd6 formating 2025-02-10 14:29:34 +00:00
k
cedac03816 added libvirtd 2025-02-10 14:29:17 +00:00
k
a010c256c7 merge 2025-01-29 15:48:16 -05:00
k
f2f8b25d7e desktop init 2025-01-29 15:47:04 -05:00
k
08396bb479 updated flake.lock 2025-01-26 17:03:21 +00:00
k
5af08eb27f testing nushell on laptop 2025-01-25 11:32:51 -05:00
k
a94f2615ef fixed formating isue 2025-01-23 12:40:03 -05:00
k
a754632a59 Added missing programs 2025-01-23 12:39:45 -05:00
k
eba2ffcdcd nixos wiki jellyfin hwaccel 2025-01-14 19:05:44 -05:00
k
f32badf55d create desktop gameing config 2025-01-14 19:03:47 -05:00
k
d016b8fdde replaced tlp with auto-cpufreq 2025-01-13 00:18:31 -05:00
k
562839d47d Cleanup and minor changes 2025-01-11 23:57:50 -05:00
k
1197820789 home manager changes 2025-01-10 19:02:15 -05:00
k
370e2e29ff added missing hyprlock 2025-01-10 18:21:03 -05:00
k
d379c6c406 fix typo 2025-01-10 18:21:03 -05:00
k
ca7c336ff9 Change sleep settings 2025-01-10 18:21:03 -05:00
k
bba9c8494e move to hyprland 2025-01-10 18:21:03 -05:00
k
799398de33 Set to stable release 2025-01-10 18:21:03 -05:00
k
506dfa7006 added dns adblock 2025-01-08 03:52:18 +00:00
k
783a477b62 formating 2025-01-08 02:46:27 +00:00
k
2743b4f110 changed bluetooth settings 2025-01-07 21:41:50 -05:00
k
9bcb55c3c0 changed emacs 2025-01-07 21:41:10 -05:00
k
25df94858b switched to kde and cleanup 2025-01-05 20:58:30 -05:00
k
f3e47f9bfe updated 2025-01-05 19:08:20 -05:00
k
52e77fd1d2 Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs 2025-01-02 02:09:29 +00:00
k
29f4ab693d added docker user 2025-01-02 02:09:07 +00:00
k
cf0d1d2503 added minecraft ports 2025-01-02 02:08:47 +00:00
k
de0be9d20a changed font 2025-01-01 21:05:25 -05:00
k
3995c29b03 changed formater 2024-12-23 22:08:45 -05:00
k
52fbee6322 updated 2024-12-14 21:03:38 -05:00
k
979583914f added ollama to laptop 2024-12-14 20:58:16 -05:00
k
00af3ac5ec added oneapi ollama 2024-12-14 02:09:52 +00:00
k
cf30b5d7be started binary cache 2024-12-12 16:48:48 +00:00
k
bf46656fcd Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs 2024-12-08 20:55:38 +00:00
k
850f6a7905 Merge branch 'master' of https://git.dhilton.xyz/k/nixos_configs 2024-11-20 20:39:10 +00:00
k
4ade86b47f added ollama 2024-11-20 20:38:40 +00:00
k
0f13b27dc7 added bluetooth 2024-11-20 20:38:24 +00:00
k
95d773d2b0 added akkoma 2024-11-07 01:53:57 +00:00
25 changed files with 1009 additions and 405 deletions

View File

@@ -0,0 +1,11 @@
name: Verify Nix Flake
run-name: ${{ gitea.actor }} is nix-check
on: [push]
jobs:
verify_build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v30
- run: nix flake check

245
flake.lock generated
View File

@@ -5,11 +5,11 @@
"fromYaml": "fromYaml" "fromYaml": "fromYaml"
}, },
"locked": { "locked": {
"lastModified": 1732200724, "lastModified": 1755819240,
"narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=", "narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
"owner": "SenchoPens", "owner": "SenchoPens",
"repo": "base16.nix", "repo": "base16.nix",
"rev": "153d52373b0fb2d343592871009a286ec8837aec", "rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -21,27 +21,28 @@
"base16-fish": { "base16-fish": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1622559957, "lastModified": 1765809053,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=", "narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
"owner": "tomyun", "owner": "tomyun",
"repo": "base16-fish", "repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe", "rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "tomyun", "owner": "tomyun",
"repo": "base16-fish", "repo": "base16-fish",
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
"type": "github" "type": "github"
} }
}, },
"base16-helix": { "base16-helix": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1725860795, "lastModified": 1760703920,
"narHash": "sha256-Z2o8VBPW3I+KKTSfe25kskz0EUj7MpUh8u355Z1nVsU=", "narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "base16-helix", "repo": "base16-helix",
"rev": "7f795bf75d38e0eea9fed287264067ca187b88a9", "rev": "d646af9b7d14bff08824538164af99d0c521b185",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -53,53 +54,54 @@
"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"
} }
}, },
"flake-compat": { "firefox-gnome-theme": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1764873433,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-1XPewtGMi+9wN9Ispoluxunw/RwozuTRVuuQOmxzt+A=",
"owner": "edolstra", "owner": "rafaelmardojai",
"repo": "flake-compat", "repo": "firefox-gnome-theme",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "f7ffd917ac0d253dbd6a3bf3da06888f57c69f92",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "edolstra", "owner": "rafaelmardojai",
"repo": "flake-compat", "repo": "firefox-gnome-theme",
"type": "github" "type": "github"
} }
}, },
"flake-utils": { "flake-parts": {
"inputs": { "inputs": {
"systems": [ "nixpkgs-lib": [
"stylix", "stylix",
"systems" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1731533236, "lastModified": 1767609335,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=",
"owner": "numtide", "owner": "hercules-ci",
"repo": "flake-utils", "repo": "flake-parts",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "rev": "250481aafeb741edfe23d29195671c19b36b6dca",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "numtide", "owner": "hercules-ci",
"repo": "flake-utils", "repo": "flake-parts",
"type": "github" "type": "github"
} }
}, },
@@ -122,72 +124,52 @@
"gnome-shell": { "gnome-shell": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1732369855, "host": "gitlab.gnome.org",
"narHash": "sha256-JhUWbcYPjHO3Xs3x9/Z9RuqXbcp5yhPluGjwsdE2GMg=", "lastModified": 1767737596,
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=",
"owner": "GNOME", "owner": "GNOME",
"repo": "gnome-shell", "repo": "gnome-shell",
"rev": "dadd58f630eeea41d645ee225a63f719390829dc", "rev": "ef02db02bf0ff342734d525b5767814770d85b49",
"type": "github" "type": "gitlab"
}, },
"original": { "original": {
"host": "gitlab.gnome.org",
"owner": "GNOME", "owner": "GNOME",
"ref": "47.2", "ref": "gnome-49",
"repo": "gnome-shell", "repo": "gnome-shell",
"type": "github" "type": "gitlab"
} }
}, },
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": "nixpkgs"
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1733484277, "lastModified": 1768949235,
"narHash": "sha256-i5ay20XsvpW91N4URET/nOc0VQWOAd4c4vbqYtcH8Rc=", "narHash": "sha256-TtjKgXyg1lMfh374w5uxutd6Vx2P/hU81aEhTxrO2cg=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "d00c6f6d0ad16d598bf7e2956f52c1d9d5de3c3a", "rev": "75ed713570ca17427119e7e204ab3590cc3bf2a5",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733085484,
"narHash": "sha256-dVmNuUajnU18oHzBQWZm1BQtANCHaqNuxTHZQ+GN0r8=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "c1fee8d4a60b89cae12b288ba9dbc608ff298163",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.11",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1733481457, "lastModified": 1769302137,
"narHash": "sha256-IS3bxa4N1VMSh3/P6vhEAHQZecQ3oAlKCDvzCQSO5Is=", "narHash": "sha256-QEDtctEkOsbx8nlFh4yqPEOtr4tif6KTqWwJ37IM2ds=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "e563803af3526852b6b1d77107a81908c66a9fcf", "rev": "a351494b0e35fd7c0b7a1aae82f0afddf4907aa8",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "nixos",
"ref": "master", "ref": "master",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"type": "github" "type": "github"
@@ -195,41 +177,82 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1733392399, "lastModified": 1767799921,
"narHash": "sha256-kEsTJTUQfQFIJOcLYFt/RvNxIK653ZkTBIs4DG+cBns=", "narHash": "sha256-r4GVX+FToWVE2My8VVZH4V0pTIpnu2ZE8/Z4uxGEMBE=",
"owner": "nixos", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d0797a04b81caeae77bcff10a9dde78bc17f5661", "rev": "d351d0653aeb7877273920cd3e823994e7579b0b",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "NixOS",
"ref": "nixos-unstable", "ref": "nixos-25.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1732238832, "lastModified": 1769318308,
"narHash": "sha256-sQxuJm8rHY20xq6Ah+GwIUkF95tWjGRd1X8xF+Pkk38=", "narHash": "sha256-Mjx6p96Pkefks3+aA+72lu1xVehb6mv2yTUUqmSet6Q=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "1cd347bf3355fce6c64ab37d3967b4a2cb4b878c",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-25.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1767799921,
"narHash": "sha256-r4GVX+FToWVE2My8VVZH4V0pTIpnu2ZE8/Z4uxGEMBE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8edf06bea5bcbee082df1b7369ff973b91618b8d", "rev": "d351d0653aeb7877273920cd3e823994e7579b0b",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixpkgs-unstable", "ref": "nixos-25.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nur": {
"inputs": {
"flake-parts": [
"stylix",
"flake-parts"
],
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1767886815,
"narHash": "sha256-pB2BBv6X9cVGydEV/9Y8+uGCvuYJAlsprs1v1QHjccA=",
"owner": "nix-community",
"repo": "NUR",
"rev": "4ff84374d77ff62e2e13a46c33bfeb73590f9fef",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "NUR",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs_2",
"stylix": "stylix" "stylix": "stylix"
} }
}, },
@@ -239,26 +262,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", "firefox-gnome-theme": "firefox-gnome-theme",
"flake-utils": "flake-utils", "flake-parts": "flake-parts",
"gnome-shell": "gnome-shell", "gnome-shell": "gnome-shell",
"home-manager": "home-manager_2", "nixpkgs": "nixpkgs_3",
"nixpkgs": "nixpkgs_2", "nur": "nur",
"systems": "systems", "systems": "systems",
"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": 1733510476, "lastModified": 1769472288,
"narHash": "sha256-RH/8yIuo+fNLCjQ6e1mnXwmmxymjvfWC9JcbDuIA8TM=", "narHash": "sha256-RdnbroWsujYh1MaMhDpP5QM+bRIGG6smz987v1fli+U=",
"owner": "danth", "owner": "danth",
"repo": "stylix", "repo": "stylix",
"rev": "e309d64fe7f203274a7913e1d2b74307d15ba122", "rev": "c2c4a3ad52c096db1c8dde97d3d21451613f000c",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "danth", "owner": "danth",
"ref": "release-25.11",
"repo": "stylix", "repo": "stylix",
"type": "github" "type": "github"
} }
@@ -298,28 +324,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": 1767817087,
"narHash": "sha256-eGE8OYoK6HzhJt/7bOiNV2cx01IdIrHL7gXgjkHRdNo=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "bd99656235aab343e3d597bf196df9bc67429507",
"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": 1767489635,
"narHash": "sha256-1ohEFMC23elnl39kxWnjzH1l2DFWWx4DhFNNYDTYt54=", "narHash": "sha256-e6nnFnWXKBCJjCv4QG4bbcouJ6y3yeT70V9MofL32lU=",
"owner": "tinted-theming", "owner": "tinted-theming",
"repo": "tinted-tmux", "repo": "tinted-tmux",
"rev": "f0e7f7974a6441033eb0a172a0342e96722b4f14", "rev": "3c32729ccae99be44fe8a125d20be06f8d7d8184",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -327,6 +368,22 @@
"repo": "tinted-tmux", "repo": "tinted-tmux",
"type": "github" "type": "github"
} }
},
"tinted-zed": {
"flake": false,
"locked": {
"lastModified": 1767488740,
"narHash": "sha256-wVOj0qyil8m+ouSsVZcNjl5ZR+1GdOOAooAatQXHbuU=",
"owner": "tinted-theming",
"repo": "base16-zed",
"rev": "11abb0b282ad3786a2aae088d3a01c60916f2e40",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-zed",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View File

@@ -2,24 +2,25 @@
description = "Nixos config flake"; description = "Nixos config flake";
inputs = { inputs = {
nixos-hardware.url = "github:NixOS/nixos-hardware/master"; stylix.url = "github:danth/stylix/release-25.11";
stylix.url = "github:danth/stylix"; nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager.url = "github:nix-community/home-manager/release-25.11";
nixos-hardware.url = "github:nixos/nixos-hardware/master";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = { self, nixpkgs, nixos-hardware, ... }@inputs: outputs = {
let self,
nixpkgs,
nixos-hardware,
...
} @ inputs: let
system = "x86_64-linux"; system = "x86_64-linux";
pkg = nixpkgs.legacyPackages.${system}; pkg = nixpkgs.legacyPackages.${system};
in { in {
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.alejandra;
nixosConfigurations = { nixosConfigurations = {
laptop = nixpkgs.lib.nixosSystem { laptop = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; }; specialArgs = {inherit inputs;};
modules = [ modules = [
./hosts/laptop/configuration.nix ./hosts/laptop/configuration.nix
inputs.home-manager.nixosModules.default inputs.home-manager.nixosModules.default
@@ -28,8 +29,17 @@
]; ];
}; };
desktop = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/desktop/configuration.nix
inputs.home-manager.nixosModules.default
inputs.stylix.nixosModules.stylix
];
};
server = nixpkgs.lib.nixosSystem { server = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; }; specialArgs = {inherit inputs;};
modules = [ modules = [
./hosts/server/configuration.nix ./hosts/server/configuration.nix
inputs.home-manager.nixosModules.default inputs.home-manager.nixosModules.default
@@ -38,14 +48,13 @@
}; };
tablet = nixpkgs.lib.nixosSystem { tablet = nixpkgs.lib.nixosSystem {
specialArgs = { inherit inputs; }; specialArgs = {inherit inputs;};
modules = [ modules = [
./hosts/tablet/configuration.nix ./hosts/tablet/configuration.nix
inputs.home-manager.nixosModules.default inputs.home-manager.nixosModules.default
nixos-hardware.nixosModules.microsoft-surface-pro-intel nixos-hardware.nixosModules.microsoft-surface-pro-intel
]; ];
}; };
}; };
}; };
} }

View File

@@ -0,0 +1,139 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{
config,
pkgs,
inputs,
...
}: {
imports = [./hardware-configuration.nix];
hardware.steam-hardware.enable = true;
nixpkgs.config.allowUnfree = true;
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
hardware.amdgpu.opencl.enable = true;
boot.kernelParams = [ "amdgpu.ppfeaturemask=0xfff7ffff" "amdgpu.gpu_recovery=1" ];
services.openssh = {enable = true;};
virtualisation.docker.enable = true;
virtualisation.docker.storageDriver = "btrfs";
networking = {
hostName = "desktop";
networkmanager.enable = true;
firewall.enable = false;
};
nix = {
gc.automatic = true;
settings = {
experimental-features = ["nix-command" "flakes"];
};
};
services = {
pipewire = {
enable = false;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
};
wivrn = {
enable = false;
defaultRuntime = true;
autoStart = true;
};
xserver = {
enable = false;
displayManager.gdm.enable = false;
desktopManager.gnome.enable = false;
};
};
stylix = {
enable = false;
autoEnable = true;
polarity = "light";
image = ../laptop/wallpaper.png;
base16Scheme = "${pkgs.base16-schemes}/share/themes/precious-light-warm.yaml";
opacity = {
terminal = 0.85;
popups = 0.75;
desktop = 0.75;
};
cursor = {
package = pkgs.adwaita-icon-theme;
name = "Adwaita";
size = 28;
};
fonts = {
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka NF";
};
sansSerif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka NF";
};
monospace = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka NFM";
};
};
};
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
};
#hardware = {
# graphics.enable32Bit = true;
#};
programs = {
zsh.enable = true;
steam.enable = false;
gamescope.enable = false;
envision.enable = false;
corectrl.enable = false;
};
users.users.k = {
isNormalUser = true;
description = "k";
extraGroups = ["networkmanager" "wheel" "docker"];
packages = with pkgs; [zsh];
shell = pkgs.zsh;
};
home-manager = {
backupFileExtension = "bk";
users = {"k" = import ./home.nix;};
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.11"; # Did you read the comment?
}

View File

@@ -0,0 +1,37 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-label/nixos";
fsType = "btrfs";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/BB87-CC45";
fsType = "vfat";
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp8s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

47
hosts/desktop/home.nix Normal file
View File

@@ -0,0 +1,47 @@
{
config,
pkgs,
inputs,
...
}: {
imports = [../home/home_common.nix];
nixpkgs.config.allowUnfree = true;
#home = {
# packages = with pkgs; [
# steam
# neovim
# firefox
# wivrn
# opencomposite
# wlx-overlay-s
# glslang
# gst_all_1.gstreamer
# libdrm
# openxr-loader
# khronos-ocl-icd-loader
# ];
#};
# For WiVRn:
#xdg.configFile."openxr/1/active_runtime.json".source = "${pkgs.wivrn}/share/openxr/1/openxr_wivrn.json";
#xdg.configFile."openvr/openvrpaths.vrpath".text = ''
# {
# "config" :
# [
# "${config.xdg.dataHome}/Steam/config"
# ],
# "external_drivers" : null,
# "jsonid" : "vrpathreg",
# "log" :
# [
# "${config.xdg.dataHome}/Steam/logs"
# ],
# "runtime" :
# [
# "${pkgs.opencomposite}/lib/opencomposite"
# ],
# "version" : 1
# }
#'';
}

View File

@@ -1,6 +1,9 @@
{ config, pkgs, inputs, ... }:
{ {
config,
pkgs,
inputs,
...
}: {
# ... # ...
dconf.settings = { dconf.settings = {
# ... # ...
@@ -22,4 +25,3 @@
gnomeExtensions.search-light gnomeExtensions.search-light
]; ];
} }

View File

@@ -1,11 +1,13 @@
{ config, pkgs, inputs, ... }:
{ {
config,
pkgs,
inputs,
...
}: {
home = { home = {
username = "k"; username = "k";
homeDirectory = "/home/k"; homeDirectory = "/home/k";
stateVersion = "23.11"; stateVersion = "23.11";
enableNixpkgsReleaseCheck = false;
}; };
programs = { programs = {
git = { git = {
@@ -13,7 +15,7 @@
userName = "k"; userName = "k";
userEmail = "markers711@gmail.com"; userEmail = "markers711@gmail.com";
}; };
tmux = { enable = true; }; tmux.enable = true;
starship.enable = true; starship.enable = true;
zsh = { zsh = {
enable = true; enable = true;
@@ -21,7 +23,8 @@
enableCompletion = true; enableCompletion = true;
syntaxHighlighting.enable = true; syntaxHighlighting.enable = true;
autocd = true; autocd = true;
plugins = [{ plugins = [
{
name = "zsh-nix-shell"; name = "zsh-nix-shell";
file = "nix-shell.plugin.zsh"; file = "nix-shell.plugin.zsh";
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
@@ -30,7 +33,8 @@
rev = "v0.8.0"; rev = "v0.8.0";
sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7"; sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
}; };
}]; }
];
}; };
}; };
} }

View File

@@ -1,15 +1,60 @@
{ config, pkgs, inputs, ... }:
{ {
imports = [ ./waybar.nix ./tile.nix ]; config,
pkgs,
inputs,
...
}: {
imports = [./waybar.nix ./tile.nix];
home.packages = with pkgs; [
#iio-hyprland
#jq #iio-hyprland needs this
];
programs = {
hyprlock.enable = true;
};
services = {
hyprpaper.enable = true;
batsignal.enable = true;
hypridle = {
enable = true;
package = pkgs.hypridle;
settings = {
general = {
after_sleep_cmd = "hyprctl dispatch dpms on";
ignore_dbus_inhibit = false;
lock_cmd = "hyprlock";
};
listener = [
{
timeout = 900;
on-timeout = "hyprlock";
}
{
timeout = 1200;
on-timeout = "hyprctl dispatch dpms off";
on-resume = "hyprctl dispatch dpms on";
}
];
};
};
};
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
systemd.variables = [ "--all" ]; systemd.variables = ["--all"];
xwayland.enable = true; xwayland.enable = true;
settings = { settings = {
exec-once = [ "${pkgs.hyprpaper}/bin/hyprpaper" "${pkgs.iio-hyprland}/bin/iio-hyprland" ]; exec-once = [
#"${pkgs.iio-hyprland}/bin/iio-hyprland"
"${pkgs.batsignal}/bin/batsignal -n BAT0 -b"
"${pkgs.waybar}/bin/waybar"
"${pkgs.hyprpaper}/bin/hyprpaper"
];
monitor = "eDP-1,preferred,auto,1"; monitor = "eDP-1,preferred,auto,1";
general = { general = {
"$mainMod" = "SUPER"; "$mainMod" = "SUPER";
@@ -28,10 +73,9 @@
size = 2; size = 2;
passes = 2; passes = 2;
brightness = 1; brightness = 1;
noise = .3; noise = 0.3;
new_optimizations = true; new_optimizations = true;
}; };
drop_shadow = true;
}; };
misc = { misc = {
@@ -48,27 +92,29 @@
vrr = 1; vrr = 1;
}; };
input = { input = {touchpad = {natural_scroll = true;};};
touchpad = {
natural_scroll = true;
};
};
bind = [ bind = [
# keybindings # keybindings
"$mainMod, Return, exec, $terminal" "$mainMod, Return, exec, $terminal"
"$mainMod, D, exec, $menu" "$mainMod, D, exec, $menu"
"$mainMod Shift, C, killactive," "$mainMod Shift, C, killactive,"
"$mainMod, Space, exec, toggle_float" "$mainMod, Space, togglefloating"
"$mainMod, Escape, exec, ${pkgs.hyprlock}/bin/hyprlock" "$mainMod, Escape, exec, ${pkgs.hyprlock}/bin/hyprlock"
#emacs
"$mainMod, E, exec, ${pkgs.emacs-pgtk}/bin/emacsclient -c"
"$mainMod, C, exec, ${pkgs.emacs-pgtk}/bin/emacsclient -c -e\ \"(org-roam-capture)\""
"$mainMod, B, exec, ${pkgs.emacs-pgtk}/bin/emacsclient -c -e\ \"(call-interactively #'bookmark-jump)\""
"$mainMod, P, exec, ${pkgs.emacs-pgtk}/bin/emacsclient -c -e\ \"(project-dired)\""
"$mainMod, M, exec, ${pkgs.emacs-pgtk}/bin/emacsclient -c -e \"(mingus)\""
# switch focus # switch focus
"$mainMod, left, movefocus, l" "$mainMod, left, movefocus, l"
"$mainMod, right, movefocus, r" "$mainMod, right, movefocus, r"
"$mainMod, up, movefocus, u" "$mainMod, up, movefocus, u"
"$mainMod, down, movefocus, d" "$mainMod, down, movefocus, d"
# switch workspace # switch workspace
"$mainMod, 1, workspace, 1" "$mainMod, 1, workspace, 1"
"$mainMod, 2, workspace, 2" "$mainMod, 2, workspace, 2"
@@ -82,7 +128,7 @@
"$mainMod, 0, workspace, 10" "$mainMod, 0, workspace, 10"
# same as above, but switch to the workspace # same as above, but switch to the workspace
"$mainMod SHIFT, 1, movetoworkspacesilent, 1" # movetoworkspacesilent "$mainMod SHIFT, 1, movetoworkspacesilent, 1"
"$mainMod SHIFT, 2, movetoworkspacesilent, 2" "$mainMod SHIFT, 2, movetoworkspacesilent, 2"
"$mainMod SHIFT, 3, movetoworkspacesilent, 3" "$mainMod SHIFT, 3, movetoworkspacesilent, 3"
"$mainMod SHIFT, 4, movetoworkspacesilent, 4" "$mainMod SHIFT, 4, movetoworkspacesilent, 4"
@@ -123,11 +169,6 @@
"$mainMod, mouse:272, movewindow" "$mainMod, mouse:272, movewindow"
"$mainMod, mouse:273, resizewindow" "$mainMod, mouse:273, resizewindow"
]; ];
windowrule =
[ "float,mpv" "center,mpv" "pin,wofi" "idleinhibit focus,mpv" ];
windowrulev2 = [ ];
}; };
}; };
@@ -141,4 +182,3 @@
_JAVA_AWT_WM_NONREPARENTING = 1; _JAVA_AWT_WM_NONREPARENTING = 1;
}; };
} }

17
hosts/home/niri.nix Normal file
View File

@@ -0,0 +1,17 @@
{
config,
pkgs,
inputs,
...
}: {
imports = [./waybar.nix ./tile.nix];
home.packages = with pkgs; [
pkgs.swaybg
pkgs.swayidle
pkgs.swaylock
pkgs.niri
pkgs.fuzzel
pkgs.iio-niri
pkgs.squeekboard
];
}

View File

@@ -1,7 +1,10 @@
{ config, pkgs, inputs, ... }:
{ {
imports = [ ./waybar.nix ./tile.nix ]; config,
pkgs,
inputs,
...
}: {
imports = [./waybar.nix ./tile.nix];
wayland.windowManager.sway = { wayland.windowManager.sway = {
enable = true; enable = true;
@@ -29,9 +32,5 @@
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1"; QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
_JAVA_AWT_WM_NONREPARENTING = 1; _JAVA_AWT_WM_NONREPARENTING = 1;
}; };
services = { services = {swayidle = {enable = true;};};
swayidle = { enable = true; };
};
} }

View File

@@ -1,14 +1,28 @@
{ config, pkgs, inputs, ... }:
{ {
config,
pkgs,
inputs,
...
}: {
services = { services = {
mako = { enable = true; }; mako = {
enable = true;
defaultTimeout = 4000;
};
}; };
programs = { programs = {
alacritty = { enable = true; }; alacritty = {enable = true;};
swaylock = {enable = true;}; wofi = {enable = true;};
wofi = { enable = true; }; zathura = {enable = true;};
zathura = { enable = true; }; mpv = {enable = true;};
mpv = { enable = true; }; lf = {enable = true;};
}; };
home.packages = with pkgs; [
brightnessctl
pulsemixer
unzip
zip
swayimg
];
stylix.targets.wofi.enable = true; #this dosnt follow auto enable for some reson
} }

View File

@@ -1,4 +1,8 @@
{ config, pkgs, ... }: { {
config,
pkgs,
...
}: {
programs.waybar = { programs.waybar = {
enable = true; enable = true;
systemd.enable = true; systemd.enable = true;
@@ -6,14 +10,14 @@
mainBar = { mainBar = {
layer = "bottom"; layer = "bottom";
position = "bottom"; position = "bottom";
output = [ "eDP-1" ]; output = ["eDP-1"];
margin-left = 45; margin-left = 45;
margin-right = 45; margin-right = 45;
spacing = 15; spacing = 15;
modules-left = [ "sway/workspaces" "sway/mode" ]; modules-left = ["sway/workspaces" "sway/mode" "hyprland/window"];
modules-center = [ "clock" ]; modules-center = ["clock"];
modules-right = [ "pulseaudio" "network" "battery" ]; modules-right = ["pulseaudio" "network" "battery"];
cpu = { cpu = {
interval = 15; interval = 15;
@@ -38,18 +42,18 @@
phone = " "; phone = " ";
portable = " "; portable = " ";
car = " "; car = " ";
default = [ " " " " ]; default = [" " " "];
}; };
scroll-step = 1; #scroll-step = 1;
on-click = "pavucontrol"; #on-click = "pavucontrol";
}; };
backlight = { backlight = {
tooltip = false; tooltip = false;
format = " {}%"; format = " {}%";
interval = 1; interval = 1;
on-scroll-up = "brightnessctl s 1515"; on-scroll-up = "${pkgs.brightnessctl}/bin/brightnessctl s 5%+";
on-scroll-down = "brightnessctl s 1"; on-scroll-down = "${pkgs.brightnessctl}/bin/brightnessctl s 5%+";
}; };
network = { network = {
@@ -66,7 +70,7 @@
battery = { battery = {
format = "{capacity}% {icon}"; format = "{capacity}% {icon}";
"format-icons" = [ " " " " " " " " " " ]; "format-icons" = [" " " " " " " " " "];
}; };
clock = { clock = {

View File

@@ -1,20 +1,35 @@
{ config, pkgs, inputs, ... }:
{ {
imports = [ ./hardware-configuration.nix ]; config,
pkgs,
inputs,
...
}: {
imports = [./hardware-configuration.nix];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
system.autoUpgrade.enable = true; system.autoUpgrade.enable = true;
time.timeZone = "America/New_York"; time.timeZone = "America/New_York";
security.rtkit.enable = true;
security.polkit.enable = true;
security.pam.services.swaylock = {};
security.pam.services.hyprlock = {};
powerManagement.enable = true; powerManagement.enable = true;
hardware = {
bluetooth = {
enable = true;
powerOnBoot = true;
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
};
};
};
};
nix = { nix = {
settings.experimental-features = [ "nix-command" "flakes" ]; gc.automatic = false;
gc.automatic = true; settings = {
experimental-features = ["nix-command" "flakes"];
#substituters = ["http://nix.dhilton.xyz/" "https://cache.nixos.org/"];
#trusted-public-keys = ["nix.dhilton.xyz:MOW060dF1A0/UXmPZBue9KMxCO13PHYFwx1X9hcdYZ4="];
};
}; };
networking = { networking = {
@@ -23,26 +38,20 @@
firewall.enable = true; firewall.enable = true;
}; };
i18n = { i18n.defaultLocale = "en_US.UTF-8";
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
};
services = { services = {
xserver = { displayManager.ly = {
enable = true; enable = true;
displayManager.gdm.enable = true; x11Support = false;
desktopManager.gnome.enable = true; settings = {
animation = "colormix";
battery_id = "BAT0";
clear_password = true;
colormix_col1 = "0xffffea";
colormix_col2 = "0x006600";
colormix_col3 = "0x8888cc";
};
}; };
pipewire = { pipewire = {
enable = true; enable = true;
@@ -51,6 +60,26 @@
pulse.enable = true; pulse.enable = true;
jack.enable = true; jack.enable = true;
}; };
auto-cpufreq = {
enable = true;
settings = {
battery = {
governor = "powersave";
turbo = "never";
};
charger = {
governor = "balance_performance";
turbo = "auto";
};
};
};
logind = {
lidSwitch = "suspend-then-hibernate";
lidSwitchExternalPower = "suspend";
};
hardware.bolt.enable = true;
blueman.enable = true;
fwupd.enable = true; fwupd.enable = true;
printing.enable = true; printing.enable = true;
fprintd.enable = true; fprintd.enable = true;
@@ -60,104 +89,97 @@
stylix = { stylix = {
enable = true; enable = true;
autoEnable = true; autoEnable = true;
polarity = "dark"; polarity = "light";
image = ./wallpaper.png; image = ./wallpaper.png;
base16Scheme = "${pkgs.base16-schemes}/share/themes/everforest.yaml"; base16Scheme = {
base00 = "#ffffea";
base01 = "#eaffff";
base02 = "#eeee9e";
base03 = "#99994c";
base04 = "#555555";
base05 = "#000000";
base06 = "#000000";
base07 = "#000000";
base08 = "#aa0000";
base09 = "#884400";
base0A = "#99994c";
base0B = "#006600";
base0C = "#8888cc";
base0D = "#000099";
base0E = "#8888cc";
base0F = "#5d3a1a";
};
targets.chromium.enable = false;
targets.gnome.enable = false;
opacity = { opacity = {
terminal = 0.85; terminal = 0.85;
popups = 0.75; popups = 0.75;
desktop = 0.75; desktop = 0.75;
applications = 0.85;
}; };
cursor = { cursor = {
package = pkgs.adwaita-icon-theme; package = pkgs.adwaita-icon-theme;
name = "Adwaita"; name = "Adwaita";
size = 28; size = 28;
}; };
fonts = {
serif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka NF";
};
sansSerif = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka NF";
};
monospace = {
package = pkgs.nerd-fonts.iosevka;
name = "Iosevka NFM";
};
};
}; };
hardware = { hardware = {
sensor.iio.enable = true; sensor.iio.enable = true;
pulseaudio.enable = false;
graphics.enable32Bit = true;
graphics.extraPackages = with pkgs; [
intel-vaapi-driver
intel-compute-runtime
intel-media-sdk
intel-media-driver
intel-ocl
level-zero
vpl-gpu-rt
microcodeIntel
mkl
embree
];
};
virtualisation.podman = {
enable = true;
dockerCompat = true;
}; };
programs = { programs = {
nix-ld.enable = true;
nix-ld.libraries = with pkgs; [ glibc glib ];
zsh.enable = true; zsh.enable = true;
steam.enable = true; niri.enable = true;
steam.gamescopeSession.enable = true; };
gamemode.enable = true;
hyprland.enable = true; virtualisation = {
docker = {enable = true;};
}; };
users.users.k = { users.users.k = {
isNormalUser = true; isNormalUser = true;
description = "k"; description = "k";
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = ["networkmanager" "wheel" "cdrom" "libvirtd"];
packages = with pkgs; [ zsh ]; packages = with pkgs; [zsh];
shell = pkgs.zsh; shell = pkgs.zsh;
}; };
home-manager = { home-manager = {
backupFileExtension = "bk"; backupFileExtension = "bk";
users = { "k" = import ./home.nix; }; users = {"k" = import ./home.nix;};
}; };
environment = { environment = {
sessionVariables = { MOZ_USE_XINPUT2 = "1"; }; sessionVariables = {MOZ_USE_XINPUT2 = "1";};
gnome.excludePackages = (with pkgs; [
gnome-photos
gnome-tour
xterm
cheese # webcam tool
gnome-contacts
gnome-clocks
gnome-maps
geary # email reader
evince # document viewer
totem # video player
tali # poker game
iagno # go game
hitori # sudoku game
atomix # puzzle game
]);
systemPackages = with pkgs; [ systemPackages = with pkgs; [
intel-vaapi-driver config.boot.kernelPackages.perf
intel-compute-runtime
intel-media-driver
intel-ocl
level-zero
vpl-gpu-rt
microcodeIntel
opensycl
mkl
embree
neovim
]; ];
}; };
boot = { systemd.sleep.extraConfig = ''
HibernateDelaySec=20m
SuspendState=mem
'';
plymouth = { enable = true; }; boot = {
plymouth = {enable = true;};
consoleLogLevel = 0; consoleLogLevel = 0;
initrd.verbose = false; initrd.verbose = false;
@@ -168,7 +190,6 @@
"loglevel=3" "loglevel=3"
"rd.systemd.show_status=false" "rd.systemd.show_status=false"
"rd.udev.log_level=3" "rd.udev.log_level=3"
"udev.log_priority=3"
]; ];
loader.timeout = 0; loader.timeout = 0;
}; };
@@ -180,5 +201,4 @@
# Before changing this value read the documentation for this option # Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.11"; # Did you read the comment? system.stateVersion = "23.11"; # Did you read the comment?
} }

View File

@@ -1,16 +1,19 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
boot.initrd.availableKernelModules = boot.initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod"];
[ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ]; boot.initrd.kernelModules = [];
boot.initrd.kernelModules = [ ]; boot.kernelModules = ["kvm-intel"];
boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [];
boot.extraModulePackages = [ ];
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/a7301069-c11f-411e-9a23-446744c3ae76"; device = "/dev/disk/by-uuid/a7301069-c11f-411e-9a23-446744c3ae76";
@@ -22,8 +25,7 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = swapDevices = [{device = "/dev/disk/by-uuid/d9df94a1-5088-468c-839d-f4cd10cb7e5f";}];
[{ device = "/dev/disk/by-uuid/d9df94a1-5088-468c-839d-f4cd10cb7e5f"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View File

@@ -1,28 +1,40 @@
{ config, pkgs, inputs, ... }:
{ {
imports = [ ../home/home_common.nix ../home/gnome.nix ../home/sway.nix ../home/hyprland.nix]; config,
pkgs,
inputs,
...
}: {
imports = [
../home/home_common.nix
../home/niri.nix
];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
home = { home = {
packages = with pkgs; [ packages = with pkgs; [
firefox firefox
lagrange
chromium #this might replace firefox
keepassxc keepassxc
thunderbird thunderbird
blender blender
vesktop vesktop
spotify
alacritty
btop btop
zip zip
spotify
spicetify-cli prismlauncher
distrobox steam
gamescope
direnv direnv
emacs-gtk
syncthing
texliveFull texliveFull
ispell ispell
calc
]; ];
}; };
@@ -32,25 +44,35 @@
enableZshIntegration = true; enableZshIntegration = true;
nix-direnv.enable = true; nix-direnv.enable = true;
}; };
emacs = {
enable = true;
package = pkgs.emacs-pgtk.override {
withTreeSitter = true;
withNativeCompilation = true;
};
extraPackages = epkgs: [
epkgs.vterm
];
};
}; };
services = { services = {
syncthing.enable = true; syncthing.enable = true;
activitywatch.enable = true;
mpd = { mpd = {
enable = true; enable = true;
musicDirectory = "/home/k/Music"; musicDirectory = "/home/k/Music";
}; };
emacs = { emacs = {
enable = true; enable = true;
defaultEditor = true; defaultEditor = true;
package = pkgs.emacs-gtk;
}; };
}; };
stylix = { stylix = {
enable = true; enable = true;
autoEnable = true; autoEnable = true;
targets.gnome.enable = false;
}; };
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 MiB

After

Width:  |  Height:  |  Size: 2.1 MiB

View File

@@ -1,48 +1,77 @@
{ config, pkgs, inputs, ... }:
{ {
imports = [ ./hardware-configuration.nix ./service.nix ]; config,
pkgs,
inputs,
...
}: {
imports = [./hardware-configuration.nix ./service.nix];
powerManagement.enable = true; powerManagement.enable = true;
system.autoUpgrade.enable = true; system.autoUpgrade.enable = true;
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
nix = { nix = {
settings.experimental-features = [ "nix-command" "flakes" ];
gc.automatic = true; gc.automatic = true;
settings = {
experimental-features = ["nix-command" "flakes"];
#substituters = ["http://nix.dhilton.xyz/" "https://cache.nixos.org/"];
#trusted-public-keys = ["nix.dhilton.xyz:MOW060dF1A0/UXmPZBue9KMxCO13PHYFwx1X9hcdYZ4="];
};
};
nixpkgs.config = {
allowUnfree = true;
vaapiIntel = pkgs.vaapiIntel.override {enableHybridCodec = true;};
}; };
programs = { programs = {
nix-ld.enable = true;
nix-ld.libraries = with pkgs; [ glibc glib ];
zsh.enable = true; zsh.enable = true;
neovim.enable = true;
}; };
users.users.k = { users = {
motd = "Welcome to the Server";
defaultUserShell = pkgs.zsh;
users = {
k = {
isNormalUser = true; isNormalUser = true;
description = "k"; description = "k";
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = ["networkmanager" "wheel" "libvirtd"];
packages = with pkgs; [ zsh ]; openssh.authorizedKeys.keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPKbKVe6gneJ9ghFih3bOeL++iDNPJNIMoZSdNMOsD0I k@laptop"];
shell = pkgs.zsh; };
docker = {
isNormalUser = true;
description = "user for runing docker";
extraGroups = ["docker"];
openssh.authorizedKeys.keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPKbKVe6gneJ9ghFih3bOeL++iDNPJNIMoZSdNMOsD0I k@laptop"];
packages = with pkgs; [docker-compose];
};
};
}; };
home-manager = { users = { "k" = import ./home.nix; }; }; home-manager = {
backupFileExtension = "bk";
users = {"k" = import ./home.nix;};
};
environment.systemPackages = with pkgs; [ microcodeIntel ]; environment.systemPackages = with pkgs; [
microcodeIntel
firefox
];
hardware.bluetooth.enable = true;
hardware.bluetooth.powerOnBoot = true;
hardware.graphics = { hardware.graphics = {
enable = true; enable = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [
intel-compute-runtime
intel-media-driver intel-media-driver
vaapiIntel intel-vaapi-driver
vaapiVdpau vaapiVdpau
libvdpau-va-gl intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in)
vpl-gpu-rt vpl-gpu-rt # QSV on 11th gen or newer
intel-media-sdk # QSV up to 11th gen
]; ];
}; };
services.xserver.videoDrivers = [ "intel" ];
# This value determines the NixOS release from which the default # This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions # settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave # on your system were taken. Its perfectly fine and recommended to leave
@@ -50,5 +79,4 @@
# Before changing this value read the documentation for this option # Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.11"; # Did you read the comment? system.stateVersion = "23.11"; # Did you read the comment?
} }

View File

@@ -1,16 +1,19 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
boot.initrd.availableKernelModules = boot.initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
[ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [];
boot.initrd.kernelModules = [ ]; boot.kernelModules = ["kvm-intel"];
boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [];
boot.extraModulePackages = [ ];
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
@@ -27,8 +30,7 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = swapDevices = [{device = "/dev/disk/by-uuid/ecde85bd-abea-4926-80d5-810b01d0e364";}];
[{ device = "/dev/disk/by-uuid/ecde85bd-abea-4926-80d5-810b01d0e364"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View File

@@ -1,11 +1,12 @@
{ config, pkgs, inputs, ... }:
{ {
imports = [ ../home/home_common.nix ]; config,
home = { pkgs,
packages = with pkgs; [ inputs,
docker ...
docker-compose }: {
]; imports = [../home/home_common.nix];
home = {packages = with pkgs; [docker docker-compose neovim waypipe];};
services = {
syncthing.enable = true;
}; };
} }

View File

@@ -1,23 +1,71 @@
{ pkgs, lib, ... }: { {
pkgs,
networking.firewall = { lib,
...
}: {
networking = {
firewall = {
enable = true; enable = true;
allowedTCPPorts = [ 80 443 22 ]; allowedTCPPorts = [80 443 22 25565 26615 8080 53 19132];
allowedUDPPorts = [26615 8080 1900 51820 53 19132];
}; };
nat.externalInterface = "wlp0s20f3";
nat.internalInterfaces = ["wg0"];
wireguard.interfaces = {
wg0 = {
ips = ["10.0.0.1/24"];
listenPort = 51820;
privateKeyFile = "/keys/wg-private";
peers = [
{
# laptop
publicKey = "Ze2y3K+blI3aBc1AKTlvv90j+McBaitB+qSLazsuSFM=";
allowedIPs = ["10.0.0.2/32"];
}
{
# phone
publicKey = "vcheBoHRxCrwzbMw0UI9ZsQfVDJizBWkeM+pF5/8+HE=";
allowedIPs = ["10.0.0.3/32"];
}
];
};
};
};
networking.nat.enable = true;
security.acme = { security.acme = {
acceptTerms = true; acceptTerms = true;
defaults.email = "markers711@gmail.com"; defaults.email = "markers711@gmail.com";
}; };
virtualisation.docker = { enable = true; }; virtualisation = {
docker = {enable = true;};
libvirtd = {enable = true;};
kvmgt = {enable = true;};
};
services = { services = {
openssh = { enable = true; }; openssh = {enable = true;};
jellyfin = { enable = true; }; jellyfin = {enable = true;};
fail2ban = { enable = true; }; fail2ban = {enable = true;};
postgresql = {enable = true;};
i2p = {enable = true;};
nix-serve = {
enable = true;
secretKeyFile = "/var/cache-priv-key.pem";
};
ollama = {
enable = false;
package = pkgs.ollama-intel;
};
gitea = { gitea = {
enable = true; enable = true;
@@ -48,24 +96,58 @@
}; };
home-assistant = { home-assistant = {
enable = true; enable = false;
extraComponents = [ "wiz" "fail2ban" ]; extraComponents = ["wiz" "fail2ban" "ollama" "wyoming" "androidtv" "androidtv_remote"];
config = { config = {
default_config = { }; default_config = {};
"automation ui" = "!include automations.yaml"; "automation ui" = "!include automations.yaml";
http = { http = {
use_x_forwarded_for = "true"; use_x_forwarded_for = "true";
trusted_proxies = [ "127.0.0.1" ]; trusted_proxies = ["127.0.0.1"];
server_port = 8003; server_port = 8002;
}; };
}; };
}; };
wyoming = {
piper.servers."piperNix" = {
enable = false;
uri = "tcp://0.0.0.0:10200";
voice = "en-us-ryan-low";
};
faster-whisper.servers."whisperNix" = {
enable = false;
uri = "tcp://0.0.0.0:10300";
language = "en";
};
};
searx = { searx = {
enable = true; enable = true;
settings = { settings = {
server.port = 8005; server.port = 8003;
server.secret_key = "secretlol"; server.secret_key = "secretlol";
search.formats = ["html" "json"];
};
};
akkoma = {
enable = true;
initDb.enable = true;
config = {
":pleroma" = {
":instance" = {
name = "dhilton fedi";
description = "dhilton akkoma server";
email = "markers711@gmail.com";
registration_open = false;
};
"Pleroma.Web.Endpoint" = {url.host = "fed.dhilton.xyz";};
};
};
nginx = {
enableACME = true;
forceSSL = true;
}; };
}; };
@@ -75,7 +157,6 @@
recommendedTlsSettings = true; recommendedTlsSettings = true;
virtualHosts = { virtualHosts = {
"dhilton.xyz" = { "dhilton.xyz" = {
enableACME = true; enableACME = true;
forceSSL = true; forceSSL = true;
@@ -100,16 +181,16 @@
}; };
}; };
"srx.dhilton.xyz" = { "hom.dhilton.xyz" = {
forceSSL = true; forceSSL = true;
enableACME = true; enableACME = true;
locations."/" = { locations."/" = {
proxyPass = "http://127.0.0.1:8005"; proxyPass = "http://127.0.0.1:8002";
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"hom.dhilton.xyz" = { "srx.dhilton.xyz" = {
forceSSL = true; forceSSL = true;
enableACME = true; enableACME = true;
locations."/" = { locations."/" = {
@@ -117,6 +198,19 @@
proxyWebsockets = true; proxyWebsockets = true;
}; };
}; };
"map.dhilton.xyz" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://127.0.0.1:8100";
proxyWebsockets = true;
};
};
"nix.dhilton.xyz" = {
locations."/".proxyPass = "http://127.0.0.1:5000";
};
}; };
}; };
}; };

View File

@@ -1,14 +1,18 @@
# Edit this configuration file to define what should be installed on # Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ config, pkgs, inputs, nixos-hardware, ... }:
{ {
imports = [ # Include the results of the hardware scan. config,
pkgs,
inputs,
nixos-hardware,
...
}: {
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
nix.settings.experimental-features = [ "nix-command" "flakes" ]; nix.settings.experimental-features = ["nix-command" "flakes"];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
@@ -44,13 +48,9 @@
# Enable CUPS to print documents. # Enable CUPS to print documents.
services.printing.enable = true; services.printing.enable = true;
services.auto-cpufreq.enable = true;
services.thermald.enable = true; services.thermald.enable = true;
powerManagement.powertop.enable = true;
powerManagement.enable = true;
# Enable sound with pipewire. # Enable sound with pipewire.
sound.enable = true;
hardware.pulseaudio.enable = false; hardware.pulseaudio.enable = false;
security.rtkit.enable = true; security.rtkit.enable = true;
services.pipewire = { services.pipewire = {
@@ -69,11 +69,11 @@
users.users.k = { users.users.k = {
isNormalUser = true; isNormalUser = true;
description = "k"; description = "k";
extraGroups = [ "networkmanager" "wheel" ]; extraGroups = ["networkmanager" "wheel"];
packages = with pkgs; [ zsh ]; packages = with pkgs; [zsh];
shell = pkgs.zsh; shell = pkgs.zsh;
}; };
home-manager = { users = { "k" = import ./home.nix; }; }; home-manager = {users = {"k" = import ./home.nix;};};
system.autoUpgrade.enable = true; system.autoUpgrade.enable = true;
nix.gc.automatic = true; nix.gc.automatic = true;
@@ -89,7 +89,7 @@
neovim neovim
]; ];
boot.kernelModules = [ "soc_button_array" ]; boot.kernelModules = ["soc_button_array"];
networking.firewall.enable = true; networking.firewall.enable = true;
@@ -100,5 +100,4 @@
# Before changing this value read the documentation for this option # Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "23.11"; # Did you read the comment? system.stateVersion = "23.11"; # Did you read the comment?
} }

View File

@@ -1,16 +1,19 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ {
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; config,
lib,
pkgs,
modulesPath,
...
}: {
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
boot.initrd.availableKernelModules = boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usb_storage" "sd_mod"];
[ "xhci_pci" "nvme" "usb_storage" "sd_mod" ]; boot.initrd.kernelModules = [];
boot.initrd.kernelModules = [ ]; boot.kernelModules = ["kvm-intel"];
boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [];
boot.extraModulePackages = [ ];
hardware.opengl.driSupport32Bit = true; hardware.opengl.driSupport32Bit = true;
networking.hostName = "surface"; networking.hostName = "surface";
@@ -29,8 +32,7 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = swapDevices = [{device = "/dev/disk/by-uuid/19941c01-ac8c-4609-a834-20259f3ee32e";}];
[{ device = "/dev/disk/by-uuid/19941c01-ac8c-4609-a834-20259f3ee32e"; }];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's # (the default) this is the recommended approach. When using systemd-networkd it's

View File

@@ -1,6 +1,9 @@
{ config, pkgs, inputs, ... }:
{ {
config,
pkgs,
inputs,
...
}: {
home.enableNixpkgsReleaseCheck = false; home.enableNixpkgsReleaseCheck = false;
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
@@ -25,7 +28,8 @@
enableCompletion = true; enableCompletion = true;
syntaxHighlighting.enable = true; syntaxHighlighting.enable = true;
autocd = true; autocd = true;
plugins = [{ plugins = [
{
name = "zsh-nix-shell"; name = "zsh-nix-shell";
file = "nix-shell.plugin.zsh"; file = "nix-shell.plugin.zsh";
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
@@ -34,6 +38,7 @@
rev = "v0.8.0"; rev = "v0.8.0";
sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7"; sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
}; };
}]; }
];
}; };
} }

49
overlays/ollama.nix Normal file
View File

@@ -0,0 +1,49 @@
{
config,
pkgs,
lib,
...
}: {
nixpkgs.overlays = [
(final: prev: {
ollama-intel = prev.ollama.overrideAttrs (oldAttrs: {
buildInputs =
oldAttrs.buildInputs
or []
++ [prev.intel-compute-runtime.drivers];
propagatedBuildInputs =
oldAttrs.propagetedBuildInputs
or []
++ [prev.intel-compute-runtime.drivers];
cmakeFlags = [
"GGML_NATIVE=true"
"BUILD_SHARED_LIBS=true"
"GGML_BLAS=true"
"GGML_SYCL=true"
"GGML_SYCL_F16=false"
"CMAKE_C_COMPILER=icx"
"CMAKE_CXX_COMPILER=icpx"
];
postInstall =
(oldAttrs.postInstall or "")
+ ''
mkdir -p "$out/bin"
cat << EOF > "$out/bin/ollama-wrapped"
#!/bin/sh
export LD_LIBRARY_PATH="${prev.intel-compute-runtime.drivers}/lib"
export OLLAMA_INTEL_GPU=1
export OLLAMA_NUM_GPU=999
export ZES_ENABLE_SYSMAN=1
export SYCL_CACHE_PERSISTENT=1
exec "$out/bin/ollama-base" "\$@"
EOF
chmod +x "$out/bin/ollama-wrapped"
mv $out/bin/ollama $out/bin/ollama-base
ln -s "$out/bin/ollama-wrapped" "$out/bin/ollama"
'';
});
})
];
}