2023-10-13 20:52:26 +02:00
|
|
|
{
|
|
|
|
lib,
|
|
|
|
inputs,
|
|
|
|
nixpkgs,
|
|
|
|
nixpkgs-unstable,
|
|
|
|
home-manager,
|
|
|
|
nur,
|
|
|
|
hyprland,
|
2023-10-14 18:53:32 +02:00
|
|
|
split-monitor-workspaces,
|
2023-10-13 20:52:26 +02:00
|
|
|
vars,
|
|
|
|
...
|
|
|
|
}: let
|
|
|
|
system = "x86_64-linux"; # System Architecture
|
|
|
|
|
|
|
|
pkgs = import nixpkgs {
|
|
|
|
inherit system;
|
|
|
|
config.allowUnfree = true; # Allow Proprietary Software
|
|
|
|
};
|
|
|
|
|
|
|
|
unstable = import nixpkgs-unstable {
|
|
|
|
inherit system;
|
|
|
|
config.allowUnfree = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
lib = nixpkgs.lib;
|
|
|
|
in {
|
|
|
|
desktop = lib.nixosSystem {
|
|
|
|
# Desktop Profile
|
|
|
|
inherit system;
|
|
|
|
specialArgs = {
|
|
|
|
# Pass Flake Variable
|
2023-10-14 18:53:32 +02:00
|
|
|
inherit inputs system unstable hyprland vars split-monitor-workspaces;
|
2023-10-13 20:52:26 +02:00
|
|
|
host = {
|
|
|
|
hostName = "desktop";
|
|
|
|
mainMonitor = "DP-3";
|
|
|
|
secondMonitor = "DP-1";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
modules = [
|
|
|
|
# Modules Used
|
|
|
|
nur.nixosModules.nur
|
2023-10-14 18:53:32 +02:00
|
|
|
hyprland.nixosModules.default
|
2023-10-13 20:52:26 +02:00
|
|
|
./desktop
|
|
|
|
./configuration.nix
|
|
|
|
home-manager.nixosModules.home-manager
|
|
|
|
{
|
|
|
|
# Home-Manager Module
|
|
|
|
home-manager.useGlobalPkgs = true;
|
|
|
|
home-manager.useUserPackages = true;
|
|
|
|
}
|
|
|
|
];
|
|
|
|
};
|
|
|
|
}
|