{
	description = "Nixos config flake";

	inputs = {
	nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
	nixpkgs-stable.url = "github:nixos/nixpkgs/release-24.05";

	home-manager = {
		url = "github:nix-community/home-manager";
		inputs.nixpkgs.follows = "nixpkgs";
	};

	blue-build = {
		url = "github:blue-build/cli";
		inputs.nixpkgs.follows = "nixpkgs";
	};

	niri = {
		url = "github:sodiboo/niri-flake";
		inputs.nixpkgs.follows = "nixpkgs";
	};

	nixd = {
		url = "github:nix-community/nixd";
	};

	musnix  = {
		url = "github:musnix/musnix";
	};

  apple-fonts = {
    url = "github:Lyndeno/apple-fonts.nix";
  };

  #emacs-overlay = {
  #  url = "github:nix-community/emacs-overlay";
  #};

	#xwayland-satellite-flake = {
	#	url = "github:cspark-development/xwayland-satellite-flake";
	#};

  };

  outputs = { self, nixpkgs, ... }@inputs: {
    nixosConfigurations = { 
      desktop = nixpkgs.lib.nixosSystem {
        specialArgs = {inherit inputs;};
        modules = [
		      inputs.musnix.nixosModules.musnix
		      ./global.nix
          ./configurations/desktop/configuration.nix
        ];
      };
      laptop = nixpkgs.lib.nixosSystem {
        specialArgs = {inherit inputs;};
        modules = [
	        ./global.nix
          ./configurations/laptop/configuration.nix
        ];
      };
    };
  };
}
