flakes/flake.nix

65 lines
2.1 KiB
Nix
Raw Normal View History

2021-05-11 14:32:58 +07:00
{
inputs = {
2021-06-04 16:38:41 +07:00
nixpkgs = { url = "github:NixOS/nixpkgs"; };
2021-06-04 13:50:15 +07:00
home-manager = { url = "github:LavaDesu/home-manager/xsession-profilePath"; };
2021-05-11 14:32:58 +07:00
secrets = { url = "github:LavaDesu/flakes-secrets"; };
home-manager.inputs.nixpkgs.follows = "nixpkgs";
2021-05-11 14:32:58 +07:00
};
outputs = inputs: with inputs;
2021-05-13 17:59:46 +07:00
let
2021-06-20 11:41:59 +07:00
revCount = "296773";
2021-06-16 16:08:10 +07:00
base = { config, ... }: {
system = {
configurationRevision = nixpkgs.lib.mkIf (self ? rev) self.rev;
nixos = rec {
version = config.system.nixos.release + versionSuffix;
versionSuffix = ".${nixpkgs.lib.substring 0 8 (nixpkgs.lastModifiedDate or nixpkgs.lastModified or "19700101")}.r${revCount}-${nixpkgs.lib.substring 0 11 (nixpkgs.rev or "dirty")}";
};
};
2021-05-13 17:59:46 +07:00
nix.registry.nixpkgs.flake = nixpkgs;
nixpkgs.overlays = builtins.attrValues overlays;
2021-05-13 17:59:46 +07:00
};
2021-05-26 21:05:59 +07:00
hm-base = {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
};
2021-05-13 17:59:46 +07:00
overlays = {
2021-05-28 08:38:14 +07:00
discord = import ./overlays/discord.nix;
linux = import ./overlays/linux.nix;
2021-05-30 12:34:36 +07:00
material-icons = import ./overlays/material-icons.nix;
2021-06-15 09:59:23 +07:00
mps-youtube = import ./overlays/mps-youtube.nix;
2021-05-13 17:59:46 +07:00
picom = import ./overlays/picom.nix;
polybar = import ./overlays/polybar.nix;
2021-05-28 14:56:53 +07:00
transcrypt = import ./overlays/transcrypt.nix;
2021-05-26 20:48:23 +07:00
winetricks = import ./overlays/winetricks.nix;
2021-05-13 18:22:33 +07:00
wine-osu = import ./overlays/wine-osu.nix;
2021-06-04 16:16:16 +07:00
xinit = import ./overlays/xinit.nix;
2021-05-13 17:59:46 +07:00
};
in
{
nixosConfigurations."winter" = nixpkgs.lib.nixosSystem {
2021-05-13 17:59:46 +07:00
system = "x86_64-linux";
modules = [
base
2021-05-26 21:05:59 +07:00
home-manager.nixosModules.home-manager
hm-base
./hosts/winter
secrets.nixosModules.winter
2021-05-13 17:59:46 +07:00
];
specialArgs = { inherit overlays; };
2021-05-13 17:59:46 +07:00
};
packages.x86_64-linux =
let
pkgs = import nixpkgs {
overlays = builtins.attrValues overlays;
system = "x86_64-linux";
};
in {
inherit (pkgs) linux-lava wine-osu;
};
2021-05-11 14:32:58 +07:00
};
}