use (not working) lib
This commit is contained in:
108
flake.nix
108
flake.nix
@ -42,9 +42,14 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Add my additions to the nixpkgs lib
|
||||||
|
# mylib = nixpkgs.lib.extend (self: super: { my = import ./lib { inherit pkgs inputs; lib = self; }; });
|
||||||
|
mylib = import ./lib { inherit inputs pkgs; lib = nixpkgs.lib; };
|
||||||
|
|
||||||
# The rec expression turns a basic set into a set where self-referencing is possible.
|
# The rec expression turns a basic set into a set where self-referencing is possible.
|
||||||
# It is a shorthand for recursive and allows to use the values defined in this set from its own scope.
|
# It is a shorthand for recursive and allows to use the values defined in this set from its own scope.
|
||||||
in rec {
|
in rec {
|
||||||
|
# inherit lib;
|
||||||
|
|
||||||
# Local shell for NixFlake directory
|
# Local shell for NixFlake directory
|
||||||
devShells."${system}".default = import ./shell.nix { inherit pkgs; };
|
devShells."${system}".default = import ./shell.nix { inherit pkgs; };
|
||||||
@ -54,57 +59,66 @@
|
|||||||
# TODO: Add some sort of lib function to deduplicate the configs (they are mostly the same except for the modules)
|
# TODO: Add some sort of lib function to deduplicate the configs (they are mostly the same except for the modules)
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
|
|
||||||
|
# WIP using lib.my
|
||||||
|
nixinator = mylib.nixos.mkNixosConfig {
|
||||||
|
inherit system;
|
||||||
|
|
||||||
|
hostname = "nixinator";
|
||||||
|
extraModules = [ inputs.musnix.nixosModules.musnix ];
|
||||||
|
homeConfigs = [ mylib.nixos.mkHomeConfig { username = "christoph"; } ];
|
||||||
|
};
|
||||||
|
|
||||||
# We give our configuration a name (the hostname) to choose a configuration when rebuilding.
|
# We give our configuration a name (the hostname) to choose a configuration when rebuilding.
|
||||||
# This makes it easy to add different configurations later (e.g. for a laptop).
|
# This makes it easy to add different configurations later (e.g. for a laptop).
|
||||||
# Usage: sudo nixos-rebuild switch --flake .#nixinator
|
# Usage: sudo nixos-rebuild switch --flake .#nixinator
|
||||||
nixinator = nixpkgs.lib.nixosSystem {
|
# nixinator = nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
# inherit system;
|
||||||
|
#
|
||||||
|
# # Make our inputs available to the configuration.nix (for importing modules)
|
||||||
|
# specialArgs = { inherit inputs; };
|
||||||
|
#
|
||||||
|
# # >> Main NixOS configuration file <<
|
||||||
|
# modules = [
|
||||||
|
# { nixpkgs.pkgs = pkgs; }
|
||||||
|
#
|
||||||
|
# # TODO: Access this over inputs in configuration-nixtop.nix
|
||||||
|
# inputs.musnix.nixosModules.musnix
|
||||||
|
#
|
||||||
|
# ./nixos/configuration.nix
|
||||||
|
# ./nixos/configuration-nixinator.nix
|
||||||
|
#
|
||||||
|
# # HomeManager
|
||||||
|
# home-manager.nixosModules.home-manager
|
||||||
|
# {
|
||||||
|
# home-manager.useGlobalPkgs = true; # Use systems pkgs, disables nixpkgs.* options in home.nix
|
||||||
|
# home-manager.useUserPackages = true; # Enable installing packages through users.christoph.packages to /etc/profiles instead of ~/.nix-profile
|
||||||
|
# home-manager.users.christoph = import ./home/home-christoph.nix;
|
||||||
|
# }
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
|
|
||||||
# Make our inputs available to the configuration.nix (for importing modules)
|
# nixtop = nixpkgs.lib.nixosSystem {
|
||||||
specialArgs = { inherit inputs; };
|
# inherit system;
|
||||||
|
#
|
||||||
# >> Main NixOS configuration file <<
|
# # Make our inputs available to the configuration.nix (for importing modules)
|
||||||
modules = [
|
# specialArgs = { inherit inputs; };
|
||||||
{ nixpkgs.pkgs = pkgs; }
|
#
|
||||||
|
# # >> Main NixOS configuration file <<
|
||||||
# TODO: Access this over inputs in configuration-nixtop.nix
|
# modules = [
|
||||||
inputs.musnix.nixosModules.musnix
|
# { nixpkgs.pkgs = pkgs; }
|
||||||
|
#
|
||||||
./nixos/configuration.nix
|
# ./nixos/configuration.nix
|
||||||
./nixos/configuration-nixinator.nix
|
# ./nixos/configuration-nixtop.nix
|
||||||
|
#
|
||||||
# HomeManager
|
# # HomeManager
|
||||||
home-manager.nixosModules.home-manager
|
# home-manager.nixosModules.home-manager
|
||||||
{
|
# {
|
||||||
home-manager.useGlobalPkgs = true; # Use systems pkgs, disables nixpkgs.* options in home.nix
|
# home-manager.useGlobalPkgs = true; # Use systems pkgs, disables nixpkgs.* options in home.nix
|
||||||
home-manager.useUserPackages = true; # Enable installing packages through users.christoph.packages to /etc/profiles instead of ~/.nix-profile
|
# home-manager.useUserPackages = true; # Enable installing packages through users.christoph.packages
|
||||||
home-manager.users.christoph = import ./home/home.nix;
|
# home-manager.users.christoph = import ./home/home-christoph.nix;
|
||||||
}
|
# }
|
||||||
];
|
# ];
|
||||||
};
|
# };
|
||||||
|
|
||||||
nixtop = nixpkgs.lib.nixosSystem {
|
|
||||||
inherit system;
|
|
||||||
|
|
||||||
# Make our inputs available to the configuration.nix (for importing modules)
|
|
||||||
specialArgs = { inherit inputs; };
|
|
||||||
|
|
||||||
# >> Main NixOS configuration file <<
|
|
||||||
modules = [
|
|
||||||
{ nixpkgs.pkgs = pkgs; }
|
|
||||||
|
|
||||||
./nixos/configuration.nix
|
|
||||||
./nixos/configuration-nixtop.nix
|
|
||||||
|
|
||||||
# HomeManager
|
|
||||||
home-manager.nixosModules.home-manager
|
|
||||||
{
|
|
||||||
home-manager.useGlobalPkgs = true; # Use systems pkgs, disables nixpkgs.* options in home.nix
|
|
||||||
home-manager.useUserPackages = true; # Enable installing packages through users.christoph.packages
|
|
||||||
home-manager.users.christoph = import ./home/home.nix;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user