diff --git a/flake.lock b/flake.lock index 17432e0..87fda8c 100644 --- a/flake.lock +++ b/flake.lock @@ -196,6 +196,22 @@ "type": "github" } }, + "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1717312683, + "narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=", + "owner": "nix-community", + "repo": "flake-compat", + "rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -285,6 +301,27 @@ "type": "github" } }, + "nixos-cosmic": { + "inputs": { + "flake-compat": "flake-compat_2", + "nixpkgs": "nixpkgs", + "nixpkgs-stable": "nixpkgs-stable", + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1730252199, + "narHash": "sha256-Rby/q7Ui77XHWZKNe0fPNVp5s3/mH1Fjh+2WzD9xkeg=", + "owner": "lilyinstarlight", + "repo": "nixos-cosmic", + "rev": "ad9d5f38364a7810112486ee39a84e8b0cc8d754", + "type": "github" + }, + "original": { + "owner": "lilyinstarlight", + "repo": "nixos-cosmic", + "type": "github" + } + }, "nixos-hardware": { "locked": { "lastModified": 1730161780, @@ -302,22 +339,6 @@ } }, "nixpkgs": { - "locked": { - "lastModified": 1730137625, - "narHash": "sha256-9z8oOgFZiaguj+bbi3k4QhAD6JabWrnv7fscC/mt0KE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "64b80bfb316b57cdb8919a9110ef63393d74382a", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixunstable": { "locked": { "lastModified": 1729880355, "narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=", @@ -333,6 +354,22 @@ "type": "github" } }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1730137625, + "narHash": "sha256-9z8oOgFZiaguj+bbi3k4QhAD6JabWrnv7fscC/mt0KE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "64b80bfb316b57cdb8919a9110ef63393d74382a", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-24.05", + "repo": "nixpkgs", + "type": "github" + } + }, "root": { "inputs": { "deploy-rs": "deploy-rs", @@ -342,13 +379,41 @@ "flake-parts": "flake-parts", "home-manager": "home-manager", "impermanence": "impermanence", + "nixos-cosmic": "nixos-cosmic", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs", - "nixunstable": "nixunstable", + "nixpkgs": [ + "nixos-cosmic", + "nixpkgs-stable" + ], + "nixunstable": [ + "nixos-cosmic", + "nixpkgs" + ], "sops-nix": "sops-nix", "stylix": "stylix" } }, + "rust-overlay": { + "inputs": { + "nixpkgs": [ + "nixos-cosmic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1730169013, + "narHash": "sha256-rvgF03ODu1uEYbdEsloN4fQrJ+k1NOv/7MJvCpHHnBk=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "92eb1268cc19609f2fe24311b871f37bf3dc5afd", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "sops-nix": { "inputs": { "nixpkgs": [ diff --git a/flake.nix b/flake.nix index addd72f..08302ba 100644 --- a/flake.nix +++ b/flake.nix @@ -1,8 +1,9 @@ { description = "Chris's system configuration"; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05"; - nixunstable.url = "github:NixOS/nixpkgs/nixos-unstable"; + nixpkgs.follows = "nixos-cosmic/nixpkgs-stable"; + nixunstable.follows = "nixos-cosmic/nixpkgs"; + nixos-cosmic.url = "github:lilyinstarlight/nixos-cosmic"; flake-parts = { url = "github:hercules-ci/flake-parts"; inputs.nixpkgs-lib.follows = "nixpkgs"; diff --git a/nixos-configurations/smolboi.nix b/nixos-configurations/smolboi.nix index d8d192a..5ac1161 100644 --- a/nixos-configurations/smolboi.nix +++ b/nixos-configurations/smolboi.nix @@ -25,6 +25,8 @@ in ezModules.aarch64-emu ezModules.smartd ezModules.plymouth + ezModules.cosmic-modules + ezModules.cosmic-packages ]; boot = { diff --git a/nixos-modules/cosmic-modules.nix b/nixos-modules/cosmic-modules.nix new file mode 100644 index 0000000..458f813 --- /dev/null +++ b/nixos-modules/cosmic-modules.nix @@ -0,0 +1,8 @@ +{ inputs, ... }: +{ + imports = [ inputs.nixos-cosmic.nixosModules.default ]; + nix.settings = { + substituters = [ "https://cosmic.cachix.org/" ]; + trusted-public-keys = [ "cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE=" ]; + }; +} diff --git a/nixos-modules/cosmic-packages.nix b/nixos-modules/cosmic-packages.nix new file mode 100644 index 0000000..f97893b --- /dev/null +++ b/nixos-modules/cosmic-packages.nix @@ -0,0 +1 @@ +{ services.desktopManager.cosmic.enable = true; }