nix-config/flake.nix
Donovan Glover f86dafa900
neovim: Use vim-crystal from nixpkgs/master
Nix flakes makes it easy to mix and match packages from any git
repository, which includes being able to use multiple nixpkgs branches.
2023-06-08 16:51:57 -04:00

67 lines
1.5 KiB
Nix

{
outputs = {
self,
nixpkgs,
home-manager,
hyprland,
stylix,
nix-gaming,
crystal-flake,
...
} @ attrs: let
VARIABLES = import ./src/variables.nix;
in {
formatter."${VARIABLES.system}" = nixpkgs.legacyPackages."${VARIABLES.system}".alejandra;
nixosConfigurations."${VARIABLES.hostname}" = nixpkgs.lib.nixosSystem {
system = VARIABLES.system;
specialArgs = attrs;
modules = [
home-manager.nixosModules.home-manager
hyprland.nixosModules.default
stylix.nixosModules.stylix
nix-gaming.nixosModules.pipewireLowLatency
./src/main.nix
];
};
};
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
home-manager = {
url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:hyprwm/Hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
stylix = {
url = "github:danth/stylix";
inputs = {
nixpkgs.follows = "nixpkgs";
home-manager.follows = "home-manager";
};
};
hypr-contrib = {
url = "github:hyprwm/contrib";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-gaming = {
url = "github:fufexan/nix-gaming";
inputs.nixpkgs.follows = "nixpkgs";
};
crystal-flake = {
url = "github:manveru/crystal-flake";
inputs.nixpkgs.follows = "nixpkgs";
};
};
}