completely ripping off fufexan in hopes of fixing things
This commit is contained in:
275
flake.lock
generated
275
flake.lock
generated
@@ -20,11 +20,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722283490,
|
||||
"narHash": "sha256-xqaO+h2ams6bpfNdUAtvWN6SKuNIeyr3lXYsAKYS/+0=",
|
||||
"lastModified": 1722347739,
|
||||
"narHash": "sha256-rAoh+K6KG+b1DwSWtqRVocdojnH6nGk6q07mNltoUSM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "9ccb4411ee001715db0fbc74e7ff1cea02c6c24f",
|
||||
"rev": "7c3565f9bedc7cb601cc0baa14792247e4dc1d5a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -94,11 +94,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1717535930,
|
||||
"narHash": "sha256-1hZ/txnbd/RmiBPNUs7i8UQw2N89uAK3UzrGAWdnFfU=",
|
||||
"lastModified": 1721842668,
|
||||
"narHash": "sha256-k3oiD2z2AAwBFLa4+xfU+7G5fisRXfkvrMTCJrjZzXo=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "55e7754ec31dac78980c8be45f8a28e80e370946",
|
||||
"rev": "529c1a0b1f29f0d78fa3086b8f6a134c71ef3aaf",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -168,7 +168,6 @@
|
||||
}
|
||||
},
|
||||
"flake-compat_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
@@ -184,6 +183,22 @@
|
||||
}
|
||||
},
|
||||
"flake-compat_3": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_4": {
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
@@ -200,16 +215,15 @@
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1717285511,
|
||||
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
|
||||
"lastModified": 1719994518,
|
||||
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
|
||||
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -219,6 +233,27 @@
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1719994518,
|
||||
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_3": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"nixvim",
|
||||
@@ -311,25 +346,7 @@
|
||||
},
|
||||
"flake-utils_4": {
|
||||
"inputs": {
|
||||
"systems": "systems_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_5": {
|
||||
"inputs": {
|
||||
"systems": "systems_7"
|
||||
"systems": "systems_6"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
@@ -436,6 +453,27 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore_3": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"pre-commit-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1722332872,
|
||||
@@ -571,11 +609,11 @@
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722347414,
|
||||
"narHash": "sha256-HTj5Ttd1BjWJX/gGqyYLlwXhGjMTVKIxmi3q8s6pOTQ=",
|
||||
"lastModified": 1722366828,
|
||||
"narHash": "sha256-grUcMvIZs3ncEg2irrFJtTPxR0YaOYO4D1CgUB+u0dg=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "cc7c117fe76ff0a4da56b18026c725501de92c84",
|
||||
"revCount": 5027,
|
||||
"rev": "8ec3dc4c09c30aab7669f99ba6359be320023fa8",
|
||||
"revCount": 5028,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/hyprwm/Hyprland"
|
||||
@@ -717,24 +755,22 @@
|
||||
"lanzaboote": {
|
||||
"inputs": {
|
||||
"crane": "crane",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-parts": "flake-parts",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1718178907,
|
||||
"narHash": "sha256-eSZyrQ9uoPB9iPQ8Y5H7gAmAgAvCw3InStmU3oEjqsE=",
|
||||
"lastModified": 1722329086,
|
||||
"narHash": "sha256-e/fSi0WER06N8WCvpht62fkGtWfe5ckDxr6zNYkwkFw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "lanzaboote",
|
||||
"rev": "b627ccd97d0159214cee5c7db1412b75e4be6086",
|
||||
"rev": "f5a3a7dff44d131807fc1a89fbd8576cd870334a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "v0.4.1",
|
||||
"repo": "lanzaboote",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -812,6 +848,30 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-gaming": {
|
||||
"inputs": {
|
||||
"flake-parts": [
|
||||
"flake-parts"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"umu": "umu"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722241867,
|
||||
"narHash": "sha256-//9wuNlkw5JZU2C3ELs8TtAtZE5HWVPtcM6fmgk2IUA=",
|
||||
"owner": "fufexan",
|
||||
"repo": "nix-gaming",
|
||||
"rev": "7a07614bba2b5674b4f3b5c4d7baf80e71a55406",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "fufexan",
|
||||
"repo": "nix-gaming",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-github-actions": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -868,16 +928,32 @@
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1710695816,
|
||||
"narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=",
|
||||
"lastModified": 1720386169,
|
||||
"narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "614b4613980a522ba49f0d194531beddbb7220d3",
|
||||
"rev": "194846768975b7ad2c4988bdb82572c00222c0d7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-23.11",
|
||||
"ref": "nixos-24.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable_2": {
|
||||
"locked": {
|
||||
"lastModified": 1720386169,
|
||||
"narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "194846768975b7ad2c4988bdb82572c00222c0d7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-24.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -900,11 +976,11 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1717794163,
|
||||
"narHash": "sha256-Ch6ZpFPVvi7Bb6gmmuufpTEFkXqa43pC94XMfU5FEt0=",
|
||||
"lastModified": 1722264024,
|
||||
"narHash": "sha256-gomyYQrlOltr2/prDRikRDQoPz+J5Qq6SEJrqVC5x2c=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "121f68ed7c6c32de5a8ce91a08ef25713d1c4755",
|
||||
"rev": "fc5e08c73022f96cfeaefa2e087e8b713d47d201",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -949,8 +1025,8 @@
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"devshell": "devshell",
|
||||
"flake-compat": "flake-compat_3",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"flake-compat": "flake-compat_4",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"git-hooks": "git-hooks",
|
||||
"home-manager": "home-manager_3",
|
||||
"nix-darwin": "nix-darwin",
|
||||
@@ -976,7 +1052,7 @@
|
||||
},
|
||||
"nuschtosSearch": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_4",
|
||||
"flake-utils": "flake-utils_3",
|
||||
"nixpkgs": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
@@ -996,6 +1072,31 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore_3",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1721042469,
|
||||
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks-nix": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
@@ -1010,11 +1111,11 @@
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1717664902,
|
||||
"narHash": "sha256-7XfBuLULizXjXfBYy/VV+SpYMHreNRHk9nKMsm1bgb4=",
|
||||
"lastModified": 1721042469,
|
||||
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "cc4d466cb1254af050ff7bdf47f6d404a7c646d1",
|
||||
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1027,34 +1128,34 @@
|
||||
"inputs": {
|
||||
"chaotic": "chaotic",
|
||||
"firefox-nightly": "firefox-nightly",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-parts": "flake-parts",
|
||||
"flake-utils": "flake-utils_2",
|
||||
"hardware": "hardware",
|
||||
"home-manager": "home-manager_2",
|
||||
"hyprland": "hyprland",
|
||||
"lanzaboote": "lanzaboote",
|
||||
"nix-gaming": "nix-gaming",
|
||||
"nixpkgs": "nixpkgs_4",
|
||||
"nixvim": "nixvim",
|
||||
"systems": "systems_6",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"systems": "systems_5",
|
||||
"wezterm": "wezterm"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"lanzaboote",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"lanzaboote",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1717813066,
|
||||
"narHash": "sha256-wqbRwq3i7g5EHIui0bIi84mdqZ/It1AXBSLJ5tafD28=",
|
||||
"lastModified": 1722219664,
|
||||
"narHash": "sha256-xMOJ+HW4yj6e69PvieohUJ3dBSdgCfvI0nnCEe6/yVc=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "6dc3e45fe4aee36efeed24d64fc68b1f989d5465",
|
||||
"rev": "a6fbda5d9a14fb5f7c69b8489d24afeb349c7bb4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -1145,21 +1246,6 @@
|
||||
}
|
||||
},
|
||||
"systems_5": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_6": {
|
||||
"locked": {
|
||||
"lastModified": 1689347949,
|
||||
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||
@@ -1174,7 +1260,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_7": {
|
||||
"systems_6": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
@@ -1210,9 +1296,34 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"umu": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nix-gaming",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"dir": "packaging/nix",
|
||||
"lastModified": 1722028419,
|
||||
"narHash": "sha256-kiujJqlhP1YUDf0+KfC+o7wdfltZUOBpJbPFPgR18hA=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "7e00027c1bf9f4402318ee0530d95d34fbbc72c8",
|
||||
"revCount": 684,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/Open-Wine-Components/umu-launcher/?dir=packaging/nix"
|
||||
},
|
||||
"original": {
|
||||
"dir": "packaging/nix",
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/Open-Wine-Components/umu-launcher/?dir=packaging/nix"
|
||||
}
|
||||
},
|
||||
"wezterm": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils_5",
|
||||
"flake-utils": "flake-utils_4",
|
||||
"freetype2": "freetype2",
|
||||
"harfbuzz": "harfbuzz",
|
||||
"libpng": "libpng",
|
||||
@@ -1253,11 +1364,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722181019,
|
||||
"narHash": "sha256-Lj/g1UzrsTZUixtveQix6eB3pon2j23qv5/5pzTx0LQ=",
|
||||
"lastModified": 1722365976,
|
||||
"narHash": "sha256-Khdm+mDzYA//XaU0M+hftod+rKr5q9SSHSEuiQ0/9ow=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "0e2f3b9c85f7bab3983098a01366876d34daf383",
|
||||
"rev": "7f2a77ddf60390248e2a3de2261d7102a13e5341",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
115
flake.nix
115
flake.nix
@@ -1,17 +1,50 @@
|
||||
{
|
||||
description = "My NixOS";
|
||||
|
||||
outputs = inputs:
|
||||
inputs.flake-parts.lib.mkFlake {inherit inputs;} {
|
||||
systems = ["x86_64-linux"];
|
||||
|
||||
imports = [
|
||||
./home/users
|
||||
./nixos/hosts
|
||||
./nixos/pkgs
|
||||
./pre-commit-hooks.nix
|
||||
];
|
||||
|
||||
perSystem = {
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
devShells.default = pkgs.mkShell {
|
||||
packages = [
|
||||
pkgs.alejandra
|
||||
pkgs.git
|
||||
pkgs.nodePackages.prettier
|
||||
];
|
||||
name = "dots";
|
||||
DIRENV_LOG_FORMAT = "";
|
||||
shellHook = ''
|
||||
${config.pre-commit.installationScript}
|
||||
'';
|
||||
};
|
||||
|
||||
formatter = pkgs.alejandra;
|
||||
};
|
||||
};
|
||||
inputs = {
|
||||
# Nix environs
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
# nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05";
|
||||
systems.url = "github:nix-systems/default-linux";
|
||||
hardware.url = "github:nixos/nixos-hardware";
|
||||
lanzaboote.url = "github:nix-community/lanzaboote/v0.4.1";
|
||||
lanzaboote.url = "github:nix-community/lanzaboote";
|
||||
flake-utils = {
|
||||
url = "github:numtide/flake-utils";
|
||||
inputs.systems.follows = "systems";
|
||||
};
|
||||
flake-compat.url = "github:edolstra/flake-compat";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
@@ -20,83 +53,29 @@
|
||||
url = "github:nix-community/nixvim";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
flake-parts = {
|
||||
url = "github:hercules-ci/flake-parts";
|
||||
inputs.nixpkgs-lib.follows = "nixpkgs";
|
||||
};
|
||||
# cachyos
|
||||
chaotic.url = "https://flakehub.com/f/chaotic-cx/nyx/*.tar.gz";
|
||||
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
||||
#nix-gl = {
|
||||
# url = "github:nix-community/nixgl";
|
||||
# inputs.nixpkgs.follows = "nixpkgs";
|
||||
#};
|
||||
# anyrun.url = "github:anyrun-org/anyrun";
|
||||
# Neovim Nightly
|
||||
#neovim-nightly-overlay = {
|
||||
# url = "github:nix-community/neovim-nightly-overlay";
|
||||
# inputs.nixpkgs.follows = "nixpkgs";
|
||||
#};
|
||||
# Firefox Nightly
|
||||
nix-gaming = {
|
||||
url = "github:fufexan/nix-gaming";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-parts.follows = "flake-parts";
|
||||
};
|
||||
firefox-nightly = {
|
||||
url = "github:nix-community/flake-firefox-nightly";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
#fenix = {
|
||||
# url = "github:nix-community/fenix";
|
||||
# inputs.nixpkgs.follows = "nixpkgs";
|
||||
#};
|
||||
# ags.url = "github:Aylur/ags";
|
||||
wezterm = {
|
||||
url = "github:wez/wezterm?dir=nix";
|
||||
};
|
||||
};
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
systems,
|
||||
lanzaboote,
|
||||
flake-utils,
|
||||
...
|
||||
} @ inputs: let
|
||||
inherit (self) outputs;
|
||||
lib = nixpkgs.lib // home-manager.lib;
|
||||
forEachSystem = f: lib.genAttrs (import systems) (system: f pkgsFor.${system});
|
||||
pkgsFor = lib.genAttrs (import systems) (
|
||||
system:
|
||||
import nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
}
|
||||
);
|
||||
in {
|
||||
inherit lib;
|
||||
devShells = forEachSystem (pkgs: import ./nixos/core/shells/dev.nix {inherit pkgs;});
|
||||
formatter = forEachSystem (pkgs: pkgs.alejandra);
|
||||
|
||||
nixosConfigurations = {
|
||||
cnix = lib.nixosSystem {
|
||||
modules = [
|
||||
./nixos/hosts/cnix
|
||||
lanzaboote.nixosModules.lanzaboote
|
||||
inputs.chaotic.nixosModules.default
|
||||
];
|
||||
specialArgs = {
|
||||
inherit inputs outputs;
|
||||
};
|
||||
};
|
||||
adampad = lib.nixosSystem {
|
||||
modules = [./nixos/hosts/adampad];
|
||||
specialArgs = {
|
||||
inherit inputs outputs;
|
||||
};
|
||||
};
|
||||
toothpc = lib.nixosSystem {
|
||||
modules = [
|
||||
./nixos/hosts/toothpc
|
||||
lanzaboote.nixosModules.lanzaboote
|
||||
];
|
||||
specialArgs = {
|
||||
inherit inputs outputs;
|
||||
};
|
||||
};
|
||||
pre-commit-hooks = {
|
||||
url = "github:cachix/pre-commit-hooks.nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-compat.follows = "flake-compat";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
36
home/cnst.nix
Normal file
36
home/cnst.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
lib,
|
||||
self,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
# inputs.matugen.nixosModules.default
|
||||
# inputs.nix-index-db.hmModules.nix-index
|
||||
# inputs.tailray.homeManagerModules.default
|
||||
# self.nixosModules.theme
|
||||
];
|
||||
|
||||
home = {
|
||||
username = "cnst";
|
||||
homeDirectory = "/home/cnst";
|
||||
stateVersion = "23.11";
|
||||
extraOutputsToInstall = ["doc" "devdoc"];
|
||||
};
|
||||
|
||||
# disable manuals as nmd fails to build often
|
||||
manual = {
|
||||
html.enable = false;
|
||||
json.enable = false;
|
||||
manpages.enable = false;
|
||||
};
|
||||
|
||||
# let HM manage itself when in standalone mode
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
lib = prev.lib // {colors = import "${self}/lib/colors" lib;};
|
||||
})
|
||||
];
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
{
|
||||
inputs,
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./imports.nix
|
||||
];
|
||||
|
||||
nix = {
|
||||
package = lib.mkDefault pkgs.nix;
|
||||
settings = {
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
warn-dirty = false;
|
||||
};
|
||||
};
|
||||
|
||||
# TODO: Set your username
|
||||
home = {
|
||||
username = "cnst";
|
||||
homeDirectory = "/home/cnst";
|
||||
};
|
||||
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
# Nicely reload system units when changing configs
|
||||
systemd.user.startServices = "sd-switch";
|
||||
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
home.stateVersion = "23.11";
|
||||
}
|
||||
49
home/users/default.nix
Normal file
49
home/users/default.nix
Normal file
@@ -0,0 +1,49 @@
|
||||
{
|
||||
self,
|
||||
inputs,
|
||||
...
|
||||
}: let
|
||||
# get these into the module system
|
||||
extraSpecialArgs = {inherit inputs self;};
|
||||
|
||||
homeImports = {
|
||||
"cnst@cnix" = [
|
||||
../cnst.nix
|
||||
./cnst
|
||||
];
|
||||
"adam@adampad" = [
|
||||
../adam.nix
|
||||
./adam
|
||||
];
|
||||
"toothpick@toothpc" = [
|
||||
../toothpick.nix
|
||||
./toothpick
|
||||
];
|
||||
};
|
||||
|
||||
inherit (inputs.hm.lib) homeManagerConfiguration;
|
||||
|
||||
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
||||
in {
|
||||
# we need to pass this to NixOS' HM module
|
||||
_module.args = {inherit homeImports;};
|
||||
|
||||
flake = {
|
||||
homeConfigurations = {
|
||||
"cnst_cnix" = homeManagerConfiguration {
|
||||
modules = homeImports."cnst@cnix";
|
||||
inherit pkgs extraSpecialArgs;
|
||||
};
|
||||
|
||||
"adam_adampad" = homeManagerConfiguration {
|
||||
modules = homeImports."adam@adampad";
|
||||
inherit pkgs extraSpecialArgs;
|
||||
};
|
||||
|
||||
"toothpick_toothpc" = homeManagerConfiguration {
|
||||
modules = homeImports."toothpick@toothpc";
|
||||
inherit pkgs extraSpecialArgs;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
24
nixos/core/lanzaboote.nix
Normal file
24
nixos/core/lanzaboote.nix
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
# lanzaboote config
|
||||
{
|
||||
imports = [
|
||||
inputs.lanzaboote.nixosModules.lanzaboote
|
||||
];
|
||||
|
||||
boot = {
|
||||
lanzaboote = {
|
||||
enable = true;
|
||||
pkiBundle = "/etc/secureboot";
|
||||
};
|
||||
|
||||
# we let lanzaboote install systemd-boot
|
||||
loader.systemd-boot.enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
environment.systemPackages = [pkgs.sbctl];
|
||||
}
|
||||
28
nixos/default.nix
Normal file
28
nixos/default.nix
Normal file
@@ -0,0 +1,28 @@
|
||||
let
|
||||
desktop = [
|
||||
./core/hyprland.nix
|
||||
./core/zsh.nix
|
||||
./core/fonts.nix
|
||||
|
||||
./locale
|
||||
|
||||
./services/audio
|
||||
./services/greetd
|
||||
./services/gnome-keyring
|
||||
./services/gvfs
|
||||
./services/locate
|
||||
./services/mullvad
|
||||
./services/openssh
|
||||
./services/power
|
||||
./services/samba
|
||||
./services/udisks
|
||||
];
|
||||
|
||||
laptop =
|
||||
desktop
|
||||
++ [
|
||||
./services/fwupd
|
||||
];
|
||||
in {
|
||||
inherit desktop laptop;
|
||||
}
|
||||
@@ -1,4 +1,8 @@
|
||||
{pkgs, ...}: {
|
||||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
programs.gamemode = {
|
||||
enable = true;
|
||||
settings = {
|
||||
@@ -17,4 +21,9 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
# see https://github.com/fufexan/nix-gaming/#pipewire-low-latency
|
||||
services.pipewire.lowLatency.enable = true;
|
||||
imports = [
|
||||
inputs.nix-gaming.nixosModules.pipewireLowLatency
|
||||
];
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
hardware = {
|
||||
bluetooth = {
|
||||
enable = true;
|
||||
powerOnBoot = true;
|
||||
powerOnBoot = false;
|
||||
};
|
||||
logitech.wireless = {
|
||||
enable = true;
|
||||
|
||||
@@ -37,44 +37,19 @@ in {
|
||||
|
||||
imports = [
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
./imports.nix
|
||||
./system.nix
|
||||
./hardware-configuration.nix
|
||||
./substituters.nix
|
||||
];
|
||||
|
||||
home-manager.users.cnst = import ../../../home/users/cnst/home.nix;
|
||||
boot.kernelPackages = lib.mkForce pkgs.linuxPackages_cachyos;
|
||||
environment.systemPackages = [pkgs.scx];
|
||||
|
||||
nix = {
|
||||
# pin the registry to avoid downloading and evaling a new nixpkgs version every time
|
||||
registry = lib.mapAttrs (_: v: {flake = v;}) inputs;
|
||||
|
||||
# set the path for channels compat
|
||||
nixPath = lib.mapAttrsToList (key: _: "${key}=flake:${key}") config.nix.registry;
|
||||
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
builders-use-substitutes = true;
|
||||
warn-dirty = false;
|
||||
experimental-features = ["nix-command" "flakes"];
|
||||
flake-registry = "/etc/nix/registry.json";
|
||||
|
||||
# for direnv GC roots
|
||||
keep-derivations = true;
|
||||
keep-outputs = true;
|
||||
|
||||
trusted-users = ["root" "@wheel"];
|
||||
};
|
||||
};
|
||||
# Bootloader
|
||||
boot.loader = {
|
||||
systemd-boot.enable = lib.mkForce false;
|
||||
efi.canTouchEfiVariables = true;
|
||||
};
|
||||
boot.lanzaboote = {
|
||||
enable = true;
|
||||
pkiBundle = "/etc/secureboot";
|
||||
};
|
||||
boot.kernelParams = [
|
||||
"amd_pstate=active"
|
||||
"quiet"
|
||||
"splash"
|
||||
];
|
||||
|
||||
environment.sessionVariables = {
|
||||
FLAKE = "/home/cnst/.nix-config";
|
||||
|
||||
@@ -9,9 +9,7 @@
|
||||
...
|
||||
}: {
|
||||
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
||||
boot = {
|
||||
initrd = {
|
||||
availableKernelModules = [
|
||||
boot.initrd.availableKernelModules = [
|
||||
"nvme"
|
||||
"xhci_pci"
|
||||
"ahci"
|
||||
@@ -19,18 +17,9 @@
|
||||
"usb_storage"
|
||||
"sd_mod"
|
||||
];
|
||||
kernelModules = ["amdgpu"];
|
||||
};
|
||||
kernelModules = ["kvm-amd"];
|
||||
kernelPackages = lib.mkForce pkgs.linuxPackages_cachyos;
|
||||
consoleLogLevel = 3;
|
||||
kernelParams = [
|
||||
"amd_pstate=active"
|
||||
"quiet"
|
||||
"splash"
|
||||
];
|
||||
extraModulePackages = [];
|
||||
};
|
||||
boot.initrd.kernelModules = ["amdgpu"];
|
||||
boot.kernelModules = ["kvm-amd"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/de372c64-89a2-4bbe-ad57-926cdd98e97d";
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
{
|
||||
inputs,
|
||||
outputs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
programs = {
|
||||
@@ -12,6 +14,27 @@
|
||||
};
|
||||
};
|
||||
|
||||
nix = {
|
||||
# pin the registry to avoid downloading and evaling a new nixpkgs version every time
|
||||
registry = lib.mapAttrs (_: v: {flake = v;}) inputs;
|
||||
|
||||
# set the path for channels compat
|
||||
nixPath = lib.mapAttrsToList (key: _: "${key}=flake:${key}") config.nix.registry;
|
||||
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
builders-use-substitutes = true;
|
||||
experimental-features = ["nix-command" "flakes"];
|
||||
flake-registry = "/etc/nix/registry.json";
|
||||
|
||||
# for direnv GC roots
|
||||
keep-derivations = true;
|
||||
keep-outputs = true;
|
||||
|
||||
trusted-users = ["root" "@wheel"];
|
||||
};
|
||||
};
|
||||
|
||||
security = {
|
||||
rtkit.enable = true;
|
||||
pam.services.hyprlock = {};
|
||||
@@ -20,13 +43,7 @@
|
||||
environment.localBinInPath = true;
|
||||
|
||||
console.useXkbConfig = true;
|
||||
home-manager = {
|
||||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
extraSpecialArgs = {
|
||||
inherit inputs outputs;
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs = {
|
||||
overlays = [
|
||||
(_: prev: {
|
||||
|
||||
74
nixos/hosts/default.nix
Normal file
74
nixos/hosts/default.nix
Normal file
@@ -0,0 +1,74 @@
|
||||
{
|
||||
self,
|
||||
inputs,
|
||||
homeImports,
|
||||
...
|
||||
}: {
|
||||
flake.nixosConfigurations = let
|
||||
# shorten paths
|
||||
inherit (inputs.nixpkgs.lib) nixosSystem;
|
||||
mod = "${self}/nixos";
|
||||
|
||||
# get the basic config to build on top of
|
||||
inherit (import "${self}/nixos") desktop laptop;
|
||||
|
||||
# get these into the module system
|
||||
specialArgs = {inherit inputs self;};
|
||||
in {
|
||||
cnix = nixosSystem {
|
||||
inherit specialArgs;
|
||||
modules =
|
||||
desktop
|
||||
++ [
|
||||
./cnix
|
||||
"${mod}/core/lanzaboote.nix"
|
||||
"${mod}/core/network/cnix.nix"
|
||||
|
||||
"${mod}/hardware/cnix.nix"
|
||||
|
||||
"${mod}/services/blueman"
|
||||
"${mod}/services/xserver/cnix.nix"
|
||||
|
||||
"${mod}/extra/gaming.nix"
|
||||
"${mod}/extra/android"
|
||||
"${mod}/extra/workstation"
|
||||
{
|
||||
home-manager = {
|
||||
users.cnst.imports = homeImports."cnst@cnix";
|
||||
extraSpecialArgs = specialArgs;
|
||||
};
|
||||
}
|
||||
|
||||
# inputs.agenix.nixosModules.default
|
||||
inputs.chaotic.nixosModules.default
|
||||
];
|
||||
};
|
||||
|
||||
# rog = nixosSystem {
|
||||
# inherit specialArgs;
|
||||
# modules =
|
||||
# laptop
|
||||
# ++ [
|
||||
# ./rog
|
||||
# "${mod}/core/lanzaboote.nix"
|
||||
|
||||
# "${mod}/programs/gamemode.nix"
|
||||
# "${mod}/programs/hyprland.nix"
|
||||
# "${mod}/programs/games.nix"
|
||||
|
||||
# "${mod}/services/kanata"
|
||||
# {home-manager.users.mihai.imports = homeImports."mihai@rog";}
|
||||
# ];
|
||||
# };
|
||||
|
||||
# kiiro = nixosSystem {
|
||||
# inherit specialArgs;
|
||||
# modules =
|
||||
# desktop
|
||||
# ++ [
|
||||
# ./kiiro
|
||||
# {home-manager.users.mihai.imports = homeImports.server;}
|
||||
# ];
|
||||
# };
|
||||
};
|
||||
}
|
||||
13
nixos/pkgs/default.nix
Normal file
13
nixos/pkgs/default.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
systems = ["x86_64-linux"];
|
||||
|
||||
perSystem = {
|
||||
pkgs,
|
||||
inputs',
|
||||
...
|
||||
}: {
|
||||
packages = {
|
||||
wl-ocr = pkgs.callPackage ./wl-ocr {};
|
||||
};
|
||||
};
|
||||
}
|
||||
17
nixos/pkgs/wl-ocr/default.nix
Normal file
17
nixos/pkgs/wl-ocr/default.nix
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
writeShellScriptBin,
|
||||
lib,
|
||||
grim,
|
||||
libnotify,
|
||||
slurp,
|
||||
tesseract5,
|
||||
wl-clipboard,
|
||||
langs ? "eng+hun+fra+jpn+jpn_vert+kor+kor_vert+pol+ron+spa",
|
||||
}: let
|
||||
_ = lib.getExe;
|
||||
in
|
||||
writeShellScriptBin "wl-ocr" ''
|
||||
${_ grim} -g "$(${_ slurp})" -t ppm - | ${_ tesseract5} -l ${langs} - - | ${wl-clipboard}/bin/wl-copy
|
||||
echo "$(${wl-clipboard}/bin/wl-paste)"
|
||||
${_ libnotify} -- "$(${wl-clipboard}/bin/wl-paste)"
|
||||
''
|
||||
15
pre-commit-hooks.nix
Normal file
15
pre-commit-hooks.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{inputs, ...}: {
|
||||
imports = [inputs.pre-commit-hooks.flakeModule];
|
||||
|
||||
perSystem.pre-commit = {
|
||||
settings.excludes = ["flake.lock"];
|
||||
|
||||
settings.hooks = {
|
||||
alejandra.enable = true;
|
||||
prettier = {
|
||||
enable = true;
|
||||
excludes = [".js" ".md" ".ts"];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user