feat: multiple user
This commit is contained in:
parent
2acc8a1e67
commit
35623910b0
|
|
@ -5,7 +5,11 @@ in
|
|||
mkHost {
|
||||
system = "x86_64-linux";
|
||||
hostname = "Arcadia";
|
||||
username = "hare";
|
||||
users = [
|
||||
{
|
||||
username = "hare";
|
||||
homeModule = [ ./hare ];
|
||||
}
|
||||
];
|
||||
systemModules = [ ./nixos.nix ];
|
||||
homeModule = [ ./home-manager.nix ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,19 +8,19 @@
|
|||
home.stateVersion = "25.05";
|
||||
imports = [
|
||||
inputs.nix-index-database.homeModules.nix-index
|
||||
./display.nix
|
||||
../../home-manager/tofi.nix
|
||||
../../home-manager/hyprland
|
||||
../../home-manager/fnott.nix
|
||||
../../home-manager/wezterm
|
||||
../../home-manager/fish
|
||||
../../home-manager/vscode.nix
|
||||
../../home-manager/direnv.nix
|
||||
../../home-manager/firefox.nix
|
||||
../../home-manager/obs-studio.nix
|
||||
../../home-manager/zeditor.nix
|
||||
../../home-manager/blender.nix
|
||||
../../home-manager/voicevox.nix
|
||||
../display.nix
|
||||
../../../home-manager/tofi.nix
|
||||
../../../home-manager/hyprland
|
||||
../../../home-manager/fnott.nix
|
||||
../../../home-manager/wezterm
|
||||
../../../home-manager/fish
|
||||
../../../home-manager/vscode.nix
|
||||
../../../home-manager/direnv.nix
|
||||
../../../home-manager/firefox.nix
|
||||
../../../home-manager/obs-studio.nix
|
||||
../../../home-manager/zeditor.nix
|
||||
../../../home-manager/blender.nix
|
||||
../../../home-manager/voicevox.nix
|
||||
];
|
||||
hare.hyprland = {
|
||||
input.sensitivity = -1.0;
|
||||
|
|
@ -6,5 +6,5 @@ rec {
|
|||
fungus = import ./fungus inputs;
|
||||
};
|
||||
nixos = builtins.mapAttrs (_: host: host.nixos) hosts;
|
||||
home-manager = builtins.mapAttrs (_: host: host.home-manager) hosts;
|
||||
home-manager = builtins.foldl' (a: b: a // b) { } (map (h: h.home-manager) (builtins.attrValues hosts));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,11 @@ in
|
|||
mkHost {
|
||||
system = "x86_64-linux";
|
||||
hostname = "Fungus";
|
||||
username = "hare";
|
||||
users = [
|
||||
{
|
||||
username = "hare";
|
||||
homeModule = [ ./hare ];
|
||||
}
|
||||
];
|
||||
systemModules = [ ./nixos.nix ];
|
||||
homeModule = [ ./home-manager.nix ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,17 +1,16 @@
|
|||
{ conifg, pkgs, ... }:
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
home.stateVersion = "25.05";
|
||||
imports = [
|
||||
../../home-manager/direnv.nix
|
||||
../../home-manager/wezterm
|
||||
../../home-manager/fish
|
||||
];
|
||||
home.packages = with pkgs; [
|
||||
../../../home-manager/direnv.nix
|
||||
../../../home-manager/wezterm
|
||||
../../../home-manager/fish
|
||||
];
|
||||
home.packages = with pkgs; [ ];
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "Hare";
|
||||
userEmail = "kei.hiracchi.0928@gmail.com";
|
||||
settings.user.name = "Hare";
|
||||
settings.user.email = "kei.hiracchi.0928@gmail.com";
|
||||
};
|
||||
|
||||
fonts = {
|
||||
|
|
@ -2,47 +2,56 @@ inputs:
|
|||
{
|
||||
system,
|
||||
hostname,
|
||||
username,
|
||||
users,
|
||||
systemModules,
|
||||
homeModule,
|
||||
}:
|
||||
let
|
||||
pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
in
|
||||
{
|
||||
nixos = inputs.nixpkgs.lib.nixosSystem {
|
||||
modules = systemModules ++ [
|
||||
{
|
||||
users.users.${username} = {
|
||||
isNormalUser = true;
|
||||
description = "";
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
};
|
||||
users.users = builtins.listToAttrs (map (u: {
|
||||
name = u.username;
|
||||
value = {
|
||||
isNormalUser = true;
|
||||
description = "";
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
};
|
||||
}) users);
|
||||
}
|
||||
];
|
||||
inherit system;
|
||||
specialArgs = {
|
||||
inherit inputs hostname username;
|
||||
inherit inputs hostname;
|
||||
username = (builtins.head users).username;
|
||||
};
|
||||
};
|
||||
home-manager = inputs.home-manager.lib.homeManagerConfiguration {
|
||||
pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
home-manager = builtins.listToAttrs (map (u: {
|
||||
name = "${u.username}@${hostname}";
|
||||
value = inputs.home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
extraSpecialArgs = {
|
||||
inherit inputs hostname;
|
||||
username = u.username;
|
||||
};
|
||||
modules = [
|
||||
{
|
||||
home = {
|
||||
username = u.username;
|
||||
homeDirectory = "/home/${u.username}";
|
||||
};
|
||||
programs.home-manager.enable = true;
|
||||
}
|
||||
(import ../system/home-manager)
|
||||
] ++ u.homeModule;
|
||||
};
|
||||
extraSpecialArgs = {
|
||||
inherit inputs hostname username;
|
||||
};
|
||||
modules = [
|
||||
{
|
||||
home = {
|
||||
inherit username;
|
||||
homeDirectory = "/home/${username}";
|
||||
};
|
||||
programs.home-manager.enable = true;
|
||||
}
|
||||
(import ../system/home-manager)
|
||||
]
|
||||
++ homeModule;
|
||||
};
|
||||
}) users);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,11 @@ in
|
|||
mkHost {
|
||||
system = "x86_64-linux";
|
||||
hostname = "x1carbon";
|
||||
username = "hare";
|
||||
users = [
|
||||
{
|
||||
username = "hare";
|
||||
homeModule = [ ./hare ];
|
||||
}
|
||||
];
|
||||
systemModules = [ ./nixos.nix ];
|
||||
homeModule = [ ./home-manager.nix ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,16 +7,16 @@
|
|||
{
|
||||
home.stateVersion = "25.05";
|
||||
imports = [
|
||||
../../home-manager/hyprland
|
||||
../../home-manager/tofi.nix
|
||||
../../home-manager/fnott.nix
|
||||
../../home-manager/direnv.nix
|
||||
../../home-manager/obs-studio.nix
|
||||
../../home-manager/wezterm
|
||||
../../home-manager/fish
|
||||
../../../home-manager/hyprland
|
||||
../../../home-manager/tofi.nix
|
||||
../../../home-manager/fnott.nix
|
||||
../../../home-manager/direnv.nix
|
||||
../../../home-manager/obs-studio.nix
|
||||
../../../home-manager/wezterm
|
||||
../../../home-manager/fish
|
||||
];
|
||||
hare.hyprland = {
|
||||
style = import ../../home-manager/hyprland/styles/thin.nix { inherit lib; };
|
||||
style = import ../../../home-manager/hyprland/styles/thin.nix { inherit lib; };
|
||||
input.sensitivity = -0.6;
|
||||
wallpaperCommand = "swww img /usr/share/wallpaper/";
|
||||
};
|
||||
Loading…
Reference in New Issue
Block a user