moved user config back into user file from home file

This commit is contained in:
Leyla Becker 2024-10-04 01:51:38 +02:00
parent ce2f59a386
commit 60fba00be9
13 changed files with 71 additions and 50 deletions

View file

@ -14,9 +14,11 @@
../../enviroments/server ../../enviroments/server
]; ];
home-manager.users.leyla.config = { nixos.users = {
leyla = {
isTerminalUser = true; isTerminalUser = true;
}; };
};
boot.loader.grub = { boot.loader.grub = {
enable = true; enable = true;

View file

@ -14,14 +14,14 @@
../../enviroments/client ../../enviroments/client
]; ];
home-manager.users = { nixos.users = {
leyla.config = { leyla = {
isDesktopUser = true; isDesktopUser = true;
}; };
ester.config = { ester = {
isDesktopUser = true; isDesktopUser = true;
}; };
eve.config = { eve = {
isDesktopUser = true; isDesktopUser = true;
}; };
}; };

View file

@ -13,16 +13,15 @@
../../enviroments/client ../../enviroments/client
]; ];
nixos.users = {
home-manager.users = { leyla = {
leyla.config = {
isDesktopUser = true; isDesktopUser = true;
hasGPU = true; hasGPU = true;
}; };
ester.config = { ester = {
isDesktopUser = true; isDesktopUser = true;
}; };
eve.config = { eve = {
isDesktopUser = true; isDesktopUser = true;
}; };
}; };

View file

@ -1,7 +1,14 @@
{inputs, ...}: { {
lib,
config,
...
}: {
imports = [./leyla ./ester ./eve]; imports = [./leyla ./ester ./eve];
users.mutableUsers = false; users.mutableUsers = false;
home-manager.users = import ./home.nix; home-manager.users = import ./home.nix {
lib = lib;
config = config;
};
} }

View file

@ -5,8 +5,12 @@
inputs, inputs,
... ...
}: let }: let
cfg = config.home-manager.users.ester; cfg = config.nixos.users.ester;
in { in {
options.nixos.users.ester = {
isDesktopUser = lib.mkEnableOption "install applications intended for desktop use";
};
config = { config = {
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;

View file

@ -2,16 +2,15 @@
pkgs, pkgs,
lib, lib,
config, config,
osConfig,
... ...
}: { }: let
options = { cfg = osConfig.nixos.users.ester;
isDesktopUser = lib.mkEnableOption "install applications intended for desktop use"; in {
};
config = { config = {
home = { home = {
username = "ester"; username = "ester";
homeDirectory = "/home/ester"; homeDirectory = osConfig.users.users.ester.home;
# This value determines the Home Manager release that your configuration is # This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release # compatible with. This helps avoid breakage when a new Home Manager release
@ -56,7 +55,7 @@
# EDITOR = "emacs"; # EDITOR = "emacs";
}; };
packages = lib.mkIf config.isDesktopUser ( packages = lib.mkIf cfg.isDesktopUser (
with pkgs; [ with pkgs; [
firefox firefox
bitwarden bitwarden

View file

@ -5,8 +5,12 @@
inputs, inputs,
... ...
}: let }: let
cfg = config.home-manager.users.eve; cfg = config.nixos.users.eve;
in { in {
options.nixos.users.eve = {
isDesktopUser = lib.mkEnableOption "install applications intended for desktop use";
};
config = { config = {
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;

View file

@ -1,17 +1,15 @@
{ {
pkgs, pkgs,
lib, lib,
config, osConfig,
... ...
}: { }: let
options = { cfg = osConfig.nixos.users.eve;
isDesktopUser = lib.mkEnableOption "install applications intended for desktop use"; in {
};
config = { config = {
home = { home = {
username = "eve"; username = "eve";
homeDirectory = "/home/eve"; homeDirectory = osConfig.users.users.eve.home;
# This value determines the Home Manager release that your configuration is # This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release # compatible with. This helps avoid breakage when a new Home Manager release
@ -56,7 +54,7 @@
# EDITOR = "emacs"; # EDITOR = "emacs";
}; };
packages = lib.mkIf config.isDesktopUser ( packages = lib.mkIf cfg.isDesktopUser (
with pkgs; [ with pkgs; [
firefox firefox
bitwarden bitwarden

View file

@ -1,5 +1,9 @@
{ {
leyla = import ./leyla/home.nix; lib,
ester = import ./ester/home.nix; config,
eve = import ./eve/home.nix; ...
}: {
leyla = lib.mkIf (config.nixos.users.leyla.isDesktopUser || config.nixos.users.leyla.isTerminalUser) (import ./leyla/home.nix);
ester = lib.mkIf config.nixos.users.ester.isDesktopUser (import ./ester/home.nix);
eve = lib.mkIf config.nixos.users.eve.isDesktopUser (import ./eve/home.nix);
} }

View file

@ -4,8 +4,14 @@
inputs, inputs,
... ...
}: let }: let
cfg = config.home-manager.users.leyla; cfg = config.nixos.users.leyla;
in { in {
options.nixos.users.leyla = {
isDesktopUser = lib.mkEnableOption "install applications intended for desktop use";
isTerminalUser = lib.mkEnableOption "install applications intended for terminal use";
hasGPU = lib.mkEnableOption "installs gpu intensive programs";
};
config = { config = {
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;

View file

@ -1,25 +1,19 @@
{ {
lib, lib,
config,
pkgs, pkgs,
osConfig,
... ...
}: { }: {
imports = [ imports = [
./packages.nix ./packages.nix
]; ];
options = {
isDesktopUser = lib.mkEnableOption "install applications intended for desktop use";
isTerminalUser = lib.mkEnableOption "install applications intended for terminal use";
hasGPU = lib.mkEnableOption "installs gpu intensive programs";
};
config = { config = {
# Home Manager needs a bit of information about you and the paths it should # Home Manager needs a bit of information about you and the paths it should
# manage. # manage.
home = { home = {
username = "leyla"; username = "leyla";
homeDirectory = "/home/leyla"; homeDirectory = osConfig.users.users.leyla.home;
# This value determines the Home Manager release that your configuration is # This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release # compatible with. This helps avoid breakage when a new Home Manager release

View file

@ -5,14 +5,16 @@
pkgs, pkgs,
inputs, inputs,
... ...
}: { }: let
cfg = osConfig.nixos.users.leyla;
in {
imports = [ imports = [
./vscode.nix ./vscode.nix
./firefox.nix ./firefox.nix
]; ];
home = { home = {
packages = lib.mkIf (config.isDesktopUser || config.isTerminalUser) ( packages = lib.mkIf (cfg.isDesktopUser || cfg.isTerminalUser) (
lib.mkMerge [ lib.mkMerge [
( (
with pkgs; [ with pkgs; [
@ -23,7 +25,7 @@
] ]
) )
( (
lib.mkIf (!config.isTerminalUser) ( lib.mkIf (!cfg.isTerminalUser) (
with pkgs; [ with pkgs; [
#foss platforms #foss platforms
signal-desktop signal-desktop
@ -42,7 +44,7 @@
onionshare onionshare
easytag easytag
# rhythmbox # rhythmbox
(lib.mkIf config.hasGPU obs-studio) (lib.mkIf cfg.hasGPU obs-studio)
# wireshark # wireshark
# rpi-imager # rpi-imager
# fritzing # fritzing
@ -51,7 +53,7 @@
discord discord
obsidian obsidian
steam steam
(lib.mkIf config.hasGPU davinci-resolve) (lib.mkIf cfg.hasGPU davinci-resolve)
# development tools # development tools
androidStudioPackages.canary androidStudioPackages.canary

View file

@ -1,10 +1,12 @@
{ {
lib, lib,
config, osConfig,
pkgs, pkgs,
inputs, inputs,
... ...
}: { }: let
cfg = osConfig.nixos.users.leyla;
in {
nixpkgs = { nixpkgs = {
overlays = [ overlays = [
inputs.nix-vscode-extensions.overlays.default inputs.nix-vscode-extensions.overlays.default
@ -12,7 +14,7 @@
}; };
programs = { programs = {
bash.shellAliases = lib.mkIf config.isDesktopUser { bash.shellAliases = lib.mkIf cfg.isDesktopUser {
code = "codium"; code = "codium";
}; };