117 lines
2.8 KiB
Nix
117 lines
2.8 KiB
Nix
{
|
|
description = "nixos config";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
|
|
flake-parts = {
|
|
url = "github:hercules-ci/flake-parts";
|
|
inputs.nixpkgs-lib.follows = "nixpkgs";
|
|
};
|
|
|
|
nur.url = "github:/nix-community/NUR";
|
|
|
|
eww = {
|
|
url = "github:elkowar/eww";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.rust-overlay.follows = "rust-overlay";
|
|
};
|
|
|
|
rust-overlay = {
|
|
url = "github:oxalica/rust-overlay";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.flake-utils.follows = "flake-utils";
|
|
};
|
|
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
|
|
helix = {
|
|
url = "github:helix-editor/helix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
inputs.parts.follows = "flake-parts";
|
|
};
|
|
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
|
|
hyprland.url = "github:hyprwm/Hyprland";
|
|
|
|
declarative-cachix.url = "github:jonascarpay/declarative-cachix";
|
|
};
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
home-manager,
|
|
nur,
|
|
eww,
|
|
helix,
|
|
hyprland,
|
|
...
|
|
} @ inputs: let
|
|
inherit (self) outputs;
|
|
forAllSystems = nixpkgs.lib.genAttrs [
|
|
"x86_64-linux"
|
|
];
|
|
in rec {
|
|
# custom packages
|
|
packages = forAllSystems (
|
|
system: let
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
in
|
|
import ./pkgs {inherit pkgs;}
|
|
);
|
|
|
|
# homepkgs = forAllSystems (system:
|
|
# let pkgs = nixpkgs.legacyPackages.${system};
|
|
# in import ./homepkgs { inherit pkgs; }
|
|
# );
|
|
|
|
# any overlays or modules we use
|
|
overlays = import ./overlay.nix {inherit inputs;};
|
|
# nixosModules = import ./modules/nixos;
|
|
# homeModules = import ./modules/home;
|
|
|
|
nixosConfigurations = {
|
|
"quiver" = nixpkgs.lib.nixosSystem {
|
|
# pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
system = "x86_64-linux";
|
|
specialArgs = {inherit inputs outputs;};
|
|
modules = [
|
|
./system/quiver.nix
|
|
];
|
|
};
|
|
|
|
"adrift" = nixpkgs.lib.nixosSystem {
|
|
# pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
system = "x86_64-linux";
|
|
specialArgs = {inherit inputs outputs;};
|
|
modules = [
|
|
./system/adrift.nix
|
|
];
|
|
};
|
|
};
|
|
|
|
homeConfigurations = {
|
|
"bolt@quiver" = home-manager.lib.homeManagerConfiguration {
|
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
extraSpecialArgs = {inherit inputs outputs;};
|
|
modules = [
|
|
nur.nixosModules.nur
|
|
./home/bolt.nix
|
|
];
|
|
};
|
|
|
|
"plank@adrift" = home-manager.lib.homeManagerConfiguration {
|
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
extraSpecialArgs = {inherit inputs outputs;};
|
|
modules = [
|
|
nur.nixosModules.nur
|
|
./home/plank.nix
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|