nixos/flake.nix
2025-06-29 07:24:41 -04:00

77 lines
2.0 KiB
Nix

{
description = "Michael's Nix Config";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-darwin = {
url = "github:LnL7/nix-darwin";
inputs.nixpkgs.follows = "nixpkgs";
};
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
hyprland.url = "github:hyprwm/Hyprland";
hyprland-plugins = {
url = "github:hyprwm/hyprland-plugins";
inputs.hyprland.follows = "hyprland";
};
nix-on-droid = {
url = "github:nix-community/nix-on-droid/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
nixCats = {
url = "github:BirdeeHub/nixCats-nvim";
};
stylix.url = "github:danth/stylix";
};
outputs = inputs @ {
nixpkgs,
nix-darwin,
nix-on-droid,
...
}: {
nixosConfigurations = {
desktop = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {inherit inputs;};
modules = [
./hosts/desktop/configuration.nix
];
};
thinkpad = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {inherit inputs;};
modules = [
./hosts/thinkpad/configuration.nix
];
};
macvm = nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
specialArgs = {inherit inputs;};
modules = [
./hosts/macvm/configuration.nix
];
};
};
darwinConfigurations = {
macbook = nix-darwin.lib.darwinSystem {
specialArgs = {inherit inputs;};
modules = [
./hosts/macbook/configuration.nix
];
};
};
nixOnDroidConfigurations.default = nix-on-droid.lib.nixOnDroidConfiguration {
pkgs = import nixpkgs { system = "aarch64-linux"; };
extraSpecialArgs = {inherit inputs;};
modules = [ ./hosts/android/configuration.nix ];
};
};
}