# flake.nix { description = "My Home Manager configuration"; inputs = { nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager.url = "github:nix-community/home-manager/release-24.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; nix-flatpak.url = "github:gmodena/nix-flatpak"; # unstable branch. Use github:gmodena/nix-flatpak/?ref= to pin releases. kmonad = { url = "git+https://github.com/kmonad/kmonad?submodules=1&dir=nix"; inputs.nixpkgs.follows = "nixpkgs"; }; musnix = { url = "github:musnix/musnix"; inputs.nixpkgs.follows = "nixpkgs"; }; nixpkgs-wayland = { url = "github:nix-community/nixpkgs-wayland"; inputs.nixpkgs.follows = "nixpkgs"; }; envycontrol = { url = github:bayasdev/envycontrol; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = inputs @ {self, nixpkgs, nixpkgs-stable, home-manager, nix-flatpak, kmonad, musnix, envycontrol, ... }: { nixpkgs.overlays = [ inputs.nixpkgs-wayland.overlay ]; nixosConfigurations = { eddie = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ nix-flatpak.nixosModules.nix-flatpak kmonad.nixosModules.default musnix.nixosModules.musnix ./system/eddie/configuration.nix ]; }; }; homeConfigurations = { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; "emenel" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux; # pkgs = import nixpkgs { # system = "x86_64-linux"; # whatever your system name is # config = { # allowUnfree = true; # allowUnfreePredicate = _: true; # }; # }; extraSpecialArgs = { inherit inputs; }; modules = [ nix-flatpak.homeManagerModules.nix-flatpak ./home/home.nix ]; }; }; }; }