forked from foxora/nix
Compare commits
65 commits
migrate/sn
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 5aab9f36b8 | |||
| 56bb68002f | |||
| bc5980e5db | |||
| becf5bff55 | |||
| 7e581fd825 | |||
| 830317e1d2 | |||
| e791cf9888 | |||
| 7fa1839df6 | |||
| 88581414e3 | |||
| 1776e1d58d | |||
| 8a44655415 | |||
| a2475d22dc | |||
| bfd70c514e | |||
| 01912eb428 | |||
| 7f11df87df | |||
| ab3ec10a6b | |||
| 2b4d295d0a | |||
| 84264f025f | |||
| fea82f3532 | |||
| df0dddd227 | |||
| d322ac8b74 | |||
| 909300bc26 | |||
| 24c23362fd | |||
| b1a03c6a97 | |||
| c5416f0b92 | |||
| 4321b6f6c3 | |||
| a1b8beb8b3 | |||
| 11b2fa00d2 | |||
| 0794ed7edd | |||
| 4b8552fdb1 | |||
| 9d481bcdcf | |||
| ae6f3d7438 | |||
| ab94f48294 | |||
| 592e6f021d | |||
| b0b5565f76 | |||
| 86d0fda70e | |||
| e861f21ef2 | |||
| 7310cda101 | |||
| 55099cdad2 | |||
| f17fb26069 | |||
| 5c93afcb2b | |||
| f6e3fa6a86 | |||
| afb9d2fd9b | |||
| 5e882e9914 | |||
| b1cfda31f1 | |||
| 63e987277e | |||
| 98a52ebe74 | |||
| 65995c2245 | |||
| 4b7a87f302 | |||
| dce5deac43 | |||
| ffc65678ea | |||
| c2a581e1be | |||
| 1d6eec78f0 | |||
| 9c22f23bc0 | |||
| 3ebf01c47e | |||
| 83bee06352 | |||
| b7d04fb7cc | |||
| 9de130a5c0 | |||
| 669128d4b6 | |||
| 662268f327 | |||
| cf23725f2f | |||
| 2a66cb0014 | |||
| be96d1dbf7 | |||
| ff97832d9f | |||
| adcfc52c60 |
33 changed files with 1420 additions and 398 deletions
380
flake.lock
generated
380
flake.lock
generated
|
|
@ -37,11 +37,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772292445,
|
||||
"narHash": "sha256-4F1Q7U313TKUDDovCC96m/Za4wZcJ3yqtu4eSrj8lk8=",
|
||||
"lastModified": 1776876344,
|
||||
"narHash": "sha256-Ubqb/agkuMJK+k19gjQgHux/eOYRc1sRGoOZOho8+VY=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "1dbbba659c1cef0b0202ce92cadfe13bae550e8f",
|
||||
"rev": "648a13d0ee1e03a843b3e145b8ece15393058701",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -76,11 +76,11 @@
|
|||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1770895252,
|
||||
"narHash": "sha256-TUGZVDcC5xsrWVnpBNosAG1cTy+aWchCWXPyeLZdnGM=",
|
||||
"lastModified": 1777136912,
|
||||
"narHash": "sha256-owyQdC2vi0kYC119fzyVQp0J4G0t1n4xXUwryhlBbqA=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "2c86d41d07471f518e24f5cd1f586e4d2a32d12c",
|
||||
"revCount": 1331,
|
||||
"rev": "f66e12a76dbc4c669b2f1375f78bce49f5b19d66",
|
||||
"revCount": 1363,
|
||||
"type": "git",
|
||||
"url": "https://codeberg.org/LGFae/awww"
|
||||
},
|
||||
|
|
@ -98,11 +98,11 @@
|
|||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772820255,
|
||||
"narHash": "sha256-vdktxEQihZUcKiwbaYCBl8LuTrJZULpjwqtJyBzXBN8=",
|
||||
"lastModified": 1777746826,
|
||||
"narHash": "sha256-fAbcHwnhw294NL+a+2E2bidNiaxhM935RrsJLqKcnc4=",
|
||||
"owner": "xddxdd",
|
||||
"repo": "nix-cachyos-kernel",
|
||||
"rev": "aada771f510dbd9ac48614cc7b4b21a292989d3a",
|
||||
"rev": "26aa2e8f054184252d08558290471a397164aeff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -114,11 +114,11 @@
|
|||
"cachyos-kernel": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1772644657,
|
||||
"narHash": "sha256-7zQSBFv9gFeYhe65NchqLLste7mJ396jA1OnNcf+OQQ=",
|
||||
"lastModified": 1777639499,
|
||||
"narHash": "sha256-EyELzah58EHIADP4siMoSzsCOPd71bZkmlVpcUb9Oi8=",
|
||||
"owner": "CachyOS",
|
||||
"repo": "linux-cachyos",
|
||||
"rev": "ff5ccc4fa26d5272d929fb9c1838593a6347ca10",
|
||||
"rev": "1c6414dbda46c13abcb951ef6c5a790cb9e157ea",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -130,11 +130,11 @@
|
|||
"cachyos-kernel-patches": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1772731186,
|
||||
"narHash": "sha256-y70pS9Cma7+WCsni3VTacHh9g/udulmBS6zrYE2Fz64=",
|
||||
"lastModified": 1777306094,
|
||||
"narHash": "sha256-YNvqoVdMe/SqXm91cpCA6mVOigK3Zzoab6HPvMiqGqo=",
|
||||
"owner": "CachyOS",
|
||||
"repo": "kernel-patches",
|
||||
"rev": "eac8168ee15f742547d4d20ba5c7fea283f23019",
|
||||
"rev": "9bcd294d660c932f55f732d951ee79ea707f64f3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -234,11 +234,11 @@
|
|||
"rust-analyzer-src": "rust-analyzer-src"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772780947,
|
||||
"narHash": "sha256-cblRAy3ctJniRFaSLpqYeHor+RJhkptPZNMUc4Sl+v4=",
|
||||
"lastModified": 1777796307,
|
||||
"narHash": "sha256-L7xLjorTwVf2aLu5b0ZZY2D0RFXwD/a/a/fFFDikB2w=",
|
||||
"owner": "nix-community",
|
||||
"repo": "fenix",
|
||||
"rev": "26a5e59df51222c849deb63c9196ac6d7a531535",
|
||||
"rev": "0f9881f2344c0b1c100bd9e774555759b7da6fd5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -352,11 +352,11 @@
|
|||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772408722,
|
||||
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
|
||||
"lastModified": 1777678872,
|
||||
"narHash": "sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT+IPhcsukVbgk=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
|
||||
"rev": "5250617bffd85403b14dbf43c3870e7f255d2c16",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -408,7 +408,10 @@
|
|||
},
|
||||
"flake-parts_4": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib_3"
|
||||
"nixpkgs-lib": [
|
||||
"mcsr",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772408722,
|
||||
|
|
@ -424,6 +427,24 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_5": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1777678872,
|
||||
"narHash": "sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT+IPhcsukVbgk=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "5250617bffd85403b14dbf43c3870e7f255d2c16",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_4"
|
||||
|
|
@ -489,11 +510,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772633058,
|
||||
"narHash": "sha256-SO7JapRy2HPhgmqiLbfnW1kMx5rakPMKZ9z3wtRLQjI=",
|
||||
"lastModified": 1777771528,
|
||||
"narHash": "sha256-YycygK6n7KeW1YCobdFJcORWzkmrvNcp6xT+IovA0d4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "080657a04188aca25f8a6c70a0fb2ea7e37f1865",
|
||||
"rev": "0585fbf645640973e3398863bbaf3bd1ddce4a51",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -510,11 +531,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772807318,
|
||||
"narHash": "sha256-Qjw6ILt8cb2HQQpCmWNLMZZ63wEo1KjTQt+1BcQBr7k=",
|
||||
"lastModified": 1777780644,
|
||||
"narHash": "sha256-CYpc+mk28rmcQWGygeM8CA+Z8SZYy8BOyQtiW18spao=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "daa2c221320809f5514edde74d0ad0193ad54ed8",
|
||||
"rev": "b9311028044a9e9b2cf27db15ef0a87d464e212d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -531,11 +552,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772633058,
|
||||
"narHash": "sha256-SO7JapRy2HPhgmqiLbfnW1kMx5rakPMKZ9z3wtRLQjI=",
|
||||
"lastModified": 1777771528,
|
||||
"narHash": "sha256-YycygK6n7KeW1YCobdFJcORWzkmrvNcp6xT+IovA0d4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "080657a04188aca25f8a6c70a0fb2ea7e37f1865",
|
||||
"rev": "0585fbf645640973e3398863bbaf3bd1ddce4a51",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -553,11 +574,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772330611,
|
||||
"narHash": "sha256-UZjPc/d5XRxvjDbk4veAO4XFdvx6BUum2l40V688Xq8=",
|
||||
"lastModified": 1776184304,
|
||||
"narHash": "sha256-No6QGBmIv5ChiwKCcbkxjdEQ/RO2ZS1gD7SFy6EZ7rc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "58fd7ff0eec2cda43e705c4c0585729ec471d400",
|
||||
"rev": "3c7524c68348ef79ce48308e0978611a050089b2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -582,11 +603,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1753964049,
|
||||
"narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=",
|
||||
"lastModified": 1776511930,
|
||||
"narHash": "sha256-fCpwFiTW0rT7oKJqr3cqHMnkwypSwQKpbtUEtxdkgrM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5",
|
||||
"rev": "39435900785d0c560c6ae8777d29f28617d031ef",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -611,11 +632,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1770511807,
|
||||
"narHash": "sha256-suKmSbSk34uPOJDTg/GbPrKEJutzK08vj0VoTvAFBCA=",
|
||||
"lastModified": 1776426399,
|
||||
"narHash": "sha256-RUESLKNikIeEq9ymGJ6nmcDXiSFQpUW1IhJ245nL3xM=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "7c75487edd43a71b61adb01cae8326d277aab683",
|
||||
"rev": "68d064434787cf1ed4a2fe257c03c5f52f33cf84",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -643,11 +664,11 @@
|
|||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772833450,
|
||||
"narHash": "sha256-XuuvhTD/72mH8MBncTeOyN0JzLCtwav7lkwBQlIofd4=",
|
||||
"lastModified": 1777759969,
|
||||
"narHash": "sha256-7KSqSehOHNHQfM0sRAcGQbfz0vDuItox8i61X8/nzYw=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "4152ac76d0813d9d0f67d2f04653a13fa6e17433",
|
||||
"rev": "6ec0228c38a6203e4789fe7e7e793a558521c109",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -689,11 +710,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767023960,
|
||||
"narHash": "sha256-R2HgtVS1G3KSIKAQ77aOZ+Q0HituOmPgXW9nBNkpp3Q=",
|
||||
"lastModified": 1776426575,
|
||||
"narHash": "sha256-KI6nIfVihn/DPaeB5Et46Xg3dkNHrrEtUd5LBBVomB0=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-guiutils",
|
||||
"rev": "c2e906261142f5dd1ee0bfc44abba23e2754c660",
|
||||
"rev": "a968d211048e3ed538e47b84cb3649299578f19d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -702,36 +723,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-plugins": {
|
||||
"inputs": {
|
||||
"hyprland": [
|
||||
"hyprland-git"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": [
|
||||
"hyprland-plugins",
|
||||
"hyprland",
|
||||
"systems"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771865848,
|
||||
"narHash": "sha256-xwNa+1D8WPsDnJtUofDrtyDCZKZotbUymzV/R5s+M0I=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"rev": "b85a56b9531013c79f2f3846fd6ee2ff014b8960",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-plugins",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprland-protocols": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -744,11 +735,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1765214753,
|
||||
"narHash": "sha256-P9zdGXOzToJJgu5sVjv7oeOGPIIwrd9hAUAP3PsmBBs=",
|
||||
"lastModified": 1772460177,
|
||||
"narHash": "sha256-/6G/MsPvtn7bc4Y32pserBT/Z4SUUdBd4XYJpOEKVR4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "3f3860b869014c00e8b9e0528c7b4ddc335c21ab",
|
||||
"rev": "1cb6db5fd6bb8aee419f4457402fa18293ace917",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -773,11 +764,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771866172,
|
||||
"narHash": "sha256-fYFoXhQLrm1rD8vSFKQBOEX4OGCuJdLt1amKfHd5GAw=",
|
||||
"lastModified": 1776426736,
|
||||
"narHash": "sha256-rl7i4aY+9p8LysJp7o8uRWahCkpFznCgGHXszlTw7b0=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "0b219224910e7642eb0ed49f0db5ec3d008e3e41",
|
||||
"rev": "7833ff33b2e82d3406337b5dcf0d1cec595d83e9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -825,11 +816,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1764592794,
|
||||
"narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=",
|
||||
"lastModified": 1772462885,
|
||||
"narHash": "sha256-5pHXrQK9zasMnIo6yME6EOXmWGFMSnCITcfKshhKJ9I=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprtoolkit",
|
||||
"rev": "5cfe0743f0e608e1462972303778d8a0859ee63e",
|
||||
"rev": "9af245a69fa6b286b88ddfc340afd288e00a6998",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -850,11 +841,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771271487,
|
||||
"narHash": "sha256-41gEiUS0Pyw3L/ge1l8MXn61cK14VAhgWB/JV8s/oNI=",
|
||||
"lastModified": 1777492286,
|
||||
"narHash": "sha256-PwuoEJQcjSKJNP5T55qhfDwIP0tw5zxEhfu8GDfKfeg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "340a792e3b3d482c4ae5f66d27a9096bdee6d76d",
|
||||
"rev": "ec5c0c709706bad5b82f667fd8758eae442577ce",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -875,11 +866,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1770501770,
|
||||
"narHash": "sha256-NWRM6+YxTRv+bT9yvlhhJ2iLae1B1pNH3mAL5wi2rlQ=",
|
||||
"lastModified": 1777148232,
|
||||
"narHash": "sha256-Uv0WZLhu89SafuSOmYDA7akrPt4wBRmsa1ucasO5aXg=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "0bd8b6cde9ec27d48aad9e5b4deefb3746909d40",
|
||||
"rev": "fec9cf1abcc1011e46f0a0986f46bf93c6bf8b92",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -904,11 +895,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771606233,
|
||||
"narHash": "sha256-F3PLUqQ/TwgR70U+UeOqJnihJZ2EuunzojYC4g5xHr0=",
|
||||
"lastModified": 1776728575,
|
||||
"narHash": "sha256-z9eGphrArEBpl1O/GCH0wlY6z4K9vA6yWh2gAS6qytU=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwire",
|
||||
"rev": "06c7f1f8c4194786c8400653c4efc49dc14c0f3a",
|
||||
"rev": "f3a80888783702a39691b684d099e16b83ed4702",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -927,11 +918,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768868561,
|
||||
"narHash": "sha256-nvEOtV1Y5K9E1Lj+bPnQ6k1AneDM9OT3RbV3Urm/1Qs=",
|
||||
"lastModified": 1776390028,
|
||||
"narHash": "sha256-N/CV6Ldg1PmGNclROSR0qZ2wPwcxkxuPGF7uc34tQnM=",
|
||||
"owner": "ulyssa",
|
||||
"repo": "iamb",
|
||||
"rev": "93fc47d019cd6a9d56f163aa6ba819ef1fd309d6",
|
||||
"rev": "b10c98588bd9b22a83dd1275fbf797023aba4117",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1034,19 +1025,38 @@
|
|||
"scenefx": "scenefx"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772792509,
|
||||
"narHash": "sha256-c2X+x/D8txqV5UaN6TYYh9PEXyMaWVZl4mAQ0Sl21f8=",
|
||||
"owner": "DreamMaoMao",
|
||||
"repo": "mangowc",
|
||||
"rev": "9a17a0279c39b330d155d50282d1d2641d519dc3",
|
||||
"lastModified": 1776999768,
|
||||
"narHash": "sha256-RP7eVqbnQ/uNCXh0HH8SXRIerMlkyHco+wpI9oxon0U=",
|
||||
"owner": "mangowm",
|
||||
"repo": "mango",
|
||||
"rev": "b9c6a2c1964cb59536c5d3e02d2ff981a7eb36d2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "DreamMaoMao",
|
||||
"repo": "mangowc",
|
||||
"owner": "mangowm",
|
||||
"repo": "mango",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"mcsr": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_4",
|
||||
"nixpkgs": [
|
||||
"nixpkgs-unstable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1777502373,
|
||||
"narHash": "sha256-vK+Us7fQoCMJ9uAxQIo/rYvXBgAzmZkzX6i7kHpQ3Gw=",
|
||||
"rev": "1f24f320429cabee34f119178eecb4df34a19662",
|
||||
"type": "tarball",
|
||||
"url": "https://git.uku3lig.net/api/v1/repos/uku/mcsr-nixos/archive/1f24f320429cabee34f119178eecb4df34a19662.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://git.uku3lig.net/uku/mcsr-nixos/archive/main.tar.gz"
|
||||
}
|
||||
},
|
||||
"microvm": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -1056,11 +1066,11 @@
|
|||
"spectrum": "spectrum"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772742184,
|
||||
"narHash": "sha256-zGnRxJQZ8wZTwvSxF4SAGoefbta15/W032tK22uIF2E=",
|
||||
"lastModified": 1776340739,
|
||||
"narHash": "sha256-s4FDictJlPtY6Shd6scG5hgrDMiHth09+svtvTA5NLA=",
|
||||
"owner": "microvm-nix",
|
||||
"repo": "microvm.nix",
|
||||
"rev": "a257ca90febb686c75826918f9f8876d74f875eb",
|
||||
"rev": "2f2f62fdfdca2750e3399f66bd03986ab967e5ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1077,11 +1087,11 @@
|
|||
"spectrum": "spectrum_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772742184,
|
||||
"narHash": "sha256-zGnRxJQZ8wZTwvSxF4SAGoefbta15/W032tK22uIF2E=",
|
||||
"lastModified": 1776340739,
|
||||
"narHash": "sha256-s4FDictJlPtY6Shd6scG5hgrDMiHth09+svtvTA5NLA=",
|
||||
"owner": "microvm-nix",
|
||||
"repo": "microvm.nix",
|
||||
"rev": "a257ca90febb686c75826918f9f8876d74f875eb",
|
||||
"rev": "2f2f62fdfdca2750e3399f66bd03986ab967e5ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1246,11 +1256,11 @@
|
|||
},
|
||||
"nixcats": {
|
||||
"locked": {
|
||||
"lastModified": 1770584904,
|
||||
"narHash": "sha256-9Zaz8lbKF2W9pwXZEnbiGsicHdBoU+dHt3Wv3mCJoZ8=",
|
||||
"lastModified": 1777273601,
|
||||
"narHash": "sha256-xBUa8Tl9V7IXI+VmLEuDc81La/EhoSn1C3EVSnJ3cfU=",
|
||||
"owner": "BirdeeHub",
|
||||
"repo": "nixCats-nvim",
|
||||
"rev": "538fdde784d2909700d97a8ef307783b33a86fb1",
|
||||
"rev": "f69ea013e328841a7def7037ed59788a76be8816",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1262,17 +1272,18 @@
|
|||
"nixcord": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat_5",
|
||||
"flake-parts": "flake-parts_4",
|
||||
"flake-parts": "flake-parts_5",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
],
|
||||
"nixpkgs-nixcord": "nixpkgs-nixcord"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772813986,
|
||||
"narHash": "sha256-x0fD+LL+O99p36c2UnjnHvVq4/7TvGH/8G5lTNIJBCo=",
|
||||
"lastModified": 1777806571,
|
||||
"narHash": "sha256-v1QynzgI9XZezMdBglehneSPOl6LGwhnIKnjRb03ouc=",
|
||||
"owner": "FlameFlag",
|
||||
"repo": "nixcord",
|
||||
"rev": "e433a2919eb9b3a8c85ab3017c08685816e63a66",
|
||||
"rev": "41e6c4ac150b737a994835473462cb9560b6421b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1283,11 +1294,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1772774498,
|
||||
"narHash": "sha256-85HBHBEzVRQ0ZRe6u3E2snUvAyTr5mSvi5m2vl4HExo=",
|
||||
"lastModified": 1777718177,
|
||||
"narHash": "sha256-qq56SczKpUNKcm8xdOsXYLzaX37p1bLS0fFaCMB7s3Y=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "943ba5b1a58e68eb9a2c284ba6e3b30ebfe45abe",
|
||||
"rev": "e59d8bfa2cc42b1e1104595ac4292cfedce7f1a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1299,11 +1310,11 @@
|
|||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1772328832,
|
||||
"narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=",
|
||||
"lastModified": 1777168982,
|
||||
"narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742",
|
||||
"rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1329,11 +1340,11 @@
|
|||
},
|
||||
"nixpkgs-lib_3": {
|
||||
"locked": {
|
||||
"lastModified": 1772328832,
|
||||
"narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=",
|
||||
"lastModified": 1777168982,
|
||||
"narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742",
|
||||
"rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1344,11 +1355,11 @@
|
|||
},
|
||||
"nixpkgs-master": {
|
||||
"locked": {
|
||||
"lastModified": 1772820052,
|
||||
"narHash": "sha256-qXEI8n+4eXT+BqMzUMuKFdkltE82TjgIceiJCpdjzD4=",
|
||||
"lastModified": 1777798537,
|
||||
"narHash": "sha256-hY/pzDFcznuHlaJrbc0GME7WrzUY9o44peQryT7xbFI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d78e468770f4ab5e00c5015f4d77c1a499a76dc8",
|
||||
"rev": "5f49e619c2519edeafbb56a79550fdb6703d4739",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1358,13 +1369,45 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-staging": {
|
||||
"nixpkgs-nixcord": {
|
||||
"locked": {
|
||||
"lastModified": 1772820753,
|
||||
"narHash": "sha256-Sv689sGseiqNPXGSggxrESyivroe8cgY4dxqJdBLsEc=",
|
||||
"lastModified": 1777428379,
|
||||
"narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e2239e5b2c5676b963d78dccbee06a9bbbdb05d6",
|
||||
"rev": "755f5aa91337890c432639c60b6064bb7fe67769",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-25.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-rust": {
|
||||
"locked": {
|
||||
"lastModified": 1776371872,
|
||||
"narHash": "sha256-hVIxbmDzNoXnzobtujvL189+YPrqr0QWF5fn+13+CtY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "838f1611dc4c0078432071819d6fffe046148813",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "838f1611dc4c0078432071819d6fffe046148813",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-staging": {
|
||||
"locked": {
|
||||
"lastModified": 1777791170,
|
||||
"narHash": "sha256-TFBAl/DxLx1VQQm5X+S/8vIDpzWPEqugfQH5/pbS8AY=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c205d8fd78779c17c9665002b3445400a4173c6d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1376,11 +1419,11 @@
|
|||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1772624091,
|
||||
"narHash": "sha256-QKyJ0QGWBn6r0invrMAK8dmJoBYWoOWy7lN+UHzW1jc=",
|
||||
"lastModified": 1777578337,
|
||||
"narHash": "sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM+Z4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "80bdc1e5ce51f56b19791b52b2901187931f5353",
|
||||
"rev": "15f4ee454b1dce334612fa6843b3e05cf546efab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1408,11 +1451,11 @@
|
|||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1772598333,
|
||||
"narHash": "sha256-YaHht/C35INEX3DeJQNWjNaTcPjYmBwwjFJ2jdtr+5U=",
|
||||
"lastModified": 1777428379,
|
||||
"narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fabb8c9deee281e50b1065002c9828f2cf7b2239",
|
||||
"rev": "755f5aa91337890c432639c60b6064bb7fe67769",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1452,11 +1495,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772024342,
|
||||
"narHash": "sha256-+eXlIc4/7dE6EcPs9a2DaSY3fTA9AE526hGqkNID3Wg=",
|
||||
"lastModified": 1776796298,
|
||||
"narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "6e34e97ed9788b17796ee43ccdbaf871a5c2b476",
|
||||
"rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1491,15 +1534,16 @@
|
|||
"home-manager": "home-manager_2",
|
||||
"home-manager-unstable": "home-manager-unstable",
|
||||
"hyprland-git": "hyprland-git",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
"iamb": "iamb",
|
||||
"mango": "mango",
|
||||
"mcsr": "mcsr",
|
||||
"microvm": "microvm_2",
|
||||
"millennium": "millennium",
|
||||
"nixcats": "nixcats",
|
||||
"nixcord": "nixcord",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-master": "nixpkgs-master",
|
||||
"nixpkgs-rust": "nixpkgs-rust",
|
||||
"nixpkgs-staging": "nixpkgs-staging",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"sddm-silent": "sddm-silent",
|
||||
|
|
@ -1511,11 +1555,11 @@
|
|||
"rust-analyzer-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1772701851,
|
||||
"narHash": "sha256-2g4Xg+w6wx2ewn1Tv576RzDc6Uof99H8kofHWdJktEs=",
|
||||
"lastModified": 1777768857,
|
||||
"narHash": "sha256-zfekJcaVctfAps1KDHwZpwkvAQn7GObRHh3Gl3xocGI=",
|
||||
"owner": "rust-lang",
|
||||
"repo": "rust-analyzer",
|
||||
"rev": "2a8f00fb9344cc6701063192fe0aaf66ecf9d337",
|
||||
"rev": "1102c0b633599564919e36076d4362d7e68dbddc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1591,11 +1635,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1771956684,
|
||||
"narHash": "sha256-+EtzmEzGA2xqwIvKrP0euYaOzrmTQWEWAiWV+k2WBEM=",
|
||||
"lastModified": 1775652648,
|
||||
"narHash": "sha256-mLE7i9r9qenayJ8adWm22SbqUwLuopvRhyoizuZTtyo=",
|
||||
"owner": "uiriansan",
|
||||
"repo": "SilentSDDM",
|
||||
"rev": "34f82e1fb8412fff78b82a0dcce763492b36054c",
|
||||
"rev": "a0fb8a48de772c0340dd6639b331ebf6ec2eb554",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1607,11 +1651,11 @@
|
|||
"spectrum": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1759482047,
|
||||
"narHash": "sha256-H1wiXRQHxxPyMMlP39ce3ROKCwI5/tUn36P8x6dFiiQ=",
|
||||
"lastModified": 1772189877,
|
||||
"narHash": "sha256-i1p90Rgssb//aNiTDFq46ZG/fk3LmyRLChtp/9lddyA=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "c5d5786d3dc938af0b279c542d1e43bce381b4b9",
|
||||
"revCount": 996,
|
||||
"rev": "fe39e122d898f66e89ffa17d4f4209989ccb5358",
|
||||
"revCount": 1255,
|
||||
"type": "git",
|
||||
"url": "https://spectrum-os.org/git/spectrum"
|
||||
},
|
||||
|
|
@ -1623,11 +1667,11 @@
|
|||
"spectrum_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1759482047,
|
||||
"narHash": "sha256-H1wiXRQHxxPyMMlP39ce3ROKCwI5/tUn36P8x6dFiiQ=",
|
||||
"lastModified": 1772189877,
|
||||
"narHash": "sha256-i1p90Rgssb//aNiTDFq46ZG/fk3LmyRLChtp/9lddyA=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "c5d5786d3dc938af0b279c542d1e43bce381b4b9",
|
||||
"revCount": 996,
|
||||
"rev": "fe39e122d898f66e89ffa17d4f4209989ccb5358",
|
||||
"revCount": 1255,
|
||||
"type": "git",
|
||||
"url": "https://spectrum-os.org/git/spectrum"
|
||||
},
|
||||
|
|
@ -1646,11 +1690,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772494187,
|
||||
"narHash": "sha256-6ksgNAFXVK+Cg/6ww7bB2nJUPZlnS75UwZC7G+L03EE=",
|
||||
"lastModified": 1777789800,
|
||||
"narHash": "sha256-XHCvLGu/bEEZRzXVKFu1i+2YB102Nr00n8e7xrzsfVs=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"rev": "915ab06b046d05613041780c575c62a32fe67cea",
|
||||
"rev": "d0e921cc48aab6137d203a3eab19601dc2bdc0c3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1820,11 +1864,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1761431178,
|
||||
"narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=",
|
||||
"lastModified": 1777035886,
|
||||
"narHash": "sha256-m1TNuBoSXUBSKhD9UVMkU90M0wFTPTfvIOOltO8IM8A=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "4b8801228ff958d028f588f0c2b911dbf32297f9",
|
||||
"rev": "ecfcdcc781f48821d83e1e2a0e30d7beca0eeb5e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1841,11 +1885,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772772172,
|
||||
"narHash": "sha256-OCEb6jXTvhnMTMqMLleYChekDO/zh+VtunBAS0WevPM=",
|
||||
"lastModified": 1777564084,
|
||||
"narHash": "sha256-O9VRkxg+2j+sh+c73wi4VeIBECoqW2PlnCR9Qe1nQKA=",
|
||||
"owner": "0xc000022070",
|
||||
"repo": "zen-browser-flake",
|
||||
"rev": "5f8f34c0dd56808ecbfa35697353c455e4a416b3",
|
||||
"rev": "d93443c0f6fdb3b179bed68856f322dba4842612",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
22
flake.nix
22
flake.nix
|
|
@ -9,6 +9,9 @@
|
|||
nixpkgs-staging.url = "github:NixOS/nixpkgs/staging-next";
|
||||
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
|
||||
|
||||
# currently a regression: https://github.com/rust-lang/rust-analyzer/pull/22207
|
||||
nixpkgs-rust.url = "github:NixOS/nixpkgs/838f1611dc4c0078432071819d6fffe046148813";
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/release-25.11";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
@ -40,18 +43,23 @@
|
|||
url = "github:hyprwm/Hyprland";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
hyprland-plugins = {
|
||||
url = "github:hyprwm/hyprland-plugins";
|
||||
inputs.hyprland.follows = "hyprland-git";
|
||||
};
|
||||
# hyprland-plugins = {
|
||||
# url = "github:hyprwm/hyprland-plugins";
|
||||
# inputs.hyprland.follows = "hyprland-git";
|
||||
# };
|
||||
|
||||
mango = {
|
||||
url = "github:DreamMaoMao/mangowc";
|
||||
url = "github:mangowm/mango";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
nixcats.url = "github:BirdeeHub/nixCats-nvim";
|
||||
|
||||
fenix = {
|
||||
url = "github:nix-community/fenix";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
awww = {
|
||||
url = "git+https://codeberg.org/LGFae/awww";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
|
|
@ -85,8 +93,8 @@
|
|||
};
|
||||
};
|
||||
|
||||
fenix = {
|
||||
url = "github:nix-community/fenix";
|
||||
mcsr = {
|
||||
url = "https://git.uku3lig.net/uku/mcsr-nixos/archive/main.tar.gz";
|
||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{...}: {
|
||||
nix.settings = {
|
||||
experimental-features = ["nix-command" "flakes"];
|
||||
experimental-features = ["nix-command" "flakes" "pipe-operators"];
|
||||
download-buffer-size = 524288000;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -85,8 +85,8 @@
|
|||
|
||||
# fonts
|
||||
nerd-fonts.departure-mono # pretty pixel art font i love!! x3
|
||||
nerd-fonts.jetbrains-mono
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans # bitmap font for cjk support :3
|
||||
zpix-pixel-font # bitmap font for cjk support :3
|
||||
|
||||
# cli / tui tools and commands!
|
||||
eza # replaces: ls (rust)
|
||||
|
|
@ -109,12 +109,15 @@
|
|||
exiftool # display and edit metadata on a variety of files
|
||||
halloy # irc tui app written in rust
|
||||
pastel # color generator / manipulator :3 i love colors!! <3
|
||||
eva # calculator repl
|
||||
eva # calculator repl
|
||||
silicon # makes pretty images of code :3
|
||||
wormhole-rs # send people stuff!! :3
|
||||
croc # other way to send people stuff!! :3
|
||||
|
||||
# cli fun
|
||||
pokeget-rs # prints a random pokemon to the terminal :3
|
||||
pipes # pipes program <3
|
||||
cmatrix # the matrix :3
|
||||
|
||||
# dev
|
||||
gnumake
|
||||
|
|
@ -124,12 +127,16 @@
|
|||
glibc
|
||||
pkg-config
|
||||
gobject-introspection
|
||||
rustup
|
||||
rustup # rust
|
||||
zig
|
||||
elixir
|
||||
gleam
|
||||
dotnet-sdk # csharp
|
||||
ghc # haskell compiler
|
||||
cabal-install # haskell cli
|
||||
delta # git diff viewer
|
||||
tlrc # tldr rust client
|
||||
shellcheck
|
||||
|
||||
# apps
|
||||
qutebrowser # keyboard-focused browser (chromium)
|
||||
|
|
@ -139,20 +146,19 @@
|
|||
obsidian # literally best notes app (i use vim mode)
|
||||
qimgv # image viewer!
|
||||
feh # other image viewer! (im indecisive)
|
||||
vesktop # modded discord client!
|
||||
gimp # open source image manipulation program
|
||||
krita # open source painting application!
|
||||
imhex # hex editor
|
||||
kicad # open source electronics design program
|
||||
easyeda2kicad
|
||||
# FIX: its fucking broken: https://github.com/NixOS/nixpkgs/pull/494721
|
||||
mpkgs.libreoffice-qt # word, excel, pdf etc open source programs
|
||||
libreoffice-qt # word, excel, pdf etc open source programs
|
||||
hunspell # spell checker
|
||||
obs-studio
|
||||
cytoscape
|
||||
element-desktop # 'official' gui matrix client
|
||||
blender # AMAZING 3D MODELLING PROGRAMMM <3
|
||||
session-desktop # idk silly chat app
|
||||
localsend # share files locally :3
|
||||
|
||||
# media
|
||||
playerctl # mpris cli interface for media apps :3
|
||||
|
|
@ -162,8 +168,8 @@
|
|||
|
||||
# games
|
||||
r2modman # mod manager for lots of games!!
|
||||
prismlauncher # minecraft launcher
|
||||
bottles # wineprefix manager
|
||||
# prismlauncher # minecraft launcher
|
||||
# bottles # wineprefix manager
|
||||
|
||||
# vr
|
||||
sidequest # app store for sideloading onto vr headsets
|
||||
|
|
@ -173,7 +179,6 @@
|
|||
# gui settings apps
|
||||
nwg-look # gtk 2 / 3 settings thing idc i hate gtk
|
||||
pavucontrol # i wanna get rid of this but its audio control thing
|
||||
rquickshare # android quick share (this is pretty cool!!)
|
||||
|
||||
# wayland desktop tools / de / wm stuff / gui stuffs
|
||||
cliphist
|
||||
|
|
@ -289,7 +294,7 @@
|
|||
git.pagers = [
|
||||
{
|
||||
colorArg = "always";
|
||||
pager = "delta --dark --pager=never --line-numbers --side-by-side";
|
||||
pager = "delta --dark --pager=never";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
|
@ -318,7 +323,6 @@
|
|||
zen-browser = {
|
||||
enable = true;
|
||||
package = inputs.zen.packages.${system}.twilight;
|
||||
suppressXdgMigrationWarning = true;
|
||||
};
|
||||
|
||||
mpv = {
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
font-family: 'DepartureMono Nerd Font';
|
||||
font-family: "DepartureMono Nerd Font", "Unifont";
|
||||
font-size: 10px;
|
||||
font-weight: bold;
|
||||
min-height: 10px;
|
||||
|
|
@ -37,6 +37,7 @@ tooltip label {
|
|||
#network,
|
||||
#workspaces,
|
||||
#taskbar,
|
||||
#submap,
|
||||
#cpu,
|
||||
#pulseaudio,
|
||||
#privacy,
|
||||
|
|
@ -48,6 +49,7 @@ tooltip label {
|
|||
padding: 4px 16px;
|
||||
border-radius: 32px;
|
||||
border: 1px solid @color01;
|
||||
min-height: 14px;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
@ -74,6 +76,7 @@ right-side modules
|
|||
#cpu,
|
||||
#pulseaudio,
|
||||
#tray,
|
||||
#submap,
|
||||
#privacy {
|
||||
margin: 4px 0px 4px 4px;
|
||||
}
|
||||
|
|
@ -96,6 +99,34 @@ right-side modules
|
|||
border: none;
|
||||
}
|
||||
|
||||
#submap.name {
|
||||
color: @colorfg;
|
||||
}
|
||||
|
||||
#pulseaudio.sink {
|
||||
margin: 4px 0 4px 4px;
|
||||
border-radius: 32px 0px 0px 32px;
|
||||
color: @colorbg;
|
||||
border-color: @color12;
|
||||
background-color: @color12;
|
||||
}
|
||||
#pulseaudio.sink.muted {
|
||||
color: @color12;
|
||||
background-color: @colorbg;
|
||||
}
|
||||
#pulseaudio.source {
|
||||
margin: 4px 0 4px 0;
|
||||
border-radius: 0px 32px 32px 0px;
|
||||
border-width: 1px 1px 1px 0px;
|
||||
color: @colorbg;
|
||||
border-color: @color14;
|
||||
background-color: @color14;
|
||||
}
|
||||
#pulseaudio.source.source-muted {
|
||||
color: @color14;
|
||||
background-color: @colorbg;
|
||||
}
|
||||
|
||||
/*
|
||||
connects the workspace and taskbar together :3
|
||||
*/
|
||||
|
|
@ -114,7 +145,7 @@ right-side modules
|
|||
*/
|
||||
|
||||
#cpu {
|
||||
margin: 4px 0 4px 0;
|
||||
margin: 4px 0 4px 4px;
|
||||
border-radius: 32px 0px 0px 32px;
|
||||
}
|
||||
#memory {
|
||||
|
|
|
|||
|
|
@ -6,24 +6,45 @@
|
|||
layer = "top";
|
||||
position = "top";
|
||||
height = 20;
|
||||
modules-left = ["hyprland/workspaces" "wlr/taskbar" "custom/media"];
|
||||
modules-center = ["clock"];
|
||||
modules-right = ["cpu" "memory" "network" "pulseaudio" "privacy" "tray"];
|
||||
|
||||
modules-left = [
|
||||
"hyprland/workspaces"
|
||||
"wlr/taskbar"
|
||||
"custom/media"
|
||||
];
|
||||
|
||||
modules-center = [
|
||||
"clock"
|
||||
];
|
||||
|
||||
modules-right = [
|
||||
"hyprland/submap"
|
||||
"cpu"
|
||||
"memory"
|
||||
"network"
|
||||
"pulseaudio#sink"
|
||||
"pulseaudio#source"
|
||||
"privacy"
|
||||
"tray"
|
||||
];
|
||||
|
||||
# left
|
||||
"hyprland/workspaces" = {
|
||||
format = "{id}";
|
||||
};
|
||||
|
||||
# not enabled yet, hyprland and mango need two different configs ;-;
|
||||
"ext/workspaces" = {
|
||||
# not enabled yet, hyprland and mango need two different configs ;-;
|
||||
format = "{id}";
|
||||
ignore-hidden = true;
|
||||
on-click = "activate";
|
||||
};
|
||||
|
||||
"wlr/taskbar" = {
|
||||
format = "{icon}";
|
||||
icon-size = 12;
|
||||
};
|
||||
|
||||
"custom/media" = {
|
||||
exec = "auroramedia";
|
||||
return-type = "json";
|
||||
|
|
@ -39,14 +60,24 @@
|
|||
};
|
||||
|
||||
# right
|
||||
"hyprland/submap" = {
|
||||
format = "{}";
|
||||
# always-on = true;
|
||||
# default-submap = "normal";
|
||||
max-length = 12;
|
||||
tooltip = false;
|
||||
};
|
||||
|
||||
"cpu" = {
|
||||
format = " {usage}%";
|
||||
interval = 1;
|
||||
};
|
||||
|
||||
"memory" = {
|
||||
format = " {used:0.1f} / {total:0.1f} GiB";
|
||||
interval = 1;
|
||||
};
|
||||
|
||||
"network" = {
|
||||
format = "{bandwidthUpBytes} {bandwidthDownBytes} {ifname}";
|
||||
format-wifi = " {bandwidthUpBytes} {bandwidthDownBytes} ";
|
||||
|
|
@ -55,7 +86,8 @@
|
|||
interval = 1;
|
||||
max-length = 32;
|
||||
};
|
||||
"pulseaudio" = {
|
||||
|
||||
"pulseaudio#sink" = {
|
||||
format = "{icon} {volume}%";
|
||||
format-muted = " {volume}%";
|
||||
format-icons = {
|
||||
|
|
@ -66,7 +98,18 @@
|
|||
];
|
||||
};
|
||||
"scroll-step" = 5;
|
||||
tooltip = true;
|
||||
};
|
||||
|
||||
"pulseaudio#source" = {
|
||||
format = "{format_source}";
|
||||
format-source = " {volume}%";
|
||||
format-source-muted = " {volume}%";
|
||||
on-scroll-up = "wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SOURCE@ 5%+";
|
||||
on-scroll-down = "wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SOURCE@ 5%-";
|
||||
tooltip = true;
|
||||
};
|
||||
|
||||
"privacy" = {
|
||||
icon-size = 12;
|
||||
icon-spacing = 5;
|
||||
|
|
@ -84,6 +127,7 @@
|
|||
}
|
||||
];
|
||||
};
|
||||
|
||||
"tray" = {
|
||||
icon-size = 12;
|
||||
spacing = 10;
|
||||
|
|
|
|||
|
|
@ -2,12 +2,16 @@ vim.g.mapleader = " "
|
|||
|
||||
vim.opt.termguicolors = true -- use terminal colors
|
||||
vim.opt.relativenumber = true
|
||||
vim.opt.number = true
|
||||
vim.opt.wrap = false
|
||||
vim.opt.colorcolumn = "80"
|
||||
vim.opt.scrolloff = 4
|
||||
|
||||
require("plugins")
|
||||
require("lsp")
|
||||
require("colors")
|
||||
|
||||
-- move windows :3
|
||||
vim.keymap.set("n", "<A-h>", function()
|
||||
vim.cmd("wincmd h")
|
||||
end)
|
||||
|
|
@ -21,73 +25,71 @@ vim.keymap.set("n", "<A-l>", function()
|
|||
vim.cmd("wincmd l")
|
||||
end)
|
||||
|
||||
local uv = vim.loop
|
||||
local colorscheme_filepath = "/home/aurora/.cache/nvim/neovim-colors"
|
||||
local colors = {}
|
||||
-- splits <3 (i love splits sm)
|
||||
vim.keymap.set("n", "<leader>s", function()
|
||||
vim.cmd("split")
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>v", function()
|
||||
vim.cmd("vsplit")
|
||||
end)
|
||||
|
||||
-- function to load colors
|
||||
local function load_colors()
|
||||
local new_colors = {}
|
||||
for line in io.lines(colorscheme_filepath) do
|
||||
table.insert(new_colors, line)
|
||||
-- u can put delta inside of neovim omg they are spoiling me <3
|
||||
local git_diff_win = nil
|
||||
|
||||
vim.api.nvim_create_autocmd("VimResized", {
|
||||
callback = function()
|
||||
if git_diff_win and vim.api.nvim_win_is_valid(git_diff_win) then
|
||||
local width = math.floor(vim.o.columns * 0.9)
|
||||
local height = math.floor((vim.o.lines - 2) * 0.9)
|
||||
|
||||
vim.api.nvim_win_set_config(git_diff_win, {
|
||||
relative = "editor",
|
||||
width = width,
|
||||
height = height,
|
||||
col = math.floor((vim.o.columns - width) / 2),
|
||||
row = math.floor((vim.o.lines - height) / 2) - 2,
|
||||
})
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
vim.keymap.set("n", "<leader>gd", function()
|
||||
if git_diff_win and vim.api.nvim_win_is_valid(git_diff_win) then
|
||||
vim.api.nvim_win_close(git_diff_win, true)
|
||||
git_diff_win = nil
|
||||
return
|
||||
end
|
||||
|
||||
-- ensure the table has enough entries to avoid indexing issues
|
||||
if #new_colors >= 18 then
|
||||
colors = new_colors
|
||||
require("base16-colorscheme").setup({
|
||||
base00 = colors[17],
|
||||
base01 = colors[1],
|
||||
base02 = colors[3],
|
||||
base03 = colors[3],
|
||||
base04 = colors[5],
|
||||
base05 = colors[8],
|
||||
base06 = colors[5],
|
||||
base07 = colors[8],
|
||||
base08 = colors[18],
|
||||
base09 = colors[4],
|
||||
base0A = colors[11],
|
||||
base0B = colors[5],
|
||||
base0C = colors[6],
|
||||
base0D = colors[7],
|
||||
base0E = colors[6],
|
||||
base0F = colors[16],
|
||||
})
|
||||
local buf = vim.api.nvim_create_buf(false, true)
|
||||
|
||||
-- set colors for blink.cmp's completion menu
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenu", { bg = colors[17] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenuBorder", { bg = colors[17], fg = colors[13] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenuSelection", { bg = colors[15], fg = colors[17] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpScrollBarThumb", { bg = colors[18] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKind", { bg = colors[17], fg = colors[14] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabel", { bg = colors[17], fg = colors[18] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabelMatch", { bg = colors[17], fg = colors[18] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabelDetail", { bg = colors[17], fg = colors[18] })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabelDescription", { bg = colors[17], fg = colors[18] })
|
||||
else
|
||||
print("Error: Not enough colors in file")
|
||||
end
|
||||
end
|
||||
vim.bo[buf].filetype = "terminal"
|
||||
|
||||
-- initial load
|
||||
load_colors()
|
||||
-- deletes the last two lines of the buffer when the process exits :3
|
||||
vim.api.nvim_create_autocmd("TermClose", {
|
||||
buffer = buf,
|
||||
callback = function()
|
||||
vim.defer_fn(function()
|
||||
vim.bo[buf].modifiable = true
|
||||
vim.api.nvim_buf_set_lines(buf, -3, -1, false, {})
|
||||
vim.bo[buf].modifiable = false
|
||||
end, 10)
|
||||
end,
|
||||
})
|
||||
|
||||
-- vim.defer_fn(load_colors, 1)
|
||||
local width = math.floor(vim.o.columns * 0.9)
|
||||
local height = math.floor((vim.o.lines - 2) * 0.9)
|
||||
|
||||
-- set up a file watcher
|
||||
local function watch_colorscheme()
|
||||
local handle
|
||||
handle = uv.new_fs_event()
|
||||
if handle then
|
||||
uv.fs_event_start(handle, colorscheme_filepath, {}, function(err, _, _)
|
||||
if err then
|
||||
print("Error watching colorscheme file:", err)
|
||||
return
|
||||
end
|
||||
-- debounce by adding a slight delay before reloading
|
||||
vim.defer_fn(load_colors, 100)
|
||||
end)
|
||||
end
|
||||
end
|
||||
git_diff_win = vim.api.nvim_open_win(buf, true, {
|
||||
relative = "editor",
|
||||
width = width,
|
||||
height = height,
|
||||
col = math.floor((vim.o.columns - width) / 2),
|
||||
row = math.floor((vim.o.lines - height) / 2) - 2,
|
||||
style = "minimal",
|
||||
border = "rounded",
|
||||
})
|
||||
|
||||
watch_colorscheme()
|
||||
vim.fn.jobstart("git diff | delta --pager=never", { term = true })
|
||||
|
||||
vim.keymap.set("n", "q", "<cmd>close<CR>", { buffer = buf })
|
||||
end)
|
||||
|
|
|
|||
238
homes/modules/programs/neovim/lua/colors.lua
Normal file
238
homes/modules/programs/neovim/lua/colors.lua
Normal file
|
|
@ -0,0 +1,238 @@
|
|||
local colorscheme_filepath = "/home/aurora/.cache/nvim/neovim-colors"
|
||||
local colors = {}
|
||||
|
||||
local function hex_to_int(hex)
|
||||
hex = hex:gsub("#", "")
|
||||
return tonumber(hex:sub(1, 2), 16) * 0x10000 + tonumber(hex:sub(3, 4), 16) * 0x100 + tonumber(hex:sub(5, 6), 16)
|
||||
end
|
||||
|
||||
-- TODO: change to use lab color space
|
||||
local function blend_colors(c1, c2, t)
|
||||
local r1 = math.floor(c1 / 0x10000)
|
||||
local g1 = math.floor((c1 % 0x10000) / 0x100)
|
||||
local b1 = c1 % 0x100
|
||||
|
||||
local r2 = math.floor(c2 / 0x10000)
|
||||
local g2 = math.floor((c2 % 0x10000) / 0x100)
|
||||
local b2 = c2 % 0x100
|
||||
|
||||
return math.floor(r1 + (r2 - r1) * t) * 0x10000
|
||||
+ math.floor(g1 + (g2 - g1) * t) * 0x100
|
||||
+ math.floor(b1 + (b2 - b1) * t)
|
||||
end
|
||||
|
||||
-- function to load colors
|
||||
local function load_colors()
|
||||
local new_colors = {}
|
||||
for line in io.lines(colorscheme_filepath) do
|
||||
table.insert(new_colors, line)
|
||||
end
|
||||
|
||||
-- ensure the table has enough entries to avoid indexing issues
|
||||
if #new_colors == 18 then
|
||||
colors = new_colors
|
||||
require("base16-colorscheme").setup({
|
||||
base00 = colors[18],
|
||||
base01 = colors[1],
|
||||
base02 = colors[3],
|
||||
base03 = colors[3],
|
||||
base04 = colors[5],
|
||||
base05 = colors[8],
|
||||
base06 = colors[5],
|
||||
base07 = colors[8],
|
||||
base08 = colors[17],
|
||||
base09 = colors[4],
|
||||
base0A = colors[11],
|
||||
base0B = colors[5],
|
||||
base0C = colors[6],
|
||||
base0D = colors[7],
|
||||
base0E = colors[6],
|
||||
base0F = colors[16],
|
||||
})
|
||||
|
||||
-- colors ------------------------------------------------------------------
|
||||
|
||||
local color_00 = colors[1]
|
||||
local color_01 = colors[2]
|
||||
local color_02 = colors[3]
|
||||
local color_03 = colors[4]
|
||||
local color_04 = colors[5]
|
||||
local color_05 = colors[6]
|
||||
local color_06 = colors[7]
|
||||
local color_07 = colors[8]
|
||||
|
||||
local color_08 = colors[9]
|
||||
local color_09 = colors[10]
|
||||
local color_10 = colors[11]
|
||||
local color_11 = colors[12]
|
||||
local color_12 = colors[13]
|
||||
local color_13 = colors[14]
|
||||
local color_14 = colors[15]
|
||||
local color_15 = colors[16]
|
||||
|
||||
local fg = colors[17]
|
||||
local bg = colors[18]
|
||||
|
||||
local bg_90 = blend_colors(hex_to_int("#000000"), hex_to_int(bg), 0.90)
|
||||
|
||||
local fg_10 = blend_colors(hex_to_int(bg), hex_to_int(fg), 0.10)
|
||||
local fg_30 = blend_colors(hex_to_int(bg), hex_to_int(fg), 0.30)
|
||||
|
||||
local secondary_10 = blend_colors(hex_to_int(bg), hex_to_int(color_13), 0.10)
|
||||
local secondary_30 = blend_colors(hex_to_int(bg), hex_to_int(color_13), 0.30)
|
||||
|
||||
-- editor colors :3 --------------------------------------------------------
|
||||
|
||||
vim.api.nvim_set_hl(0, "Visual", { bg = secondary_10 })
|
||||
vim.api.nvim_set_hl(0, "ColorColumn", { bg = secondary_30 })
|
||||
|
||||
-- blink.cmp ---------------------------------------------------------------
|
||||
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenu", { bg = bg })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenuBorder", { fg = color_12, bg = bg })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenuSelection", { fg = bg, bg = color_14 })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpScrollBarThumb", { bg = fg })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKind", { fg = fg, bg = bg })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabel", { fg = fg, bg = bg })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabelMatch", { fg = fg, bg = bg })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabelDetail", { fg = fg, bg = bg })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabelDescription", { fg = fg, bg = bg })
|
||||
|
||||
-- telescope :3 ------------------------------------------------------------
|
||||
|
||||
vim.api.nvim_set_hl(0, "TelescopeNormal", { bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopePromptNormal", { bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopeResultsNormal", { bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopePreviewNormal", { bg = bg_90 })
|
||||
|
||||
vim.api.nvim_set_hl(0, "TelescopeBorder", { fg = color_15, bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopePromptBorder", { fg = color_15, bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopeResultsBorder", { fg = color_15, bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopePreviewBorder", { fg = color_15, bg = bg_90 })
|
||||
|
||||
vim.api.nvim_set_hl(0, "TelescopePromptTitle", { fg = color_15, bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopeResultsTitle", { fg = color_15, bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopePreviewTitle", { fg = color_15, bg = bg_90 })
|
||||
|
||||
vim.api.nvim_set_hl(0, "TelescopePromptPrefix", { fg = color_14, bg = bg_90 })
|
||||
vim.api.nvim_set_hl(0, "TelescopePromptCounter", { fg = color_13, bg = bg_90 })
|
||||
|
||||
-- gitsigns.nvim -----------------------------------------------------------
|
||||
|
||||
vim.api.nvim_set_hl(0, "GitSignsAdd", { fg = color_13 })
|
||||
vim.api.nvim_set_hl(0, "GitSignsChange", { fg = color_11 })
|
||||
vim.api.nvim_set_hl(0, "GitSignsDelete", { fg = color_09 })
|
||||
|
||||
local blame_palette = {
|
||||
color_13,
|
||||
color_11,
|
||||
color_09,
|
||||
color_06,
|
||||
color_05,
|
||||
color_04,
|
||||
color_03,
|
||||
color_12,
|
||||
}
|
||||
|
||||
local blame_group = vim.api.nvim_create_augroup("GitSignsBlameColors", { clear = true })
|
||||
|
||||
local function get_heatmap_palette()
|
||||
local c1 = hex_to_int(color_13) -- old
|
||||
local c2 = hex_to_int(color_14) -- recent
|
||||
|
||||
local palette = {}
|
||||
for i = 0, 7 do
|
||||
palette[i] = blend_colors(c1, c2, i / 7)
|
||||
end
|
||||
|
||||
return palette
|
||||
end
|
||||
|
||||
local heatmap_palette = get_heatmap_palette()
|
||||
|
||||
local function set_blame_colors()
|
||||
local highlights = vim.api.nvim_exec2("highlight", { output = true }).output
|
||||
|
||||
local i = 1
|
||||
for hl_name in highlights:gmatch("(GitSignsBlameColor%.[%x]+)") do
|
||||
local color = blame_palette[(i - 1) % #blame_palette + 1]
|
||||
vim.api.nvim_set_hl(0, hl_name, { fg = color })
|
||||
i = i + 1
|
||||
end
|
||||
|
||||
i = 1
|
||||
for hl_name in highlights:gmatch("(GitSignsColorTemp%.fg%.[%d]+)") do
|
||||
local color = heatmap_palette[(i - 1) % #heatmap_palette + 1]
|
||||
vim.api.nvim_set_hl(0, hl_name, { fg = color })
|
||||
i = i + 1
|
||||
end
|
||||
end
|
||||
|
||||
set_blame_colors()
|
||||
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
group = blame_group,
|
||||
pattern = "gitsigns-blame",
|
||||
callback = function()
|
||||
set_blame_colors()
|
||||
end,
|
||||
})
|
||||
|
||||
-- fyler.nvim --------------------------------------------------------------
|
||||
|
||||
vim.api.nvim_set_hl(0, "FylerBlue", { fg = color_06 })
|
||||
vim.api.nvim_set_hl(0, "FylerGreen", { fg = color_02 })
|
||||
vim.api.nvim_set_hl(0, "FylerGrey", { fg = color_08 })
|
||||
vim.api.nvim_set_hl(0, "FylerRed", { fg = color_01 })
|
||||
vim.api.nvim_set_hl(0, "FylerYellow", { fg = color_03 })
|
||||
|
||||
vim.api.nvim_set_hl(0, "FylerFSDirectoryIcon", { fg = color_06 })
|
||||
vim.api.nvim_set_hl(0, "FylerFSDirectoryName", { fg = fg })
|
||||
vim.api.nvim_set_hl(0, "FylerFSFile", { fg = color_15 })
|
||||
vim.api.nvim_set_hl(0, "FylerFSLink", { fg = color_08 })
|
||||
|
||||
vim.api.nvim_set_hl(0, "FylerGitAdded", { fg = color_04 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitConflict", { fg = color_03 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitDeleted", { fg = color_03 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitIgnored", { fg = color_08 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitModified", { fg = color_05 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitRenamed", { fg = color_05 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitStaged", { fg = color_04 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitUnstaged", { fg = color_05 })
|
||||
vim.api.nvim_set_hl(0, "FylerGitUntracked", { fg = color_06 })
|
||||
|
||||
vim.api.nvim_set_hl(0, "FylerWinPick", { fg = color_15, bg = fg })
|
||||
|
||||
-- lualine.nvim
|
||||
vim.api.nvim_exec_autocmds("User", { pattern = "RefreshLualine" })
|
||||
|
||||
-- hlchunk.nvim
|
||||
vim.api.nvim_set_hl(0, "HLIndent1", { fg = secondary_30 })
|
||||
vim.api.nvim_set_hl(0, "HLChunk1", { fg = color_11 })
|
||||
else
|
||||
print("Error: Not enough colors in file")
|
||||
end
|
||||
end
|
||||
|
||||
-- initial load
|
||||
load_colors()
|
||||
|
||||
-- vim.defer_fn(load_colors, 1)
|
||||
|
||||
-- set up a file watcher
|
||||
local function watch_colorscheme()
|
||||
local handle
|
||||
handle = vim.loop.new_fs_event()
|
||||
if handle then
|
||||
vim.loop.fs_event_start(handle, colorscheme_filepath, {}, function(err, _, _)
|
||||
if err then
|
||||
print("Error watching colorscheme file:", err)
|
||||
return
|
||||
end
|
||||
-- debounce by adding a slight delay before reloading
|
||||
vim.defer_fn(load_colors, 100)
|
||||
end)
|
||||
end
|
||||
end
|
||||
|
||||
watch_colorscheme()
|
||||
|
|
@ -17,7 +17,7 @@ return {
|
|||
keymap = {
|
||||
["<C-space>"] = { "show", "show_documentation", "hide_documentation" },
|
||||
["<C-e>"] = { "hide", "fallback" },
|
||||
["<C-y>"] = { "select_and_accept", "fallback" },
|
||||
["<C-h>"] = { "select_and_accept", "fallback" },
|
||||
|
||||
["<C-k>"] = { "select_prev", "fallback_to_mappings" },
|
||||
["<C-j>"] = { "select_next", "fallback_to_mappings" },
|
||||
|
|
@ -30,7 +30,7 @@ return {
|
|||
["<Tab>"] = { "snippet_forward", "fallback" },
|
||||
["<S-Tab>"] = { "snippet_backward", "fallback" },
|
||||
|
||||
["<C-S-k>"] = { "show_signature", "hide_signature", "fallback" },
|
||||
["<C-s>"] = { "show_signature", "hide_signature", "fallback" },
|
||||
},
|
||||
|
||||
appearance = {
|
||||
|
|
@ -84,7 +84,7 @@ return {
|
|||
},
|
||||
|
||||
documentation = {
|
||||
auto_show = false,
|
||||
auto_show = true,
|
||||
window = {
|
||||
border = "rounded",
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1,5 +1,13 @@
|
|||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = { "lua", "nix", "gleam" },
|
||||
pattern = {
|
||||
"lua",
|
||||
"nix",
|
||||
"gleam",
|
||||
"css",
|
||||
"json",
|
||||
"haskell",
|
||||
"toml",
|
||||
},
|
||||
callback = function()
|
||||
vim.opt_local.shiftwidth = 2
|
||||
vim.opt_local.tabstop = 2
|
||||
|
|
@ -7,14 +15,41 @@ vim.api.nvim_create_autocmd("FileType", {
|
|||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = {
|
||||
"sql",
|
||||
},
|
||||
callback = function()
|
||||
vim.opt_local.shiftwidth = 4
|
||||
vim.opt_local.tabstop = 4
|
||||
vim.opt_local.expandtab = true
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = "TelescopePreviewerLoaded",
|
||||
callback = function(args)
|
||||
local ft = args.data.filetype
|
||||
if vim.tbl_contains({ "lua", "nix", "gleam", "rust" }, ft) then
|
||||
if
|
||||
vim.tbl_contains({
|
||||
"lua",
|
||||
"nix",
|
||||
"gleam",
|
||||
"css",
|
||||
"json",
|
||||
"haskell",
|
||||
"toml",
|
||||
}, ft)
|
||||
then
|
||||
vim.bo.shiftwidth = 2
|
||||
vim.bo.tabstop = 2
|
||||
vim.bo.expandtab = true
|
||||
elseif vim.tbl_contains({
|
||||
"sql",
|
||||
}, ft) then
|
||||
vim.bo.shiftwidth = 4
|
||||
vim.bo.tabstop = 4
|
||||
vim.bo.expandtab = true
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
|
|
|||
|
|
@ -47,6 +47,11 @@ if nixCats("lang.rust.lsp") then
|
|||
diagnostics = {
|
||||
enable = true,
|
||||
},
|
||||
["rust-analyzer"] = {
|
||||
procMacro = {
|
||||
enable = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
end
|
||||
|
|
@ -100,8 +105,14 @@ if nixCats("lang.java.lsp") then
|
|||
}
|
||||
end
|
||||
|
||||
if nixCats("lang.csharp.lsp") then
|
||||
servers.roslyn_ls = {
|
||||
settings = {},
|
||||
}
|
||||
end
|
||||
|
||||
if nixCats("lang.protobuf.lsp") then
|
||||
servers.protols = {
|
||||
servers.buf_ls = {
|
||||
settings = {},
|
||||
}
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
return {
|
||||
{
|
||||
"dressing.nvim",
|
||||
enabled = nixCats("ui.dressing") or false,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,10 +58,23 @@ return {
|
|||
formatters_by_ft = {
|
||||
lua = nixCats("lang.lua.format") and { "stylua" } or nil,
|
||||
nix = nixCats("lang.nix.format") and { "alejandra" } or nil,
|
||||
rust = nixCats("lang.rust.format") and { "rustfmt", lsp_format = "fallback" } or nil,
|
||||
rust = (function()
|
||||
if not nixCats("lang.rust.format") then
|
||||
return nil
|
||||
end
|
||||
local formatters = {}
|
||||
if nixCats("lang.rust.formatters.leptos") then
|
||||
table.insert(formatters, "leptosfmt")
|
||||
end
|
||||
table.insert(formatters, "rustfmt")
|
||||
formatters.lsp_format = "fallback"
|
||||
return formatters
|
||||
end)(),
|
||||
haskell = nixCats("lang.haskell.format") and { "ormolu" } or nil,
|
||||
csharp = nixCats("lang.csharp.format") and { "csharpier" } or nil,
|
||||
proto = nixCats("lang.protobuf.format") and { "buf" } or nil,
|
||||
toml = nixCats("lang.toml.format") and { "taplo" } or nil,
|
||||
sql = nixCats("lang.sql.format") and { "sqlfluff" } or nil,
|
||||
},
|
||||
format_on_save = {
|
||||
timeout_ms = 500,
|
||||
|
|
|
|||
|
|
@ -4,12 +4,12 @@ return {
|
|||
cmd = { "Fyler" },
|
||||
keys = {
|
||||
{
|
||||
"<leader>tf",
|
||||
"<leader>F",
|
||||
function()
|
||||
return require("fyler").toggle({ kind = "split_right" })
|
||||
end,
|
||||
mode = { "n" },
|
||||
desc = "Open [F]yler",
|
||||
desc = "Open File [E]xplorer (Fyler)",
|
||||
},
|
||||
},
|
||||
load = function(name)
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
return {
|
||||
{
|
||||
"vim-fugitive",
|
||||
enabled = nixCats("git") or false,
|
||||
enabled = nixCats("git.merge") or false,
|
||||
cmd = { "Git", "Gvdiffsplit" },
|
||||
},
|
||||
{
|
||||
"resolve-nvim",
|
||||
enabled = nixCats("git") or false,
|
||||
enabled = nixCats("git.merge") or false,
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
after = function(plugin)
|
||||
require("resolve").setup({
|
||||
|
|
@ -21,4 +21,73 @@ return {
|
|||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
"gitsigns.nvim",
|
||||
enabled = nixCats("git.gitsigns") or false,
|
||||
after = function(plugin)
|
||||
require("gitsigns").setup({
|
||||
signs = {
|
||||
add = { text = "┃" },
|
||||
change = { text = "┇" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "╎" },
|
||||
},
|
||||
signs_staged = {
|
||||
add = { text = "┃" },
|
||||
change = { text = "┇" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "╎" },
|
||||
},
|
||||
on_attach = function(bufnr)
|
||||
local gitsigns = require("gitsigns")
|
||||
|
||||
-- toggle git blame
|
||||
vim.keymap.set("n", "<leader>gb", function()
|
||||
local wins = vim.api.nvim_list_wins()
|
||||
for _, win in ipairs(wins) do
|
||||
local buf = vim.api.nvim_win_get_buf(win)
|
||||
local ft = vim.api.nvim_get_option_value("filetype", { buf = buf })
|
||||
if ft == "gitsigns-blame" then
|
||||
vim.api.nvim_win_close(win, true)
|
||||
return
|
||||
end
|
||||
end
|
||||
vim.cmd("Gitsigns blame")
|
||||
end)
|
||||
|
||||
vim.keymap.set("n", "<leader>bl", gitsigns.toggle_current_line_blame)
|
||||
|
||||
vim.keymap.set("n", "]c", function()
|
||||
if vim.wo.diff then
|
||||
vim.cmd.normal({ "]c", bang = true })
|
||||
else
|
||||
gitsigns.nav_hunk("next")
|
||||
end
|
||||
end)
|
||||
|
||||
vim.keymap.set("n", "[c", function()
|
||||
if vim.wo.diff then
|
||||
vim.cmd.normal({ "[c", bang = true })
|
||||
else
|
||||
gitsigns.nav_hunk("prev")
|
||||
end
|
||||
end)
|
||||
|
||||
vim.keymap.set("n", "<leader>hs", gitsigns.stage_hunk)
|
||||
vim.keymap.set("n", "<leader>hu", gitsigns.undo_stage_hunk)
|
||||
|
||||
vim.keymap.set("n", "<leader>hS", gitsigns.stage_buffer)
|
||||
vim.keymap.set("n", "<leader>hU", gitsigns.reset_buffer_index)
|
||||
|
||||
vim.keymap.set("n", "<leader>hi", gitsigns.toggle_current_line_blame)
|
||||
|
||||
vim.keymap.set("n", "<leader>hp", gitsigns.preview_hunk_inline)
|
||||
end,
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
36
homes/modules/programs/neovim/lua/plugins/hlchunk.lua
Normal file
36
homes/modules/programs/neovim/lua/plugins/hlchunk.lua
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
return {
|
||||
{
|
||||
"hlchunk.nvim",
|
||||
enabled = nixCats("ui.hlchunk") or false,
|
||||
after = function(plugin)
|
||||
require("hlchunk").setup({
|
||||
chunk = {
|
||||
enable = true,
|
||||
use_treesitter = true,
|
||||
chars = {
|
||||
horizontal_line = "─",
|
||||
vertical_line = "│",
|
||||
left_top = "╭",
|
||||
left_bottom = "╰",
|
||||
right_arrow = "─",
|
||||
},
|
||||
style = {
|
||||
"#B0F0FA",
|
||||
},
|
||||
},
|
||||
indent = {
|
||||
enable = true,
|
||||
use_treesitter = false,
|
||||
ahead_lines = 10,
|
||||
delay = 25,
|
||||
chars = {
|
||||
"│",
|
||||
},
|
||||
style = {
|
||||
"#9080FA",
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
@ -7,4 +7,6 @@ require("lze").load({
|
|||
{ import = "plugins.format" },
|
||||
{ import = "plugins.comment" },
|
||||
{ import = "plugins.git" },
|
||||
{ import = "plugins.lualine" },
|
||||
{ import = "plugins.hlchunk" },
|
||||
})
|
||||
|
|
|
|||
22
homes/modules/programs/neovim/lua/plugins/lualine.lua
Normal file
22
homes/modules/programs/neovim/lua/plugins/lualine.lua
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
local config = {
|
||||
options = {
|
||||
theme = "auto",
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
{
|
||||
"lualine.nvim",
|
||||
enabled = nixCats("ui.lualine") or false,
|
||||
after = function(plugin)
|
||||
require("lualine").setup(config)
|
||||
|
||||
vim.api.nvim_create_autocmd("User", {
|
||||
pattern = "RefreshLualine",
|
||||
callback = function()
|
||||
require("lualine").setup(config)
|
||||
end,
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
@ -1,12 +1,16 @@
|
|||
return {
|
||||
{
|
||||
"telescope.nvim",
|
||||
enabled = nixCats("telescope.enable") or false,
|
||||
cmd = { "Telescope" },
|
||||
keys = {
|
||||
{
|
||||
"<leader>f",
|
||||
function()
|
||||
return require("telescope.builtin").find_files()
|
||||
return require("telescope.builtin").find_files({
|
||||
hidden = true,
|
||||
file_ignore_patterns = { "^.git/" },
|
||||
})
|
||||
end,
|
||||
mode = { "n" },
|
||||
desc = "Telescope search [F]iles",
|
||||
|
|
@ -22,7 +26,10 @@ return {
|
|||
{
|
||||
"<leader>ts",
|
||||
function()
|
||||
return require("telescope.builtin").live_grep()
|
||||
return require("telescope.builtin").live_grep({
|
||||
additional_args = { "--hidden" },
|
||||
glob_pattern = { "!.git/" },
|
||||
})
|
||||
end,
|
||||
mode = { "n" },
|
||||
desc = "[T]elescope [S]earch cwd with grep",
|
||||
|
|
@ -30,7 +37,10 @@ return {
|
|||
{
|
||||
"<leader>tw",
|
||||
function()
|
||||
return require("telescope.builtin").grep_string()
|
||||
return require("telescope.builtin").grep_string({
|
||||
additional_args = { "--hidden" },
|
||||
glob_pattern = { "!.git/" },
|
||||
})
|
||||
end,
|
||||
mode = { "n" },
|
||||
desc = "[T]elescope search current [W]ord",
|
||||
|
|
@ -51,10 +61,33 @@ return {
|
|||
mode = { "n" },
|
||||
desc = "[T]elescope search [B]uffers",
|
||||
},
|
||||
{
|
||||
"<leader>th",
|
||||
function()
|
||||
return require("telescope.builtin").highlights()
|
||||
end,
|
||||
mode = { "n" },
|
||||
desc = "[T]elescope [H]ighlights",
|
||||
},
|
||||
{
|
||||
"<leader>gs",
|
||||
function()
|
||||
return require("telescope.builtin").git_status()
|
||||
end,
|
||||
mode = { "n" },
|
||||
desc = "[G]it [S]tatus",
|
||||
},
|
||||
},
|
||||
load = function(name)
|
||||
vim.cmd.packadd(name)
|
||||
vim.cmd.packadd("telescope-fzf-native.nvim")
|
||||
|
||||
if nixCats("telescope.fzf") then
|
||||
vim.cmd.packadd("telescope-fzf-native.nvim")
|
||||
end
|
||||
|
||||
if nixCats("telescope.zf") then
|
||||
vim.cmd.packadd("telescope-zf-native.nvim")
|
||||
end
|
||||
end,
|
||||
after = function(plugin)
|
||||
local telescope = require("telescope")
|
||||
|
|
@ -62,6 +95,8 @@ return {
|
|||
|
||||
telescope.setup({
|
||||
defaults = {
|
||||
border = true,
|
||||
borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" },
|
||||
mappings = {
|
||||
i = {
|
||||
["<C-k>"] = actions.move_selection_previous, -- move to prev result
|
||||
|
|
@ -72,7 +107,13 @@ return {
|
|||
},
|
||||
})
|
||||
|
||||
pcall(telescope.load_extension, "fzf")
|
||||
if nixCats("telescope.fzf") then
|
||||
telescope.load_extension("fzf")
|
||||
end
|
||||
|
||||
if nixCats("telescope.zf") then
|
||||
telescope.load_extension("zf-native")
|
||||
end
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,6 @@
|
|||
# TODO: look into changing to this:
|
||||
# https://github.com/BirdeeHub/nix-wrapper-modules
|
||||
{
|
||||
inputs,
|
||||
mpkgs,
|
||||
...
|
||||
}: let
|
||||
{inputs, ...}: let
|
||||
inherit
|
||||
(inputs.nixcats)
|
||||
utils
|
||||
|
|
@ -15,11 +11,10 @@ in {
|
|||
];
|
||||
|
||||
config = {
|
||||
# this value, nixCats is the defaultPackageName you pass to mkNixosModules
|
||||
# it will be the namespace for your options.
|
||||
nixCats = {
|
||||
enable = true;
|
||||
nixpkgs_version = inputs.nixpkgs-unstable;
|
||||
# TODO: ask butterfly about this, am confused :3
|
||||
# this will add the overlays from ./overlays and also,
|
||||
# add any plugins in inputs named "plugins-pluginName" to pkgs.neovimPlugins
|
||||
# It will not apply to overall system, just nixCats.
|
||||
|
|
@ -28,15 +23,13 @@ in {
|
|||
[
|
||||
(utils.standardPluginOverlay inputs)
|
||||
];
|
||||
# see the packageDefinitions below.
|
||||
|
||||
# This says which of those to install.
|
||||
packageNames = ["auroranvim"];
|
||||
|
||||
luaPath = "${./.}";
|
||||
|
||||
# the .replace vs .merge options are for modules based on existing configurations,
|
||||
# they refer to how multiple categoryDefinitions get merged together by the module.
|
||||
# for useage of this section, refer to :h nixCats.flake.outputs.categories
|
||||
# for usage of this section, refer to :h nixCats.flake.outputs.categories
|
||||
categoryDefinitions.replace = {
|
||||
pkgs,
|
||||
settings,
|
||||
|
|
@ -65,9 +58,17 @@ in {
|
|||
docs = [nix-doc]; # TODO: i forgot how to integrate this into neovim
|
||||
};
|
||||
rust = {
|
||||
lsp = [cargo mpkgs.rust-analyzer];
|
||||
lsp = [
|
||||
cargo
|
||||
# !!!!!!!!! remember to change environment variable !!!!!!!!!!!!
|
||||
# currently a regression: https://github.com/rust-lang/rust-analyzer/pull/22207
|
||||
inputs.nixpkgs-rust.legacyPackages.${system}.rust-analyzer
|
||||
];
|
||||
# nightly rustfmt has nicer features :3
|
||||
format = [inputs.fenix.packages.${system}.complete.rustfmt];
|
||||
format = [(rustfmt.override {asNightly = true;})];
|
||||
formatters = {
|
||||
leptos = [leptosfmt];
|
||||
};
|
||||
};
|
||||
zig = {
|
||||
lsp = [zls];
|
||||
|
|
@ -93,13 +94,27 @@ in {
|
|||
];
|
||||
# TODO: needs formatter field
|
||||
};
|
||||
csharp = {
|
||||
lsp = [
|
||||
roslyn-ls
|
||||
];
|
||||
format = [
|
||||
csharpier
|
||||
];
|
||||
};
|
||||
protobuf = {
|
||||
lsp = [protols];
|
||||
lsp = [buf];
|
||||
format = [buf];
|
||||
};
|
||||
toml = {
|
||||
format = [taplo];
|
||||
};
|
||||
bash = {
|
||||
lsp = [bash-language-server];
|
||||
};
|
||||
sql = {
|
||||
format = [sqlfluff];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -120,18 +135,23 @@ in {
|
|||
|
||||
optionalPlugins = with pkgs.vimPlugins; {
|
||||
general = [];
|
||||
ui = [
|
||||
dressing-nvim
|
||||
];
|
||||
ui = {
|
||||
dressing = [dressing-nvim];
|
||||
lualine = [lualine-nvim];
|
||||
hlchunk = [hlchunk-nvim];
|
||||
};
|
||||
qol = [
|
||||
undotree
|
||||
mini-hipatterns
|
||||
];
|
||||
telescope = [
|
||||
telescope-nvim
|
||||
telescope-fzf-native-nvim
|
||||
telescope-ui-select-nvim
|
||||
];
|
||||
telescope = {
|
||||
enable = [
|
||||
telescope-nvim
|
||||
telescope-ui-select-nvim
|
||||
];
|
||||
fzf = [telescope-fzf-native-nvim];
|
||||
zf = [telescope-zf-native-nvim];
|
||||
};
|
||||
fyler = [
|
||||
fyler-nvim
|
||||
];
|
||||
|
|
@ -159,23 +179,22 @@ in {
|
|||
comment = [
|
||||
comment-nvim
|
||||
];
|
||||
git = [
|
||||
resolve-nvim
|
||||
vim-fugitive
|
||||
];
|
||||
lang = {
|
||||
java = [
|
||||
nvim-jdtls
|
||||
git = {
|
||||
merge = [
|
||||
resolve-nvim
|
||||
vim-fugitive
|
||||
];
|
||||
gitsigns = [
|
||||
gitsigns-nvim
|
||||
];
|
||||
};
|
||||
lang = {};
|
||||
};
|
||||
|
||||
# shared libraries to be added to LD_LIBRARY_PATH
|
||||
# variable available to nvim runtime
|
||||
sharedLibraries = {
|
||||
general = with pkgs; [
|
||||
# libgit2
|
||||
];
|
||||
general = with pkgs; [];
|
||||
};
|
||||
|
||||
environmentVariables = {
|
||||
|
|
@ -183,7 +202,7 @@ in {
|
|||
rust.lsp = {
|
||||
# it literally won't see the rust-analyzer provided to it
|
||||
# if you don't use an envrionment variable to tell it
|
||||
RUST_ANALYZER_CMD = "${mpkgs.rust-analyzer}/bin/rust-analyzer";
|
||||
RUST_ANALYZER_CMD = "${inputs.nixpkgs-rust.legacyPackages.${pkgs.system}.rust-analyzer}/bin/rust-analyzer";
|
||||
};
|
||||
elixir.lsp = {
|
||||
ELIXIR_LS_CMD = "${pkgs.elixir-ls}/scripts/language_server.sh";
|
||||
|
|
@ -211,15 +230,11 @@ in {
|
|||
|
||||
# see :help nixCats.flake.outputs.packageDefinitions
|
||||
packageDefinitions.replace = {
|
||||
# these are the names of your packages
|
||||
# you can include as many as you wish.
|
||||
auroranvim = {pkgs, ...}: {
|
||||
# they contain a settings set defined above
|
||||
# see :help nixCats.flake.outputs.settings
|
||||
settings = {
|
||||
wrapRc = true;
|
||||
# IMPORTANT:
|
||||
# your alias may not conflict with your other packages.
|
||||
aliases = [
|
||||
"auravim"
|
||||
"foxyvim"
|
||||
|
|
@ -227,14 +242,26 @@ in {
|
|||
"fvix"
|
||||
];
|
||||
};
|
||||
# and a set of categories that you want
|
||||
# (and other information to pass to lua)
|
||||
|
||||
categories = {
|
||||
general = true;
|
||||
|
||||
ui = true;
|
||||
ui = {
|
||||
dressing = true;
|
||||
lualine = true;
|
||||
hlchunk = true;
|
||||
};
|
||||
|
||||
qol = true;
|
||||
telescope = true;
|
||||
|
||||
telescope = {
|
||||
enable = true;
|
||||
|
||||
# only enable one at a time
|
||||
fzf = true;
|
||||
zf = false;
|
||||
};
|
||||
|
||||
fyler = true;
|
||||
|
||||
lsp = true;
|
||||
|
|
@ -244,50 +271,51 @@ in {
|
|||
format = true;
|
||||
comment = true;
|
||||
|
||||
git = false; # not really setup yet
|
||||
git = {
|
||||
merge = false; # not really setup yet.. </3
|
||||
gitsigns = true;
|
||||
};
|
||||
|
||||
lang = {
|
||||
lua = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
nix = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
docs = true;
|
||||
};
|
||||
rust = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
zig = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
elixir = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
gleam = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
haskell = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
java = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
protobuf = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
};
|
||||
toml = {
|
||||
lsp = true;
|
||||
format = true;
|
||||
lua.lsp = true;
|
||||
lua.format = true;
|
||||
|
||||
nix.lsp = true;
|
||||
nix.format = true;
|
||||
nix.docs = true;
|
||||
|
||||
rust.lsp = true;
|
||||
rust.format = true;
|
||||
rust.formatters = {
|
||||
leptos = true;
|
||||
};
|
||||
|
||||
zig.lsp = true;
|
||||
zig.format = true;
|
||||
|
||||
elixir.lsp = true;
|
||||
elixir.format = true;
|
||||
|
||||
gleam.lsp = true;
|
||||
gleam.format = true;
|
||||
|
||||
haskell.lsp = true;
|
||||
haskell.format = true;
|
||||
|
||||
java.lsp = true;
|
||||
java.format = true;
|
||||
|
||||
csharp.lsp = true;
|
||||
csharp.format = true;
|
||||
|
||||
protobuf.lsp = true;
|
||||
protobuf.format = true;
|
||||
|
||||
toml.format = true;
|
||||
|
||||
bash.lsp = true;
|
||||
|
||||
sql.format = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
{
|
||||
inputs,
|
||||
upkgs,
|
||||
mpkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
|
|
@ -10,13 +9,19 @@
|
|||
|
||||
programs.nixcord = {
|
||||
enable = true;
|
||||
|
||||
equibop.enable = true;
|
||||
equibop.package = upkgs.equibop;
|
||||
|
||||
vesktop.enable = true;
|
||||
vesktop.package = upkgs.vesktop;
|
||||
|
||||
discord = {
|
||||
# can't have both enabled
|
||||
vencord.enable = false;
|
||||
vencord.package = upkgs.vencord;
|
||||
equicord.enable = true;
|
||||
equicord.package = mpkgs.equicord;
|
||||
equicord.package = upkgs.equicord;
|
||||
};
|
||||
|
||||
config = {
|
||||
|
|
@ -36,9 +41,10 @@
|
|||
checkInterval = 1;
|
||||
};
|
||||
biggerStreamPreview.enable = true;
|
||||
callTimer.enable = true;
|
||||
callTimer.enable = false; # broken rn
|
||||
fixYoutubeEmbeds.enable = true;
|
||||
fixSpotifyEmbeds.enable = true;
|
||||
ClearURLs.enable = true;
|
||||
tidalEmbeds.enable = true;
|
||||
youtubeAdblock.enable = true;
|
||||
followVoiceUser.enable = true;
|
||||
|
|
@ -75,7 +81,6 @@
|
|||
forwardAnywhere.enable = true;
|
||||
spotifyCrack.enable = true;
|
||||
spotifyShareCommands.enable = true;
|
||||
spotifyControls.enable = true;
|
||||
fullUserInChatbox.enable = true;
|
||||
gifPaste.enable = true;
|
||||
ignoreActivities = {
|
||||
|
|
@ -99,7 +104,6 @@
|
|||
};
|
||||
platformIndicators.enable = true;
|
||||
previewMessage.enable = true;
|
||||
relationshipNotifier.enable = true;
|
||||
revealAllSpoilers.enable = true;
|
||||
serverInfo.enable = true;
|
||||
serverListIndicators.enable = true;
|
||||
|
|
@ -137,10 +141,10 @@
|
|||
volumeBooster.enable = true;
|
||||
webKeybinds.enable = true;
|
||||
webScreenShareFixes.enable = true;
|
||||
whoReacted.enable = true;
|
||||
whoReacted.enable = false; # broken rn
|
||||
whosWatching.enable = true;
|
||||
quickReply.enable = true;
|
||||
questCompleter.enable = true;
|
||||
# questCompleter.enable = true; # does not seem to exist anymore?
|
||||
shikiCodeblocks = {
|
||||
enable = true;
|
||||
useDevIcon = "COLOR";
|
||||
|
|
@ -164,9 +168,9 @@
|
|||
"1436964273162289185"
|
||||
"1436988320474206311"
|
||||
"1449837047383855119"
|
||||
"1436968495190642722"
|
||||
"1465424321919975454"
|
||||
"1468324280445046824"
|
||||
"1461929299727749145"
|
||||
];
|
||||
}
|
||||
{
|
||||
|
|
@ -175,6 +179,7 @@
|
|||
color = 10223511;
|
||||
collapsed = false;
|
||||
channels = [
|
||||
"1436968495190642722"
|
||||
"1436985374286155799"
|
||||
"1436965657076826222"
|
||||
"1429921297160212681"
|
||||
|
|
@ -191,7 +196,6 @@
|
|||
"1461885176534794427"
|
||||
"1462155159470866443"
|
||||
"1468735915076878407"
|
||||
"1461929299727749145"
|
||||
"1470963392121536657"
|
||||
];
|
||||
}
|
||||
|
|
@ -209,6 +213,7 @@
|
|||
"1436985041203892315"
|
||||
"1438071327515742229"
|
||||
"1436965652861685891"
|
||||
"1496677919404068954"
|
||||
];
|
||||
}
|
||||
{
|
||||
|
|
@ -238,6 +243,7 @@
|
|||
"1437283420312047659"
|
||||
"1437089201651847315"
|
||||
"1467307140443148288"
|
||||
"1473192300363649024"
|
||||
];
|
||||
}
|
||||
{
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
settings = {
|
||||
mgr = {
|
||||
show_hidden = true;
|
||||
mouse_events = ["scroll"];
|
||||
};
|
||||
log = {
|
||||
enabled = false;
|
||||
|
|
|
|||
1
homes/modules/scripts/hyprland-layout-toggle.sh
Normal file
1
homes/modules/scripts/hyprland-layout-toggle.sh
Normal file
|
|
@ -0,0 +1 @@
|
|||
#!/usr/bin/env bash
|
||||
|
|
@ -34,7 +34,7 @@
|
|||
|
||||
shellAliases = {
|
||||
# files and nav stuff
|
||||
ls = "eza";
|
||||
ls = "eza --icons=auto";
|
||||
ll = "ls -la";
|
||||
lt = "ls --tree";
|
||||
llt = "ll --tree";
|
||||
|
|
@ -51,12 +51,15 @@
|
|||
cb-fox = "ssh-add ~/.ssh/codeberg_foxxyora";
|
||||
tf-fox = "ssh-add ~/.ssh/tearforge_foxora";
|
||||
|
||||
tx = "wormhole-rs tx";
|
||||
rx = "wormhole-rs rx";
|
||||
|
||||
# --------------------
|
||||
# shorthand nix command aliases
|
||||
|
||||
# open nix develop with preferred shell
|
||||
# description: nd = nix develop
|
||||
nd = "nix develop -c $SHELL";
|
||||
nd = "[[ -f ./flake.sh ]] && ./flake.sh -c $SHELL || nix develop -c $SHELL";
|
||||
|
||||
# description: cdns = change directory [to] nix settings
|
||||
cdns = "cd ~/.nix";
|
||||
|
|
|
|||
|
|
@ -14,5 +14,5 @@
|
|||
{{ color13 }}
|
||||
{{ color14 }}
|
||||
{{ color15 }}
|
||||
{{ background }}
|
||||
{{ foreground }}
|
||||
{{ background }}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
# a submap for emulating keys/buttons/functions on the keyboard or mouse
|
||||
|
||||
bind = $mod+shift+alt, a, submap, virtual
|
||||
submap = virtual
|
||||
bind = $mod, a, submap, cursor
|
||||
submap = cursor
|
||||
|
||||
# exit submap
|
||||
bind = , escape, submap, reset
|
||||
|
|
@ -38,6 +38,6 @@ binde = alt, e, exec, wlrctl pointer scroll -15 0 # scroll left
|
|||
binde = alt, y, exec, wlrctl pointer scroll 0 15 # scroll right
|
||||
|
||||
# catches all other keys and keeps us in the submap
|
||||
bind = , catchall, submap, virtual
|
||||
bind = , catchall, submap, cursor
|
||||
|
||||
submap = reset
|
||||
|
|
|
|||
|
|
@ -4,10 +4,6 @@
|
|||
package = null;
|
||||
portalPackage = null;
|
||||
|
||||
plugins = [
|
||||
#inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprscrolling
|
||||
];
|
||||
|
||||
xwayland.enable = true;
|
||||
|
||||
extraConfig = ''
|
||||
|
|
@ -64,18 +60,18 @@
|
|||
layout = "dwindle";
|
||||
};
|
||||
|
||||
plugin = {
|
||||
# options at https://github.com/hyprwm/hyprland-plugins/tree/main/hyprscrolling
|
||||
hyprscrolling = {
|
||||
fullscreen_on_one_column = false;
|
||||
column_width = 1.0;
|
||||
};
|
||||
};
|
||||
|
||||
dwindle = {
|
||||
preserve_split = true;
|
||||
};
|
||||
|
||||
scrolling = {
|
||||
fullscreen_on_one_column = true;
|
||||
column_width = 0.9;
|
||||
wrap_focus = true;
|
||||
wrap_swapcol = true;
|
||||
direction = "right";
|
||||
};
|
||||
|
||||
decoration = {
|
||||
rounding = 8;
|
||||
|
||||
|
|
@ -111,7 +107,7 @@
|
|||
force_no_accel = false; # not recommended to turn on
|
||||
};
|
||||
|
||||
cursor.no_hardware_cursors = true;
|
||||
# cursor.no_hardware_cursors = true;
|
||||
|
||||
misc = {
|
||||
enable_anr_dialog = false;
|
||||
|
|
@ -152,6 +148,7 @@
|
|||
|
||||
# media binds (more in binde below)
|
||||
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
||||
"Ctrl_R, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
|
||||
", XF86AudioPlay, exec, playerctl play-pause"
|
||||
", XF86AudioNext, exec, playerctl next"
|
||||
", XF86AudioPrev, exec, playerctl previous"
|
||||
|
|
@ -262,6 +259,8 @@
|
|||
binde = [
|
||||
", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+"
|
||||
", XF86AudioLowerVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%-"
|
||||
"Ctrl_R, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SOURCE@ 5%+"
|
||||
"Ctrl_R, XF86AudioLowerVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SOURCE@ 5%-"
|
||||
"Shift_R, XF86AudioRaiseVolume, exec, playerctl volume 0.05+"
|
||||
"Shift_R, XF86AudioLowerVolume, exec, playerctl volume 0.05-"
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
};
|
||||
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
kernelPackages = pkgs.linuxPackages_6_12;
|
||||
loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi.canTouchEfiVariables = true;
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
};
|
||||
|
||||
boot = {
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
kernelPackages = pkgs.linuxPackages_6_12;
|
||||
loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi.canTouchEfiVariables = true;
|
||||
|
|
|
|||
88
hosts/modules/programs/mcsr/default.nix
Normal file
88
hosts/modules/programs/mcsr/default.nix
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
upkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
cfg = config.programs.waywall;
|
||||
|
||||
mcsrPkgs = inputs.mcsr.packages.${pkgs.stdenv.hostPlatform.system};
|
||||
# thin = pkgs.fetchurl {
|
||||
# url = "https://v.uku.moe/u/thin.png";
|
||||
# hash = "sha256-VzT9a0/+JMG+To80+xuQSo4x2w6+zavCvUJ6irBkpVg=";
|
||||
# };
|
||||
# wide = pkgs.fetchurl {
|
||||
# url = "https://v.uku.moe/u/wide.png";
|
||||
# hash = "sha256-xJX+QladHQiQYBdKZEB9kuEaxBWVZuuStf4r4gIv5uo=";
|
||||
# };
|
||||
# tall = pkgs.fetchurl {
|
||||
# url = "https://v.uku.moe/u/tall.png";
|
||||
# hash = "sha256-RLyV6iFVDlJKKEdA3CBAQR/sIj2WnhZVBAmLzVmS7JA=";
|
||||
# };
|
||||
in {
|
||||
imports = [inputs.mcsr.nixosModules.waywall];
|
||||
|
||||
options = {
|
||||
programs.waywall = {
|
||||
width = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 1920;
|
||||
};
|
||||
|
||||
height = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 1080;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
prismlauncher = prev.prismlauncher.override {
|
||||
jdks = [
|
||||
mcsrPkgs.graalvm-21
|
||||
upkgs.openjdk8
|
||||
];
|
||||
|
||||
additionalLibs = with pkgs; [
|
||||
libx11
|
||||
libxt
|
||||
libxtst
|
||||
libxcb
|
||||
libxkbcommon
|
||||
libxinerama
|
||||
];
|
||||
};
|
||||
})
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
prismlauncher
|
||||
];
|
||||
|
||||
programs.waywall = {
|
||||
enable = true;
|
||||
config = {
|
||||
enableWaywork = true;
|
||||
programs = [mcsrPkgs.ninjabrain-bot];
|
||||
|
||||
files = {
|
||||
eye_overlay = ./eye-overlay-trans.png;
|
||||
# inherit thin wide tall;
|
||||
};
|
||||
|
||||
text =
|
||||
''
|
||||
local resolution = { w = ${toString cfg.width}, h = ${toString cfg.height} }
|
||||
-- end globals
|
||||
''
|
||||
+ (builtins.readFile ./waywall.lua);
|
||||
|
||||
# linkWithSystemd = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
BIN
hosts/modules/programs/mcsr/eye-overlay-trans.png
Normal file
BIN
hosts/modules/programs/mcsr/eye-overlay-trans.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 61 KiB |
263
hosts/modules/programs/mcsr/waywall.lua
Normal file
263
hosts/modules/programs/mcsr/waywall.lua
Normal file
|
|
@ -0,0 +1,263 @@
|
|||
-- vim: foldmethod=marker
|
||||
local waywall = require("waywall")
|
||||
local helpers = require("waywall.helpers")
|
||||
|
||||
local Scene = require("waywork.scene")
|
||||
local Modes = require("waywork.modes")
|
||||
local Keys = require("waywork.keys")
|
||||
local Processes = require("waywork.processes")
|
||||
|
||||
local scene = Scene.SceneManager.new(waywall)
|
||||
local ModeManager = Modes.ModeManager.new(waywall)
|
||||
|
||||
-- config --
|
||||
-- https://arjuncgore.github.io/waywall-boat-eye-calc/
|
||||
local normal_sens = 8.72284201
|
||||
local tall_sens = 0.5884377
|
||||
|
||||
local pie_colors = {
|
||||
{ input = "#e145c2", output = "#a000a0" },
|
||||
{ input = "#e96d4d", output = "#aa3310" },
|
||||
{ input = "#45cb65", output = "#00a000" },
|
||||
{ input = "#4de1ca", output = "#1a7286" },
|
||||
{ input = "#c46de1", output = "#ff55ff" },
|
||||
}
|
||||
-- config --
|
||||
|
||||
-- utils {{{
|
||||
_G["WAYWORK_GLOBAL_GUARD"] = false
|
||||
|
||||
local function toggle_global_guard()
|
||||
_G["WAYWORK_GLOBAL_GUARD"] = not _G["WAYWORK_GLOBAL_GUARD"]
|
||||
return _G["WAYWORK_GLOBAL_GUARD"]
|
||||
end
|
||||
|
||||
local function mode_guard()
|
||||
return not _G["WAYWORK_GLOBAL_GUARD"] and not waywall.get_key("F3")
|
||||
end
|
||||
|
||||
local function smart_enable_group(mode, status)
|
||||
scene:enable_group(mode, status)
|
||||
scene:enable_group("normal", not status)
|
||||
end
|
||||
|
||||
local function piechart_src(res)
|
||||
return { x = res.w - 93, y = res.h - 221, w = 33, h = 42 }
|
||||
end
|
||||
|
||||
local function piechart_dst(res)
|
||||
---@diagnostic disable: undefined-global
|
||||
-- x = right_of_thin - 11 (gap between edge and pie) - 160 (pie width / 2) - 99 (mirror width / 2)
|
||||
if res.w == resolution.w and res.h == resolution.h then
|
||||
return { x = res.w - 270, y = res.h - 390, w = 33 * 6, h = 42 * 6 }
|
||||
else
|
||||
return { x = (resolution.w + res.w) / 2 - 270, y = (resolution.h + res.h) / 2 - 390, w = 33 * 6, h = 42 * 6 }
|
||||
end
|
||||
---@diagnostic enable: undefined-global
|
||||
end
|
||||
|
||||
---@diagnostic disable-next-line: undefined-global
|
||||
local ensure_ninjabrain = Processes.ensure_application(waywall, programs.ninjabrain_bot)("ninjabrain.*\\.jar")
|
||||
-- }}}
|
||||
|
||||
-- background images {{{
|
||||
-- for _, name in ipairs({ "wide", "thin", "tall" }) do
|
||||
-- scene:register(name .. "_bg", {
|
||||
-- kind = "image",
|
||||
-- ---@diagnostic disable-next-line: undefined-global
|
||||
-- path = files[name],
|
||||
-- options = {
|
||||
|
||||
-- ---@diagnostic disable: undefined-global
|
||||
-- dst = { x = 0, y = 0, w = resolution.w, h = resolution.h },
|
||||
-- ---@diagnostic enable: undefined-global
|
||||
|
||||
-- depth = -1,
|
||||
-- },
|
||||
-- groups = { name },
|
||||
-- })
|
||||
-- end
|
||||
-- }}}
|
||||
|
||||
-- thin {{{
|
||||
---@diagnostic disable: undefined-global
|
||||
local thin_res = { w = resolution.h * 0.28, h = resolution.h }
|
||||
local e_scale = resolution.w > 2560 and 20 or 10
|
||||
local left_middle = (resolution.w - thin_res.w) / 4
|
||||
---@diagnostic enable: undefined-global
|
||||
|
||||
scene:register("e_counter", {
|
||||
kind = "mirror",
|
||||
options = {
|
||||
src = { x = 1, y = 37, w = 49, h = 9 },
|
||||
---@diagnostic disable-next-line: undefined-global
|
||||
dst = { x = left_middle - (49 * e_scale / 2), y = resolution.h / 10.8, w = 49 * e_scale, h = 9 * e_scale },
|
||||
depth = 0,
|
||||
},
|
||||
groups = { "thin" },
|
||||
})
|
||||
|
||||
for _, ck in ipairs(pie_colors) do
|
||||
scene:register("prct_mirror_" .. ck.input, {
|
||||
kind = "mirror",
|
||||
options = {
|
||||
src = piechart_src(thin_res),
|
||||
dst = piechart_dst(thin_res),
|
||||
depth = 1,
|
||||
color_key = ck,
|
||||
},
|
||||
groups = { "thin" },
|
||||
})
|
||||
end
|
||||
|
||||
ModeManager:define("thin", {
|
||||
width = thin_res.w,
|
||||
height = thin_res.h,
|
||||
on_enter = function()
|
||||
smart_enable_group("thin", true)
|
||||
end,
|
||||
on_exit = function()
|
||||
smart_enable_group("thin", false)
|
||||
end,
|
||||
toggle_guard = mode_guard,
|
||||
})
|
||||
-- }}}
|
||||
|
||||
-- wide {{{
|
||||
---@diagnostic disable: undefined-global
|
||||
local wide_res = { w = resolution.w, h = resolution.h / 3.6 }
|
||||
---@diagnostic enable: undefined-global
|
||||
|
||||
ModeManager:define("wide", {
|
||||
width = wide_res.w,
|
||||
height = wide_res.h,
|
||||
on_enter = function()
|
||||
smart_enable_group("wide", true)
|
||||
end,
|
||||
on_exit = function()
|
||||
smart_enable_group("wide", false)
|
||||
end,
|
||||
toggle_guard = mode_guard,
|
||||
})
|
||||
-- }}}
|
||||
|
||||
-- tall {{{
|
||||
---@diagnostic disable: undefined-global
|
||||
local tall_res = { w = 384, h = 16384 }
|
||||
local measure_w = (resolution.w - tall_res.w) / 2
|
||||
local measure_h = (resolution.h * measure_w) / resolution.w
|
||||
local measure_dst = { x = 0, y = (resolution.h - measure_h) / 2, w = measure_w, h = measure_h }
|
||||
---@diagnostic enable: undefined-global
|
||||
|
||||
scene:register("eye_measure", {
|
||||
kind = "mirror",
|
||||
options = {
|
||||
src = { x = (tall_res.w - 60) / 2, y = (tall_res.h - 580) / 2, w = 60, h = 580 },
|
||||
dst = measure_dst,
|
||||
depth = 0,
|
||||
},
|
||||
groups = { "tall" },
|
||||
})
|
||||
|
||||
scene:register("eye_overlay", {
|
||||
kind = "image",
|
||||
---@diagnostic disable-next-line: undefined-global
|
||||
path = files.eye_overlay,
|
||||
options = { dst = measure_dst, depth = 1 },
|
||||
groups = { "tall" },
|
||||
})
|
||||
|
||||
ModeManager:define("tall", {
|
||||
width = tall_res.w,
|
||||
height = tall_res.h,
|
||||
on_enter = function()
|
||||
smart_enable_group("tall", true)
|
||||
waywall.set_sensitivity(tall_sens)
|
||||
end,
|
||||
on_exit = function()
|
||||
smart_enable_group("tall", false)
|
||||
waywall.set_sensitivity(0)
|
||||
end,
|
||||
toggle_guard = mode_guard,
|
||||
})
|
||||
-- }}}
|
||||
|
||||
-- normal res mirrors {{{
|
||||
for _, ck in ipairs(pie_colors) do
|
||||
scene:register("prct_mirror_normal_" .. ck.input, {
|
||||
kind = "mirror",
|
||||
options = {
|
||||
---@diagnostic disable: undefined-global
|
||||
src = piechart_src(resolution),
|
||||
dst = piechart_dst(resolution),
|
||||
---@diagnostic enable: undefined-global
|
||||
depth = 1,
|
||||
color_key = ck,
|
||||
},
|
||||
groups = { "normal" },
|
||||
})
|
||||
end
|
||||
-- }}}
|
||||
|
||||
-- startup actions
|
||||
waywall.listen("load", function()
|
||||
-- wait for title screen
|
||||
repeat
|
||||
local error, state = pcall(waywall.state)
|
||||
waywall.sleep(1000)
|
||||
until error == true and state.screen == "title"
|
||||
|
||||
-- actual actions
|
||||
ensure_ninjabrain()
|
||||
scene:enable_group("normal", true)
|
||||
end)
|
||||
|
||||
local config = {
|
||||
input = {
|
||||
layout = "us",
|
||||
repeat_rate = 40,
|
||||
repeat_delay = 300,
|
||||
|
||||
sensitivity = normal_sens,
|
||||
confine_pointer = true,
|
||||
|
||||
remaps = {
|
||||
["MB4"] = "F5",
|
||||
["MB5"] = "F3",
|
||||
},
|
||||
},
|
||||
|
||||
theme = {
|
||||
background = "#00000000",
|
||||
-- https://github.com/Smithay/smithay/issues/1894
|
||||
ninb_anchor = "right",
|
||||
},
|
||||
|
||||
---@diagnostic disable: undefined-global
|
||||
window = {
|
||||
fullscreen_width = resolution.w,
|
||||
fullscreen_height = resolution.h,
|
||||
},
|
||||
---@diagnostic enable: undefined-global
|
||||
|
||||
actions = Keys.actions({
|
||||
["*-F2"] = function()
|
||||
toggle_global_guard()
|
||||
end,
|
||||
["*-V"] = function()
|
||||
return ModeManager:toggle("thin")
|
||||
end,
|
||||
["*-B"] = function()
|
||||
return ModeManager:toggle("tall")
|
||||
end,
|
||||
["*-G"] = function()
|
||||
return ModeManager:toggle("wide")
|
||||
end,
|
||||
["Ctrl-Shift-L"] = function()
|
||||
ensure_ninjabrain()
|
||||
helpers.toggle_floating()
|
||||
end,
|
||||
}),
|
||||
}
|
||||
|
||||
return config
|
||||
|
|
@ -9,6 +9,8 @@
|
|||
./hardware-configuration.nix
|
||||
|
||||
./modules/amdgpu-ignore-ctx-privileges.nix
|
||||
|
||||
../modules/programs/mcsr
|
||||
];
|
||||
|
||||
# Use the systemd-boot EFI boot loader.
|
||||
|
|
@ -22,17 +24,20 @@
|
|||
|
||||
# kernelPackages = upkgs.cachyosKernels.linuxPackages-cachyos-latest-lto-x86_64-v4;
|
||||
# TODO: idk make this a toggle or smth idfk
|
||||
# kernelPackages = upkgs.linuxPackages_zen;
|
||||
# FIX: it said my disk was full
|
||||
kernelPackages = upkgs.linuxPackages_latest;
|
||||
kernelPackages = upkgs.linuxPackages_zen;
|
||||
kernelModules = ["v4l2loopback"];
|
||||
# force kernel to use dGPU
|
||||
kernelParams = [
|
||||
# force kernel to use dGPU
|
||||
"amdgpu.primary=0000:03:00.0"
|
||||
"video=PCI:0000:03:00.0:e"
|
||||
"initcall_blacklist=simpledrm_platform_driver_init"
|
||||
"fbcon=map:0"
|
||||
"pci=assign-busses"
|
||||
|
||||
# stops kernel from setting power states on nvme drives because it keeps
|
||||
# disconnecting my drive and my system locks up
|
||||
"nvme_core.default_ps_max_latency_us=0"
|
||||
"pcie_aspm=off"
|
||||
"pcie_port_pm=off"
|
||||
];
|
||||
extraModulePackages = with kernelPackages; [v4l2loopback];
|
||||
|
||||
|
|
@ -60,13 +65,11 @@
|
|||
|
||||
allowedTCPPorts = [
|
||||
21110 # slimevr
|
||||
44949 # rquickshare
|
||||
];
|
||||
allowedUDPPorts = [
|
||||
6969 # slimevr
|
||||
8266 # slimevr
|
||||
35903 # slimevr
|
||||
44949 # rquickshare
|
||||
];
|
||||
};
|
||||
|
||||
|
|
@ -307,7 +310,18 @@
|
|||
|
||||
alvr = {
|
||||
enable = true;
|
||||
package = upkgs.alvr;
|
||||
|
||||
# package = upkgs.alvr.overrideAttrs (old: rec {
|
||||
# postPatch =
|
||||
# (old.postPatch or "")
|
||||
# + ''
|
||||
# substituteInPlace alvr/server_openvr/src/lib.rs \
|
||||
# --replace-fail \
|
||||
# "let early_hmd_initialization = !dashboard_process_paths.is_empty();" \
|
||||
# "let early_hmd_initialization = true;"
|
||||
# '';
|
||||
# });
|
||||
|
||||
openFirewall = true;
|
||||
};
|
||||
|
||||
|
|
@ -362,11 +376,11 @@
|
|||
})
|
||||
|
||||
# game stuff :3
|
||||
(lutris.override {
|
||||
extraPkgs = upkgs: [
|
||||
libadwaita
|
||||
];
|
||||
})
|
||||
# (lutris.override {
|
||||
# extraPkgs = upkgs: [
|
||||
# libadwaita
|
||||
# ];
|
||||
# })
|
||||
(steam.override {
|
||||
extraPkgs = upkgs: [
|
||||
nss
|
||||
|
|
@ -376,5 +390,23 @@
|
|||
}).run
|
||||
];
|
||||
|
||||
documentation = {
|
||||
enable = true;
|
||||
doc.enable = true; # install /share/doc packages
|
||||
man = {
|
||||
enable = true; # install manpages
|
||||
|
||||
# https://discourse.nixos.org/t/slow-build-at-building-man-cache/52365/4
|
||||
generateCaches = false;
|
||||
};
|
||||
info.enable = true; # install GNU info
|
||||
dev.enable = true; # install docs intended for developers
|
||||
nixos = {
|
||||
enable = true; # install NixOS documentation (ie man -k nix, & nixos-help)
|
||||
options.splitBuild = true;
|
||||
includeAllModules = false;
|
||||
};
|
||||
};
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue