This commit is contained in:
Michael Thomas 2024-09-06 13:30:27 -04:00
commit b4f42c62ce
30 changed files with 378 additions and 460 deletions

404
flake.lock generated
View File

@ -10,11 +10,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1718371084,
"narHash": "sha256-abpBi61mg0g+lFFU0zY4C6oP6fBwPzbHPKBGw676xsA=",
"lastModified": 1722339003,
"narHash": "sha256-ZeS51uJI30ehNkcZ4uKqT4ZDARPyqrHADSKAwv5vVCU=",
"owner": "ryantm",
"repo": "agenix",
"rev": "3a56735779db467538fb2e577eda28a9daacaca6",
"rev": "3f1dae074a12feb7327b4bf43cbac0d124488bb7",
"type": "github"
},
"original": {
@ -25,14 +25,15 @@
},
"ags": {
"inputs": {
"nixpkgs": "nixpkgs"
"nixpkgs": "nixpkgs",
"systems": "systems_2"
},
"locked": {
"lastModified": 1718921313,
"narHash": "sha256-TFJah1RW5qnYW7kajjAFPAS5j/0q0R3vz9zPjrRA0Mc=",
"lastModified": 1721306136,
"narHash": "sha256-VKPsIGf3/a+RONBipx4lEE4LXG2sdMNkWQu22LNQItg=",
"owner": "Aylur",
"repo": "ags",
"rev": "646d5ad073ff7f8b1d50cfbd40f5b8a250fcd59d",
"rev": "344ea72cd3b8d4911f362fec34bce7d8fb37028c",
"type": "github"
},
"original": {
@ -70,11 +71,11 @@
]
},
"locked": {
"lastModified": 1719128254,
"narHash": "sha256-I7jMpq0CAOZA/i70+HDQO/ulLttyQu/K70cSESiMX7A=",
"lastModified": 1722609272,
"narHash": "sha256-Kkb+ULEHVmk07AX+OhwyofFxBDpw+2WvsXguUS2m6e4=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "50581970f37f06a4719001735828519925ef8310",
"rev": "f7142b8024d6b70c66fd646e1d099d3aa5bfec49",
"type": "github"
},
"original": {
@ -86,18 +87,17 @@
},
"devshell": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1717408969,
"narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=",
"lastModified": 1722113426,
"narHash": "sha256-Yo/3loq572A8Su6aY5GP56knpuKYRvM2a1meP9oJZCw=",
"owner": "numtide",
"repo": "devshell",
"rev": "1ebbe68d57457c8cae98145410b164b5477761f4",
"rev": "67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae",
"type": "github"
},
"original": {
@ -136,32 +136,16 @@
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
}
},
"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-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1719994518,
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
"lastModified": 1722555600,
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
"type": "github"
},
"original": {
@ -178,11 +162,11 @@
]
},
"locked": {
"lastModified": 1717285511,
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
"lastModified": 1722555600,
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
"type": "github"
},
"original": {
@ -214,11 +198,11 @@
"systems": "systems_4"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
@ -229,7 +213,10 @@
},
"git-hooks": {
"inputs": {
"flake-compat": "flake-compat_3",
"flake-compat": [
"nixvim",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"nixvim",
@ -241,11 +228,11 @@
]
},
"locked": {
"lastModified": 1719259945,
"narHash": "sha256-F1h+XIsGKT9TkGO3omxDLEb/9jOOsI6NnzsXFsZhry4=",
"lastModified": 1721042469,
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "0ff4381bbb8f7a52ca4a851660fc7a437a4c6e07",
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd",
"type": "github"
},
"original": {
@ -304,11 +291,11 @@
]
},
"locked": {
"lastModified": 1718530513,
"narHash": "sha256-BmO8d0r+BVlwWtMLQEYnwmngqdXIuyFzMwvmTcLMee8=",
"lastModified": 1720042825,
"narHash": "sha256-A0vrUB6x82/jvf17qPCpxaM+ulJnD8YZwH9Ci0BsAzE=",
"owner": "rycee",
"repo": "home-manager",
"rev": "a1fddf0967c33754271761d91a3d921772b30d0e",
"rev": "e1391fb22e18a36f57e6999c7a9f966dc80ac073",
"type": "github"
},
"original": {
@ -326,178 +313,31 @@
]
},
"locked": {
"lastModified": 1718530513,
"narHash": "sha256-BmO8d0r+BVlwWtMLQEYnwmngqdXIuyFzMwvmTcLMee8=",
"lastModified": 1722630065,
"narHash": "sha256-QfM/9BMRkCmgWzrPDK+KbgJOUlSJnfX4OvsUupEUZvA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "a1fddf0967c33754271761d91a3d921772b30d0e",
"rev": "afc892db74d65042031a093adb6010c4c3378422",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-24.05",
"repo": "home-manager",
"type": "github"
}
},
"hyprcursor": {
"inputs": {
"hyprlang": [
"hyprland",
"hyprlang"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"master": {
"locked": {
"lastModified": 1718450675,
"narHash": "sha256-jpsns6buS4bK+1sF8sL8AaixAiCRjA+nldTKvcwmvUs=",
"owner": "hyprwm",
"repo": "hyprcursor",
"rev": "66d5b46ff94efbfa6fa3d1d1b66735f1779c34a6",
"lastModified": 1722891568,
"narHash": "sha256-tm6Nl2v3zqD8uqWA6b0xCLv85KtAWk8/CgrhRAwOIRA=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "feff2a407c08aafeffc6b653f665b891c4751ed2",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprcursor",
"type": "github"
}
},
"hyprland": {
"inputs": {
"hyprcursor": "hyprcursor",
"hyprlang": "hyprlang",
"hyprutils": "hyprutils",
"hyprwayland-scanner": "hyprwayland-scanner",
"nixpkgs": "nixpkgs_2",
"systems": "systems_2",
"xdph": "xdph"
},
"locked": {
"lastModified": 1719493676,
"narHash": "sha256-EClgfHBU8jLOQxRrkmEgkHHL22nrvNkPjhABtsOEscE=",
"ref": "refs/heads/main",
"rev": "f2dc48d92f340efe6d4264b92d38378c18a3e1ea",
"revCount": 4892,
"submodules": true,
"type": "git",
"url": "https://github.com/hyprwm/Hyprland"
},
"original": {
"submodules": true,
"type": "git",
"url": "https://github.com/hyprwm/Hyprland"
}
},
"hyprland-protocols": {
"inputs": {
"nixpkgs": [
"hyprland",
"xdph",
"nixpkgs"
],
"systems": [
"hyprland",
"xdph",
"systems"
]
},
"locked": {
"lastModified": 1714869498,
"narHash": "sha256-vbLVOWvQqo4n1yvkg/Q70VTlPbMmTiCQfNTgcWDCfJM=",
"owner": "hyprwm",
"repo": "hyprland-protocols",
"rev": "e06482e0e611130cd1929f75e8c1cf679e57d161",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprland-protocols",
"type": "github"
}
},
"hyprlang": {
"inputs": {
"hyprutils": [
"hyprland",
"hyprutils"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1717881852,
"narHash": "sha256-XeeVoKHQgfKuXoP6q90sUqKyl7EYy3ol2dVZGM+Jj94=",
"owner": "hyprwm",
"repo": "hyprlang",
"rev": "ec6938c66253429192274d612912649a0cfe4d28",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprlang",
"type": "github"
}
},
"hyprutils": {
"inputs": {
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1719316102,
"narHash": "sha256-dmRz128j/lJmMuTYeCYPfSBRHHQO3VeH4PbmoyAhHzw=",
"owner": "hyprwm",
"repo": "hyprutils",
"rev": "1f6bbec5954f623ff8d68e567bddcce97cd2f085",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprutils",
"type": "github"
}
},
"hyprwayland-scanner": {
"inputs": {
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1719067853,
"narHash": "sha256-mAnZG/eQy72Fp1ImGtqCgUrDumnR1rMZv2E/zgP4U74=",
"owner": "hyprwm",
"repo": "hyprwayland-scanner",
"rev": "914f083741e694092ee60a39d31f693d0a6dc734",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "hyprwayland-scanner",
"owner": "NixOS",
"repo": "nixpkgs",
"type": "github"
}
},
@ -509,11 +349,11 @@
]
},
"locked": {
"lastModified": 1719128254,
"narHash": "sha256-I7jMpq0CAOZA/i70+HDQO/ulLttyQu/K70cSESiMX7A=",
"lastModified": 1722609272,
"narHash": "sha256-Kkb+ULEHVmk07AX+OhwyofFxBDpw+2WvsXguUS2m6e4=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "50581970f37f06a4719001735828519925ef8310",
"rev": "f7142b8024d6b70c66fd646e1d099d3aa5bfec49",
"type": "github"
},
"original": {
@ -526,14 +366,14 @@
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs_3"
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1719451583,
"narHash": "sha256-2FHGp9cH5q42yVdYAfLjMCYJgr+VYfMW4LYmCOptlpg=",
"lastModified": 1722821408,
"narHash": "sha256-FMCo35ZmMfvAcae+9neKfu6QzXjU3WL6vW2OFMXx6wI=",
"owner": "nix-community",
"repo": "nix-vscode-extensions",
"rev": "4157bcc67488e09407f5edc130ebf62c1a1a1433",
"rev": "f25962fbd632afea744dc7e6868f24d2e73ccedb",
"type": "github"
},
"original": {
@ -560,33 +400,17 @@
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1719876945,
"narHash": "sha256-Fm2rDDs86sHy0/1jxTOKB1118Q0O3Uc7EC0iXvXKpbI=",
"lastModified": 1722555339,
"narHash": "sha256-uFf2QeW7eAHlYXuDktm9c25OxOyCoUOQmh5SZ9amE5Q=",
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz"
"url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz"
"url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1719075281,
"narHash": "sha256-CyyxvOwFf12I91PBWz43iGT1kjsf5oi6ax7CrvaMyAo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a71e967ef3694799d0c418c98332f7ff4cc5f6af",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1713805509,
"narHash": "sha256-YgSEan4CcrjivCNO5ZNzhg7/8ViLkZ4CB/GrGBVSudo=",
@ -602,13 +426,13 @@
"type": "github"
}
},
"nixpkgs_4": {
"nixpkgs_3": {
"locked": {
"lastModified": 1719426051,
"narHash": "sha256-yJL9VYQhaRM7xs0M867ZFxwaONB9T2Q4LnGo1WovuR4=",
"lastModified": 1722791413,
"narHash": "sha256-rCTrlCWvHzMCNcKxPE3Z/mMK2gDZ+BvvpEVyRM4tKmU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "89c49874fb15f4124bf71ca5f42a04f2ee5825fd",
"rev": "8b5b6723aca5a51edf075936439d9cd3947b7b2c",
"type": "github"
},
"original": {
@ -617,7 +441,7 @@
"type": "indirect"
}
},
"nixpkgs_5": {
"nixpkgs_4": {
"locked": {
"lastModified": 1718428119,
"narHash": "sha256-WdWDpNaq6u1IPtxtYHHWpl5BmabtpmLnMAx0RdJ/vo8=",
@ -633,13 +457,13 @@
"type": "github"
}
},
"nixpkgs_6": {
"nixpkgs_5": {
"locked": {
"lastModified": 1719690277,
"narHash": "sha256-0xSej1g7eP2kaUF+JQp8jdyNmpmCJKRpO12mKl/36Kc=",
"lastModified": 1720957393,
"narHash": "sha256-oedh2RwpjEa+TNxhg5Je9Ch6d3W1NKi7DbRO1ziHemA=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "2741b4b489b55df32afac57bc4bfd220e8bf617e",
"rev": "693bc46d169f5af9c992095736e82c3488bf7dbb",
"type": "github"
},
"original": {
@ -658,32 +482,32 @@
"home-manager": "home-manager_3",
"nix-darwin": "nix-darwin",
"nixpkgs": [
"nixpkgs"
"unstable"
],
"nuschtosSearch": "nuschtosSearch",
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1719469291,
"narHash": "sha256-Efir01r7ThPabDBFOygX1UDyerJFHelbRGdMo/VNw14=",
"lastModified": 1722857280,
"narHash": "sha256-b5Bal3cElLrS9UtDN81ljQpOsbqBe/7CdWlTKhlswus=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "8f52e4d1e34039937efb0ee05825b9963ef29739",
"rev": "5922a48008e5759acb63a12b2de8348ec512760f",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "nixos-24.05",
"repo": "nixvim",
"type": "github"
}
},
"nur": {
"locked": {
"lastModified": 1719488730,
"narHash": "sha256-4LTpvjM/S6DMxl9Kb35tQ5Y70XVTULMTM5UprsngFMg=",
"lastModified": 1722883188,
"narHash": "sha256-IahHa5WnNaiY7UANpVPgEWhQ9Yha9AWVBzckEs4twFw=",
"owner": "nix-community",
"repo": "NUR",
"rev": "c2667e57412f53b38d19386ebf7f6f564e28febe",
"rev": "f80e85e5a4f92e6aee6fd09c1c704425b48e9f8b",
"type": "github"
},
"original": {
@ -692,6 +516,28 @@
"type": "github"
}
},
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1722493084,
"narHash": "sha256-ktjl908zZKWcGdMyz6kX1kHSg7LFFGPYBvTi9FgQleM=",
"owner": "NuschtOS",
"repo": "search",
"rev": "3f5abffa5f28b4ac3c9212c81c5e8d2d22876071",
"type": "github"
},
"original": {
"owner": "NuschtOS",
"repo": "search",
"type": "github"
}
},
"root": {
"inputs": {
"agenix": "agenix",
@ -699,9 +545,9 @@
"darwin": "darwin_2",
"flake-parts": "flake-parts",
"home-manager": "home-manager_2",
"hyprland": "hyprland",
"master": "master",
"nix-vscode-extensions": "nix-vscode-extensions",
"nixpkgs": "nixpkgs_4",
"nixpkgs": "nixpkgs_3",
"nixvim": "nixvim",
"nur": "nur",
"rust-overlay": "rust-overlay",
@ -712,14 +558,14 @@
},
"rust-overlay": {
"inputs": {
"nixpkgs": "nixpkgs_5"
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1719454714,
"narHash": "sha256-MojqG0lyUINkEk0b3kM2drsU5vyaF8DFZe/FAlZVOGs=",
"lastModified": 1722824458,
"narHash": "sha256-2k3/geD5Yh8JT1nrGaRycje5kB0DkvQA/OUZoel1bIU=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "d1c527659cf076ecc4b96a91c702d080b213801e",
"rev": "a8a937c304e62a5098c6276c9cdf65c19a43b1a5",
"type": "github"
},
"original": {
@ -811,11 +657,11 @@
]
},
"locked": {
"lastModified": 1719243788,
"narHash": "sha256-9T9mSY35EZSM1KAwb7K9zwQ78qTlLjosZgtUGnw4rn4=",
"lastModified": 1722330636,
"narHash": "sha256-uru7JzOa33YlSRwf9sfXpJG+UAV+bnBEYMjrzKrQZFw=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "065a23edceff48f948816b795ea8cc6c0dee7cdf",
"rev": "768acdb06968e53aa1ee8de207fd955335c754b7",
"type": "github"
},
"original": {
@ -826,14 +672,14 @@
},
"treefmt-nix_2": {
"inputs": {
"nixpkgs": "nixpkgs_6"
"nixpkgs": "nixpkgs_5"
},
"locked": {
"lastModified": 1719887753,
"narHash": "sha256-p0B2r98UtZzRDM5miGRafL4h7TwGRC4DII+XXHDHqek=",
"lastModified": 1722330636,
"narHash": "sha256-uru7JzOa33YlSRwf9sfXpJG+UAV+bnBEYMjrzKrQZFw=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "bdb6355009562d8f9313d9460c0d3860f525bc6c",
"rev": "768acdb06968e53aa1ee8de207fd955335c754b7",
"type": "github"
},
"original": {
@ -844,11 +690,11 @@
},
"unstable": {
"locked": {
"lastModified": 1719254875,
"narHash": "sha256-ECni+IkwXjusHsm9Sexdtq8weAq/yUyt1TWIemXt3Ko=",
"lastModified": 1722630782,
"narHash": "sha256-hMyG9/WlUi0Ho9VkRrrez7SeNlDzLxalm9FwY7n/Noo=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "2893f56de08021cffd9b6b6dfc70fd9ccd51eb60",
"rev": "d04953086551086b44b6f3c6b7eeb26294f207da",
"type": "github"
},
"original": {
@ -874,36 +720,6 @@
"repo": "flake-utils",
"type": "github"
}
},
"xdph": {
"inputs": {
"hyprland-protocols": "hyprland-protocols",
"hyprlang": [
"hyprland",
"hyprlang"
],
"nixpkgs": [
"hyprland",
"nixpkgs"
],
"systems": [
"hyprland",
"systems"
]
},
"locked": {
"lastModified": 1718619174,
"narHash": "sha256-FWW68AVYmB91ZDQnhLMBNCUUTCjb1ZpO2k2KIytHtkA=",
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"rev": "c7894aa54f9a7dbd16df5cd24d420c8af22d5623",
"type": "github"
},
"original": {
"owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland",
"type": "github"
}
}
},
"root": "root",

View File

@ -4,6 +4,7 @@
inputs = {
nixpkgs.url = "nixpkgs/nixos-24.05";
unstable.url = "nixpkgs/nixos-unstable";
master.url = "github:NixOS/nixpkgs";
nur.url = "github:nix-community/NUR";
home-manager = {
@ -21,12 +22,11 @@
flake-parts.url = "github:hercules-ci/flake-parts";
treefmt-nix.url = "github:numtide/treefmt-nix";
nixvim = {
url = "github:nix-community/nixvim/nixos-24.05";
inputs.nixpkgs.follows = "nixpkgs";
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "unstable";
};
rust-overlay.url = "github:oxalica/rust-overlay";
nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions";
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
ags.url = "github:Aylur/ags";
agenix = {
url = "github:ryantm/agenix";

View File

@ -27,7 +27,7 @@
# Video
ffmpeg
# Spotify
unstable.spicetify-cli
master.spicetify-cli
# Java
checkstyle
# XCode

View File

@ -71,10 +71,18 @@
environment.systemPackages = with pkgs; [
obs-studio
kdenlive
virt-manager
virtiofsd
# GTK Discord Client
unstable.dissent
kdenlive
prismlauncher
lutris
android-studio
];
# This value determines the NixOS release from which the default

View File

@ -20,7 +20,7 @@
hardware.opengl.driSupport = true;
hardware.opengl.driSupport32Bit = true;
services.xserver.videoDrivers = ["nvidia"];
services.xserver.videoDrivers = ["amdgpu"];
fileSystems."/" = {
device = "/dev/disk/by-uuid/fa11ad2d-97d9-4e87-8fe9-f2cae0d9894e";

View File

@ -1,12 +1,10 @@
{
pkgs,
inputs,
lib,
config,
...
}: let
inherit (lib) mkEnableOption mkIf;
pkgs-hyprland = inputs.hyprland.inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system};
cfg = config.my.hyprland;
in {
options.my.hyprland = {
@ -18,14 +16,10 @@ in {
programs.hyprland = {
enable = true;
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
};
hardware.opengl = {
package = pkgs-hyprland.mesa.drivers;
driSupport32Bit = true;
package32 = pkgs-hyprland.pkgsi686Linux.mesa.drivers;
};
# Hint electron apps to use wayland
environment.sessionVariables.NIXOS_OZONE_WL = "1";
services.gnome.gnome-keyring.enable = true;
security.pam.services.greetd.enableGnomeKeyring = true;

View File

@ -1,6 +1,5 @@
{
pkgs,
inputs,
lib,
config,
...
@ -8,17 +7,14 @@
inherit (lib) mkEnableOption mkIf;
cfg = config.my.hyprland;
in {
imports = [
inputs.hyprland.homeManagerModules.default
];
options.my.hyprland = {
enable = mkEnableOption "hyprland";
};
config = mkIf cfg.enable {
my.ags.enable = true;
my.wofi.enable = true;
programs.fuzzel.enable = true;
home.packages = with pkgs; [
pavucontrol
@ -27,7 +23,6 @@ in {
wayland.windowManager.hyprland = {
enable = true;
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
settings = let
# No gaps or border when only one window
no_gaps_when_only = 1;
@ -55,7 +50,7 @@ in {
bind =
[
# Program launcher
"$mod, SPACE, exec, wofi --show drun"
"$mod, SPACE, exec, fuzzel"
# Program shortcuts
"$mod, F, exec, firefox"
"$mod, Q, killactive"
@ -112,6 +107,10 @@ in {
# will reset the submap, meaning end the current one and return to the global one
submap=reset
# mouse bindings
bindm=ALT,mouse:272,movewindow
bindm=ALT,mouse:273,resizewindow
'';
};

View File

@ -1,18 +0,0 @@
{
lib,
config,
...
}: let
inherit (lib) mkEnableOption mkIf;
cfg = config.my.wofi;
in {
options.my.wofi = {
enable = mkEnableOption "wofi";
};
config = mkIf cfg.enable {
programs.wofi = {
enable = true;
};
};
}

View File

@ -5,7 +5,7 @@
# This one brings our custom packages from the 'pkgs' directory
additions = final: _prev:
import ../pkgs {
pkgs = final.pkgs;
inherit (final) pkgs;
inherit inputs;
};
@ -22,7 +22,12 @@
# be accessible through 'pkgs.unstable'
unstable-packages = final: _prev: {
unstable = import inputs.unstable {
system = final.system;
inherit (final) system;
config.allowUnfree = true;
};
master = import inputs.master {
inherit (final) system;
config.allowUnfree = true;
};
};

View File

@ -1,4 +1,5 @@
{
pkgs,
helpers,
icons,
...
@ -25,8 +26,10 @@
text_align = "left";
}
];
closeCommand = "Bdelete! %d";
};
};
extraPlugins = with pkgs.vimPlugins; [bufdelete-nvim];
keymaps = [
{
mode = "n";
@ -67,7 +70,7 @@
{
mode = "n";
key = "<leader>bd";
action = "<cmd>bdelete<cr>";
action = "<cmd>Bdelete<cr>";
options = {
desc = "Delete buffer";
};

View File

@ -28,12 +28,16 @@
})
'';
};
snippet = {
expand = "function(args) require('luasnip').lsp_expand(args.body) end";
};
sources = {
__raw = ''
cmp.config.sources({
{name = 'nvim_lsp'},
{name = 'copilot'},
{name = 'path'},
{name = 'luasnip'},
{name = 'cmdline'},
}, {
{name = 'buffer'},
@ -69,6 +73,7 @@
cmp-path.enable = true;
};
extraConfigLua = ''
luasnip = require("luasnip")
kind_icons = {
Text = "󰊄",
Method = "",

View File

@ -25,6 +25,7 @@
./languages/nvim-lint.nix
./languages/typescript-tools-nvim.nix
./languages/treesitter/treesitter.nix
./languages/treesitter/mdx.nix
./languages/treesitter/treesitter-context.nix
./languages/treesitter/treesitter-textobjects.nix
./languages/treesitter/ts-autotag.nix
@ -38,7 +39,7 @@
./none-ls/none-ls.nix
# ./snippets/luasnip.nix
./snippets/luasnip.nix
./statusline/lualine.nix
@ -59,6 +60,7 @@
./utils/illuminate.nix # highlight other uses of current word
./utils/markdown-preview.nix
./utils/mini.nix # lots of utilities
./utils/neoconf.nix
# ./utils/neodev.nix # lua development
./utils/neotest.nix # test runner
./utils/nvim-colorizer.nix

View File

@ -3,6 +3,8 @@
lazygit-nvim
];
extraPackages = with pkgs; [lazygit];
extraConfigLua = ''
require("telescope").load_extension("lazygit")
'';

View File

@ -0,0 +1,26 @@
if MVim then return end -- avoid loading twice the same module
MVim = {}
---@return {fg?:string}?
function MVim.fg(name)
local color = MVim.color(name)
return color and { fg = color } or nil
end
---@param name string
---@param bg? boolean
---@return string?
function MVim.color(name, bg)
---@type {fg?:number, bg?:number}?
local hl = vim.api.nvim_get_hl(0, { name = name, link = false })
---@type number?
local color = nil
if hl then
if bg then
color = hl.bg
else
color = hl.fg
end
end
return color and string.format("#%06x", color) or nil
end

View File

@ -1,8 +1,6 @@
# Thanks for the keybinds primeagen and folke!
{
globals.mapleader = " ";
# TODO: Move general mappings to which-key
keymaps = [
# better up/down
{
@ -46,6 +44,33 @@
};
}
# Clear search with <esc>
{
mode = ["i" "n"];
key = "<esc>";
action = "<cmd>noh<cr><esc>";
options = {
desc = "Escape and Clear hlsearch";
};
}
# Add undo break-points
{
mode = "i";
key = ",";
action = ",<c-g>u";
}
{
mode = "i";
key = ".";
action = ".<c-g>u";
}
{
mode = "i";
key = ";";
action = ";<c-g>u";
}
# Move to window using the <ctrl> hjkl keys
{
mode = "n";
@ -109,47 +134,6 @@
action = "<cmd>vertical resize +2<cr>";
options = {desc = "Increase Window Width";};
}
# Disable arrow keys
{
mode = ["n" "i"];
key = "<Up>";
action = "<Nop>";
options = {
silent = true;
noremap = true;
desc = "Disable Up arrow key";
};
}
{
mode = ["n" "i"];
key = "<Down>";
action = "<Nop>";
options = {
silent = true;
noremap = true;
desc = "Disable Down arrow key";
};
}
{
mode = ["n" "i"];
key = "<Right>";
action = "<Nop>";
options = {
silent = true;
noremap = true;
desc = "Disable Right arrow key";
};
}
{
mode = ["n" "i"];
key = "<Left>";
action = "<Nop>";
options = {
silent = true;
noremap = true;
desc = "Disable Left arrow key";
};
}
# General maps
{
@ -445,6 +429,7 @@
};
}
# better indenting
{
mode = "v";
key = "<";

View File

@ -1,4 +1,8 @@
{pkgs, ...}: {
{
pkgs,
pkgsMaster,
...
}: {
plugins.lint = {
enable = true;
lintersByFt = {
@ -16,5 +20,6 @@
extraPackages = with pkgs; [
statix
pkgsMaster.eslint_d
];
}

View File

@ -0,0 +1,16 @@
{
filetype.extension.mdx = "mdx";
plugins.treesitter.languageRegister.markdown = ["mdx"];
# Tree Sitter Grammar
extraFiles."queries/markdown/injections.scm" = ''
; extends
((inline) @injection.content
(#lua-match? @injection.content "^%s*import")
(#set! injection.language "typescript"))
((inline) @injection.content
(#lua-match? @injection.content "^%s*export")
(#set! injection.language "typescript"))
'';
}

View File

@ -1,8 +1,11 @@
{
plugins.treesitter = {
enable = true;
indent = true;
folding = true;
nixvimInjections = true;
settings = {
highlight.enable = true;
indent.enable = true;
};
};
}

View File

@ -1,6 +1,6 @@
{
plugins.typescript-tools = {
enable = true;
enable = false;
onAttach = ''
function(client, bufnr)
client.server_capabilities.documentFormattingProvider = false
@ -23,6 +23,9 @@
includeInlayFunctionLikeReturnTypeHints = true;
includeInlayEnumMemberValueHints = true;
};
tsserverPlugins = [
"@vue/typescript-plugin"
];
};
};

View File

@ -1,4 +1,8 @@
{icons, ...}: {
{
pkgs,
icons,
...
}: {
plugins = {
lsp-format = {
enable = false; # Enable it if you want lsp-format integration for none-ls
@ -26,8 +30,8 @@
};
nil-ls = {enable = true;};
tsserver = {
enable = false;
filetypes = ["javascript" "javascriptreact" "typescript" "typescriptreact"];
enable = true;
filetypes = ["javascript" "javascriptreact" "typescript" "typescriptreact" "vue"];
extraOptions = {
settings = {
javascript = {
@ -53,10 +57,23 @@
};
};
};
init_options = {
plugins = [
{
name = "@vue/typescript-plugin";
location = "${pkgs.vue-language-server}/lib/node_modules/@vue/language-server";
languages = ["javascript" "typescript" "vue"];
}
];
};
};
};
astro = {enable = true;};
volar = {enable = true;};
volar = {
enable = true;
package = pkgs.vue-language-server;
rootDir = ''require("lspconfig.util").root_pattern("src/App.vue")'';
};
svelte = {enable = true;};
eslint = {enable = true;};
pyright = {enable = true;};

View File

@ -2,8 +2,9 @@
plugins.none-ls = {
enable = false;
enableLspFormat = false;
updateInInsert = false;
onAttach = ''
settings = {
update_in_insert = false;
on_attach = ''
function(client, bufnr)
if client.supports_method "textDocument/formatting" then
vim.api.nvim_clear_autocmds { group = augroup, buffer = bufnr }
@ -17,6 +18,7 @@
end
end
'';
};
sources = {
code_actions = {
gitsigns.enable = true;
@ -36,11 +38,7 @@
};
prettier = {
enable = true;
withArgs = ''
{
extra_args = { "--no-semi", "--single-quote" },
}
'';
disableTsServerFormatter = true;
};
google_java_format = {
enable = true;
@ -50,7 +48,7 @@
};
black = {
enable = true;
withArgs = ''
settings = ''
{
extra_args = { "--fast" },
}

View File

@ -117,7 +117,6 @@
# We don't need to see things like INSERT anymore
showmode = false;
showcmd = false;
# Maximum number of items to show in the popup menu (0 means "use available screen space")
pumheight = 0;
@ -128,6 +127,14 @@
laststatus = 3; # (https://neovim.io/doc/user/options.html#'laststatus')
};
extraFiles = {
"lua/helpers.lua".source = ./helpers.lua;
};
extraConfigLuaPre = ''
require "helpers"
'';
extraConfigLua = ''
local opt = vim.opt
local g = vim.g

View File

@ -1,11 +1,7 @@
{
pkgs,
config,
...
}: {
{pkgs, ...}: {
plugins.luasnip = {
enable = true;
extraConfig = {
settings = {
enable_autosnippets = true;
store_selection_keys = "<Tab>";
};

View File

@ -17,7 +17,11 @@
left = ""; # 
right = ""; # 
};
sections = {
sections = let
mkColor = color: {
__raw = ''function() return MVim.fg("${color}") end'';
};
in {
lualine_a = ["mode"];
lualine_b = ["branch"];
lualine_c = [
@ -45,7 +49,24 @@
"filename"
];
lualine_x = [];
lualine_x = [
# Command
{
name.__raw = ''function() return require("noice").api.status.command.get() end'';
color = mkColor "Statement";
extraConfig = {
cond.__raw = ''function() return package.loaded["noice"] and require("noice").api.status.command.has() end'';
};
}
# Mode
{
name.__raw = ''function() return require("noice").api.status.mode.get() end'';
color = mkColor "Constant";
extraConfig = {
cond.__raw = ''function() return package.loaded["noice"] and require("noice").api.status.mode.has() end'';
};
}
];
lualine_y = [
{
name = "progress";

View File

@ -1,6 +1,7 @@
{
plugins.flash = {
enable = false;
settings = {
labels = "asdfghjklqwertyuiopzxcvbnm";
search = {
mode = "fuzzy";
@ -16,6 +17,7 @@
};
};
};
};
# keymaps = [
# {
# mode = [ "n" "x" "o" ];

View File

@ -0,0 +1,7 @@
{pkgs, ...}: {
extraPlugins = with pkgs.vimPlugins; [neoconf-nvim];
extraConfigLuaPre = ''
require("neoconf").setup()
'';
}

View File

@ -3,12 +3,14 @@
inputs,
...
}: let
system = pkgs.system;
inherit (pkgs) system;
nixvim = inputs.nixvim.legacyPackages.${system};
icons = import ./config/icons.nix;
pkgsMaster = inputs.master.legacyPackages.${system};
nixvimModule = {
inherit pkgs;
pkgs = inputs.unstable.legacyPackages.${system};
module = import ./config;
extraSpecialArgs = {inherit icons;};
extraSpecialArgs = {inherit icons pkgsMaster;};
};
in (nixvim.makeNixvimWithModule nixvimModule)
in
nixvim.makeNixvimWithModule nixvimModule

View File

@ -1,4 +1,4 @@
{
{pkgs, ...}: {
imports = [
../../modules/dev.nix
../../modules/firefox.nix
@ -6,12 +6,13 @@
../../modules/foot.nix
../../modules/git.nix
../../modules/git_nixos.nix
../../modules/nvim.nix
../../modules/vscode.nix
../../modules/zellij
../../modules/zsh.nix
];
home.packages = with pkgs; [nvim-custom];
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;

View File

@ -1,5 +1,10 @@
{pkgs, ...}: {
home.packages = with pkgs; [
{
pkgs,
lib,
...
}: {
home.packages = with pkgs;
[
# devenv
unstable.devenv
# Javascript
@ -21,7 +26,15 @@
})
pkg-config
openssl
];
]
++ lib.optionals pkgs.stdenv.isDarwin (with pkgs.darwin.apple_sdk.frameworks; [
CoreFoundation
CoreServices
SystemConfiguration
]);
# Required for the `openssl-sys` crate to build properly
home.sessionVariables.PKG_CONFIG_PATH = "${pkgs.openssl.dev}/lib/pkgconfig";
programs.zsh.initExtra = ''
export PATH=~/.npm-packages/bin:$PATH

View File

@ -37,7 +37,7 @@ in {
# Editor
vscodevim.vim
pkgs.vscode-marketplace.miguelsolorio.min-theme
streetsidesoftware.code-spell-checker
pkgs.vscode-extensions.streetsidesoftware.code-spell-checker
mkhl.direnv
# Git