{ inputs, lib, pkgs, ... }: { age.identityPaths = ["/etc/ssh/ssh_host_ed25519_key"]; home-manager.extraSpecialArgs = {inherit inputs;}; home-manager.sharedModules = [ inputs.agenix.homeManagerModules.default inputs.nix-index-database.homeModules.default ]; home-manager.useGlobalPkgs = true; nix = { optimise.automatic = true; settings = { experimental-features = ["flakes" "nix-command"]; substituters = [ "https://cache.nixos.org/" "https://nix-community.cachix.org" ]; trusted-public-keys = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ]; }; }; nixpkgs.config = { permittedInsecurePackages = [ "pnpm-9.15.9" ]; allowUnfree = true; }; services.openssh.enable = true; services.tailscale.enable = true; programs.zsh.enable = true; programs.fish.enable = true; environment.shells = with pkgs; [ zsh fish ]; nix.settings.trusted-users = ["devin"]; system = lib.optionalAttrs pkgs.stdenv.hostPlatform.isDarwin { primaryUser = "devin"; }; users.users.devin = { home = if pkgs.stdenv.hostPlatform.isDarwin then "/Users/devin" else "/home/devin"; shell = pkgs.zsh; openssh.authorizedKeys.keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILyOJLlmq653uVs/1KdVnaMzi+EolB7EJMJ7AdBxVi6m devin@devins.page"]; } // lib.optionalAttrs pkgs.stdenv.hostPlatform.isLinux { isNormalUser = true; extraGroups = ["networkmanager" "wheel"]; }; }