{ description = "NixOS Flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05"; home-manager.url = "github:nix-community/home-manager/release-24.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; helix.url = "github:helix-editor/helix/master"; hyprland.url = "github:hyprwm/Hyprland"; utils.url = "github:gytis-ivaskevicius/flake-utils-plus"; zen-browser.url = "github:MarceColl/zen-browser-flake"; }; outputs = { self, nixpkgs, utils, home-manager, helix, hyprland, ... }@inputs: utils.lib.mkFlake { inherit self inputs; channelsConfig.allowUnfree = true; hostDefaults.modules = [ home-manager.nixosModules.home-manager ./config/shared.nix ]; hosts.work.modules = [ { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.jras = import ./home-manager/entrypoints/personal.nix; home-manager.extraSpecialArgs = { inherit inputs; }; } ./hosts/work.nix ]; hosts.tarrel.modules = [ home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.jras = import ./home-manager/entrypoints/personal.nix; home-manager.extraSpecialArgs = { inherit inputs; }; } ./hosts/tarrel.nix ]; }; }