nix/flake.nix (view raw)
1{
2 description = "icy's nixos config";
3
4 inputs = {
5 nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
6
7 nixos-hardware.url = "github:nixos/nixos-hardware";
8
9 home-manager = {
10 url = "github:nix-community/home-manager/release-21.11";
11 inputs.nixpkgs.follows = "nixpkgs";
12 };
13
14 neovim.url = "github:nix-community/neovim-nightly-overlay";
15
16 prompt = {
17 url = "git+https://git.peppe.rs/cli/prompt";
18 inputs.nixpkgs.follows = "nixpkgs";
19 };
20 };
21
22 outputs =
23 { self
24 , nixpkgs
25 , nixos-hardware
26 , home-manager
27 , neovim
28 , prompt
29 , ...
30 } @ inputs: {
31
32 overlays = {
33 nvim-nightly = neovim.overlay;
34 prompt = prompt.overlay;
35 };
36
37 nixosConfigurations = {
38 lapis = nixpkgs.lib.nixosSystem {
39 system = "x86_64-linux";
40 modules = [
41 {
42 imports = [ ./hosts/lapis/configuration.nix ];
43 _module.args.self = self;
44 }
45 home-manager.nixosModules.home-manager
46 {
47 home-manager.useGlobalPkgs = true;
48 home-manager.useUserPackages = true;
49 home-manager.users.icy = {
50 imports = [ ./home.nix ];
51 _module.args.self = self;
52 _module.args.inputs = inputs;
53 _module.args.theme = import ./theme.nix;
54 };
55 }
56 ];
57 };
58 };
59 };
60
61}