Add initial testfiles for home manager

This commit is contained in:
Martin Larsson 2025-01-16 09:08:32 +00:00
parent 82e391c872
commit 24186358fa
4 changed files with 126 additions and 0 deletions

62
flake.nix Normal file
View file

@ -0,0 +1,62 @@
{
description = "LarssonMartin1998's dotfiles configured with Home Manager";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { nixpkgs, home-manager, ... }:
let
lib = nixpkgs.lib;
# supportedSystems = [
# "x86_64-linux"
# "aarch64-linux"
# "aarch64-darwin"
# ];
makeHomeConfig = {
name,
system,
extraModules ? []
}:
home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs { inherit system; };
modules = [
./nix/home.nix
./nix/local_machine.nix
]
++ extraModules
++ lib.optional (builtins.match ".*-darwin$" system != null) ./nix/darwin.nix
++ lib.optional (builtins.match ".*-linux$" system != null) ./nix/linux.nix;
};
in {
homeConfigurations = {
"wsl" = makeHomeConfig {
name = "wsl";
system = "x86_64-linux";
extraModules = [ ./nix/wsl.nix ];
};
"linux-x86" = makeHomeConfig {
name = "linux-x86";
system = "x86_64-linux";
};
"linux-aarch64" = makeHomeConfig {
name = "linux-aarch64";
system = "aarch64-linux";
};
"darwin-aarch64" = makeHomeConfig {
name = "darwin-aarch64";
system = "aarch64-darwin";
};
};
};
}