{ description = "My Flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; # Home-manager setup home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; # Hyprland url flake # hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1"; # Gruvbox GRUB theme tartarus-grub = { url = "github:AllJavi/tartarus-grub"; flake = false; }; # Catppuccin-bat gruvbox-bat = { url = "github:molchalin/gruvbox-material-bat"; flake = false; }; # Nix colors for a good and easy rice nix-colors.url = "github:misterio77/nix-colors"; # AGS for awesome widgets ags.url = "github:Aylur/ags"; # Neovim toggleterm plugin by akinsho plugin-terminal = { url = "github:akinsho/toggleterm.nvim"; flake = false; }; }; outputs = { self, nixpkgs, home-manager, ... }@inputs: let system = "x86_64-linux"; pkgs = import inputs.nixpkgs { inherit system; overlays = [ (final: prev: { cliphist = prev.cliphist.overrideAttrs (_old: { src = final.fetchFromGitHub { owner = "sentriz"; repo = "cliphist"; rev = "c49dcd26168f704324d90d23b9381f39c30572bd"; sha256 = "sha256-2mn55DeF8Yxq5jwQAjAcvZAwAg+pZ4BkEitP6S2N0HY="; }; vendorHash = "sha256-M5n7/QWQ5POWE4hSCMa0+GOVhEDCOILYqkSYIGoy/l0="; }); }) ]; }; in { nixosConfigurations = { mynixos = nixpkgs.lib.nixosSystem { inherit system pkgs; specialArgs = { inherit inputs; }; modules = [ ./host home-manager.nixosModules.home-manager { home-manager = { useGlobalPkgs = true; useUserPackages = true; extraSpecialArgs = { inherit inputs; }; users."chris" = import ./home; }; } ]; }; }; }; }