dot

vizie's NixOS desktop: Hyprland, CachyOS kernel and gaming tweaks

65 lines1789 bytesNix
1{
2 description = "vizie's NixOS desktop: Hyprland, CachyOS kernel and gaming tweaks";
3
4 inputs = {
5 nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
6
7 home-manager = {
8 url = "github:nix-community/home-manager";
9 inputs.nixpkgs.follows = "nixpkgs";
10 };
11
12 # CachyOS kernels, built by the maintainer's CI. Its nixpkgs input is left
13 # alone on purpose: overriding it changes the kernel's hash, so nothing comes
14 # from the binary cache and the kernel compiles locally.
15 nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel/release";
16
17 imsh-clients = {
18 url = "github:echozio/imsh-clients";
19 inputs.nixpkgs.follows = "nixpkgs";
20 };
21
22 # Private repo: fetched with git so the gh credential helper can sign in.
23 philly = {
24 url = "git+https://github.com/Eiziv/philly?ref=master";
25 inputs.nixpkgs.follows = "nixpkgs";
26 };
27 };
28
29 outputs =
30 { self, nixpkgs, ... }@inputs:
31 let
32 system = "x86_64-linux";
33 pkgs = import nixpkgs {
34 inherit system;
35 config.allowUnfree = true;
36 overlays = [ self.overlays.default ];
37 };
38 in
39 {
40 overlays.default = import ./pkgs;
41
42 # The packages this repo adds or patches, so each can be built on its own:
43 # nix build .#waybar
44 packages.${system} = {
45 inherit (pkgs)
46 waybar
47 xembedsniproxy
48 signal-desktop-themed
49 claude-desktop
50 opendeck
51 breezex-cursor
52 proton-cachyos
53 python3-desktop
54 ;
55 };
56
57 nixosConfigurations.desktop = nixpkgs.lib.nixosSystem {
58 inherit system;
59 specialArgs = { inherit inputs; };
60 modules = [ ./hosts/desktop ];
61 };
62
63 formatter.${system} = pkgs.nixfmt;
64 };
65}