Compare commits
2 Commits
master
...
224b53dda1
| Author | SHA1 | Date | |
|---|---|---|---|
| 224b53dda1 | |||
| fdb32cae0e |
@@ -1,11 +0,0 @@
|
|||||||
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
|
|
||||||
355
flake.lock
generated
355
flake.lock
generated
@@ -5,11 +5,11 @@
|
|||||||
"fromYaml": "fromYaml"
|
"fromYaml": "fromYaml"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1755819240,
|
"lastModified": 1708890466,
|
||||||
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
|
||||||
"owner": "SenchoPens",
|
"owner": "SenchoPens",
|
||||||
"repo": "base16.nix",
|
"repo": "base16.nix",
|
||||||
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
"rev": "665b3c6748534eb766c777298721cece9453fdae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -21,28 +21,43 @@
|
|||||||
"base16-fish": {
|
"base16-fish": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1754405784,
|
"lastModified": 1622559957,
|
||||||
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
|
||||||
"owner": "tomyun",
|
"owner": "tomyun",
|
||||||
"repo": "base16-fish",
|
"repo": "base16-fish",
|
||||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "tomyun",
|
"owner": "tomyun",
|
||||||
"repo": "base16-fish",
|
"repo": "base16-fish",
|
||||||
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-foot": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696725948,
|
||||||
|
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-foot",
|
||||||
|
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-foot",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"base16-helix": {
|
"base16-helix": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760703920,
|
"lastModified": 1720809814,
|
||||||
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
|
"narHash": "sha256-numb3xigRGnr/deF7wdjBwVg7fpbTH7reFDkJ75AJkY=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-helix",
|
"repo": "base16-helix",
|
||||||
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
|
"rev": "34f41987bec14c0f3f6b2155c19787b1f6489625",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -51,68 +66,78 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"base16-kitty": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1665001328,
|
||||||
|
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
|
||||||
|
"owner": "kdrag0n",
|
||||||
|
"repo": "base16-kitty",
|
||||||
|
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "kdrag0n",
|
||||||
|
"repo": "base16-kitty",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-tmux": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696725902,
|
||||||
|
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-tmux",
|
||||||
|
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-tmux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"base16-vim": {
|
"base16-vim": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1732806396,
|
"lastModified": 1716150083,
|
||||||
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
"narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=",
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-vim",
|
"repo": "base16-vim",
|
||||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
"rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "tinted-theming",
|
"owner": "tinted-theming",
|
||||||
"repo": "base16-vim",
|
"repo": "base16-vim",
|
||||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"firefox-gnome-theme": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1764724327,
|
"lastModified": 1673956053,
|
||||||
"narHash": "sha256-OkFLrD3pFR952TrjQi1+Vdj604KLcMnkpa7lkW7XskI=",
|
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||||
"owner": "rafaelmardojai",
|
"owner": "edolstra",
|
||||||
"repo": "firefox-gnome-theme",
|
"repo": "flake-compat",
|
||||||
"rev": "66b7c635763d8e6eb86bd766de5a1e1fbfcc1047",
|
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "rafaelmardojai",
|
"owner": "edolstra",
|
||||||
"repo": "firefox-gnome-theme",
|
"repo": "flake-compat",
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-parts": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": [
|
|
||||||
"stylix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1763759067,
|
|
||||||
"narHash": "sha256-LlLt2Jo/gMNYAwOgdRQBrsRoOz7BPRkzvNaI/fzXi2Q=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "2cccadc7357c0ba201788ae99c4dfa90728ef5e0",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"fromYaml": {
|
"fromYaml": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731966426,
|
"lastModified": 1689549921,
|
||||||
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
|
||||||
"owner": "SenchoPens",
|
"owner": "SenchoPens",
|
||||||
"repo": "fromYaml",
|
"repo": "fromYaml",
|
||||||
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -124,52 +149,72 @@
|
|||||||
"gnome-shell": {
|
"gnome-shell": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"host": "gitlab.gnome.org",
|
"lastModified": 1713702291,
|
||||||
"lastModified": 1764524476,
|
"narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=",
|
||||||
"narHash": "sha256-bTmNn3Q4tMQ0J/P0O5BfTQwqEnCiQIzOGef9/aqAZvk=",
|
|
||||||
"owner": "GNOME",
|
"owner": "GNOME",
|
||||||
"repo": "gnome-shell",
|
"repo": "gnome-shell",
|
||||||
"rev": "c0e1ad9f0f703fd0519033b8f46c3267aab51a22",
|
"rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934",
|
||||||
"type": "gitlab"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"host": "gitlab.gnome.org",
|
|
||||||
"owner": "GNOME",
|
"owner": "GNOME",
|
||||||
"ref": "gnome-49",
|
"ref": "46.1",
|
||||||
"repo": "gnome-shell",
|
"repo": "gnome-shell",
|
||||||
"type": "gitlab"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765170903,
|
"lastModified": 1719827439,
|
||||||
"narHash": "sha256-O8VTGey1xxiRW+Fpb+Ps9zU7ShmxUA1a7cMTcENCVNg=",
|
"narHash": "sha256-tneHOIv1lEavZ0vQ+rgz67LPNCgOZVByYki3OkSshFU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "20561be440a11ec57a89715480717baf19fe6343",
|
"rev": "59ce796b2563e19821361abbe2067c3bb4143a7d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1715930644,
|
||||||
|
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
|
||||||
"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": 1764440730,
|
"lastModified": 1719895800,
|
||||||
"narHash": "sha256-ZlJTNLUKQRANlLDomuRWLBCH5792x+6XUJ4YdFRjtO4=",
|
"narHash": "sha256-xNbjISJTFailxass4LmdWeV4jNhAlmJPwj46a/GxE6M=",
|
||||||
"owner": "nixos",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "9154f4569b6cdfd3c595851a6ba51bfaa472d9f3",
|
"rev": "6e253f12b1009053eff5344be5e835f604bb64cd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "NixOS",
|
||||||
"ref": "master",
|
"ref": "master",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
@@ -177,82 +222,41 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1764831616,
|
"lastModified": 1719848872,
|
||||||
"narHash": "sha256-OtzF5wBvO0jgW1WW1rQU9cMGx7zuvkF7CAVJ1ypzkxA=",
|
"narHash": "sha256-H3+EC5cYuq+gQW8y0lSrrDZfH71LB4DAf+TDFyvwCNA=",
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c97c47f2bac4fa59e2cbdeba289686ae615f8ed4",
|
"rev": "00d80d13810dbfea8ab4ed1009b09100cca86ba8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"ref": "nixos-25.11",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1764983851,
|
"lastModified": 1714912032,
|
||||||
"narHash": "sha256-y7RPKl/jJ/KAP/VKLMghMgXTlvNIJMHKskl8/Uuar7o=",
|
"narHash": "sha256-clkcOIkg8G4xuJh+1onLG4HPMpbtzdLv4rHxFzgsH9c=",
|
||||||
"owner": "nixos",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "d9bc5c7dceb30d8d6fafa10aeb6aa8a48c218454",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nixos",
|
|
||||||
"ref": "nixos-25.11",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1764522689,
|
|
||||||
"narHash": "sha256-SqUuBFjhl/kpDiVaKLQBoD8TLD+/cTUzzgVFoaHrkqY=",
|
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "8bb5646e0bed5dbd3ab08c7a7cc15b75ab4e1d0f",
|
"rev": "ee4a6e0f566fe5ec79968c57a9c2c3c25f2cf41d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-25.11",
|
"ref": "nixpkgs-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nur": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-parts": [
|
|
||||||
"stylix",
|
|
||||||
"flake-parts"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"stylix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1764773531,
|
|
||||||
"narHash": "sha256-mCBl7MD1WZ7yCG6bR9MmpPO2VydpNkWFgnslJRIT1YU=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "NUR",
|
|
||||||
"rev": "1d9616689e98beded059ad0384b9951e967a17fa",
|
|
||||||
"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_2",
|
"nixpkgs": "nixpkgs",
|
||||||
"stylix": "stylix"
|
"stylix": "stylix"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -260,130 +264,29 @@
|
|||||||
"inputs": {
|
"inputs": {
|
||||||
"base16": "base16",
|
"base16": "base16",
|
||||||
"base16-fish": "base16-fish",
|
"base16-fish": "base16-fish",
|
||||||
|
"base16-foot": "base16-foot",
|
||||||
"base16-helix": "base16-helix",
|
"base16-helix": "base16-helix",
|
||||||
|
"base16-kitty": "base16-kitty",
|
||||||
|
"base16-tmux": "base16-tmux",
|
||||||
"base16-vim": "base16-vim",
|
"base16-vim": "base16-vim",
|
||||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
"flake-compat": "flake-compat",
|
||||||
"flake-parts": "flake-parts",
|
|
||||||
"gnome-shell": "gnome-shell",
|
"gnome-shell": "gnome-shell",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"home-manager": "home-manager_2",
|
||||||
"nur": "nur",
|
"nixpkgs": "nixpkgs_2"
|
||||||
"systems": "systems",
|
|
||||||
"tinted-foot": "tinted-foot",
|
|
||||||
"tinted-kitty": "tinted-kitty",
|
|
||||||
"tinted-schemes": "tinted-schemes",
|
|
||||||
"tinted-tmux": "tinted-tmux",
|
|
||||||
"tinted-zed": "tinted-zed"
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765065096,
|
"lastModified": 1724260414,
|
||||||
"narHash": "sha256-abrrONk8vzRtY6fHEkjZOyRJpKHjPlFqMBE0+/DxfAU=",
|
"narHash": "sha256-EP1yFDEm/f7+j+fE3TI7KZb5xJH6KNMtmlZciktC71c=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "84d9d55885d463d461234f3aac07b2389a2577d8",
|
"rev": "c5f8f06543b70248a076f888177c7362a24d5dcc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"ref": "release-25.11",
|
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"systems": {
|
|
||||||
"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": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1726913040,
|
|
||||||
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-foot",
|
|
||||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-foot",
|
|
||||||
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-kitty": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1735730497,
|
|
||||||
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-kitty",
|
|
||||||
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-kitty",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-schemes": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1763914658,
|
|
||||||
"narHash": "sha256-Hju0WtMf3iForxtOwXqGp3Ynipo0EYx1AqMKLPp9BJw=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "schemes",
|
|
||||||
"rev": "0f6be815d258e435c9b137befe5ef4ff24bea32c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "schemes",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-tmux": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1764465359,
|
|
||||||
"narHash": "sha256-lbSVPqLEk2SqMrnpvWuKYGCaAlfWFMA6MVmcOFJjdjE=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-tmux",
|
|
||||||
"rev": "edf89a780e239263cc691a987721f786ddc4f6aa",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "tinted-tmux",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"tinted-zed": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1764464512,
|
|
||||||
"narHash": "sha256-rCD/pAhkMdCx6blsFwxIyvBJbPZZ1oL2sVFrH07lmqg=",
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-zed",
|
|
||||||
"rev": "907dbba5fb8cf69ebfd90b00813418a412d0a29a",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "tinted-theming",
|
|
||||||
"repo": "base16-zed",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|||||||
97
flake.nix
97
flake.nix
@@ -2,61 +2,50 @@
|
|||||||
description = "Nixos config flake";
|
description = "Nixos config flake";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
stylix.url = "github:danth/stylix/release-25.11";
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
|
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||||
home-manager.url = "github:nix-community/home-manager/release-25.11";
|
stylix.url = "github:danth/stylix";
|
||||||
nixos-hardware.url = "github:nixos/nixos-hardware/master";
|
|
||||||
};
|
|
||||||
|
|
||||||
outputs = {
|
home-manager = {
|
||||||
self,
|
url = "github:nix-community/home-manager";
|
||||||
nixpkgs,
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
nixos-hardware,
|
|
||||||
...
|
|
||||||
} @ inputs: let
|
|
||||||
system = "x86_64-linux";
|
|
||||||
pkg = nixpkgs.legacyPackages.${system};
|
|
||||||
in {
|
|
||||||
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.alejandra;
|
|
||||||
nixosConfigurations = {
|
|
||||||
laptop = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = {inherit inputs;};
|
|
||||||
modules = [
|
|
||||||
./hosts/laptop/configuration.nix
|
|
||||||
inputs.home-manager.nixosModules.default
|
|
||||||
inputs.stylix.nixosModules.stylix
|
|
||||||
nixos-hardware.nixosModules.lenovo-thinkpad-x13-yoga
|
|
||||||
(import ./overlays/ollama.nix)
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
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 {
|
|
||||||
specialArgs = {inherit inputs;};
|
|
||||||
modules = [
|
|
||||||
./hosts/server/configuration.nix
|
|
||||||
inputs.home-manager.nixosModules.default
|
|
||||||
nixos-hardware.nixosModules.system76
|
|
||||||
(import ./overlays/ollama.nix)
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
tablet = nixpkgs.lib.nixosSystem {
|
|
||||||
specialArgs = {inherit inputs;};
|
|
||||||
modules = [
|
|
||||||
./hosts/tablet/configuration.nix
|
|
||||||
inputs.home-manager.nixosModules.default
|
|
||||||
nixos-hardware.nixosModules.microsoft-surface-pro-intel
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, nixos-hardware, ... }@inputs:
|
||||||
|
let
|
||||||
|
system = "x86_64-linux";
|
||||||
|
pkg = nixpkgs.legacyPackages.${system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
nixosConfigurations = {
|
||||||
|
laptop = nixpkgs.lib.nixosSystem {
|
||||||
|
specialArgs = {inherit inputs;};
|
||||||
|
modules = [
|
||||||
|
./hosts/laptop/configuration.nix
|
||||||
|
inputs.home-manager.nixosModules.default
|
||||||
|
inputs.stylix.nixosModules.stylix
|
||||||
|
nixos-hardware.nixosModules.lenovo-thinkpad-x13-yoga
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
server = nixpkgs.lib.nixosSystem {
|
||||||
|
specialArgs = {inherit inputs;};
|
||||||
|
modules = [
|
||||||
|
./hosts/server/configuration.nix
|
||||||
|
inputs.home-manager.nixosModules.default
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
tablet = nixpkgs.lib.nixosSystem {
|
||||||
|
specialArgs = {inherit inputs;};
|
||||||
|
modules = [
|
||||||
|
./hosts/tablet/configuration.nix
|
||||||
|
inputs.home-manager.nixosModules.default
|
||||||
|
nixos-hardware.nixosModules.microsoft-surface-pro-intel
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,139 +0,0 @@
|
|||||||
# 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. It‘s 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?
|
|
||||||
}
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@@ -1,47 +0,0 @@
|
|||||||
{
|
|
||||||
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
|
|
||||||
# }
|
|
||||||
#'';
|
|
||||||
}
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
# ...
|
|
||||||
dconf.settings = {
|
|
||||||
# ...
|
|
||||||
"org/gnome/shell" = {
|
|
||||||
disable-user-extensions = false;
|
|
||||||
|
|
||||||
# `gnome-extensions list` for a list
|
|
||||||
enabled-extensions = [
|
|
||||||
"Vitals@CoreCoding.com"
|
|
||||||
"blur-my-shell@aunetx"
|
|
||||||
"search-light@icedman.github.com"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
gnomeExtensions.vitals
|
|
||||||
gnomeExtensions.blur-my-shell
|
|
||||||
gnomeExtensions.search-light
|
|
||||||
];
|
|
||||||
}
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
home = {
|
|
||||||
username = "k";
|
|
||||||
homeDirectory = "/home/k";
|
|
||||||
stateVersion = "23.11";
|
|
||||||
};
|
|
||||||
programs = {
|
|
||||||
git = {
|
|
||||||
enable = true;
|
|
||||||
userName = "k";
|
|
||||||
userEmail = "markers711@gmail.com";
|
|
||||||
};
|
|
||||||
tmux.enable = true;
|
|
||||||
starship.enable = true;
|
|
||||||
zsh = {
|
|
||||||
enable = true;
|
|
||||||
autosuggestion.enable = true;
|
|
||||||
enableCompletion = true;
|
|
||||||
syntaxHighlighting.enable = true;
|
|
||||||
autocd = true;
|
|
||||||
plugins = [
|
|
||||||
{
|
|
||||||
name = "zsh-nix-shell";
|
|
||||||
file = "nix-shell.plugin.zsh";
|
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "chisui";
|
|
||||||
repo = "zsh-nix-shell";
|
|
||||||
rev = "v0.8.0";
|
|
||||||
sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,184 +0,0 @@
|
|||||||
{
|
|
||||||
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 = {
|
|
||||||
enable = true;
|
|
||||||
systemd.variables = ["--all"];
|
|
||||||
xwayland.enable = true;
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
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";
|
|
||||||
general = {
|
|
||||||
"$mainMod" = "SUPER";
|
|
||||||
layout = "master";
|
|
||||||
"$terminal" = "${pkgs.alacritty}/bin/alacritty";
|
|
||||||
"$menu" = "${pkgs.wofi}/bin/wofi --show drun";
|
|
||||||
gaps_in = 5;
|
|
||||||
gaps_out = 10;
|
|
||||||
border_size = 2;
|
|
||||||
};
|
|
||||||
|
|
||||||
decoration = {
|
|
||||||
rounding = 15;
|
|
||||||
blur = {
|
|
||||||
enabled = true;
|
|
||||||
size = 2;
|
|
||||||
passes = 2;
|
|
||||||
brightness = 1;
|
|
||||||
noise = 0.3;
|
|
||||||
new_optimizations = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
misc = {
|
|
||||||
disable_autoreload = true;
|
|
||||||
disable_hyprland_logo = true;
|
|
||||||
always_follow_on_dnd = true;
|
|
||||||
layers_hog_keyboard_focus = true;
|
|
||||||
animate_manual_resizes = false;
|
|
||||||
enable_swallow = true;
|
|
||||||
focus_on_activate = true;
|
|
||||||
new_window_takes_over_fullscreen = 2;
|
|
||||||
middle_click_paste = true;
|
|
||||||
vfr = true;
|
|
||||||
vrr = 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
input = {touchpad = {natural_scroll = true;};};
|
|
||||||
|
|
||||||
bind = [
|
|
||||||
# keybindings
|
|
||||||
"$mainMod, Return, exec, $terminal"
|
|
||||||
"$mainMod, D, exec, $menu"
|
|
||||||
"$mainMod Shift, C, killactive,"
|
|
||||||
"$mainMod, Space, exec, toggle_float"
|
|
||||||
"$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
|
|
||||||
"$mainMod, left, movefocus, l"
|
|
||||||
"$mainMod, right, movefocus, r"
|
|
||||||
"$mainMod, up, movefocus, u"
|
|
||||||
"$mainMod, down, movefocus, d"
|
|
||||||
|
|
||||||
# switch workspace
|
|
||||||
"$mainMod, 1, workspace, 1"
|
|
||||||
"$mainMod, 2, workspace, 2"
|
|
||||||
"$mainMod, 3, workspace, 3"
|
|
||||||
"$mainMod, 4, workspace, 4"
|
|
||||||
"$mainMod, 5, workspace, 5"
|
|
||||||
"$mainMod, 6, workspace, 6"
|
|
||||||
"$mainMod, 7, workspace, 7"
|
|
||||||
"$mainMod, 8, workspace, 8"
|
|
||||||
"$mainMod, 9, workspace, 9"
|
|
||||||
"$mainMod, 0, workspace, 10"
|
|
||||||
|
|
||||||
# same as above, but switch to the workspace
|
|
||||||
"$mainMod SHIFT, 1, movetoworkspacesilent, 1"
|
|
||||||
"$mainMod SHIFT, 2, movetoworkspacesilent, 2"
|
|
||||||
"$mainMod SHIFT, 3, movetoworkspacesilent, 3"
|
|
||||||
"$mainMod SHIFT, 4, movetoworkspacesilent, 4"
|
|
||||||
"$mainMod SHIFT, 5, movetoworkspacesilent, 5"
|
|
||||||
"$mainMod SHIFT, 6, movetoworkspacesilent, 6"
|
|
||||||
"$mainMod SHIFT, 7, movetoworkspacesilent, 7"
|
|
||||||
"$mainMod SHIFT, 8, movetoworkspacesilent, 8"
|
|
||||||
"$mainMod SHIFT, 9, movetoworkspacesilent, 9"
|
|
||||||
"$mainMod SHIFT, 0, movetoworkspacesilent, 10"
|
|
||||||
"$mainMod CTRL, c, movetoworkspace, empty"
|
|
||||||
|
|
||||||
# window control
|
|
||||||
"$mainMod SHIFT, left, movewindow, l"
|
|
||||||
"$mainMod SHIFT, right, movewindow, r"
|
|
||||||
"$mainMod SHIFT, up, movewindow, u"
|
|
||||||
"$mainMod SHIFT, down, movewindow, d"
|
|
||||||
"$mainMod CTRL, left, resizeactive, -80 0"
|
|
||||||
"$mainMod CTRL, right, resizeactive, 80 0"
|
|
||||||
"$mainMod CTRL, up, resizeactive, 0 -80"
|
|
||||||
"$mainMod CTRL, down, resizeactive, 0 80"
|
|
||||||
"$mainMod ALT, left, moveactive, -80 0"
|
|
||||||
"$mainMod ALT, right, moveactive, 80 0"
|
|
||||||
"$mainMod ALT, up, moveactive, 0 -80"
|
|
||||||
"$mainMod ALT, down, moveactive, 0 80"
|
|
||||||
|
|
||||||
# media and volume controls
|
|
||||||
# ",XF86AudioMute,exec, pamixer -t"
|
|
||||||
",XF86AudioPlay,exec, playerctl play-pause"
|
|
||||||
",XF86AudioNext,exec, playerctl next"
|
|
||||||
",XF86AudioPrev,exec, playerctl previous"
|
|
||||||
",XF86AudioStop,exec, playerctl stop"
|
|
||||||
",XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"
|
|
||||||
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
|
||||||
",XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
|
||||||
];
|
|
||||||
|
|
||||||
bindm = [
|
|
||||||
"$mainMod, mouse:272, movewindow"
|
|
||||||
"$mainMod, mouse:273, resizewindow"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables = {
|
|
||||||
MOZ_ENABLE_WAYLAND = "1";
|
|
||||||
MOZ_USE_XINPUT2 = "1";
|
|
||||||
XDG_SESSION_TYPE = "wayland";
|
|
||||||
SDL_VIDEODRIVER = "wayland";
|
|
||||||
QT_QPA_PLATFORM = "wayland";
|
|
||||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
|
||||||
_JAVA_AWT_WM_NONREPARENTING = 1;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [./waybar.nix ./tile.nix];
|
|
||||||
|
|
||||||
wayland.windowManager.sway = {
|
|
||||||
enable = true;
|
|
||||||
config = {
|
|
||||||
modifier = "Mod4";
|
|
||||||
floating.border = 0;
|
|
||||||
window.border = 1;
|
|
||||||
window.titlebar = false;
|
|
||||||
terminal = "${pkgs.alacritty}/bin/alacritty";
|
|
||||||
menu = "${pkgs.wofi}/bin/wofi --show drun";
|
|
||||||
bars = [];
|
|
||||||
gaps = {
|
|
||||||
inner = 10;
|
|
||||||
outer = 5;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables = {
|
|
||||||
MOZ_ENABLE_WAYLAND = "1";
|
|
||||||
MOZ_USE_XINPUT2 = "1";
|
|
||||||
XDG_SESSION_TYPE = "wayland";
|
|
||||||
SDL_VIDEODRIVER = "wayland";
|
|
||||||
QT_QPA_PLATFORM = "wayland";
|
|
||||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
|
||||||
_JAVA_AWT_WM_NONREPARENTING = 1;
|
|
||||||
};
|
|
||||||
services = {swayidle = {enable = true;};};
|
|
||||||
}
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
services = {
|
|
||||||
mako = {
|
|
||||||
enable = true;
|
|
||||||
defaultTimeout = 4000;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
programs = {
|
|
||||||
alacritty = {enable = true;};
|
|
||||||
wofi = {enable = true;};
|
|
||||||
zathura = {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
|
|
||||||
}
|
|
||||||
@@ -1,84 +0,0 @@
|
|||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
systemd.enable = true;
|
|
||||||
settings = {
|
|
||||||
mainBar = {
|
|
||||||
layer = "bottom";
|
|
||||||
position = "bottom";
|
|
||||||
output = ["eDP-1"];
|
|
||||||
margin-left = 45;
|
|
||||||
margin-right = 45;
|
|
||||||
spacing = 15;
|
|
||||||
|
|
||||||
modules-left = ["sway/workspaces" "sway/mode" "hyprland/window"];
|
|
||||||
modules-center = ["clock"];
|
|
||||||
modules-right = ["pulseaudio" "network" "battery"];
|
|
||||||
|
|
||||||
cpu = {
|
|
||||||
interval = 15;
|
|
||||||
format = " {}%";
|
|
||||||
max-length = 15;
|
|
||||||
};
|
|
||||||
|
|
||||||
memory = {
|
|
||||||
interval = 30;
|
|
||||||
format = " {}%";
|
|
||||||
max-length = 15;
|
|
||||||
};
|
|
||||||
|
|
||||||
"pulseaudio" = {
|
|
||||||
format = "{volume}% {icon}";
|
|
||||||
format-bluetooth = "{volume}% {icon} ";
|
|
||||||
format-muted = " ";
|
|
||||||
format-icons = {
|
|
||||||
headphone = " ";
|
|
||||||
hands-free = " ";
|
|
||||||
headset = " ";
|
|
||||||
phone = " ";
|
|
||||||
portable = " ";
|
|
||||||
car = " ";
|
|
||||||
default = [" " " "];
|
|
||||||
};
|
|
||||||
#scroll-step = 1;
|
|
||||||
#on-click = "pavucontrol";
|
|
||||||
};
|
|
||||||
|
|
||||||
backlight = {
|
|
||||||
tooltip = false;
|
|
||||||
format = " {}%";
|
|
||||||
interval = 1;
|
|
||||||
on-scroll-up = "${pkgs.brightnessctl}/bin/brightnessctl s 5%+";
|
|
||||||
on-scroll-down = "${pkgs.brightnessctl}/bin/brightnessctl s 5%+";
|
|
||||||
};
|
|
||||||
|
|
||||||
network = {
|
|
||||||
format = "{ifname}";
|
|
||||||
format-wifi = "{essid} ({signalStrength}%) ";
|
|
||||||
format-ethernet = "{ipaddr}/{cidr} ";
|
|
||||||
format-disconnected = " ";
|
|
||||||
tooltip-format = "{ifname} via {gwaddr} ";
|
|
||||||
tooltip-format-wifi = "{essid} ({signalStrength}%) ";
|
|
||||||
tooltip-format-ethernet = "{ifname} ";
|
|
||||||
tooltip-format-disconnected = "Disconnected";
|
|
||||||
max-length = 50;
|
|
||||||
};
|
|
||||||
|
|
||||||
battery = {
|
|
||||||
format = "{capacity}% {icon}";
|
|
||||||
"format-icons" = [" " " " " " " " " "];
|
|
||||||
};
|
|
||||||
|
|
||||||
clock = {
|
|
||||||
format = "{:%I:%M %p}";
|
|
||||||
"format-alt" = "{:%a, %d. %b %H:%M}";
|
|
||||||
tooltip = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -1,208 +1,157 @@
|
|||||||
|
# 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, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
config,
|
imports =
|
||||||
pkgs,
|
[ # Include the results of the hardware scan.
|
||||||
inputs,
|
./hardware-configuration.nix
|
||||||
...
|
];
|
||||||
}: {
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||||
imports = [./hardware-configuration.nix ];
|
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
system.autoUpgrade.enable = true;
|
|
||||||
time.timeZone = "America/New_York";
|
|
||||||
powerManagement.enable = true;
|
|
||||||
|
|
||||||
hardware = {
|
|
||||||
bluetooth = {
|
|
||||||
enable = true;
|
|
||||||
powerOnBoot = true;
|
|
||||||
settings = {
|
|
||||||
General = {
|
|
||||||
Enable = "Source,Sink,Media,Socket";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
nix = {
|
|
||||||
gc.automatic = false;
|
|
||||||
settings = {
|
|
||||||
experimental-features = ["nix-command" "flakes"];
|
|
||||||
#substituters = ["http://nix.dhilton.xyz/" "https://cache.nixos.org/"];
|
|
||||||
#trusted-public-keys = ["nix.dhilton.xyz:MOW060dF1A0/UXmPZBue9KMxCO13PHYFwx1X9hcdYZ4="];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
hostName = "laptop";
|
|
||||||
networkmanager.enable = true;
|
|
||||||
firewall.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
|
||||||
hardware.bolt = {enable = true;};
|
|
||||||
displayManager.ly = {
|
|
||||||
enable = true;
|
|
||||||
x11Support = false;
|
|
||||||
settings = {
|
|
||||||
animation = "colormix";
|
|
||||||
battery_id = "BAT0";
|
|
||||||
clear_password = true;
|
|
||||||
colormix_col1 = "0xA7C080";
|
|
||||||
colormix_col2 = "0x7FBBB3";
|
|
||||||
colormix_col3 = "0xE67E80";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
alsa.support32Bit = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
jack.enable = true;
|
|
||||||
};
|
|
||||||
auto-cpufreq = {
|
|
||||||
enable = false;
|
|
||||||
settings = {
|
|
||||||
battery = {
|
|
||||||
governor = "powersave";
|
|
||||||
turbo = "never";
|
|
||||||
};
|
|
||||||
charger = {
|
|
||||||
governor = "balance_performance";
|
|
||||||
turbo = "auto";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
logind = {
|
|
||||||
lidSwitch = "suspend-then-hibernate";
|
|
||||||
lidSwitchExternalPower = "suspend";
|
|
||||||
};
|
|
||||||
avahi = {
|
|
||||||
enable = false;
|
|
||||||
nssmdns4 = true;
|
|
||||||
openFirewall = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
blueman.enable = true;
|
|
||||||
fwupd.enable = true;
|
|
||||||
printing.enable = true;
|
|
||||||
fprintd.enable = true;
|
|
||||||
thermald.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
stylix = {
|
stylix = {
|
||||||
enable = true;
|
enable = true;
|
||||||
autoEnable = true;
|
polarity = "light";
|
||||||
polarity = "dark";
|
|
||||||
image = ./wallpaper.png;
|
image = ./wallpaper.png;
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/everforest.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/rose-pine-dawn.yaml";
|
||||||
opacity = {
|
|
||||||
terminal = 0.85;
|
|
||||||
popups = 0.75;
|
|
||||||
desktop = 0.75;
|
|
||||||
applications = 0.85;
|
|
||||||
};
|
|
||||||
cursor = {
|
cursor = {
|
||||||
package = pkgs.adwaita-icon-theme;
|
package = pkgs.gnome.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 = {
|
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||||
sensor.iio.enable = true;
|
|
||||||
graphics.enable32Bit = true;
|
# Configure network proxy if necessary
|
||||||
graphics.extraPackages = with pkgs; [
|
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||||
intel-vaapi-driver
|
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||||
intel-media-driver
|
|
||||||
intel-compute-runtime
|
# Enable networking
|
||||||
];
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
# Set your time zone.
|
||||||
|
time.timeZone = "America/New_York";
|
||||||
|
|
||||||
|
# Select internationalisation properties.
|
||||||
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
|
i18n.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";
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
services.xserver.enable = true;
|
||||||
zsh.enable = true;
|
services.xserver.displayManager.gdm.enable = true;
|
||||||
virt-manager.enable = true;
|
services.xserver.desktopManager.gnome.enable = true;
|
||||||
hyprland = {
|
environment.gnome.excludePackages = (with pkgs; [
|
||||||
enable = true;
|
gnome-photos
|
||||||
};
|
gnome-tour
|
||||||
|
xterm
|
||||||
|
]) ++ (with pkgs.gnome; [
|
||||||
|
cheese # webcam tool
|
||||||
|
gnome-music
|
||||||
|
gnome-weather
|
||||||
|
gnome-calendar
|
||||||
|
gnome-contacts
|
||||||
|
gnome-clocks
|
||||||
|
gnome-maps
|
||||||
|
gnome-terminal
|
||||||
|
epiphany # web browser
|
||||||
|
geary # email reader
|
||||||
|
evince # document viewer
|
||||||
|
gnome-characters
|
||||||
|
totem # video player
|
||||||
|
tali # poker game
|
||||||
|
iagno # go game
|
||||||
|
hitori # sudoku game
|
||||||
|
atomix # puzzle game
|
||||||
|
]);
|
||||||
|
|
||||||
|
hardware.sensor.iio.enable = true;
|
||||||
|
|
||||||
|
networking.hostName = "laptop"; # Define your hostname.
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
|
||||||
|
# Enable CUPS to print documents.
|
||||||
|
services.printing.enable = true;
|
||||||
|
services.fprintd.enable = true;
|
||||||
|
services.thermald.enable = true;
|
||||||
|
powerManagement.powertop.enable = true;
|
||||||
|
powerManagement.enable = true;
|
||||||
|
|
||||||
|
virtualisation.podman = {
|
||||||
|
enable = true;
|
||||||
|
dockerCompat = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
virtualisation = {
|
# Enable sound with pipewire.
|
||||||
libvirtd = {enable = true;};
|
sound.enable = true;
|
||||||
kvmgt = {enable = true;};
|
hardware.pulseaudio.enable = false;
|
||||||
docker = {enable = true;};
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
jack.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
|
# services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
|
programs.nix-ld.enable = true;
|
||||||
|
programs.nix-ld.libraries = with pkgs; [glibc glib];
|
||||||
|
programs.zsh.enable = true;
|
||||||
users.users.k = {
|
users.users.k = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "k";
|
description = "k";
|
||||||
extraGroups = ["networkmanager" "wheel" "cdrom" "libvirtd"];
|
extraGroups = [ "networkmanager" "wheel" ];
|
||||||
packages = with pkgs; [zsh];
|
packages = with pkgs; [zsh];
|
||||||
shell = pkgs.zsh;
|
shell = pkgs.zsh;
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
backupFileExtension = "bk";
|
users = {
|
||||||
users = {"k" = import ./home.nix;};
|
"k" = import ./home.nix;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
programs.steam.enable = true;
|
||||||
|
programs.steam.gamescopeSession.enable = true;
|
||||||
|
programs.gamemode.enable = true;
|
||||||
|
environment.sessionVariables = {
|
||||||
|
MOZ_USE_XINPUT2 = "1";
|
||||||
};
|
};
|
||||||
|
|
||||||
environment = {
|
|
||||||
sessionVariables = {MOZ_USE_XINPUT2 = "1";};
|
|
||||||
systemPackages = with pkgs; [
|
|
||||||
config.boot.kernelPackages.perf
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
systemd.sleep.extraConfig = ''
|
system.autoUpgrade.enable = true;
|
||||||
HibernateDelaySec=20m
|
nix.gc.automatic = true;
|
||||||
SuspendState=mem
|
|
||||||
'';
|
|
||||||
|
|
||||||
boot = {
|
|
||||||
plymouth = {enable = true;};
|
|
||||||
|
|
||||||
consoleLogLevel = 0;
|
# List packages installed in system profile. To search, run:
|
||||||
initrd.verbose = false;
|
# $ nix search wget
|
||||||
kernelParams = [
|
environment.systemPackages = with pkgs; [
|
||||||
"quiet"
|
intel-vaapi-driver
|
||||||
"splash"
|
intel-compute-runtime
|
||||||
"boot.shell_on_fail"
|
intel-media-driver
|
||||||
"loglevel=3"
|
microcodeIntel
|
||||||
"rd.systemd.show_status=false"
|
neovim
|
||||||
"rd.udev.log_level=3"
|
gtk2
|
||||||
];
|
gtk3
|
||||||
loader.timeout = 0;
|
gtk4
|
||||||
};
|
];
|
||||||
|
networking.firewall.enable = true;
|
||||||
|
hardware.graphics.enable32Bit = true;
|
||||||
|
|
||||||
# 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
|
||||||
@@ -211,4 +160,5 @@
|
|||||||
# 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?
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,31 +1,31 @@
|
|||||||
# 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, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
config,
|
imports =
|
||||||
lib,
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
pkgs,
|
];
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod"];
|
boot.initrd.availableKernelModules = [ "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";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" =
|
||||||
device = "/dev/disk/by-uuid/19F3-CD7E";
|
{ device = "/dev/disk/by-uuid/19F3-CD7E";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [{device = "/dev/disk/by-uuid/d9df94a1-5088-468c-839d-f4cd10cb7e5f";}];
|
swapDevices =
|
||||||
|
[ { 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
|
||||||
@@ -35,8 +35,7 @@
|
|||||||
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
hardware.cpu.intel.updateMicrocode =
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
|
|
||||||
# Bootloader.
|
# Bootloader.
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
|||||||
@@ -1,71 +1,55 @@
|
|||||||
{
|
{ config, pkgs, inputs, ... }:
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
../home/home_common.nix
|
|
||||||
../home/hyprland.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
|
{
|
||||||
|
home.enableNixpkgsReleaseCheck = false;
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
home = {
|
home.username = "k";
|
||||||
packages = with pkgs; [
|
home.homeDirectory = "/home/k";
|
||||||
firefox
|
home.stateVersion = "23.11";
|
||||||
chromium #this might replace firefox
|
|
||||||
keepassxc
|
|
||||||
thunderbird
|
|
||||||
blender
|
|
||||||
vesktop
|
|
||||||
spotify
|
|
||||||
alacritty
|
|
||||||
|
|
||||||
btop
|
home.packages = [
|
||||||
zip
|
pkgs.nerdfonts
|
||||||
|
pkgs.firefox
|
||||||
|
pkgs.keepassxc
|
||||||
|
pkgs.syncthing
|
||||||
|
pkgs.thunderbird
|
||||||
|
pkgs.blender
|
||||||
|
pkgs.discord
|
||||||
|
pkgs.btop
|
||||||
|
pkgs.zip
|
||||||
|
pkgs.spotify
|
||||||
|
pkgs.distrobox
|
||||||
|
|
||||||
prismlauncher
|
pkgs.modrinth-app
|
||||||
steam
|
];
|
||||||
gamescope
|
|
||||||
|
|
||||||
direnv
|
programs.git = {
|
||||||
texliveFull
|
enable = true;
|
||||||
ispell
|
userName = "k";
|
||||||
|
userEmail = "markers711@gmail.com";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.starship.enable = true;
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
autosuggestion.enable = true;
|
||||||
|
enableCompletion = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
autocd = true;
|
||||||
|
plugins = [
|
||||||
|
{
|
||||||
|
name = "zsh-nix-shell";
|
||||||
|
file = "nix-shell.plugin.zsh";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "chisui";
|
||||||
|
repo = "zsh-nix-shell";
|
||||||
|
rev = "v0.8.0";
|
||||||
|
sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
|
||||||
|
};
|
||||||
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
programs = {
|
services.syncthing.enable = true;
|
||||||
direnv = {
|
|
||||||
enable = true;
|
|
||||||
enableZshIntegration = true;
|
|
||||||
nix-direnv.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
emacs = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.emacs-pgtk.override{withTreeSitter=true; withNativeCompilation=true;};
|
|
||||||
extraPackages = epkgs: [
|
|
||||||
epkgs.vterm
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services = {
|
|
||||||
syncthing.enable = true;
|
|
||||||
|
|
||||||
mpd = {
|
|
||||||
enable = true;
|
|
||||||
musicDirectory = "/home/k/Music";
|
|
||||||
};
|
|
||||||
|
|
||||||
emacs = {
|
|
||||||
enable = true;
|
|
||||||
defaultEditor = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
|
||||||
autoEnable = true;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 2.1 MiB After Width: | Height: | Size: 3.4 MiB |
@@ -1,75 +1,127 @@
|
|||||||
|
# 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, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
config,
|
imports =
|
||||||
pkgs,
|
[ # Include the results of the hardware scan.
|
||||||
inputs,
|
./hardware-configuration.nix
|
||||||
...
|
./service.nix
|
||||||
}: {
|
];
|
||||||
imports = [./hardware-configuration.nix ./service.nix];
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||||
powerManagement.enable = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
system.autoUpgrade.enable = true;
|
|
||||||
|
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||||
|
|
||||||
|
# Configure network proxy if necessary
|
||||||
|
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||||
|
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||||
|
|
||||||
|
# Enable networking
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
nix = {
|
# Set your time zone.
|
||||||
gc.automatic = true;
|
time.timeZone = "America/New_York";
|
||||||
settings = {
|
|
||||||
experimental-features = ["nix-command" "flakes"];
|
# Select internationalisation properties.
|
||||||
#substituters = ["http://nix.dhilton.xyz/" "https://cache.nixos.org/"];
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
#trusted-public-keys = ["nix.dhilton.xyz:MOW060dF1A0/UXmPZBue9KMxCO13PHYFwx1X9hcdYZ4="];
|
|
||||||
};
|
i18n.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";
|
||||||
};
|
};
|
||||||
|
|
||||||
nixpkgs.config = {
|
|
||||||
allowUnfree = true;
|
|
||||||
vaapiIntel = pkgs.vaapiIntel.override {enableHybridCodec = true;};
|
|
||||||
};
|
|
||||||
|
|
||||||
programs = {
|
# Enable the X11 windowing system.
|
||||||
zsh.enable = true;
|
services.xserver.enable = false;
|
||||||
neovim.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
users = {
|
# Enable the GNOME Desktop Environment.
|
||||||
motd = "Welcome to the Server";
|
services.xserver.displayManager.gdm.enable = false;
|
||||||
defaultUserShell = pkgs.zsh;
|
services.xserver.desktopManager.gnome.enable = false;
|
||||||
users = {
|
|
||||||
k = {
|
# Enable CUPS to print documents.
|
||||||
isNormalUser = true;
|
# services.auto-cpufreq.enable = true;
|
||||||
description = "k";
|
# services.thermald.enable = true;
|
||||||
extraGroups = ["networkmanager" "wheel" "libvirtd"];
|
# powerManagement.powertop.enable = true;
|
||||||
openssh.authorizedKeys.keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPKbKVe6gneJ9ghFih3bOeL++iDNPJNIMoZSdNMOsD0I k@laptop"];
|
# powerManagement.enable = true;
|
||||||
};
|
|
||||||
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 = {
|
# Enable sound with pipewire.
|
||||||
backupFileExtension = "bk";
|
sound.enable = false;
|
||||||
users = {"k" = import ./home.nix;};
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
microcodeIntel
|
# services.xserver.libinput.enable = true;
|
||||||
firefox
|
|
||||||
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
|
programs.nix-ld.enable = true;
|
||||||
|
programs.nix-ld.libraries = with pkgs; [
|
||||||
];
|
];
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
users.users.k = {
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "k";
|
||||||
|
extraGroups = [ "networkmanager" "wheel" "libvirtd"];
|
||||||
|
packages = with pkgs; [zsh];
|
||||||
|
shell = pkgs.zsh;
|
||||||
|
};
|
||||||
|
home-manager = {
|
||||||
|
users = {
|
||||||
|
"k" = import ./home.nix;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
hardware.bluetooth.enable = true;
|
services.udev.extraRules = ''
|
||||||
hardware.bluetooth.powerOnBoot = true;
|
# Allows Wolf to acces /dev/uinput
|
||||||
hardware.graphics = {
|
KERNEL=="uinput", SUBSYSTEM=="misc", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"
|
||||||
enable = true;
|
|
||||||
extraPackages = with pkgs; [
|
# Allows Wolf to access /dev/uhid
|
||||||
intel-media-driver
|
KERNEL=="uhid", TAG+="uaccess"
|
||||||
intel-vaapi-driver
|
|
||||||
vaapiVdpau
|
# Move virtual keyboard and mouse into a different seat
|
||||||
intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in)
|
SUBSYSTEMS=="input", ATTRS{id/vendor}=="ab00", MODE="0660", GROUP="input", ENV{ID_SEAT}="seat9"
|
||||||
vpl-gpu-rt # QSV on 11th gen or newer
|
|
||||||
intel-media-sdk # QSV up to 11th gen
|
# Joypads
|
||||||
];
|
SUBSYSTEMS=="input", ATTRS{name}=="Wolf X-Box One (virtual) pad", MODE="0660", GROUP="input"
|
||||||
|
SUBSYSTEMS=="input", ATTRS{name}=="Wolf PS5 (virtual) pad", MODE="0660", GROUP="input"
|
||||||
|
SUBSYSTEMS=="input", ATTRS{name}=="Wolf gamepad (virtual) motion sensors", MODE="0660", GROUP="input"
|
||||||
|
SUBSYSTEMS=="input", ATTRS{name}=="Wolf Nintendo (virtual) pad", MODE="0660", GROUP="input"
|
||||||
|
'';
|
||||||
|
|
||||||
|
users.users.game = {
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = ["docker" "input"];
|
||||||
|
packages = with pkgs; [docker-compose];
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.media = {
|
||||||
|
isNormalUser = true;
|
||||||
|
packages = with pkgs; [mpv ffmpeg handbrake makemkv];
|
||||||
|
};
|
||||||
|
|
||||||
|
system.autoUpgrade.enable = true;
|
||||||
|
nix.gc.automatic = true;
|
||||||
|
|
||||||
|
|
||||||
|
# List packages installed in system profile. To search, run:
|
||||||
|
# $ nix search wget
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
docker-compose
|
||||||
|
intel-vaapi-driver
|
||||||
|
intel-compute-runtime
|
||||||
|
intel-media-driver
|
||||||
|
microcodeIntel
|
||||||
|
];
|
||||||
|
networking.firewall = {
|
||||||
|
enable = false;
|
||||||
|
allowedTCPPorts = [80 443 22 ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# This value determines the NixOS release from which the default
|
# This value determines the NixOS release from which the default
|
||||||
@@ -79,4 +131,5 @@
|
|||||||
# 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?
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,36 +1,37 @@
|
|||||||
# 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, ... }:
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
|
{
|
||||||
boot.initrd.kernelModules = [];
|
imports =
|
||||||
boot.kernelModules = ["kvm-intel"];
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
boot.extraModulePackages = [];
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
networking.hostName = "nixserver"; # Define your hostname.
|
networking.hostName = "nixserver"; # Define your hostname.
|
||||||
|
|
||||||
|
|
||||||
fileSystems."/" = {
|
fileSystems."/" =
|
||||||
device = "/dev/disk/by-uuid/aaf4a4be-fed2-42b2-be79-4ca920bb7292";
|
{ device = "/dev/disk/by-uuid/aaf4a4be-fed2-42b2-be79-4ca920bb7292";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" =
|
||||||
device = "/dev/disk/by-uuid/150F-09C6";
|
{ device = "/dev/disk/by-uuid/150F-09C6";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [{device = "/dev/disk/by-uuid/ecde85bd-abea-4926-80d5-810b01d0e364";}];
|
swapDevices =
|
||||||
|
[ { 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
|
||||||
@@ -40,6 +41,5 @@
|
|||||||
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
hardware.cpu.intel.updateMicrocode =
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +1,44 @@
|
|||||||
|
{ config, pkgs, inputs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
config,
|
home.enableNixpkgsReleaseCheck = false;
|
||||||
pkgs,
|
nixpkgs.config.allowUnfree = true;
|
||||||
inputs,
|
|
||||||
...
|
home.username = "k";
|
||||||
}: {
|
home.homeDirectory = "/home/k";
|
||||||
imports = [../home/home_common.nix];
|
home.stateVersion = "23.11";
|
||||||
home = {packages = with pkgs; [docker docker-compose neovim waypipe];};
|
|
||||||
services = {
|
home.packages = [
|
||||||
syncthing.enable = true;
|
pkgs.syncthing
|
||||||
|
pkgs.neovim
|
||||||
|
pkgs.btop
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
userName = "k";
|
||||||
|
userEmail = "markers711@gmail.com";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.starship.enable = true;
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
autosuggestion.enable = true;
|
||||||
|
enableCompletion = true;
|
||||||
|
syntaxHighlighting.enable = true;
|
||||||
|
autocd = true;
|
||||||
|
plugins = [
|
||||||
|
{
|
||||||
|
name = "zsh-nix-shell";
|
||||||
|
file = "nix-shell.plugin.zsh";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "chisui";
|
||||||
|
repo = "zsh-nix-shell";
|
||||||
|
rev = "v0.8.0";
|
||||||
|
sha256 = "1lzrn0n4fxfcgg65v0qhnj7wnybybqzs4adz7xsrkgmcsr0ii8b7";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
services.syncthing.enable = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,215 +1,186 @@
|
|||||||
|
{pkgs,lib,...}:
|
||||||
{
|
{
|
||||||
pkgs,
|
services.openssh = {
|
||||||
lib,
|
enable = true;
|
||||||
...
|
};
|
||||||
}: {
|
|
||||||
networking = {
|
|
||||||
firewall = {
|
|
||||||
enable = true;
|
|
||||||
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
|
services.jellyfin = {
|
||||||
publicKey = "vcheBoHRxCrwzbMw0UI9ZsQfVDJizBWkeM+pF5/8+HE=";
|
enable = true;
|
||||||
allowedIPs = ["10.0.0.3/32"];
|
};
|
||||||
}
|
|
||||||
];
|
services.gitea = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
service.DISABLE_REGISTRATION = true;
|
||||||
|
server = {
|
||||||
|
HTTP_PORT = 8001;
|
||||||
|
DOMAIN = "dhilton.xyz";
|
||||||
|
ROOT_URL = "https://git.dhilton.xyz";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.nat.enable = true;
|
services.gitea-actions-runner.instances.home = {
|
||||||
|
enable = true;
|
||||||
|
url = "https://git.dhilton.xyz";
|
||||||
|
name = "nixsrv";
|
||||||
|
token = "LaqTWUDidsm510TGBglGvcphsUxYmCzMjrZbEtJj";
|
||||||
|
labels = ["ubuntu-latest:docker://node:16-bullseye" "ubuntu-22.04:docker://node:16-bullseye" "ubuntu-20.04:docker://node:16-bullseye" "ubuntu-18.04:docker://node:16-buster" "native:host"];
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
services.home-assistant = {
|
||||||
|
enable = true;
|
||||||
|
extraComponents = ["wiz" "fail2ban" "whisper" "piper" "wyoming" "ollama"];
|
||||||
|
config = {
|
||||||
|
default_config={};
|
||||||
|
"automation ui" = "!include automations.yaml";
|
||||||
|
http = {
|
||||||
|
use_x_forwarded_for="true";
|
||||||
|
trusted_proxies=["127.0.0.1"];
|
||||||
|
server_port=8003;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
services.ntfy-sh = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
listen-http = ":8004";
|
||||||
|
auth-file = "/var/lib/ntfy.db";
|
||||||
|
auth-default-access = "read-only";
|
||||||
|
base-url = "https://ntfy.dhilton.xyz";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.searx = {
|
||||||
|
enable=true;
|
||||||
|
settings = { server.port = 8005; server.secret_key = "secretlol";};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.domain = "dhilton.xyz";
|
||||||
|
|
||||||
|
services.postgresql.enable = true;
|
||||||
|
|
||||||
|
services.akkoma.enable = true;
|
||||||
|
services.akkoma.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";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.akkoma.nginx = {
|
||||||
|
enableACME = true;
|
||||||
|
forceSSL = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.fail2ban = {
|
||||||
|
enable=true;
|
||||||
|
};
|
||||||
|
|
||||||
|
virtualisation.docker = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.nginx = {
|
||||||
|
enable = true;
|
||||||
|
recommendedProxySettings = true;
|
||||||
|
recommendedTlsSettings = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.nginx.virtualHosts = {
|
||||||
|
|
||||||
|
"dhilton.xyz" = {
|
||||||
|
enableACME = true;
|
||||||
|
forceSSL = true;
|
||||||
|
root = "/var/www/dhilton";
|
||||||
|
};
|
||||||
|
|
||||||
|
"git.dhilton.xyz" = {
|
||||||
|
addSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8001";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"ntfy.dhilton.xyz" = {
|
||||||
|
addSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8004";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"jel.dhilton.xyz" = {
|
||||||
|
addSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8096";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
"srx.dhilton.xyz" = {
|
||||||
|
addSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8005";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"map.dhilton.xyz" = {
|
||||||
|
addSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8100";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
"hom.dhilton.xyz" = {
|
||||||
|
addSSL = true;
|
||||||
|
enableACME = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "http://127.0.0.1:8003";
|
||||||
|
proxyWebsockets = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
security.acme = {
|
security.acme = {
|
||||||
acceptTerms = true;
|
acceptTerms = true;
|
||||||
defaults.email = "markers711@gmail.com";
|
defaults.email = "markers711@gmail.com";
|
||||||
};
|
};
|
||||||
|
virtualisation.libvirtd = {
|
||||||
virtualisation = {
|
enable = true;
|
||||||
docker = {enable = true;};
|
qemu = {
|
||||||
libvirtd = {enable = true;};
|
package = pkgs.qemu_kvm;
|
||||||
kvmgt = {enable = true;};
|
runAsRoot = true;
|
||||||
};
|
swtpm.enable = true;
|
||||||
|
ovmf = {
|
||||||
services = {
|
|
||||||
openssh = {enable = true;};
|
|
||||||
|
|
||||||
jellyfin = {enable = true;};
|
|
||||||
|
|
||||||
fail2ban = {enable = true;};
|
|
||||||
|
|
||||||
postgresql = {enable = true;};
|
|
||||||
|
|
||||||
i2p = {enable = true;};
|
|
||||||
|
|
||||||
nix-serve = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
secretKeyFile = "/var/cache-priv-key.pem";
|
packages = [(pkgs.OVMF.override {
|
||||||
};
|
secureBoot = true;
|
||||||
|
tpmSupport = true;
|
||||||
ollama = {
|
}).fd];
|
||||||
enable = false;
|
|
||||||
package = pkgs.ollama-intel;
|
|
||||||
};
|
|
||||||
|
|
||||||
gitea = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
service.DISABLE_REGISTRATION = true;
|
|
||||||
service.ENABLE_PUSH_CREATE_USER = true;
|
|
||||||
server = {
|
|
||||||
HTTP_PORT = 8001;
|
|
||||||
DOMAIN = "dhilton.xyz";
|
|
||||||
ROOT_URL = "https://git.dhilton.xyz";
|
|
||||||
ENABLE_PUSH_CREATE_USER = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gitea-actions-runner.instances.home = {
|
|
||||||
enable = true;
|
|
||||||
url = "https://git.dhilton.xyz";
|
|
||||||
name = "nixsrv";
|
|
||||||
token = "LaqTWUDidsm510TGBglGvcphsUxYmCzMjrZbEtJj";
|
|
||||||
labels = [
|
|
||||||
"ubuntu-latest:docker://catthehacker/ubuntu:act-latest"
|
|
||||||
"ubuntu-22.04:docker://catthehacker/ubuntu:act-22.04"
|
|
||||||
"ubuntu-20.04:docker://catthehacker/ubuntu:act-20.04"
|
|
||||||
"ubuntu-18.04:docker://catthehacker/ubuntu:act-18.04"
|
|
||||||
"native:host"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
home-assistant = {
|
|
||||||
enable = false;
|
|
||||||
extraComponents = ["wiz" "fail2ban" "ollama" "wyoming" "androidtv" "androidtv_remote"];
|
|
||||||
config = {
|
|
||||||
default_config = {};
|
|
||||||
"automation ui" = "!include automations.yaml";
|
|
||||||
http = {
|
|
||||||
use_x_forwarded_for = "true";
|
|
||||||
trusted_proxies = ["127.0.0.1"];
|
|
||||||
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 = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
server.port = 8003;
|
|
||||||
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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
nginx = {
|
|
||||||
enable = true;
|
|
||||||
recommendedProxySettings = true;
|
|
||||||
recommendedTlsSettings = true;
|
|
||||||
|
|
||||||
virtualHosts = {
|
|
||||||
"dhilton.xyz" = {
|
|
||||||
enableACME = true;
|
|
||||||
forceSSL = true;
|
|
||||||
root = "/var/www/dhilton";
|
|
||||||
};
|
|
||||||
|
|
||||||
"git.dhilton.xyz" = {
|
|
||||||
enableACME = true;
|
|
||||||
forceSSL = true;
|
|
||||||
locations."/" = {
|
|
||||||
proxyPass = "http://127.0.0.1:8001";
|
|
||||||
proxyWebsockets = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
"jel.dhilton.xyz" = {
|
|
||||||
forceSSL = true;
|
|
||||||
enableACME = true;
|
|
||||||
locations."/" = {
|
|
||||||
proxyPass = "http://127.0.0.1:8096";
|
|
||||||
proxyWebsockets = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
"hom.dhilton.xyz" = {
|
|
||||||
forceSSL = true;
|
|
||||||
enableACME = true;
|
|
||||||
locations."/" = {
|
|
||||||
proxyPass = "http://127.0.0.1:8002";
|
|
||||||
proxyWebsockets = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
"srx.dhilton.xyz" = {
|
|
||||||
forceSSL = true;
|
|
||||||
enableACME = true;
|
|
||||||
locations."/" = {
|
|
||||||
proxyPass = "http://127.0.0.1:8003";
|
|
||||||
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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,20 +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, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
config,
|
imports =
|
||||||
pkgs,
|
[ # Include the results of the hardware scan.
|
||||||
inputs,
|
./hardware-configuration.nix
|
||||||
nixos-hardware,
|
];
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
# Include the results of the hardware scan.
|
|
||||||
./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;
|
||||||
|
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
@@ -35,22 +33,27 @@
|
|||||||
LC_TIME = "en_US.UTF-8";
|
LC_TIME = "en_US.UTF-8";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# Enable the X11 windowing system.
|
# Enable the X11 windowing system.
|
||||||
#services.xserver.enable = true;
|
#services.xserver.enable = true;
|
||||||
|
|
||||||
# Enable the GNOME Desktop Environment.
|
# Enable the GNOME Desktop Environment.
|
||||||
services.xserver.desktopManager.phosh = {
|
services.xserver.desktopManager.phosh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
group = "";
|
group = "";
|
||||||
user = "k";
|
user = "k";
|
||||||
phocConfig.xwayland = "immediate";
|
phocConfig.xwayland = "immediate";
|
||||||
};
|
};
|
||||||
|
|
||||||
# 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 = {
|
||||||
@@ -60,36 +63,41 @@
|
|||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
jack.enable = true;
|
jack.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Enable touchpad support (enabled default in most desktopManager).
|
# Enable touchpad support (enabled default in most desktopManager).
|
||||||
# services.xserver.libinput.enable = true;
|
# services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
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;
|
||||||
|
|
||||||
|
|
||||||
# List packages installed in system profile. To search, run:
|
# List packages installed in system profile. To search, run:
|
||||||
# $ nix search wget
|
# $ nix search wget
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
intel-vaapi-driver
|
intel-vaapi-driver
|
||||||
intel-compute-runtime
|
intel-compute-runtime
|
||||||
intel-media-driver
|
intel-media-driver
|
||||||
microcodeIntel
|
microcodeIntel
|
||||||
gnome-console
|
gnome-console
|
||||||
neovim
|
neovim
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.kernelModules = ["soc_button_array"];
|
boot.kernelModules = [ "soc_button_array" ];
|
||||||
|
|
||||||
networking.firewall.enable = true;
|
networking.firewall.enable = true;
|
||||||
|
|
||||||
@@ -100,4 +108,5 @@
|
|||||||
# 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?
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,19 +1,17 @@
|
|||||||
# 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, ... }:
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usb_storage" "sd_mod"];
|
{
|
||||||
boot.initrd.kernelModules = [];
|
imports =
|
||||||
boot.kernelModules = ["kvm-intel"];
|
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||||
boot.extraModulePackages = [];
|
];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
hardware.opengl.driSupport32Bit = true;
|
hardware.opengl.driSupport32Bit = true;
|
||||||
networking.hostName = "surface";
|
networking.hostName = "surface";
|
||||||
@@ -22,17 +20,21 @@
|
|||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
fileSystems."/" = {
|
|
||||||
device = "/dev/disk/by-uuid/479b497e-7807-48e4-82e6-d6468549a281";
|
|
||||||
fsType = "ext4";
|
|
||||||
};
|
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
|
||||||
device = "/dev/disk/by-uuid/DACA-E1BC";
|
|
||||||
fsType = "vfat";
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [{device = "/dev/disk/by-uuid/19941c01-ac8c-4609-a834-20259f3ee32e";}];
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/479b497e-7807-48e4-82e6-d6468549a281";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/DACA-E1BC";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices =
|
||||||
|
[ { 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
|
||||||
@@ -42,6 +44,5 @@
|
|||||||
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
hardware.cpu.intel.updateMicrocode =
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,6 @@
|
|||||||
|
{ config, pkgs, inputs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
home.enableNixpkgsReleaseCheck = false;
|
home.enableNixpkgsReleaseCheck = false;
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
|||||||
@@ -1,49 +0,0 @@
|
|||||||
{
|
|
||||||
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"
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
})
|
|
||||||
];
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user