nix-dotfiles/flake.nix

73 lines
1.8 KiB
Nix

{
description = "NixOS configuration for Cobray";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
home-manager = {
url = "github:nix-community/home-manager/release-25.05";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-gaming = {
url = "github:fufexan/nix-gaming";
inputs.nixpkgs.follows = "nixpkgs";
};
rpcs3_latest = {
url = "github:RPCS3/rpcs3";
flake = false;
};
};
outputs = {
self,
nixpkgs,
home-manager,
nix-gaming,
rpcs3_latest,
...
} @ inputs: let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
customFontPkgs = import "${self}/pkgs/fonts" {inherit pkgs;};
customPkgs = import "${self}/pkgs" {
inherit pkgs;
lib = nixpkgs.lib;
inherit rpcs3_latest customFontPkgs;
};
in {
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {
inherit inputs customPkgs;
lib = nixpkgs.lib;
};
modules = [
{
nixpkgs.config.allowUnfree = true;
nixpkgs.overlays = [
(final: prev: {
inherit
(customPkgs)
fish-rust
pugixml
SDL3
rpcs3_latest
clear-sans
binary-font
;
})
];
}
./hosts/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = {
inherit inputs customPkgs;
};
users.cobray = import ./home-manager/cobray.nix;
};
}
];
};
};
}