81 lines
2.8 KiB
Nix
81 lines
2.8 KiB
Nix
{
|
|
description = "System Flake";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOs/nixpkgs/nixos-25.05";
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager/release-25.05";
|
|
# The `follows` keyword in inputs is used for inheritance.
|
|
# Here, `inputs.nixpkgs` of home-manager is kept consistent with
|
|
# the `inputs.nixpkgs` of the current flake,
|
|
# to avoid problems caused by different versions of nixpkgs.
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nix-index-database.url = "github:nix-community/nix-index-database";
|
|
nix-index-database.inputs.nixpkgs.follows = "nixpkgs";
|
|
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
|
|
sops-nix.url = "github:Mic92/sops-nix";
|
|
sops-nix.inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
outputs = { self, nixpkgs, home-manager, nix-index-database, sops-nix, ... }@inputs:
|
|
let
|
|
overlays = [
|
|
inputs.neovim-nightly-overlay.overlays.default
|
|
(final: prev: {
|
|
dosbox-x = prev.dosbox-x.overrideAttrs (old: {
|
|
buildInputs = (old.buildInputs or []) ++ [ prev.libGL prev.glew ];
|
|
configureFlags = (old.configureFlags or []) ++ [
|
|
"--enable-sdl2"
|
|
"--enable-opengl"
|
|
];
|
|
});
|
|
})
|
|
];
|
|
in {
|
|
nixosConfigurations.xps13 = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
specialArgs = { inherit overlays; };
|
|
modules = [
|
|
{ nixpkgs.overlays = overlays; }
|
|
sops-nix.nixosModules.sops
|
|
./configuration.nix
|
|
home-manager.nixosModules.home-manager {
|
|
# home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.sharedModules = [ {nixpkgs.overlays = overlays;} ];
|
|
home-manager.users.th3r00t = {
|
|
imports = [
|
|
./home-xps13.nix
|
|
nix-index-database.homeModules.nix-index
|
|
];
|
|
};
|
|
# home-manager.users.th3r00t = import ./home.nix;
|
|
# Optionally, use home-manager.extraSpecialArgs to pass arguments to home.nix
|
|
}
|
|
];
|
|
};
|
|
nixosConfigurations.xps13 = nixpkgs.lib.nixosSystem {
|
|
system = "x86_64-linux";
|
|
specialArgs = { inherit overlays; };
|
|
modules = [
|
|
{ nixpkgs.overlays = overlays; }
|
|
sops-nix.nixosModules.sops
|
|
./configuration.nix
|
|
home-manager.nixosModules.home-manager {
|
|
# home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.sharedModules = [ {nixpkgs.overlays = overlays;} ];
|
|
home-manager.users.th3r00t = {
|
|
imports = [
|
|
./home-server.nix
|
|
nix-index-database.homeModules.nix-index
|
|
];
|
|
};
|
|
# home-manager.users.th3r00t = import ./home.nix;
|
|
# Optionally, use home-manager.extraSpecialArgs to pass arguments to home.nix
|
|
}
|
|
];
|
|
};
|
|
};
|
|
}
|