{ description = "My main dotfiles flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; darwin = { url = "github:nix-darwin/nix-darwin/master"; inputs.nixpkgs.follows = "nixpkgs"; }; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; # Shared between darwin and linux zen-browser = { url = "github:0xc000022070/zen-browser-flake"; inputs = { nixpkgs.follows = "nixpkgs"; home-manager.follows = "home-manager"; }; }; # Darwin-only netbird-tui = { url = "git+https://git.rschanz.org/netbird-tui-flake"; inputs.nixpkgs.follows = "nixpkgs"; }; nix-homebrew.url = "github:zhaofengli/nix-homebrew"; homebrew-core = { url = "github:homebrew/homebrew-core"; flake = false; }; homebrew-cask = { url = "github:homebrew/homebrew-cask"; flake = false; }; virby.url = "github:quinneden/virby-nix-darwin"; homebrew-netbird = { url = "github:netbirdio/homebrew-tap"; flake = false; }; homebrew-felixkratz = { url = "github:FelixKratz/homebrew-formulae"; flake = false; }; nixgl = { url = "github:ryan77627/nixGL"; inputs.nixpkgs.follows = "nixpkgs"; }; clipboard-sync = { url = "github:dnut/clipboard-sync"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { nixpkgs, home-manager, ... }@inputs: { darwinConfigurations."RyanMac" = inputs.darwin.lib.darwinSystem { system = "aarch64-darwin"; specialArgs = { inherit inputs; }; modules = [ { nixpkgs.config.allowUnfree = true; nixpkgs.overlays = [ inputs.netbird-tui.overlays.default ]; } inputs.virby.darwinModules.default ./hosts/RyanMac/configuration.nix home-manager.darwinModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.ryan = { imports = [ inputs.zen-browser.homeModules.beta ./users/ryan/common.nix ./users/ryan/darwin.nix ]; }; } ]; }; homeConfigurations."ryan" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux; extraSpecialArgs = { inherit inputs; }; modules = [ { nixpkgs.config.allowUnfree = true; } inputs.zen-browser.homeModules.beta ./users/ryan/common.nix ./users/ryan/linux.nix ./users/ryan/linux/foreign.nix ./users/ryan/linux/guix.nix ]; }; }; }