feat: Add noctalia-shell for niri

This commit is contained in:
ulic-youthlic 2025-11-10 19:28:58 +08:00
parent 7de5231d38
commit e2963cf15c
Signed by: youthlic
GPG key ID: 63E86C3C14A0D721
7 changed files with 1157 additions and 839 deletions

491
flake.lock generated
View file

@ -78,11 +78,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1762174035,
"narHash": "sha256-I5AEdZ17rUUvOK9KDD7KgcPhiYvsZwt5UYcx4ZU/lhg=",
"lastModified": 1762735459,
"narHash": "sha256-VZRCyMRSLFORBzH+pYzDSx/ooIBD5Ohrv28sWktSiqk=",
"owner": "HeitorAugustoLN",
"repo": "betterfox-nix",
"rev": "9505c7f12d01462782eeb46686677f11a4b998e5",
"rev": "37ac3490a7e2825985ce5c0004489b2264ea1cd0",
"type": "github"
},
"original": {
@ -100,11 +100,11 @@
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1762233483,
"narHash": "sha256-7xrOMk264pHNe1EC55k+Q4KX+pebIepNIPAsqXCgnGk=",
"lastModified": 1762741551,
"narHash": "sha256-m37GDrMOQWwB+QUpispta1ZCVLpV4keBlPoEu1tPGb0=",
"owner": "chaotic-cx",
"repo": "nyx",
"rev": "035a14f12abe016db315413480fb913196c4ed14",
"rev": "438c8d1c8cd61df1227e280a2e6114423494a5ab",
"type": "github"
},
"original": {
@ -194,11 +194,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1762359868,
"narHash": "sha256-FKn8KF2UNbxZIQJ09VitZ/16E8toZN4gM+qqljVf45E=",
"lastModified": 1762766112,
"narHash": "sha256-Rir5cR/b9c0q257IW9g1Kjcx4qNb1hJJhPfDJ/lj2pc=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "e828183cf33679f67da737218bb7a3b5ab89a5dd",
"rev": "66d20d181a2f42ad4878e8557ae8bdd2ba9482c4",
"type": "github"
},
"original": {
@ -217,11 +217,11 @@
]
},
"locked": {
"lastModified": 1762359868,
"narHash": "sha256-FKn8KF2UNbxZIQJ09VitZ/16E8toZN4gM+qqljVf45E=",
"lastModified": 1762763403,
"narHash": "sha256-O7DYpoDsRjWEdn2bBP0m6as8br/fqZnxjIUqIsxb3Fc=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "e828183cf33679f67da737218bb7a3b5ab89a5dd",
"rev": "722ba5c4d7b5fcaed65b18b25f7f572fc4236791",
"type": "github"
},
"original": {
@ -286,11 +286,11 @@
]
},
"locked": {
"lastModified": 1762040540,
"narHash": "sha256-z5PlZ47j50VNF3R+IMS9LmzI5fYRGY/Z5O5tol1c9I4=",
"lastModified": 1762440070,
"narHash": "sha256-xxdepIcb39UJ94+YydGP221rjnpkDZUlykKuF54PsqI=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "0010412d62a25d959151790968765a70c436598b",
"rev": "26d05891e14c88eb4a5d5bee659c0db5afb609d8",
"type": "github"
},
"original": {
@ -364,11 +364,11 @@
"nixpkgs-lib": "nixpkgs-lib_2"
},
"locked": {
"lastModified": 1762040540,
"narHash": "sha256-z5PlZ47j50VNF3R+IMS9LmzI5fYRGY/Z5O5tol1c9I4=",
"lastModified": 1762440070,
"narHash": "sha256-xxdepIcb39UJ94+YydGP221rjnpkDZUlykKuF54PsqI=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "0010412d62a25d959151790968765a70c436598b",
"rev": "26d05891e14c88eb4a5d5bee659c0db5afb609d8",
"type": "github"
},
"original": {
@ -385,11 +385,11 @@
]
},
"locked": {
"lastModified": 1762040540,
"narHash": "sha256-z5PlZ47j50VNF3R+IMS9LmzI5fYRGY/Z5O5tol1c9I4=",
"lastModified": 1762440070,
"narHash": "sha256-xxdepIcb39UJ94+YydGP221rjnpkDZUlykKuF54PsqI=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "0010412d62a25d959151790968765a70c436598b",
"rev": "26d05891e14c88eb4a5d5bee659c0db5afb609d8",
"type": "github"
},
"original": {
@ -559,17 +559,15 @@
},
"helix": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"nixpkgs": "nixpkgs_3",
"rust-overlay": "rust-overlay_2"
},
"locked": {
"lastModified": 1762352939,
"narHash": "sha256-yYFrlLL3UCyWfZOMnoAtUzS3BB8gk2KpEnl0vHQvkfM=",
"lastModified": 1762716787,
"narHash": "sha256-YfcY28igFL5ZPCTtVBaVUvnhcWg8tyiBVSlULpXEIeQ=",
"owner": "helix-editor",
"repo": "helix",
"rev": "3f4a286c8dc586d3261bfba3cb2ec3fad5c36efe",
"rev": "a79292b630ae4a0e6e37814ad21411ab50926c73",
"type": "github"
},
"original": {
@ -587,11 +585,11 @@
]
},
"locked": {
"lastModified": 1762146130,
"narHash": "sha256-/XOEA0a61fZ45i/BpaSsyLNNbw/yKwjMbkB/IWSGLzU=",
"lastModified": 1762661401,
"narHash": "sha256-SVmijc8t23UMwru5f/9X1Ak5bSwvYkm0OQ5SxR7hOB0=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "b5ed4afc2277339bdf0e9edf59befff7350cf075",
"rev": "c053d701d64f0727f62e0269c7940da5805bc9bc",
"type": "github"
},
"original": {
@ -607,11 +605,11 @@
]
},
"locked": {
"lastModified": 1762463325,
"narHash": "sha256-33YUsWpPyeBZEWrKQ2a1gkRZ7i0XCC/2MYpU6BVeQSU=",
"lastModified": 1762721397,
"narHash": "sha256-E428EuouA4nFTNlLuqlL4lVR78X+EbBIqDqsBFnB79w=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "0562fef070a1027325dd4ea10813d64d2c967b39",
"rev": "b8645b18b0f5374127bbade6de7381ef0b3d5720",
"type": "github"
},
"original": {
@ -622,11 +620,11 @@
},
"import-tree": {
"locked": {
"lastModified": 1761120675,
"narHash": "sha256-TEbh9zISiQcU82VwVoEbmXHnSGlUxTwvjJA9g9ErSDA=",
"lastModified": 1762327901,
"narHash": "sha256-AJ96FNj50DU0bTyIzAPkPOjCZTHqjURVjok8qoXvmqM=",
"owner": "vic",
"repo": "import-tree",
"rev": "a037ed2a58fc0ebed9e93b9ef79b0646e648f719",
"rev": "90fa129798be99cde036b78658e89475710966a1",
"type": "github"
},
"original": {
@ -672,11 +670,11 @@
]
},
"locked": {
"lastModified": 1761748321,
"narHash": "sha256-hD5mVzmUeyVppjArdy2uVdQe/CQUR9i3WgZB05onE7A=",
"lastModified": 1762452596,
"narHash": "sha256-Iaga+mkwWnWa6FxsAYknpHzeP344VCKGkdudX420LgA=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "533db5857c9e00ca352558a928417116ee08a824",
"rev": "99919fd35e70c1b18ce948d5329928d751031312",
"type": "github"
},
"original": {
@ -690,7 +688,7 @@
"crane": "crane",
"flake-compat": "flake-compat_2",
"flake-parts": "flake-parts_3",
"nixpkgs": "nixpkgs_3",
"nixpkgs": "nixpkgs_4",
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
"rust-overlay": "rust-overlay_3"
},
@ -752,14 +750,14 @@
"inputs": {
"flake-parts": "flake-parts_4",
"neovim-src": "neovim-src",
"nixpkgs": "nixpkgs_4"
"nixpkgs": "nixpkgs_5"
},
"locked": {
"lastModified": 1762473887,
"narHash": "sha256-4VHnHYQGQ8K+i5slfTwnpyP12hi7mq0V4Wra6EB3k5A=",
"lastModified": 1762733080,
"narHash": "sha256-kgGO0tdvFChcUk3KXHwqrvKfY1Td3i4EehtE2xsch8s=",
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"rev": "52fab1d59b4bc5a4d11a1c7f8cdfb47412ff8572",
"rev": "383208e4ec49f9eb568d25fd9f5efa0625873e59",
"type": "github"
},
"original": {
@ -771,11 +769,11 @@
"neovim-src": {
"flake": false,
"locked": {
"lastModified": 1762421241,
"narHash": "sha256-sRgrLaZ1XOAxAKq0iENJVmVj/X7jhAd99x25+OKbxLc=",
"lastModified": 1762729645,
"narHash": "sha256-QnSYFDWlfQAtPWLtOY7Ab3SipYC5l27eCCJKX0i8jkY=",
"owner": "neovim",
"repo": "neovim",
"rev": "f2bfde9140ca646db3e2b67b97b1e54b70408703",
"rev": "76fdd9b882489b233ca00a0809d719c70e48b164",
"type": "github"
},
"original": {
@ -796,11 +794,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1762492910,
"narHash": "sha256-XFsC9zakODOSU15VUvz61SI7EBR0WkMQJ+HU8OeVhdI=",
"lastModified": 1762752888,
"narHash": "sha256-46uhRb9nooRZATUb2dya58MPzn6i/o1XFWvslW+AUMo=",
"owner": "sodiboo",
"repo": "niri-flake",
"rev": "ba50ee8656c5808cb945d08a3858cde049fa77f8",
"rev": "fbe8bfd6050d7c3acc795095ba97643cb7b4b475",
"type": "github"
},
"original": {
@ -829,11 +827,11 @@
"niri-unstable": {
"flake": false,
"locked": {
"lastModified": 1762146685,
"narHash": "sha256-anRlNG6t7esBbF1+ALDeathVBSclA0PEL52Vo0WnN5g=",
"lastModified": 1762492604,
"narHash": "sha256-cjXYF5+gGaapr6d1Jz70GZQVzK4qzwDUwU86p9+H2mM=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "a2ca2b3c866bc781b12c334a9f949b3db6d7c943",
"rev": "2144f9a6ae7b675213f9bd86d0989c334baa1c00",
"type": "github"
},
"original": {
@ -852,11 +850,11 @@
"systems": "systems_3"
},
"locked": {
"lastModified": 1762418669,
"narHash": "sha256-y80u5pGLXbhD72il0s/x9IwIzIlCoTyCmBKLROs8Rbw=",
"lastModified": 1762769782,
"narHash": "sha256-wNOnbHeEfvXaesvQofkHKgfmZOFHSG65dIfmpRK5E3I=",
"owner": "marienz",
"repo": "nix-doom-emacs-unstraightened",
"rev": "6a76389b304a33d05c28999cadfcb90c944b85c8",
"rev": "c7fd9e387155b5f59de591d473bbcc58b56ab369",
"type": "github"
},
"original": {
@ -868,14 +866,14 @@
"nix-gaming": {
"inputs": {
"flake-parts": "flake-parts_5",
"nixpkgs": "nixpkgs_5"
"nixpkgs": "nixpkgs_6"
},
"locked": {
"lastModified": 1762480511,
"narHash": "sha256-NIFQhQG7quJiysxPNP7k/3rRMaRKSL2x8qR8jjvk6yk=",
"lastModified": 1762740007,
"narHash": "sha256-CtMgV9vfm16x/0NBQmQQe/Vbv423cPWeNfBtiVYcUBk=",
"owner": "fufexan",
"repo": "nix-gaming",
"rev": "cf716e9b2f0fda1b1809156121037f646815eb26",
"rev": "8dce0b23e30b03efbdc94e8db7cb27298446e4cc",
"type": "github"
},
"original": {
@ -918,11 +916,11 @@
]
},
"locked": {
"lastModified": 1759653262,
"narHash": "sha256-uTiQXY/ZlplEq1j2jH0k6oDzldid0xHgnLsLQyRRbvk=",
"lastModified": 1762651903,
"narHash": "sha256-2gdNl8glUCVf8EBmITIgEavrHT8bWshA8FgV4Ci5LAc=",
"owner": "nix-community",
"repo": "nix4nvchad",
"rev": "9d91858966b5d4e87ee52e16993988dfea9b0f94",
"rev": "b671afe8a4974ad70c32de470bc98f8ccea36396",
"type": "github"
},
"original": {
@ -949,11 +947,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1762111121,
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
"lastModified": 1762596750,
"narHash": "sha256-rXXuz51Bq7DHBlfIjN7jO8Bu3du5TV+3DSADBX7/9YQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
"rev": "b6a8526db03f735b89dd5ff348f53f752e7ddc8e",
"type": "github"
},
"original": {
@ -1011,11 +1009,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1762233356,
"narHash": "sha256-cGS3lLTYusbEP/IJIWGgnkzIl+FA5xDvtiHyjalGr4k=",
"lastModified": 1762498405,
"narHash": "sha256-Zg/SCgCaAioc0/SVZQJxuECGPJy+OAeBcGeA5okdYDc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ca534a76c4afb2bdc07b681dbc11b453bab21af8",
"rev": "6faeb062ee4cf4f105989d490831713cc5a43ee1",
"type": "github"
},
"original": {
@ -1027,11 +1025,11 @@
},
"nixpkgs-stable_2": {
"locked": {
"lastModified": 1762233356,
"narHash": "sha256-cGS3lLTYusbEP/IJIWGgnkzIl+FA5xDvtiHyjalGr4k=",
"lastModified": 1762498405,
"narHash": "sha256-Zg/SCgCaAioc0/SVZQJxuECGPJy+OAeBcGeA5okdYDc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ca534a76c4afb2bdc07b681dbc11b453bab21af8",
"rev": "6faeb062ee4cf4f105989d490831713cc5a43ee1",
"type": "github"
},
"original": {
@ -1041,119 +1039,7 @@
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1762111121,
"narHash": "sha256-4vhDuZ7OZaZmKKrnDpxLZZpGIJvAeMtK6FKLJYUtAdw=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b3d51a0365f6695e7dd5cdf3e180604530ed33b4",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1754243818,
"narHash": "sha256-sEPw2W01UPf0xNGnMGNZIaE1XHkk7O+lLLetYEXVZHk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c460617dfb709a67d18bb31e15e455390ee4ee1c",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable-small",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1762361079,
"narHash": "sha256-lz718rr1BDpZBYk7+G8cE6wee3PiBUpn8aomG/vLLiY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ffcdcf99d65c61956d882df249a9be53e5902ea5",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_5": {
"locked": {
"lastModified": 1761880412,
"narHash": "sha256-QoJjGd4NstnyOG4mm4KXF+weBzA2AH/7gn1Pmpfcb0A=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "a7fc11be66bdfb5cdde611ee5ce381c183da8386",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1762363567,
"narHash": "sha256-YRqMDEtSMbitIMj+JLpheSz0pwEr0Rmy5mC7myl17xs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ae814fd3904b621d8ab97418f1d0f2eb0d3716f4",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_7": {
"locked": {
"lastModified": 1762156382,
"narHash": "sha256-Yg7Ag7ov5+36jEFC1DaZh/12SEXo6OO3/8rqADRxiqs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7241bcbb4f099a66aafca120d37c65e8dda32717",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": {
"lastModified": 1762363567,
"narHash": "sha256-YRqMDEtSMbitIMj+JLpheSz0pwEr0Rmy5mC7myl17xs=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "ae814fd3904b621d8ab97418f1d0f2eb0d3716f4",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_9": {
"nixpkgs_10": {
"locked": {
"lastModified": 1761236834,
"narHash": "sha256-+pthv6hrL5VLW2UqPdISGuLiUZ6SnAXdd2DdUE+fV2Q=",
@ -1169,19 +1055,147 @@
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1762596750,
"narHash": "sha256-rXXuz51Bq7DHBlfIjN7jO8Bu3du5TV+3DSADBX7/9YQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b6a8526db03f735b89dd5ff348f53f752e7ddc8e",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1762596750,
"narHash": "sha256-rXXuz51Bq7DHBlfIjN7jO8Bu3du5TV+3DSADBX7/9YQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b6a8526db03f735b89dd5ff348f53f752e7ddc8e",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1754243818,
"narHash": "sha256-sEPw2W01UPf0xNGnMGNZIaE1XHkk7O+lLLetYEXVZHk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "c460617dfb709a67d18bb31e15e455390ee4ee1c",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable-small",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_5": {
"locked": {
"lastModified": 1762482733,
"narHash": "sha256-g/da4FzvckvbiZT075Sb1/YDNDr+tGQgh4N8i5ceYMg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e1ebeec86b771e9d387dd02d82ffdc77ac753abc",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1762361079,
"narHash": "sha256-lz718rr1BDpZBYk7+G8cE6wee3PiBUpn8aomG/vLLiY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ffcdcf99d65c61956d882df249a9be53e5902ea5",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_7": {
"locked": {
"lastModified": 1762596750,
"narHash": "sha256-rXXuz51Bq7DHBlfIjN7jO8Bu3du5TV+3DSADBX7/9YQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b6a8526db03f735b89dd5ff348f53f752e7ddc8e",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": {
"lastModified": 1762482733,
"narHash": "sha256-g/da4FzvckvbiZT075Sb1/YDNDr+tGQgh4N8i5ceYMg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e1ebeec86b771e9d387dd02d82ffdc77ac753abc",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_9": {
"locked": {
"lastModified": 1762596750,
"narHash": "sha256-rXXuz51Bq7DHBlfIjN7jO8Bu3du5TV+3DSADBX7/9YQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b6a8526db03f735b89dd5ff348f53f752e7ddc8e",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixvim": {
"inputs": {
"flake-parts": "flake-parts_6",
"nixpkgs": "nixpkgs_7",
"nixpkgs": "nixpkgs_8",
"nuschtosSearch": "nuschtosSearch",
"systems": "systems_6"
},
"locked": {
"lastModified": 1762473729,
"narHash": "sha256-0mKCvL4MUuraS3dVFgRETOM96t0n68J851gZ0HK8U1k=",
"lastModified": 1762691346,
"narHash": "sha256-dyYnqvYrgViB22inBqNern/XSWtOiweP8NTfJQJeTis=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "f0dceb449af35c83a0e2bf23c71f50fc61aff42f",
"rev": "faf1fb4b7cd069ce44469e45c3259b7bcf106f81",
"type": "github"
},
"original": {
@ -1190,17 +1204,41 @@
"type": "github"
}
},
"noctalia": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"quickshell": [
"quickshell"
],
"systems": "systems_7"
},
"locked": {
"lastModified": 1762823933,
"narHash": "sha256-1/WhEHJCYxXOh+fHL3izqir0h9rAn+V3zfnS+kGiMyk=",
"owner": "noctalia-dev",
"repo": "noctalia-shell",
"rev": "d59299798fe8298ad5d0467c9096a6b1ee2d6133",
"type": "github"
},
"original": {
"owner": "noctalia-dev",
"repo": "noctalia-shell",
"type": "github"
}
},
"nur": {
"inputs": {
"flake-parts": "flake-parts_7",
"nixpkgs": "nixpkgs_8"
"nixpkgs": "nixpkgs_9"
},
"locked": {
"lastModified": 1762490224,
"narHash": "sha256-2wsVxoPC2T3d7FMd0oPtdoxe5YM+KUdC28AswkwXAaI=",
"lastModified": 1762770405,
"narHash": "sha256-HJo5R+/+LOhALb8PF16YaR983+HscBgMAJKUaVfNhik=",
"owner": "nix-community",
"repo": "NUR",
"rev": "4318ccbc77e8db38d8c81bbbb0215962091a4e0e",
"rev": "552b8fe95b4befc7078b9d6c971b65989657c158",
"type": "github"
},
"original": {
@ -1299,6 +1337,26 @@
"type": "github"
}
},
"quickshell": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1761897390,
"narHash": "sha256-er4gYrIoThYLjlsOMTysoRfn67d1Gci+ZpqDrtQxrA0=",
"owner": "outfoxxed",
"repo": "quickshell",
"rev": "fc704e6b5d445899a1565955268c91942a4f263f",
"type": "github"
},
"original": {
"owner": "outfoxxed",
"repo": "quickshell",
"type": "github"
}
},
"root": {
"inputs": {
"betterfox-nix": "betterfox-nix",
@ -1318,11 +1376,13 @@
"nix-gaming": "nix-gaming",
"nix4nvchad": "nix4nvchad",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_6",
"nixpkgs": "nixpkgs_7",
"nixpkgs-455083": "nixpkgs-455083",
"nixvim": "nixvim",
"noctalia": "noctalia",
"nur": "nur",
"nvchad-starter": "nvchad-starter",
"quickshell": "quickshell",
"sops-nix": "sops-nix",
"spacemacs": "spacemacs",
"stylix": "stylix",
@ -1337,11 +1397,11 @@
]
},
"locked": {
"lastModified": 1762137611,
"narHash": "sha256-sTqb10FR/YQCuGbw16qxliX0NFlYg6evSEjN8w+9IYE=",
"lastModified": 1762655942,
"narHash": "sha256-hOM12KcQNQALrhB9w6KJmV5hPpm3GA763HRe9o7JUiI=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "3a0ebe5d2965692f990cb27e62f501ad35e3deeb",
"rev": "6ac961b02d4235572692241e333d0470637f5492",
"type": "github"
},
"original": {
@ -1399,11 +1459,11 @@
]
},
"locked": {
"lastModified": 1760998189,
"narHash": "sha256-ee2e1/AeGL5X8oy/HXsZQvZnae6XfEVdstGopKucYLY=",
"lastModified": 1762659808,
"narHash": "sha256-2Kv2mANf+FRisqhpfeZ8j9firBxb23ZvEXwdcunbpGI=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "5a7d18b5c55642df5c432aadb757140edfeb70b3",
"rev": "524312bc62e3f34bd9231a2f66622663d3355133",
"type": "github"
},
"original": {
@ -1415,11 +1475,11 @@
"spacemacs": {
"flake": false,
"locked": {
"lastModified": 1762463183,
"narHash": "sha256-yX7Y447SV3ww5QciuUlaGFZEj5yEhZyOoYFa0rdKw3A=",
"lastModified": 1762718507,
"narHash": "sha256-lSVUv72H0OzK36JRiYS7+unR0TWgr8ftqhpXW44GszE=",
"owner": "syl20bnr",
"repo": "spacemacs",
"rev": "3b82bf591e735d5ad31467fae55eb85585f6aba3",
"rev": "6043d1a231f6b07c7029b28a3e2e791ff881ad3e",
"type": "github"
},
"original": {
@ -1443,7 +1503,7 @@
"nixpkgs"
],
"nur": "nur_2",
"systems": "systems_7",
"systems": "systems_8",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
"tinted-schemes": "tinted-schemes",
@ -1569,6 +1629,21 @@
"type": "github"
}
},
"systems_8": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"tinted-foot": {
"flake": false,
"locked": {
@ -1652,7 +1727,7 @@
},
"treefmt-nix": {
"inputs": {
"nixpkgs": "nixpkgs_9"
"nixpkgs": "nixpkgs_10"
},
"locked": {
"lastModified": 1762410071,
@ -1688,11 +1763,11 @@
"xwayland-satellite-unstable": {
"flake": false,
"locked": {
"lastModified": 1762488100,
"narHash": "sha256-pD8YqwP0/irHWzJtVElnVljR+OaJPAVbJBwqix+uB5A=",
"lastModified": 1762747449,
"narHash": "sha256-Z1TKiux8K09a93w4PFDFsj8HFugXNy3iCC3Z8MpR5Rk=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "3cd3edffe1be197326e9314816b16bb4e3d685b1",
"rev": "6338574bc5c036487486acde264f38f39ea15fad",
"type": "github"
},
"original": {

View file

@ -65,9 +65,6 @@
owner = "helix-editor";
repo = "helix";
ref = "master";
inputs = {
nixpkgs.follows = "nixpkgs";
};
};
home-manager = {
@ -228,5 +225,21 @@
owner = "fufexan";
repo = "nix-gaming";
};
quickshell = {
type = "github";
owner = "outfoxxed";
repo = "quickshell";
inputs.nixpkgs.follows = "nixpkgs";
};
noctalia = {
type = "github";
owner = "noctalia-dev";
repo = "noctalia-shell";
inputs = {
nixpkgs.follows = "nixpkgs";
quickshell.follows = "quickshell";
};
};
};
}

File diff suppressed because it is too large Load diff

View file

@ -22,6 +22,22 @@ in {
config = lib.mkOption {
type = inputs.niri-flake.lib.kdl.types.kdl-document;
};
configHelper = lib.mkOption {
type = lib.types.anything;
default = {
validated-config-for = configuration:
pkgs.runCommand "config.kdl" {
inherit configuration;
passAsFile = ["configuration"];
buildInputs = [config.programs.niri.package];
}
#bash
''
niri validate -c $configurationPath
cp $configurationPath $out
'';
};
};
wluma.extraSettings = lib.mkOption {
inherit (options.david.programs.wluma.extraSettings) type;
};
@ -45,9 +61,9 @@ in {
config = lib.mkMerge [
(lib.mkIf cfg.enable {
home.packages = with pkgs; [
swaynotificationcenter
# swaynotificationcenter
wl-clipboard
cliphist
# cliphist
swayimg
seahorse
];
@ -65,22 +81,29 @@ in {
};
};
david.programs = {
fuzzel.enable = true;
waybar = {
enable = true;
inherit (cfg.waybar) settings;
};
wluma = {
enable = true;
inherit (cfg.wluma) extraSettings;
};
swaync.enable = true;
swaylock.enable = true;
waypaper.enable = true;
# fuzzel.enable = true;
# waybar = {
# enable = true;
# inherit (cfg.waybar) settings;
# };
# wluma = {
# enable = true;
# inherit (cfg.wluma) extraSettings;
# };
# swaync.enable = true;
# swaylock.enable = true;
# waypaper.enable = true;
kanshi.enable = true;
noctalia.enable = true;
};
programs.niri = {
inherit (cfg) config;
programs = {
niri = {
config =
cfg.config
++ [
(inputs.niri-flake.lib.kdl.leaf "include" [(toString config.david.programs.noctalia.niriExtraConfig)])
];
};
};
})
(lib.mkIf (!cfg.enable) {

View file

@ -0,0 +1,208 @@
{
config,
lib,
inputs,
...
}: let
cfg = config.david.programs.noctalia;
inherit (inputs.niri-flake.lib.kdl) node leaf flag plain;
spawn = leaf "spawn";
noctalia = args: (spawn (["noctalia-shell" "ipc" "call"] ++ args));
layer-rule = plain "layer-rule";
match = leaf "match";
in {
options = {
david.programs.noctalia = {
enable = lib.mkEnableOption "noctalia";
niriExtraConfig = lib.mkOption {
type = inputs.niri-flake.lib.kdl.types.kdl-document;
default = [
(plain "binds" [
(plain "Mod+V" [(noctalia ["launcher" "clipboard"])])
(plain "Mod+Shift+P" [(noctalia ["lockScreen" "lock"])])
(plain "Mod+Space" [(noctalia ["launcher" "toggle"])])
(node "XF86AudioRaiseVolume" [{allow-when-locked = true;}]
[(noctalia ["volume" "increase"])])
(node "XF86AudioLowerVolume" [{allow-when-locked = true;}]
[(noctalia ["volume" "decrease"])])
(node "XF86AudioMute" [{allow-when-locked = true;}]
[(noctalia ["volume" "muteOutput"])])
(node "XF86AudioMicMute" [{allow-when-locked = true;}]
[(noctalia ["volume" "muteInput"])])
])
(layer-rule [
(match [{namespace = "^noctalia-wallpaper-.*$";}])
(leaf "place-within-backdrop" [true])
])
(layer-rule [
(match [{namespace = "^noctalia-notifications-.*$";}])
(leaf "block-out-from" ["screen-capture"])
])
];
apply = configuration: config.david.programs.niri.configHelper.validated-config-for (inputs.niri-flake.lib.kdl.serialize.nodes configuration);
};
};
};
config = lib.mkIf cfg.enable {
programs.noctalia-shell = {
enable = true;
systemd.enable = true;
settings = {
settingsVersion = 21;
appLauncher = {
enableClipboardHistory = true;
position = "center";
sortByMostUsed = true;
terminalCommand = "ghostty -e";
};
audio = {
volumeStep = 1;
volumeOverdrive = true;
cavaFrameRate = 165;
visualizerQuality = "high";
visualizerType = "mirrored";
};
bar = {
density = "comfortable";
exclusive = true;
floating = false;
outerCorners = true;
position = "right";
showCapsule = true;
widgets = {
center = [
{id = "Taskbar";}
{
id = "Workspace";
hideUnoccupied = true;
}
];
left = [
{id = "SystemMonitor";}
{
id = "MediaMini";
hideWhenIdle = false;
hideMode = "hidden";
showAlbumArt = true;
}
{
id = "AudioVisualizer";
hideWhenIdle = true;
}
];
right = [
{id = "WallpaperSelector";}
{id = "ScreenRecorder";}
{id = "Brightness";}
{id = "DarkMode";}
{id = "NotificationHistory";}
{id = "Volume";}
{
id = "Tray";
drawerEnabled = true;
favorites = [
"Fcitx"
];
}
{id = "Clock";}
];
};
};
brightness = {
brightnessStep = 1;
enableDdcSupport = true;
enforceMinimum = true;
};
colorSchemes = {
generateTemplatesForPredefined = false;
predefineScheme = "Catppuccin";
schedulingMode = "location";
useWallpaperColors = false;
darkMode = false;
};
controlCenter = {
cards = [
{
enabled = true;
id = "profile-card";
}
{
enabled = true;
id = "shortcuts-card";
}
{
enabled = true;
id = "audio-card";
}
{
enabled = true;
id = "weather-card";
}
{
enabled = true;
id = "media-sysmon-card";
}
];
position = "close_to_bar_button";
shortcuts = {
left = [{id = "Bluetooth";} {id = "WallpaperSelector";}];
right = [{id = "KeepAwake";} {id = "NightLight";}];
};
};
dock = {
enabled = false;
};
general = {
animationSpeed = 2;
avatarImage = "${config.home.homeDirectory}/.face";
compactLockScreen = false;
dimDesktop = false;
enableShadows = true;
forceBlackScreenCorners = false;
language = "zh-CN";
lockOnSuspend = true;
showScreenCorners = false;
};
location = {
firstDayOfWeek = 1;
showCalendarEvents = true;
showCalendarWeather = true;
weatherEnabled = true;
};
network = {
wifiEnabled = false;
};
notifications = {
enabled = true;
location = "bottom_right";
overlayLayer = true;
respectExpireTimeout = true;
};
osd = {
enabled = true;
location = "bottom";
overlayLayer = true;
};
setupCompleted = true;
ui = {
fontDefault = "Source Han Serif SC";
fontFixed = "Maple Mono NF CN";
panelsAttachedToBar = true;
settingsPanelAttachToBar = false;
tooltipsEnabled = true;
};
wallpaper = {
directory = "${config.home.homeDirectory}/wallpaper";
enabled = true;
panelPosition = "center";
randomEnabled = true;
randomIntervalSec = 900;
recursiveSearch = true;
transitionDuration = 1500;
transitionType = "random";
};
};
};
};
}

View file

@ -8,6 +8,7 @@
sops-nix.homeManagerModules.sops
betterfox-nix.homeModules.betterfox
nix4nvchad.homeManagerModule
noctalia.homeModules.default
])
++ lib.youthlic.loadImports ./.;

View file

@ -7,7 +7,7 @@
wallpapers = with lib;
pipe srcs [
(filterAttrs (name: _value: hasPrefix "wallpaper" name))
(concatMapAttrsStringSep "\n" (name: value: "ln -s ${value.src} $out/${name}"))
(concatMapAttrsStringSep "\n" (name: value: "cp ${value.src} $out/${name}"))
];
in
runCommandLocal "wallpapers" {} ''
@ -15,5 +15,5 @@ in
${wallpapers}
ln -s ${rootPath + "/assets/wallpaper/01.png"} $out/01.png
cp ${rootPath + "/assets/wallpaper/01.png"} $out/01.png
''