dotfiles/nixcfgs/flake.nix

66 lines
1.7 KiB
Nix

{
description = "A simple NixOS flake";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
nix-flatpak.url = "github:gmodena/nix-flatpak";
nix-darwin = {
url = "github:nix-darwin/nix-darwin/master";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
plasma-manager = {
url = "github:nix-community/plasma-manager";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
};
outputs = {
self,
nixpkgs,
nix-flatpak,
nix-darwin,
home-manager,
plasma-manager,
...
} @ inputs: let
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system};
in {
nixosConfigurations.zp = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
nix-flatpak.nixosModules.nix-flatpak
./hosts/zp.nix
./hardware-configuration.nix
];
};
nixosConfigurations.zephyrus = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./hosts/zephyrus
home-manager.nixosModules.home-manager
{
# nix-flatpak.homeManagerModules.nix-flatpak
home-manager.sharedModules = [plasma-manager.homeModules.plasma-manager nix-flatpak.homeManagerModules.nix-flatpak];
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.js0ny = import ./users/js0ny;
nixpkgs.config.allowUnfree = true;
}
];
};
darwinConfigurations."zen" = nix-darwin.lib.darwinSystem {
system = "aarch64-darwin";
modules = [
./hosts/zen
];
};
};
}