1
0
Fork 0
forked from foxora/nix

Compare commits

..

56 commits

Author SHA1 Message Date
1776e1d58d actually fixed rust-analyzer this time 2026-05-03 15:06:05 +01:00
8a44655415 rust-analyzer had bug on master branch 2026-05-03 12:23:11 +01:00
a2475d22dc updated flake :3 2026-05-03 10:49:49 +01:00
bfd70c514e idk what i did 2026-05-02 20:37:07 +01:00
01912eb428 minecraft speedrunning stuff 2026-05-01 07:12:53 +01:00
7f11df87df made all discord clients on master nixpkgs 2026-04-29 16:08:29 +01:00
ab3ec10a6b updated flake + stuff broke lol 2026-04-29 15:56:11 +01:00
2b4d295d0a re-enabled hlchunk 2026-04-16 21:54:26 +01:00
84264f025f am just a fox *wags tail* :3 2026-04-16 18:07:11 +01:00
fea82f3532 changed stuff again :3 2026-04-11 23:31:53 +01:00
df0dddd227 changed stuff idek anymore 2026-04-09 05:49:50 +01:00
d322ac8b74 added fren :3 2026-04-07 17:58:55 +01:00
909300bc26 added color indication for mute states 2026-04-07 17:57:55 +01:00
24c23362fd made sure rust-analyzer expanded proc macros 2026-04-07 17:56:54 +01:00
b1a03c6a97 updated flake 2026-04-07 17:55:49 +01:00
c5416f0b92 added leptosfmt 2026-04-05 18:13:35 +01:00
4321b6f6c3 css indentation :3 2026-04-05 02:01:34 +01:00
a1b8beb8b3 made vesktop declarative 2026-04-01 20:34:19 +01:00
11b2fa00d2 made sure sql has the right indentation 2026-03-31 18:05:37 +01:00
0794ed7edd made changes :3 2026-03-31 04:15:07 +01:00
4b8552fdb1 vr works again!!! 2026-03-29 22:29:47 +01:00
9d481bcdcf changed pinned dms 2026-03-25 16:55:21 +00:00
ae6f3d7438 added audio source controls :3 2026-03-22 13:15:50 +00:00
ab94f48294 hlchunk has better perf :3 2026-03-21 12:51:34 +00:00
592e6f021d changed neovim keybinds 2026-03-20 18:14:27 +00:00
b0b5565f76 made completion engine changes :3 2026-03-20 12:18:32 +00:00
86d0fda70e changed ColorColumn highlight in neovim :3 2026-03-19 16:07:54 +00:00
e861f21ef2 scrolloff yay :3 2026-03-19 12:24:19 +00:00
7310cda101 changed telescope to respect .gitignore, show hidden files, but always ignore .git/ 2026-03-19 10:46:11 +00:00
55099cdad2 idk i made a lot of changes 2026-03-19 09:43:51 +00:00
f17fb26069 mangowc -> mangowm 2026-03-19 09:40:13 +00:00
5c93afcb2b added sql formatter 2026-03-16 08:43:25 +00:00
f6e3fa6a86 removed quickshare 2026-03-16 07:16:40 +00:00
afb9d2fd9b i dont need the paramters for delta, it automatically gets it from its config 2026-03-16 03:18:58 +00:00
5e882e9914 updated flake.lock + some stuff changed in nixcord 2026-03-16 02:56:08 +00:00
b1cfda31f1 changed neovim keybinds :3 2026-03-16 02:55:03 +00:00
63e987277e can now preview hunks inline!!! :3 2026-03-15 22:02:43 +00:00
98a52ebe74 changed telescope colors and am trying out zf instead of fzf 2026-03-15 19:33:43 +00:00
65995c2245 added gitsigns keybinds 2026-03-15 19:29:57 +00:00
4b7a87f302 updated nd alias, i love butterfly <3 2026-03-15 02:09:48 +00:00
dce5deac43 added absolute line number for current line :3 2026-03-14 23:57:49 +00:00
ffc65678ea changed how my nd alias works 2026-03-14 22:18:57 +00:00
c2a581e1be neovim: added gitsigns, moved color stuff into colors.lua, modified telescope and fyler 2026-03-14 22:09:13 +00:00
1d6eec78f0 forgot to push flake.lock when removing fenix :3 2026-03-14 08:23:23 +00:00
9c22f23bc0 realised that rustfmt nightly is in nixpkgs already lol :3 2026-03-13 23:19:37 +00:00
3ebf01c47e made smol changes :3 2026-03-13 18:22:44 +00:00
83bee06352 added wormhole-rs 2026-03-13 08:31:19 +00:00
b7d04fb7cc enabled hw cursors in hyprland again <3 2026-03-11 15:24:01 +00:00
9de130a5c0 updated flake.lock 2026-03-11 13:58:40 +00:00
669128d4b6 Revert flake.lock to 387ccee 2026-03-07 22:08:14 +00:00
662268f327 moved comment lol 2026-03-07 21:14:19 +00:00
cf23725f2f hopefully fixed nvme issue 2026-03-07 21:05:42 +00:00
2a66cb0014 removed hyprland plugins as scrolling is now in hyprland!! :3 2026-03-07 19:25:28 +00:00
be96d1dbf7 nvme ssd power stage bug? switched to 6.12 on nixarawrui <3 2026-03-07 19:12:11 +00:00
ff97832d9f put servers on 6.12 LTS <3 2026-03-07 19:11:14 +00:00
adcfc52c60 added submap to taskbar for hyprland :3 2026-03-07 16:00:41 +00:00
35 changed files with 1442 additions and 437 deletions

464
flake.lock generated
View file

@ -37,11 +37,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772292445, "lastModified": 1776876344,
"narHash": "sha256-4F1Q7U313TKUDDovCC96m/Za4wZcJ3yqtu4eSrj8lk8=", "narHash": "sha256-Ubqb/agkuMJK+k19gjQgHux/eOYRc1sRGoOZOho8+VY=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "1dbbba659c1cef0b0202ce92cadfe13bae550e8f", "rev": "648a13d0ee1e03a843b3e145b8ece15393058701",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -76,11 +76,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1770895252, "lastModified": 1777136912,
"narHash": "sha256-TUGZVDcC5xsrWVnpBNosAG1cTy+aWchCWXPyeLZdnGM=", "narHash": "sha256-owyQdC2vi0kYC119fzyVQp0J4G0t1n4xXUwryhlBbqA=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "2c86d41d07471f518e24f5cd1f586e4d2a32d12c", "rev": "f66e12a76dbc4c669b2f1375f78bce49f5b19d66",
"revCount": 1331, "revCount": 1363,
"type": "git", "type": "git",
"url": "https://codeberg.org/LGFae/awww" "url": "https://codeberg.org/LGFae/awww"
}, },
@ -98,11 +98,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1772820255, "lastModified": 1777746826,
"narHash": "sha256-vdktxEQihZUcKiwbaYCBl8LuTrJZULpjwqtJyBzXBN8=", "narHash": "sha256-fAbcHwnhw294NL+a+2E2bidNiaxhM935RrsJLqKcnc4=",
"owner": "xddxdd", "owner": "xddxdd",
"repo": "nix-cachyos-kernel", "repo": "nix-cachyos-kernel",
"rev": "aada771f510dbd9ac48614cc7b4b21a292989d3a", "rev": "26aa2e8f054184252d08558290471a397164aeff",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -114,11 +114,11 @@
"cachyos-kernel": { "cachyos-kernel": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1772644657, "lastModified": 1777639499,
"narHash": "sha256-7zQSBFv9gFeYhe65NchqLLste7mJ396jA1OnNcf+OQQ=", "narHash": "sha256-EyELzah58EHIADP4siMoSzsCOPd71bZkmlVpcUb9Oi8=",
"owner": "CachyOS", "owner": "CachyOS",
"repo": "linux-cachyos", "repo": "linux-cachyos",
"rev": "ff5ccc4fa26d5272d929fb9c1838593a6347ca10", "rev": "1c6414dbda46c13abcb951ef6c5a790cb9e157ea",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -130,11 +130,11 @@
"cachyos-kernel-patches": { "cachyos-kernel-patches": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1772731186, "lastModified": 1777306094,
"narHash": "sha256-y70pS9Cma7+WCsni3VTacHh9g/udulmBS6zrYE2Fz64=", "narHash": "sha256-YNvqoVdMe/SqXm91cpCA6mVOigK3Zzoab6HPvMiqGqo=",
"owner": "CachyOS", "owner": "CachyOS",
"repo": "kernel-patches", "repo": "kernel-patches",
"rev": "eac8168ee15f742547d4d20ba5c7fea283f23019", "rev": "9bcd294d660c932f55f732d951ee79ea707f64f3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -146,29 +146,29 @@
"cerulean": { "cerulean": {
"inputs": { "inputs": {
"deploy-rs": "deploy-rs", "deploy-rs": "deploy-rs",
"home-manager": "home-manager",
"microvm": "microvm", "microvm": "microvm",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"nt": "nt", "nt": "nt",
"sops-nix": "sops-nix",
"systems": [ "systems": [
"systems" "systems"
] ]
}, },
"locked": { "locked": {
"lastModified": 1773744164, "lastModified": 1771409623,
"narHash": "sha256-dGupwWUL9YPvC0/m4maCRD9psomWhFr/JAsGnC9toQM=", "narHash": "sha256-1IhHueuQTVCVrui700IP9DfLXwb3kU2rnEWPSdxQY0k=",
"owner": "cry128", "ref": "refs/heads/main",
"repo": "cerulean", "rev": "d5211287bd3cb96078f2053488d67d557848a8f2",
"rev": "e7fdbf416ccb3e7e6bf30042e4aacd065983ddad", "revCount": 176,
"type": "github" "type": "git",
"url": "https://tearforge.net/cry/cerulean"
}, },
"original": { "original": {
"owner": "cry128", "rev": "d5211287bd3cb96078f2053488d67d557848a8f2",
"ref": "v0.2.6-alpha", "type": "git",
"repo": "cerulean", "url": "https://tearforge.net/cry/cerulean"
"type": "github"
} }
}, },
"crane": { "crane": {
@ -213,11 +213,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1770019181, "lastModified": 1766051518,
"narHash": "sha256-hwsYgDnby50JNVpTRYlF3UR/Rrpt01OrxVuryF40CFY=", "narHash": "sha256-znKOwPXQnt3o7lDb3hdf19oDo0BLP4MfBOYiWkEHoik=",
"owner": "serokell", "owner": "serokell",
"repo": "deploy-rs", "repo": "deploy-rs",
"rev": "77c906c0ba56aabdbc72041bf9111b565cdd6171", "rev": "d5eff7f948535b9c723d60cd8239f8f11ddc90fa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -234,11 +234,11 @@
"rust-analyzer-src": "rust-analyzer-src" "rust-analyzer-src": "rust-analyzer-src"
}, },
"locked": { "locked": {
"lastModified": 1772780947, "lastModified": 1777796307,
"narHash": "sha256-cblRAy3ctJniRFaSLpqYeHor+RJhkptPZNMUc4Sl+v4=", "narHash": "sha256-L7xLjorTwVf2aLu5b0ZZY2D0RFXwD/a/a/fFFDikB2w=",
"owner": "nix-community", "owner": "nix-community",
"repo": "fenix", "repo": "fenix",
"rev": "26a5e59df51222c849deb63c9196ac6d7a531535", "rev": "0f9881f2344c0b1c100bd9e774555759b7da6fd5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -352,11 +352,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1772408722, "lastModified": 1777678872,
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=", "narHash": "sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT+IPhcsukVbgk=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3", "rev": "5250617bffd85403b14dbf43c3870e7f255d2c16",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -408,7 +408,10 @@
}, },
"flake-parts_4": { "flake-parts_4": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib_3" "nixpkgs-lib": [
"mcsr",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1772408722, "lastModified": 1772408722,
@ -424,6 +427,24 @@
"type": "github" "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": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems_4" "systems": "systems_4"
@ -484,15 +505,16 @@
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"cerulean",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1772633058, "lastModified": 1777771528,
"narHash": "sha256-SO7JapRy2HPhgmqiLbfnW1kMx5rakPMKZ9z3wtRLQjI=", "narHash": "sha256-YycygK6n7KeW1YCobdFJcORWzkmrvNcp6xT+IovA0d4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "080657a04188aca25f8a6c70a0fb2ea7e37f1865", "rev": "0585fbf645640973e3398863bbaf3bd1ddce4a51",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -509,11 +531,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772807318, "lastModified": 1777780644,
"narHash": "sha256-Qjw6ILt8cb2HQQpCmWNLMZZ63wEo1KjTQt+1BcQBr7k=", "narHash": "sha256-CYpc+mk28rmcQWGygeM8CA+Z8SZYy8BOyQtiW18spao=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "daa2c221320809f5514edde74d0ad0193ad54ed8", "rev": "b9311028044a9e9b2cf27db15ef0a87d464e212d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -523,6 +545,48 @@
"type": "github" "type": "github"
} }
}, },
"home-manager_2": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1777771528,
"narHash": "sha256-YycygK6n7KeW1YCobdFJcORWzkmrvNcp6xT+IovA0d4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "0585fbf645640973e3398863bbaf3bd1ddce4a51",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-25.11",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"zen",
"nixpkgs"
]
},
"locked": {
"lastModified": 1776184304,
"narHash": "sha256-No6QGBmIv5ChiwKCcbkxjdEQ/RO2ZS1gD7SFy6EZ7rc=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "3c7524c68348ef79ce48308e0978611a050089b2",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"hyprcursor": { "hyprcursor": {
"inputs": { "inputs": {
"hyprlang": [ "hyprlang": [
@ -539,11 +603,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1753964049, "lastModified": 1776511930,
"narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", "narHash": "sha256-fCpwFiTW0rT7oKJqr3cqHMnkwypSwQKpbtUEtxdkgrM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprcursor", "repo": "hyprcursor",
"rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", "rev": "39435900785d0c560c6ae8777d29f28617d031ef",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -568,11 +632,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770511807, "lastModified": 1776426399,
"narHash": "sha256-suKmSbSk34uPOJDTg/GbPrKEJutzK08vj0VoTvAFBCA=", "narHash": "sha256-RUESLKNikIeEq9ymGJ6nmcDXiSFQpUW1IhJ245nL3xM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "7c75487edd43a71b61adb01cae8326d277aab683", "rev": "68d064434787cf1ed4a2fe257c03c5f52f33cf84",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -600,11 +664,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1772833450, "lastModified": 1777759969,
"narHash": "sha256-XuuvhTD/72mH8MBncTeOyN0JzLCtwav7lkwBQlIofd4=", "narHash": "sha256-7KSqSehOHNHQfM0sRAcGQbfz0vDuItox8i61X8/nzYw=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "Hyprland", "repo": "Hyprland",
"rev": "4152ac76d0813d9d0f67d2f04653a13fa6e17433", "rev": "6ec0228c38a6203e4789fe7e7e793a558521c109",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -646,11 +710,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1767023960, "lastModified": 1776426575,
"narHash": "sha256-R2HgtVS1G3KSIKAQ77aOZ+Q0HituOmPgXW9nBNkpp3Q=", "narHash": "sha256-KI6nIfVihn/DPaeB5Et46Xg3dkNHrrEtUd5LBBVomB0=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-guiutils", "repo": "hyprland-guiutils",
"rev": "c2e906261142f5dd1ee0bfc44abba23e2754c660", "rev": "a968d211048e3ed538e47b84cb3649299578f19d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -659,36 +723,6 @@
"type": "github" "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": { "hyprland-protocols": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -701,11 +735,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1765214753, "lastModified": 1772460177,
"narHash": "sha256-P9zdGXOzToJJgu5sVjv7oeOGPIIwrd9hAUAP3PsmBBs=", "narHash": "sha256-/6G/MsPvtn7bc4Y32pserBT/Z4SUUdBd4XYJpOEKVR4=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-protocols", "repo": "hyprland-protocols",
"rev": "3f3860b869014c00e8b9e0528c7b4ddc335c21ab", "rev": "1cb6db5fd6bb8aee419f4457402fa18293ace917",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -730,11 +764,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771866172, "lastModified": 1776426736,
"narHash": "sha256-fYFoXhQLrm1rD8vSFKQBOEX4OGCuJdLt1amKfHd5GAw=", "narHash": "sha256-rl7i4aY+9p8LysJp7o8uRWahCkpFznCgGHXszlTw7b0=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "0b219224910e7642eb0ed49f0db5ec3d008e3e41", "rev": "7833ff33b2e82d3406337b5dcf0d1cec595d83e9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -782,11 +816,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1764592794, "lastModified": 1772462885,
"narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=", "narHash": "sha256-5pHXrQK9zasMnIo6yME6EOXmWGFMSnCITcfKshhKJ9I=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprtoolkit", "repo": "hyprtoolkit",
"rev": "5cfe0743f0e608e1462972303778d8a0859ee63e", "rev": "9af245a69fa6b286b88ddfc340afd288e00a6998",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -807,11 +841,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771271487, "lastModified": 1777492286,
"narHash": "sha256-41gEiUS0Pyw3L/ge1l8MXn61cK14VAhgWB/JV8s/oNI=", "narHash": "sha256-PwuoEJQcjSKJNP5T55qhfDwIP0tw5zxEhfu8GDfKfeg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "340a792e3b3d482c4ae5f66d27a9096bdee6d76d", "rev": "ec5c0c709706bad5b82f667fd8758eae442577ce",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -832,11 +866,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770501770, "lastModified": 1777148232,
"narHash": "sha256-NWRM6+YxTRv+bT9yvlhhJ2iLae1B1pNH3mAL5wi2rlQ=", "narHash": "sha256-Uv0WZLhu89SafuSOmYDA7akrPt4wBRmsa1ucasO5aXg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "0bd8b6cde9ec27d48aad9e5b4deefb3746909d40", "rev": "fec9cf1abcc1011e46f0a0986f46bf93c6bf8b92",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -861,11 +895,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771606233, "lastModified": 1776728575,
"narHash": "sha256-F3PLUqQ/TwgR70U+UeOqJnihJZ2EuunzojYC4g5xHr0=", "narHash": "sha256-z9eGphrArEBpl1O/GCH0wlY6z4K9vA6yWh2gAS6qytU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwire", "repo": "hyprwire",
"rev": "06c7f1f8c4194786c8400653c4efc49dc14c0f3a", "rev": "f3a80888783702a39691b684d099e16b83ed4702",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -884,11 +918,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1768868561, "lastModified": 1776390028,
"narHash": "sha256-nvEOtV1Y5K9E1Lj+bPnQ6k1AneDM9OT3RbV3Urm/1Qs=", "narHash": "sha256-N/CV6Ldg1PmGNclROSR0qZ2wPwcxkxuPGF7uc34tQnM=",
"owner": "ulyssa", "owner": "ulyssa",
"repo": "iamb", "repo": "iamb",
"rev": "93fc47d019cd6a9d56f163aa6ba819ef1fd309d6", "rev": "b10c98588bd9b22a83dd1275fbf797023aba4117",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -991,19 +1025,38 @@
"scenefx": "scenefx" "scenefx": "scenefx"
}, },
"locked": { "locked": {
"lastModified": 1772792509, "lastModified": 1776999768,
"narHash": "sha256-c2X+x/D8txqV5UaN6TYYh9PEXyMaWVZl4mAQ0Sl21f8=", "narHash": "sha256-RP7eVqbnQ/uNCXh0HH8SXRIerMlkyHco+wpI9oxon0U=",
"owner": "DreamMaoMao", "owner": "mangowm",
"repo": "mangowc", "repo": "mango",
"rev": "9a17a0279c39b330d155d50282d1d2641d519dc3", "rev": "b9c6a2c1964cb59536c5d3e02d2ff981a7eb36d2",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "DreamMaoMao", "owner": "mangowm",
"repo": "mangowc", "repo": "mango",
"type": "github" "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": { "microvm": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -1013,11 +1066,11 @@
"spectrum": "spectrum" "spectrum": "spectrum"
}, },
"locked": { "locked": {
"lastModified": 1773018425, "lastModified": 1776340739,
"narHash": "sha256-fpgZBmZpKoEXEowBK/6m8g9FcOLWQ4UxhXHqCw2CpSM=", "narHash": "sha256-s4FDictJlPtY6Shd6scG5hgrDMiHth09+svtvTA5NLA=",
"owner": "microvm-nix", "owner": "microvm-nix",
"repo": "microvm.nix", "repo": "microvm.nix",
"rev": "25ebda3c558e923720c965832dc9a04f559a055c", "rev": "2f2f62fdfdca2750e3399f66bd03986ab967e5ca",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1034,11 +1087,11 @@
"spectrum": "spectrum_2" "spectrum": "spectrum_2"
}, },
"locked": { "locked": {
"lastModified": 1772742184, "lastModified": 1776340739,
"narHash": "sha256-zGnRxJQZ8wZTwvSxF4SAGoefbta15/W032tK22uIF2E=", "narHash": "sha256-s4FDictJlPtY6Shd6scG5hgrDMiHth09+svtvTA5NLA=",
"owner": "microvm-nix", "owner": "microvm-nix",
"repo": "microvm.nix", "repo": "microvm.nix",
"rev": "a257ca90febb686c75826918f9f8876d74f875eb", "rev": "2f2f62fdfdca2750e3399f66bd03986ab967e5ca",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1203,11 +1256,11 @@
}, },
"nixcats": { "nixcats": {
"locked": { "locked": {
"lastModified": 1770584904, "lastModified": 1777273601,
"narHash": "sha256-9Zaz8lbKF2W9pwXZEnbiGsicHdBoU+dHt3Wv3mCJoZ8=", "narHash": "sha256-xBUa8Tl9V7IXI+VmLEuDc81La/EhoSn1C3EVSnJ3cfU=",
"owner": "BirdeeHub", "owner": "BirdeeHub",
"repo": "nixCats-nvim", "repo": "nixCats-nvim",
"rev": "538fdde784d2909700d97a8ef307783b33a86fb1", "rev": "f69ea013e328841a7def7037ed59788a76be8816",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1219,17 +1272,18 @@
"nixcord": { "nixcord": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_5", "flake-compat": "flake-compat_5",
"flake-parts": "flake-parts_4", "flake-parts": "flake-parts_5",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ],
"nixpkgs-nixcord": "nixpkgs-nixcord"
}, },
"locked": { "locked": {
"lastModified": 1772813986, "lastModified": 1777740049,
"narHash": "sha256-x0fD+LL+O99p36c2UnjnHvVq4/7TvGH/8G5lTNIJBCo=", "narHash": "sha256-O8rXPZaARIjp4fh20wkeRWeElYbp4Dgp8pKk3Ikkj40=",
"owner": "FlameFlag", "owner": "FlameFlag",
"repo": "nixcord", "repo": "nixcord",
"rev": "e433a2919eb9b3a8c85ab3017c08685816e63a66", "rev": "853aa014283c1d3e58df7213c36d3a739cab1b6f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1240,11 +1294,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1772774498, "lastModified": 1777718177,
"narHash": "sha256-85HBHBEzVRQ0ZRe6u3E2snUvAyTr5mSvi5m2vl4HExo=", "narHash": "sha256-qq56SczKpUNKcm8xdOsXYLzaX37p1bLS0fFaCMB7s3Y=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "943ba5b1a58e68eb9a2c284ba6e3b30ebfe45abe", "rev": "e59d8bfa2cc42b1e1104595ac4292cfedce7f1a4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1256,11 +1310,11 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1772328832, "lastModified": 1777168982,
"narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=", "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs.lib", "repo": "nixpkgs.lib",
"rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742", "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1286,11 +1340,11 @@
}, },
"nixpkgs-lib_3": { "nixpkgs-lib_3": {
"locked": { "locked": {
"lastModified": 1772328832, "lastModified": 1777168982,
"narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=", "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs.lib", "repo": "nixpkgs.lib",
"rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742", "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1301,11 +1355,11 @@
}, },
"nixpkgs-master": { "nixpkgs-master": {
"locked": { "locked": {
"lastModified": 1772820052, "lastModified": 1777798537,
"narHash": "sha256-qXEI8n+4eXT+BqMzUMuKFdkltE82TjgIceiJCpdjzD4=", "narHash": "sha256-hY/pzDFcznuHlaJrbc0GME7WrzUY9o44peQryT7xbFI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d78e468770f4ab5e00c5015f4d77c1a499a76dc8", "rev": "5f49e619c2519edeafbb56a79550fdb6703d4739",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1315,13 +1369,45 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-staging": { "nixpkgs-nixcord": {
"locked": { "locked": {
"lastModified": 1772820753, "lastModified": 1777428379,
"narHash": "sha256-Sv689sGseiqNPXGSggxrESyivroe8cgY4dxqJdBLsEc=", "narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "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" "type": "github"
}, },
"original": { "original": {
@ -1333,11 +1419,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1772624091, "lastModified": 1777578337,
"narHash": "sha256-QKyJ0QGWBn6r0invrMAK8dmJoBYWoOWy7lN+UHzW1jc=", "narHash": "sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM+Z4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "80bdc1e5ce51f56b19791b52b2901187931f5353", "rev": "15f4ee454b1dce334612fa6843b3e05cf546efab",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1365,11 +1451,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1772598333, "lastModified": 1777428379,
"narHash": "sha256-YaHht/C35INEX3DeJQNWjNaTcPjYmBwwjFJ2jdtr+5U=", "narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "fabb8c9deee281e50b1065002c9828f2cf7b2239", "rev": "755f5aa91337890c432639c60b6064bb7fe67769",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1386,11 +1472,11 @@
"systems": "systems_2" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1773738366, "lastModified": 1770975056,
"narHash": "sha256-oH22HyNHEdCoCQo734sQCHUr6C0jmGQJMZ13dsgEHkk=", "narHash": "sha256-ZXTz/P3zUbbM6lNXzt91u8EwfNqhXpYMu8+wvFZqQHE=",
"owner": "cry128", "owner": "cry128",
"repo": "nt", "repo": "nt",
"rev": "f32c3a726a3d608d30aaaa1df2301c1eaf5ef8f4", "rev": "f42dcdd49a7921a7f433512e83d5f93696632412",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1409,11 +1495,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772024342, "lastModified": 1776796298,
"narHash": "sha256-+eXlIc4/7dE6EcPs9a2DaSY3fTA9AE526hGqkNID3Wg=", "narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "6e34e97ed9788b17796ee43ccdbaf871a5c2b476", "rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1445,18 +1531,19 @@
"cachyos": "cachyos", "cachyos": "cachyos",
"cerulean": "cerulean", "cerulean": "cerulean",
"fenix": "fenix", "fenix": "fenix",
"home-manager": "home-manager", "home-manager": "home-manager_2",
"home-manager-unstable": "home-manager-unstable", "home-manager-unstable": "home-manager-unstable",
"hyprland-git": "hyprland-git", "hyprland-git": "hyprland-git",
"hyprland-plugins": "hyprland-plugins",
"iamb": "iamb", "iamb": "iamb",
"mango": "mango", "mango": "mango",
"mcsr": "mcsr",
"microvm": "microvm_2", "microvm": "microvm_2",
"millennium": "millennium", "millennium": "millennium",
"nixcats": "nixcats", "nixcats": "nixcats",
"nixcord": "nixcord", "nixcord": "nixcord",
"nixpkgs": "nixpkgs_3", "nixpkgs": "nixpkgs_3",
"nixpkgs-master": "nixpkgs-master", "nixpkgs-master": "nixpkgs-master",
"nixpkgs-rust": "nixpkgs-rust",
"nixpkgs-staging": "nixpkgs-staging", "nixpkgs-staging": "nixpkgs-staging",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"sddm-silent": "sddm-silent", "sddm-silent": "sddm-silent",
@ -1468,11 +1555,11 @@
"rust-analyzer-src": { "rust-analyzer-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1772701851, "lastModified": 1777768857,
"narHash": "sha256-2g4Xg+w6wx2ewn1Tv576RzDc6Uof99H8kofHWdJktEs=", "narHash": "sha256-zfekJcaVctfAps1KDHwZpwkvAQn7GObRHh3Gl3xocGI=",
"owner": "rust-lang", "owner": "rust-lang",
"repo": "rust-analyzer", "repo": "rust-analyzer",
"rev": "2a8f00fb9344cc6701063192fe0aaf66ecf9d337", "rev": "1102c0b633599564919e36076d4362d7e68dbddc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1548,11 +1635,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771956684, "lastModified": 1775652648,
"narHash": "sha256-+EtzmEzGA2xqwIvKrP0euYaOzrmTQWEWAiWV+k2WBEM=", "narHash": "sha256-mLE7i9r9qenayJ8adWm22SbqUwLuopvRhyoizuZTtyo=",
"owner": "uiriansan", "owner": "uiriansan",
"repo": "SilentSDDM", "repo": "SilentSDDM",
"rev": "34f82e1fb8412fff78b82a0dcce763492b36054c", "rev": "a0fb8a48de772c0340dd6639b331ebf6ec2eb554",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1561,27 +1648,6 @@
"type": "github" "type": "github"
} }
}, },
"sops-nix": {
"inputs": {
"nixpkgs": [
"cerulean",
"nixpkgs"
]
},
"locked": {
"lastModified": 1773096132,
"narHash": "sha256-M3zEnq9OElB7zqc+mjgPlByPm1O5t2fbUrH3t/Hm5Ag=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "d1ff3b1034d5bab5d7d8086a7803c5a5968cd784",
"type": "github"
},
"original": {
"owner": "Mic92",
"repo": "sops-nix",
"type": "github"
}
},
"spectrum": { "spectrum": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -1601,11 +1667,11 @@
"spectrum_2": { "spectrum_2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1759482047, "lastModified": 1772189877,
"narHash": "sha256-H1wiXRQHxxPyMMlP39ce3ROKCwI5/tUn36P8x6dFiiQ=", "narHash": "sha256-i1p90Rgssb//aNiTDFq46ZG/fk3LmyRLChtp/9lddyA=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "c5d5786d3dc938af0b279c542d1e43bce381b4b9", "rev": "fe39e122d898f66e89ffa17d4f4209989ccb5358",
"revCount": 996, "revCount": 1255,
"type": "git", "type": "git",
"url": "https://spectrum-os.org/git/spectrum" "url": "https://spectrum-os.org/git/spectrum"
}, },
@ -1624,11 +1690,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772494187, "lastModified": 1777789800,
"narHash": "sha256-6ksgNAFXVK+Cg/6ww7bB2nJUPZlnS75UwZC7G+L03EE=", "narHash": "sha256-XHCvLGu/bEEZRzXVKFu1i+2YB102Nr00n8e7xrzsfVs=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "spicetify-nix", "repo": "spicetify-nix",
"rev": "915ab06b046d05613041780c575c62a32fe67cea", "rev": "d0e921cc48aab6137d203a3eab19601dc2bdc0c3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1798,11 +1864,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1761431178, "lastModified": 1777035886,
"narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=", "narHash": "sha256-m1TNuBoSXUBSKhD9UVMkU90M0wFTPTfvIOOltO8IM8A=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "4b8801228ff958d028f588f0c2b911dbf32297f9", "rev": "ecfcdcc781f48821d83e1e2a0e30d7beca0eeb5e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1813,19 +1879,17 @@
}, },
"zen": { "zen": {
"inputs": { "inputs": {
"home-manager": [ "home-manager": "home-manager_3",
"home-manager"
],
"nixpkgs": [ "nixpkgs": [
"nixpkgs-unstable" "nixpkgs-unstable"
] ]
}, },
"locked": { "locked": {
"lastModified": 1772772172, "lastModified": 1777564084,
"narHash": "sha256-OCEb6jXTvhnMTMqMLleYChekDO/zh+VtunBAS0WevPM=", "narHash": "sha256-O9VRkxg+2j+sh+c73wi4VeIBECoqW2PlnCR9Qe1nQKA=",
"owner": "0xc000022070", "owner": "0xc000022070",
"repo": "zen-browser-flake", "repo": "zen-browser-flake",
"rev": "5f8f34c0dd56808ecbfa35697353c455e4a416b3", "rev": "d93443c0f6fdb3b179bed68856f322dba4842612",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -9,6 +9,9 @@
nixpkgs-staging.url = "github:NixOS/nixpkgs/staging-next"; nixpkgs-staging.url = "github:NixOS/nixpkgs/staging-next";
nixpkgs-master.url = "github:NixOS/nixpkgs/master"; 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 = { home-manager = {
url = "github:nix-community/home-manager/release-25.11"; url = "github:nix-community/home-manager/release-25.11";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@ -19,7 +22,7 @@
}; };
cerulean = { cerulean = {
url = "github:cry128/cerulean/v0.2.6-alpha"; url = "git+https://tearforge.net/cry/cerulean?rev=d5211287bd3cb96078f2053488d67d557848a8f2";
inputs = { inputs = {
systems.follows = "systems"; systems.follows = "systems";
nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
@ -40,18 +43,23 @@
url = "github:hyprwm/Hyprland"; url = "github:hyprwm/Hyprland";
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
}; };
hyprland-plugins = { # hyprland-plugins = {
url = "github:hyprwm/hyprland-plugins"; # url = "github:hyprwm/hyprland-plugins";
inputs.hyprland.follows = "hyprland-git"; # inputs.hyprland.follows = "hyprland-git";
}; # };
mango = { mango = {
url = "github:DreamMaoMao/mangowc"; url = "github:mangowm/mango";
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
}; };
nixcats.url = "github:BirdeeHub/nixCats-nvim"; nixcats.url = "github:BirdeeHub/nixCats-nvim";
fenix = {
url = "github:nix-community/fenix";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
awww = { awww = {
url = "git+https://codeberg.org/LGFae/awww"; url = "git+https://codeberg.org/LGFae/awww";
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
@ -59,10 +67,7 @@
zen = { zen = {
url = "github:0xc000022070/zen-browser-flake"; url = "github:0xc000022070/zen-browser-flake";
inputs = { inputs.nixpkgs.follows = "nixpkgs-unstable";
nixpkgs.follows = "nixpkgs-unstable";
home-manager.follows = "home-manager";
};
}; };
iamb = { iamb = {
@ -88,8 +93,8 @@
}; };
}; };
fenix = { mcsr = {
url = "github:nix-community/fenix"; url = "https://git.uku3lig.net/uku/mcsr-nixos/archive/main.tar.gz";
inputs.nixpkgs.follows = "nixpkgs-unstable"; inputs.nixpkgs.follows = "nixpkgs-unstable";
}; };
@ -104,6 +109,5 @@
extra-experimental-features = "pipe-operators"; extra-experimental-features = "pipe-operators";
}; };
outputs = {cerulean, ...} @ inputs: outputs = inputs: import ./snow.nix inputs;
cerulean.snow.flake inputs ./.;
} }

View file

@ -1,6 +1,6 @@
{...}: { {...}: {
nix.settings = { nix.settings = {
experimental-features = ["nix-command" "flakes"]; experimental-features = ["nix-command" "flakes" "pipe-operators"];
download-buffer-size = 524288000; download-buffer-size = 524288000;
}; };
} }

View file

@ -85,8 +85,8 @@
# fonts # fonts
nerd-fonts.departure-mono # pretty pixel art font i love!! x3 nerd-fonts.departure-mono # pretty pixel art font i love!! x3
nerd-fonts.jetbrains-mono noto-fonts-cjk-sans # bitmap font for cjk support :3
noto-fonts zpix-pixel-font # bitmap font for cjk support :3
# cli / tui tools and commands! # cli / tui tools and commands!
eza # replaces: ls (rust) eza # replaces: ls (rust)
@ -111,10 +111,13 @@
pastel # color generator / manipulator :3 i love colors!! <3 pastel # color generator / manipulator :3 i love colors!! <3
eva # calculator repl eva # calculator repl
silicon # makes pretty images of code :3 silicon # makes pretty images of code :3
wormhole-rs # send people stuff!! :3
croc # other way to send people stuff!! :3
# cli fun # cli fun
pokeget-rs # prints a random pokemon to the terminal :3 pokeget-rs # prints a random pokemon to the terminal :3
pipes # pipes program <3 pipes # pipes program <3
cmatrix # the matrix :3
# dev # dev
gnumake gnumake
@ -130,6 +133,7 @@
gleam gleam
delta # git diff viewer delta # git diff viewer
tlrc # tldr rust client tlrc # tldr rust client
shellcheck
# apps # apps
qutebrowser # keyboard-focused browser (chromium) qutebrowser # keyboard-focused browser (chromium)
@ -139,20 +143,19 @@
obsidian # literally best notes app (i use vim mode) obsidian # literally best notes app (i use vim mode)
qimgv # image viewer! qimgv # image viewer!
feh # other image viewer! (im indecisive) feh # other image viewer! (im indecisive)
vesktop # modded discord client!
gimp # open source image manipulation program gimp # open source image manipulation program
krita # open source painting application! krita # open source painting application!
imhex # hex editor imhex # hex editor
kicad # open source electronics design program kicad # open source electronics design program
easyeda2kicad easyeda2kicad
# FIX: its fucking broken: https://github.com/NixOS/nixpkgs/pull/494721 libreoffice-qt # word, excel, pdf etc open source programs
mpkgs.libreoffice-qt # word, excel, pdf etc open source programs
hunspell # spell checker hunspell # spell checker
obs-studio obs-studio
cytoscape cytoscape
element-desktop # 'official' gui matrix client element-desktop # 'official' gui matrix client
blender # AMAZING 3D MODELLING PROGRAMMM <3 blender # AMAZING 3D MODELLING PROGRAMMM <3
session-desktop # idk silly chat app session-desktop # idk silly chat app
localsend # share files locally :3
# media # media
playerctl # mpris cli interface for media apps :3 playerctl # mpris cli interface for media apps :3
@ -162,8 +165,8 @@
# games # games
r2modman # mod manager for lots of games!! r2modman # mod manager for lots of games!!
prismlauncher # minecraft launcher # prismlauncher # minecraft launcher
bottles # wineprefix manager # bottles # wineprefix manager
# vr # vr
sidequest # app store for sideloading onto vr headsets sidequest # app store for sideloading onto vr headsets
@ -173,7 +176,6 @@
# gui settings apps # gui settings apps
nwg-look # gtk 2 / 3 settings thing idc i hate gtk nwg-look # gtk 2 / 3 settings thing idc i hate gtk
pavucontrol # i wanna get rid of this but its audio control thing 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 # wayland desktop tools / de / wm stuff / gui stuffs
cliphist cliphist
@ -289,7 +291,7 @@
git.pagers = [ git.pagers = [
{ {
colorArg = "always"; colorArg = "always";
pager = "delta --dark --pager=never --line-numbers --side-by-side"; pager = "delta --dark --pager=never";
} }
]; ];
}; };
@ -318,7 +320,6 @@
zen-browser = { zen-browser = {
enable = true; enable = true;
package = inputs.zen.packages.${system}.twilight; package = inputs.zen.packages.${system}.twilight;
suppressXdgMigrationWarning = true;
}; };
mpv = { mpv = {

View file

@ -3,7 +3,7 @@
* { * {
border: none; border: none;
border-radius: 0; border-radius: 0;
font-family: 'DepartureMono Nerd Font'; font-family: "DepartureMono Nerd Font", "Unifont";
font-size: 10px; font-size: 10px;
font-weight: bold; font-weight: bold;
min-height: 10px; min-height: 10px;
@ -37,6 +37,7 @@ tooltip label {
#network, #network,
#workspaces, #workspaces,
#taskbar, #taskbar,
#submap,
#cpu, #cpu,
#pulseaudio, #pulseaudio,
#privacy, #privacy,
@ -48,6 +49,7 @@ tooltip label {
padding: 4px 16px; padding: 4px 16px;
border-radius: 32px; border-radius: 32px;
border: 1px solid @color01; border: 1px solid @color01;
min-height: 14px;
} }
/* /*
@ -74,6 +76,7 @@ right-side modules
#cpu, #cpu,
#pulseaudio, #pulseaudio,
#tray, #tray,
#submap,
#privacy { #privacy {
margin: 4px 0px 4px 4px; margin: 4px 0px 4px 4px;
} }
@ -96,6 +99,34 @@ right-side modules
border: none; 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 connects the workspace and taskbar together :3
*/ */
@ -114,7 +145,7 @@ right-side modules
*/ */
#cpu { #cpu {
margin: 4px 0 4px 0; margin: 4px 0 4px 4px;
border-radius: 32px 0px 0px 32px; border-radius: 32px 0px 0px 32px;
} }
#memory { #memory {

View file

@ -6,24 +6,45 @@
layer = "top"; layer = "top";
position = "top"; position = "top";
height = 20; height = 20;
modules-left = ["hyprland/workspaces" "wlr/taskbar" "custom/media"];
modules-center = ["clock"]; modules-left = [
modules-right = ["cpu" "memory" "network" "pulseaudio" "privacy" "tray"]; "hyprland/workspaces"
"wlr/taskbar"
"custom/media"
];
modules-center = [
"clock"
];
modules-right = [
"hyprland/submap"
"cpu"
"memory"
"network"
"pulseaudio#sink"
"pulseaudio#source"
"privacy"
"tray"
];
# left # left
"hyprland/workspaces" = { "hyprland/workspaces" = {
format = "{id}"; format = "{id}";
}; };
"ext/workspaces" = {
# not enabled yet, hyprland and mango need two different configs ;-; # not enabled yet, hyprland and mango need two different configs ;-;
"ext/workspaces" = {
format = "{id}"; format = "{id}";
ignore-hidden = true; ignore-hidden = true;
on-click = "activate"; on-click = "activate";
}; };
"wlr/taskbar" = { "wlr/taskbar" = {
format = "{icon}"; format = "{icon}";
icon-size = 12; icon-size = 12;
}; };
"custom/media" = { "custom/media" = {
exec = "auroramedia"; exec = "auroramedia";
return-type = "json"; return-type = "json";
@ -39,14 +60,24 @@
}; };
# right # right
"hyprland/submap" = {
format = "{}";
# always-on = true;
# default-submap = "normal";
max-length = 12;
tooltip = false;
};
"cpu" = { "cpu" = {
format = " {usage}%"; format = " {usage}%";
interval = 1; interval = 1;
}; };
"memory" = { "memory" = {
format = " {used:0.1f} / {total:0.1f} GiB"; format = " {used:0.1f} / {total:0.1f} GiB";
interval = 1; interval = 1;
}; };
"network" = { "network" = {
format = "{bandwidthUpBytes} {bandwidthDownBytes} {ifname}"; format = "{bandwidthUpBytes} {bandwidthDownBytes} {ifname}";
format-wifi = " {bandwidthUpBytes} {bandwidthDownBytes} "; format-wifi = " {bandwidthUpBytes} {bandwidthDownBytes} ";
@ -55,7 +86,8 @@
interval = 1; interval = 1;
max-length = 32; max-length = 32;
}; };
"pulseaudio" = {
"pulseaudio#sink" = {
format = "{icon} {volume}%"; format = "{icon} {volume}%";
format-muted = " {volume}%"; format-muted = " {volume}%";
format-icons = { format-icons = {
@ -66,7 +98,18 @@
]; ];
}; };
"scroll-step" = 5; "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" = { "privacy" = {
icon-size = 12; icon-size = 12;
icon-spacing = 5; icon-spacing = 5;
@ -84,6 +127,7 @@
} }
]; ];
}; };
"tray" = { "tray" = {
icon-size = 12; icon-size = 12;
spacing = 10; spacing = 10;

View file

@ -2,12 +2,16 @@ vim.g.mapleader = " "
vim.opt.termguicolors = true -- use terminal colors vim.opt.termguicolors = true -- use terminal colors
vim.opt.relativenumber = true vim.opt.relativenumber = true
vim.opt.number = true
vim.opt.wrap = false vim.opt.wrap = false
vim.opt.colorcolumn = "80" vim.opt.colorcolumn = "80"
vim.opt.scrolloff = 4
require("plugins") require("plugins")
require("lsp") require("lsp")
require("colors")
-- move windows :3
vim.keymap.set("n", "<A-h>", function() vim.keymap.set("n", "<A-h>", function()
vim.cmd("wincmd h") vim.cmd("wincmd h")
end) end)
@ -21,73 +25,71 @@ vim.keymap.set("n", "<A-l>", function()
vim.cmd("wincmd l") vim.cmd("wincmd l")
end) end)
local uv = vim.loop -- splits <3 (i love splits sm)
local colorscheme_filepath = "/home/aurora/.cache/nvim/neovim-colors" vim.keymap.set("n", "<leader>s", function()
local colors = {} vim.cmd("split")
end)
vim.keymap.set("n", "<leader>v", function()
vim.cmd("vsplit")
end)
-- function to load colors -- u can put delta inside of neovim omg they are spoiling me <3
local function load_colors() local git_diff_win = nil
local new_colors = {}
for line in io.lines(colorscheme_filepath) do vim.api.nvim_create_autocmd("VimResized", {
table.insert(new_colors, line) 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
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],
}) })
-- set colors for blink.cmp's completion menu vim.keymap.set("n", "<leader>gd", function()
vim.api.nvim_set_hl(0, "BlinkCmpMenu", { bg = colors[17] }) if git_diff_win and vim.api.nvim_win_is_valid(git_diff_win) then
vim.api.nvim_set_hl(0, "BlinkCmpMenuBorder", { bg = colors[17], fg = colors[13] }) vim.api.nvim_win_close(git_diff_win, true)
vim.api.nvim_set_hl(0, "BlinkCmpMenuSelection", { bg = colors[15], fg = colors[17] }) git_diff_win = nil
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
-- initial load
load_colors()
-- vim.defer_fn(load_colors, 1)
-- 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 return
end end
-- debounce by adding a slight delay before reloading
vim.defer_fn(load_colors, 100)
end)
end
end
watch_colorscheme() local buf = vim.api.nvim_create_buf(false, true)
vim.bo[buf].filetype = "terminal"
-- 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,
})
local width = math.floor(vim.o.columns * 0.9)
local height = math.floor((vim.o.lines - 2) * 0.9)
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",
})
vim.fn.jobstart("git diff | delta --pager=never", { term = true })
vim.keymap.set("n", "q", "<cmd>close<CR>", { buffer = buf })
end)

View 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()

View file

@ -17,7 +17,7 @@ return {
keymap = { keymap = {
["<C-space>"] = { "show", "show_documentation", "hide_documentation" }, ["<C-space>"] = { "show", "show_documentation", "hide_documentation" },
["<C-e>"] = { "hide", "fallback" }, ["<C-e>"] = { "hide", "fallback" },
["<C-y>"] = { "select_and_accept", "fallback" }, ["<C-h>"] = { "select_and_accept", "fallback" },
["<C-k>"] = { "select_prev", "fallback_to_mappings" }, ["<C-k>"] = { "select_prev", "fallback_to_mappings" },
["<C-j>"] = { "select_next", "fallback_to_mappings" }, ["<C-j>"] = { "select_next", "fallback_to_mappings" },
@ -30,7 +30,7 @@ return {
["<Tab>"] = { "snippet_forward", "fallback" }, ["<Tab>"] = { "snippet_forward", "fallback" },
["<S-Tab>"] = { "snippet_backward", "fallback" }, ["<S-Tab>"] = { "snippet_backward", "fallback" },
["<C-S-k>"] = { "show_signature", "hide_signature", "fallback" }, ["<C-s>"] = { "show_signature", "hide_signature", "fallback" },
}, },
appearance = { appearance = {
@ -84,7 +84,7 @@ return {
}, },
documentation = { documentation = {
auto_show = false, auto_show = true,
window = { window = {
border = "rounded", border = "rounded",
}, },

View file

@ -1,5 +1,12 @@
vim.api.nvim_create_autocmd("FileType", { vim.api.nvim_create_autocmd("FileType", {
pattern = { "lua", "nix", "gleam" }, pattern = {
"lua",
"nix",
"gleam",
"css",
"json",
"haskell",
},
callback = function() callback = function()
vim.opt_local.shiftwidth = 2 vim.opt_local.shiftwidth = 2
vim.opt_local.tabstop = 2 vim.opt_local.tabstop = 2
@ -7,14 +14,38 @@ vim.api.nvim_create_autocmd("FileType", {
end, 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", { vim.api.nvim_create_autocmd("User", {
pattern = "TelescopePreviewerLoaded", pattern = "TelescopePreviewerLoaded",
callback = function(args) callback = function(args)
local ft = args.data.filetype 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",
}, ft) then
vim.bo.shiftwidth = 2 vim.bo.shiftwidth = 2
vim.bo.tabstop = 2 vim.bo.tabstop = 2
vim.bo.expandtab = true 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
end, end,
}) })

View file

@ -47,6 +47,11 @@ if nixCats("lang.rust.lsp") then
diagnostics = { diagnostics = {
enable = true, enable = true,
}, },
["rust-analyzer"] = {
procMacro = {
enable = true,
},
},
}, },
} }
end end

View file

@ -1,5 +1,6 @@
return { return {
{ {
"dressing.nvim", "dressing.nvim",
enabled = nixCats("ui.dressing") or false,
}, },
} }

View file

@ -58,10 +58,22 @@ return {
formatters_by_ft = { formatters_by_ft = {
lua = nixCats("lang.lua.format") and { "stylua" } or nil, lua = nixCats("lang.lua.format") and { "stylua" } or nil,
nix = nixCats("lang.nix.format") and { "alejandra" } 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, haskell = nixCats("lang.haskell.format") and { "ormolu" } or nil,
proto = nixCats("lang.protobuf.format") and { "buf" } or nil, proto = nixCats("lang.protobuf.format") and { "buf" } or nil,
toml = nixCats("lang.toml.format") and { "taplo" } or nil, toml = nixCats("lang.toml.format") and { "taplo" } or nil,
sql = nixCats("lang.sql.format") and { "sqlfluff" } or nil,
}, },
format_on_save = { format_on_save = {
timeout_ms = 500, timeout_ms = 500,

View file

@ -4,12 +4,12 @@ return {
cmd = { "Fyler" }, cmd = { "Fyler" },
keys = { keys = {
{ {
"<leader>tf", "<leader>F",
function() function()
return require("fyler").toggle({ kind = "split_right" }) return require("fyler").toggle({ kind = "split_right" })
end, end,
mode = { "n" }, mode = { "n" },
desc = "Open [F]yler", desc = "Open File [E]xplorer (Fyler)",
}, },
}, },
load = function(name) load = function(name)

View file

@ -1,12 +1,12 @@
return { return {
{ {
"vim-fugitive", "vim-fugitive",
enabled = nixCats("git") or false, enabled = nixCats("git.merge") or false,
cmd = { "Git", "Gvdiffsplit" }, cmd = { "Git", "Gvdiffsplit" },
}, },
{ {
"resolve-nvim", "resolve-nvim",
enabled = nixCats("git") or false, enabled = nixCats("git.merge") or false,
event = { "BufReadPre", "BufNewFile" }, event = { "BufReadPre", "BufNewFile" },
after = function(plugin) after = function(plugin)
require("resolve").setup({ require("resolve").setup({
@ -21,4 +21,73 @@ return {
}) })
end, 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,
},
} }

View 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,
},
}

View file

@ -7,4 +7,6 @@ require("lze").load({
{ import = "plugins.format" }, { import = "plugins.format" },
{ import = "plugins.comment" }, { import = "plugins.comment" },
{ import = "plugins.git" }, { import = "plugins.git" },
{ import = "plugins.lualine" },
{ import = "plugins.hlchunk" },
}) })

View 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,
},
}

View file

@ -1,12 +1,16 @@
return { return {
{ {
"telescope.nvim", "telescope.nvim",
enabled = nixCats("telescope.enable") or false,
cmd = { "Telescope" }, cmd = { "Telescope" },
keys = { keys = {
{ {
"<leader>f", "<leader>f",
function() function()
return require("telescope.builtin").find_files() return require("telescope.builtin").find_files({
hidden = true,
file_ignore_patterns = { "^.git/" },
})
end, end,
mode = { "n" }, mode = { "n" },
desc = "Telescope search [F]iles", desc = "Telescope search [F]iles",
@ -22,7 +26,10 @@ return {
{ {
"<leader>ts", "<leader>ts",
function() function()
return require("telescope.builtin").live_grep() return require("telescope.builtin").live_grep({
additional_args = { "--hidden" },
glob_pattern = { "!.git/" },
})
end, end,
mode = { "n" }, mode = { "n" },
desc = "[T]elescope [S]earch cwd with grep", desc = "[T]elescope [S]earch cwd with grep",
@ -30,7 +37,10 @@ return {
{ {
"<leader>tw", "<leader>tw",
function() function()
return require("telescope.builtin").grep_string() return require("telescope.builtin").grep_string({
additional_args = { "--hidden" },
glob_pattern = { "!.git/" },
})
end, end,
mode = { "n" }, mode = { "n" },
desc = "[T]elescope search current [W]ord", desc = "[T]elescope search current [W]ord",
@ -51,10 +61,33 @@ return {
mode = { "n" }, mode = { "n" },
desc = "[T]elescope search [B]uffers", 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) load = function(name)
vim.cmd.packadd(name) vim.cmd.packadd(name)
if nixCats("telescope.fzf") then
vim.cmd.packadd("telescope-fzf-native.nvim") vim.cmd.packadd("telescope-fzf-native.nvim")
end
if nixCats("telescope.zf") then
vim.cmd.packadd("telescope-zf-native.nvim")
end
end, end,
after = function(plugin) after = function(plugin)
local telescope = require("telescope") local telescope = require("telescope")
@ -62,6 +95,8 @@ return {
telescope.setup({ telescope.setup({
defaults = { defaults = {
border = true,
borderchars = { "", "", "", "", "", "", "", "" },
mappings = { mappings = {
i = { i = {
["<C-k>"] = actions.move_selection_previous, -- move to prev result ["<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, end,
}, },
} }

View file

@ -1,10 +1,6 @@
# TODO: look into changing to this: # TODO: look into changing to this:
# https://github.com/BirdeeHub/nix-wrapper-modules # https://github.com/BirdeeHub/nix-wrapper-modules
{ {inputs, ...}: let
inputs,
mpkgs,
...
}: let
inherit inherit
(inputs.nixcats) (inputs.nixcats)
utils utils
@ -15,11 +11,10 @@ in {
]; ];
config = { config = {
# this value, nixCats is the defaultPackageName you pass to mkNixosModules
# it will be the namespace for your options.
nixCats = { nixCats = {
enable = true; enable = true;
nixpkgs_version = inputs.nixpkgs-unstable; nixpkgs_version = inputs.nixpkgs-unstable;
# TODO: ask butterfly about this, am confused :3
# this will add the overlays from ./overlays and also, # this will add the overlays from ./overlays and also,
# add any plugins in inputs named "plugins-pluginName" to pkgs.neovimPlugins # add any plugins in inputs named "plugins-pluginName" to pkgs.neovimPlugins
# It will not apply to overall system, just nixCats. # It will not apply to overall system, just nixCats.
@ -28,15 +23,13 @@ in {
[ [
(utils.standardPluginOverlay inputs) (utils.standardPluginOverlay inputs)
]; ];
# see the packageDefinitions below.
# This says which of those to install. # This says which of those to install.
packageNames = ["auroranvim"]; packageNames = ["auroranvim"];
luaPath = "${./.}"; luaPath = "${./.}";
# the .replace vs .merge options are for modules based on existing configurations, # for usage of this section, refer to :h nixCats.flake.outputs.categories
# they refer to how multiple categoryDefinitions get merged together by the module.
# for useage of this section, refer to :h nixCats.flake.outputs.categories
categoryDefinitions.replace = { categoryDefinitions.replace = {
pkgs, pkgs,
settings, settings,
@ -65,9 +58,17 @@ in {
docs = [nix-doc]; # TODO: i forgot how to integrate this into neovim docs = [nix-doc]; # TODO: i forgot how to integrate this into neovim
}; };
rust = { 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 # nightly rustfmt has nicer features :3
format = [inputs.fenix.packages.${system}.complete.rustfmt]; format = [(rustfmt.override {asNightly = true;})];
formatters = {
leptos = [leptosfmt];
};
}; };
zig = { zig = {
lsp = [zls]; lsp = [zls];
@ -100,6 +101,12 @@ in {
toml = { toml = {
format = [taplo]; format = [taplo];
}; };
bash = {
lsp = [bash-language-server];
};
sql = {
format = [sqlfluff];
};
}; };
}; };
@ -120,18 +127,23 @@ in {
optionalPlugins = with pkgs.vimPlugins; { optionalPlugins = with pkgs.vimPlugins; {
general = []; general = [];
ui = [ ui = {
dressing-nvim dressing = [dressing-nvim];
]; lualine = [lualine-nvim];
hlchunk = [hlchunk-nvim];
};
qol = [ qol = [
undotree undotree
mini-hipatterns mini-hipatterns
]; ];
telescope = [ telescope = {
enable = [
telescope-nvim telescope-nvim
telescope-fzf-native-nvim
telescope-ui-select-nvim telescope-ui-select-nvim
]; ];
fzf = [telescope-fzf-native-nvim];
zf = [telescope-zf-native-nvim];
};
fyler = [ fyler = [
fyler-nvim fyler-nvim
]; ];
@ -159,10 +171,15 @@ in {
comment = [ comment = [
comment-nvim comment-nvim
]; ];
git = [ git = {
merge = [
resolve-nvim resolve-nvim
vim-fugitive vim-fugitive
]; ];
gitsigns = [
gitsigns-nvim
];
};
lang = { lang = {
java = [ java = [
nvim-jdtls nvim-jdtls
@ -173,9 +190,7 @@ in {
# shared libraries to be added to LD_LIBRARY_PATH # shared libraries to be added to LD_LIBRARY_PATH
# variable available to nvim runtime # variable available to nvim runtime
sharedLibraries = { sharedLibraries = {
general = with pkgs; [ general = with pkgs; [];
# libgit2
];
}; };
environmentVariables = { environmentVariables = {
@ -183,7 +198,7 @@ in {
rust.lsp = { rust.lsp = {
# it literally won't see the rust-analyzer provided to it # it literally won't see the rust-analyzer provided to it
# if you don't use an envrionment variable to tell 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.lsp = {
ELIXIR_LS_CMD = "${pkgs.elixir-ls}/scripts/language_server.sh"; ELIXIR_LS_CMD = "${pkgs.elixir-ls}/scripts/language_server.sh";
@ -211,15 +226,11 @@ in {
# see :help nixCats.flake.outputs.packageDefinitions # see :help nixCats.flake.outputs.packageDefinitions
packageDefinitions.replace = { packageDefinitions.replace = {
# these are the names of your packages
# you can include as many as you wish.
auroranvim = {pkgs, ...}: { auroranvim = {pkgs, ...}: {
# they contain a settings set defined above # they contain a settings set defined above
# see :help nixCats.flake.outputs.settings # see :help nixCats.flake.outputs.settings
settings = { settings = {
wrapRc = true; wrapRc = true;
# IMPORTANT:
# your alias may not conflict with your other packages.
aliases = [ aliases = [
"auravim" "auravim"
"foxyvim" "foxyvim"
@ -227,14 +238,26 @@ in {
"fvix" "fvix"
]; ];
}; };
# and a set of categories that you want
# (and other information to pass to lua)
categories = { categories = {
general = true; general = true;
ui = true; ui = {
dressing = true;
lualine = true;
hlchunk = true;
};
qol = true; qol = true;
telescope = true;
telescope = {
enable = true;
# only enable one at a time
fzf = true;
zf = false;
};
fyler = true; fyler = true;
lsp = true; lsp = true;
@ -244,50 +267,48 @@ in {
format = true; format = true;
comment = true; comment = true;
git = false; # not really setup yet git = {
merge = false; # not really setup yet.. </3
gitsigns = true;
};
lang = { lang = {
lua = { lua.lsp = true;
lsp = true; lua.format = true;
format = true;
}; nix.lsp = true;
nix = { nix.format = true;
lsp = true; nix.docs = true;
format = true;
docs = true; rust.lsp = true;
}; rust.format = true;
rust = { rust.formatters = {
lsp = true; leptos = 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;
}; };
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;
protobuf.lsp = true;
protobuf.format = true;
toml.format = true;
bash.lsp = true;
sql.format = true;
}; };
}; };
}; };

View file

@ -1,7 +1,6 @@
{ {
inputs, inputs,
upkgs, upkgs,
mpkgs,
... ...
}: { }: {
imports = [ imports = [
@ -10,13 +9,20 @@
programs.nixcord = { programs.nixcord = {
enable = true; enable = true;
equibop.enable = true;
# broken rn: https://github.com/FlameFlag/nixcord/issues/200
equibop.enable = false;
equibop.package = upkgs.equibop; equibop.package = upkgs.equibop;
vesktop.enable = true;
vesktop.package = upkgs.vesktop;
discord = { discord = {
# can't have both enabled
vencord.enable = false; vencord.enable = false;
vencord.package = upkgs.vencord;
equicord.enable = true; equicord.enable = true;
equicord.package = mpkgs.equicord; equicord.package = upkgs.equicord;
}; };
config = { config = {
@ -75,7 +81,6 @@
forwardAnywhere.enable = true; forwardAnywhere.enable = true;
spotifyCrack.enable = true; spotifyCrack.enable = true;
spotifyShareCommands.enable = true; spotifyShareCommands.enable = true;
spotifyControls.enable = true;
fullUserInChatbox.enable = true; fullUserInChatbox.enable = true;
gifPaste.enable = true; gifPaste.enable = true;
ignoreActivities = { ignoreActivities = {
@ -99,7 +104,6 @@
}; };
platformIndicators.enable = true; platformIndicators.enable = true;
previewMessage.enable = true; previewMessage.enable = true;
relationshipNotifier.enable = true;
revealAllSpoilers.enable = true; revealAllSpoilers.enable = true;
serverInfo.enable = true; serverInfo.enable = true;
serverListIndicators.enable = true; serverListIndicators.enable = true;
@ -140,7 +144,7 @@
whoReacted.enable = true; whoReacted.enable = true;
whosWatching.enable = true; whosWatching.enable = true;
quickReply.enable = true; quickReply.enable = true;
questCompleter.enable = true; # questCompleter.enable = true; # does not seem to exist anymore?
shikiCodeblocks = { shikiCodeblocks = {
enable = true; enable = true;
useDevIcon = "COLOR"; useDevIcon = "COLOR";
@ -164,9 +168,9 @@
"1436964273162289185" "1436964273162289185"
"1436988320474206311" "1436988320474206311"
"1449837047383855119" "1449837047383855119"
"1436968495190642722"
"1465424321919975454" "1465424321919975454"
"1468324280445046824" "1468324280445046824"
"1461929299727749145"
]; ];
} }
{ {
@ -175,6 +179,7 @@
color = 10223511; color = 10223511;
collapsed = false; collapsed = false;
channels = [ channels = [
"1436968495190642722"
"1436985374286155799" "1436985374286155799"
"1436965657076826222" "1436965657076826222"
"1429921297160212681" "1429921297160212681"
@ -191,7 +196,6 @@
"1461885176534794427" "1461885176534794427"
"1462155159470866443" "1462155159470866443"
"1468735915076878407" "1468735915076878407"
"1461929299727749145"
"1470963392121536657" "1470963392121536657"
]; ];
} }
@ -209,6 +213,7 @@
"1436985041203892315" "1436985041203892315"
"1438071327515742229" "1438071327515742229"
"1436965652861685891" "1436965652861685891"
"1496677919404068954"
]; ];
} }
{ {
@ -238,6 +243,7 @@
"1437283420312047659" "1437283420312047659"
"1437089201651847315" "1437089201651847315"
"1467307140443148288" "1467307140443148288"
"1473192300363649024"
]; ];
} }
{ {

View file

@ -13,6 +13,7 @@
settings = { settings = {
mgr = { mgr = {
show_hidden = true; show_hidden = true;
mouse_events = ["scroll"];
}; };
log = { log = {
enabled = false; enabled = false;

View file

@ -0,0 +1 @@
#!/usr/bin/env bash

View file

@ -34,7 +34,7 @@
shellAliases = { shellAliases = {
# files and nav stuff # files and nav stuff
ls = "eza"; ls = "eza --icons=auto";
ll = "ls -la"; ll = "ls -la";
lt = "ls --tree"; lt = "ls --tree";
llt = "ll --tree"; llt = "ll --tree";
@ -51,12 +51,15 @@
cb-fox = "ssh-add ~/.ssh/codeberg_foxxyora"; cb-fox = "ssh-add ~/.ssh/codeberg_foxxyora";
tf-fox = "ssh-add ~/.ssh/tearforge_foxora"; tf-fox = "ssh-add ~/.ssh/tearforge_foxora";
tx = "wormhole-rs tx";
rx = "wormhole-rs rx";
# -------------------- # --------------------
# shorthand nix command aliases # shorthand nix command aliases
# open nix develop with preferred shell # open nix develop with preferred shell
# description: nd = nix develop # 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 # description: cdns = change directory [to] nix settings
cdns = "cd ~/.nix"; cdns = "cd ~/.nix";

View file

@ -14,5 +14,5 @@
{{ color13 }} {{ color13 }}
{{ color14 }} {{ color14 }}
{{ color15 }} {{ color15 }}
{{ background }}
{{ foreground }} {{ foreground }}
{{ background }}

View file

@ -1,7 +1,7 @@
# a submap for emulating keys/buttons/functions on the keyboard or mouse # a submap for emulating keys/buttons/functions on the keyboard or mouse
bind = $mod+shift+alt, a, submap, virtual bind = $mod, a, submap, cursor
submap = virtual submap = cursor
# exit submap # exit submap
bind = , escape, submap, reset 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 binde = alt, y, exec, wlrctl pointer scroll 0 15 # scroll right
# catches all other keys and keeps us in the submap # catches all other keys and keeps us in the submap
bind = , catchall, submap, virtual bind = , catchall, submap, cursor
submap = reset submap = reset

View file

@ -4,10 +4,6 @@
package = null; package = null;
portalPackage = null; portalPackage = null;
plugins = [
#inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprscrolling
];
xwayland.enable = true; xwayland.enable = true;
extraConfig = '' extraConfig = ''
@ -64,18 +60,18 @@
layout = "dwindle"; 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 = { dwindle = {
preserve_split = true; preserve_split = true;
}; };
scrolling = {
fullscreen_on_one_column = true;
column_width = 0.9;
wrap_focus = true;
wrap_swapcol = true;
direction = "right";
};
decoration = { decoration = {
rounding = 8; rounding = 8;
@ -111,7 +107,7 @@
force_no_accel = false; # not recommended to turn on force_no_accel = false; # not recommended to turn on
}; };
cursor.no_hardware_cursors = true; # cursor.no_hardware_cursors = true;
misc = { misc = {
enable_anr_dialog = false; enable_anr_dialog = false;
@ -152,6 +148,7 @@
# media binds (more in binde below) # media binds (more in binde below)
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" ", 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" ", XF86AudioPlay, exec, playerctl play-pause"
", XF86AudioNext, exec, playerctl next" ", XF86AudioNext, exec, playerctl next"
", XF86AudioPrev, exec, playerctl previous" ", XF86AudioPrev, exec, playerctl previous"
@ -262,6 +259,8 @@
binde = [ binde = [
", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+" ", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+"
", XF86AudioLowerVolume, 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, XF86AudioRaiseVolume, exec, playerctl volume 0.05+"
"Shift_R, XF86AudioLowerVolume, exec, playerctl volume 0.05-" "Shift_R, XF86AudioLowerVolume, exec, playerctl volume 0.05-"

View file

@ -13,7 +13,7 @@
}; };
boot = { boot = {
kernelPackages = pkgs.linuxPackages_latest; kernelPackages = pkgs.linuxPackages_6_12;
loader = { loader = {
systemd-boot.enable = true; systemd-boot.enable = true;
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;

View file

@ -13,7 +13,7 @@
}; };
boot = { boot = {
kernelPackages = pkgs.linuxPackages_latest; kernelPackages = pkgs.linuxPackages_6_12;
loader = { loader = {
systemd-boot.enable = true; systemd-boot.enable = true;
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;

View 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;
};
};
};
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

View 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

View file

@ -9,6 +9,8 @@
./hardware-configuration.nix ./hardware-configuration.nix
./modules/amdgpu-ignore-ctx-privileges.nix ./modules/amdgpu-ignore-ctx-privileges.nix
../modules/programs/mcsr
]; ];
# Use the systemd-boot EFI boot loader. # Use the systemd-boot EFI boot loader.
@ -22,17 +24,20 @@
# kernelPackages = upkgs.cachyosKernels.linuxPackages-cachyos-latest-lto-x86_64-v4; # kernelPackages = upkgs.cachyosKernels.linuxPackages-cachyos-latest-lto-x86_64-v4;
# TODO: idk make this a toggle or smth idfk # TODO: idk make this a toggle or smth idfk
# kernelPackages = upkgs.linuxPackages_zen; kernelPackages = upkgs.linuxPackages_zen;
# FIX: it said my disk was full
kernelPackages = upkgs.linuxPackages_latest;
kernelModules = ["v4l2loopback"]; kernelModules = ["v4l2loopback"];
# force kernel to use dGPU
kernelParams = [ kernelParams = [
# force kernel to use dGPU
"amdgpu.primary=0000:03:00.0" "amdgpu.primary=0000:03:00.0"
"video=PCI:0000:03:00.0:e" "video=PCI:0000:03:00.0:e"
"initcall_blacklist=simpledrm_platform_driver_init" "initcall_blacklist=simpledrm_platform_driver_init"
"fbcon=map:0" "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]; extraModulePackages = with kernelPackages; [v4l2loopback];
@ -60,13 +65,11 @@
allowedTCPPorts = [ allowedTCPPorts = [
21110 # slimevr 21110 # slimevr
44949 # rquickshare
]; ];
allowedUDPPorts = [ allowedUDPPorts = [
6969 # slimevr 6969 # slimevr
8266 # slimevr 8266 # slimevr
35903 # slimevr 35903 # slimevr
44949 # rquickshare
]; ];
}; };
@ -307,7 +310,18 @@
alvr = { alvr = {
enable = true; 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; openFirewall = true;
}; };
@ -362,11 +376,11 @@
}) })
# game stuff :3 # game stuff :3
(lutris.override { # (lutris.override {
extraPkgs = upkgs: [ # extraPkgs = upkgs: [
libadwaita # libadwaita
]; # ];
}) # })
(steam.override { (steam.override {
extraPkgs = upkgs: [ extraPkgs = upkgs: [
nss nss

View file

@ -1,6 +1,6 @@
{inputs, ...} @ args: { {inputs, ...} @ args: {
nixpkgs.channels = { nixpkgs.channels = {
base = { default = {
overlays = [(import ./overlays.nix args)]; overlays = [(import ./overlays.nix args)];
config.allowUnfree = true; config.allowUnfree = true;
}; };

View file

@ -1,5 +1,6 @@
{inputs, ...}: { {cerulean, ...} @ inputs:
nodes = { cerulean.mkNexus ./. (self: {
nexus = {
args = {inherit inputs;}; args = {inherit inputs;};
modules = with inputs; []; modules = with inputs; [];
@ -11,7 +12,12 @@
servers = {}; servers = {};
}; };
nodes = { nodes = let
inherit
(self.nexus)
groups
;
in {
nixarawrui = { nixarawrui = {
system = "x86_64-linux"; system = "x86_64-linux";
@ -27,7 +33,7 @@
arcturus = { arcturus = {
system = "x86_64-linux"; system = "x86_64-linux";
groups = groups: [ groups = [
groups.servers groups.servers
]; ];
@ -114,7 +120,7 @@
lyra = { lyra = {
system = "x86_64-linux"; system = "x86_64-linux";
groups = groups: [ groups = [
groups.servers groups.servers
]; ];
@ -126,4 +132,4 @@
}; };
}; };
}; };
} })