# SPDX-FileCopyrightText: 2025 Ethan Reece # # SPDX-License-Identifier: MIT { inputs, withSystem, ... }: { imports = [ inputs.home-manager.flakeModules.home-manager ]; # https://nix-community.github.io/home-manager/options.xhtml flake.homeConfigurations = { asahi = withSystem "aarch64-linux" ( { pkgs, ... }: inputs.home-manager.lib.homeManagerConfiguration { inherit pkgs; extraSpecialArgs = { inherit inputs pkgs; }; modules = [ { nixpkgs.overlays = [ inputs.nur.overlays.default ]; } inputs.lix-module.nixosModules.default inputs.sops-nix.homeManagerModules.sops inputs.stylix.homeModules.stylix inputs.catppuccin.homeModules.catppuccin ./home.nix ]; } ); }; perSystem = { config, system, ... }: let pkgs = import inputs.nixpkgs { inherit system; overlays = [ inputs.nur.overlays.default inputs.nixgl.overlays.default ]; }; in { _module.args.pkgs = pkgs; devshells.default = { commands = [ { help = " `home-manager switch` for asahi"; name = "hm-asahi"; command = "${pkgs.home-manager}/bin/home-manager switch --flake .#asahi"; category = " home-manager (Asahi)"; } { help = "󰸨 `home-manager switch` for asahi with backup"; name = "hm-asahi-backup"; command = "${pkgs.home-manager}/bin/home-manager switch --flake .#asahi -b backup"; category = " home-manager (Asahi)"; } { help = "󰘥 show home-manager documentation"; name = "man-home"; command = "${pkgs.man}/bin/man home-configuration.nix"; category = " home-manager"; } ]; packages = [ pkgs.home-manager ]; }; pre-commit.settings.excludes = [ "home-manager/vencord.nix" ]; treefmt.settings.global.excludes = [ "home-manager/vencord.nix" ]; }; }