use users module

This commit is contained in:
Dmitriy Kholkin 2022-12-10 22:34:39 +03:00
parent e9e6c06f64
commit 346dfd683c
64 changed files with 176 additions and 157 deletions

View File

@ -130,13 +130,13 @@
hostnames = builtins.attrNames (builtins.readDir ./machines); hostnames = builtins.attrNames (builtins.readDir ./machines);
mkHost = name: { mkHost = name: {
system = builtins.readFile (./machines + "/${name}/system"); system = builtins.readFile (./machines + "/${name}/system");
modules = [ (import (./machines + "/${name}")) { device = name; } ]; modules = [ (import (./machines + "/${name}")) { device = name; mainuser = "alukard"; } ];
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
}; };
in (genAttrs hostnames mkHost) // { in (genAttrs hostnames mkHost) // {
AMD-Workstation = { AMD-Workstation = {
system = builtins.readFile (./machines + "/AMD-Workstation/system"); system = builtins.readFile (./machines + "/AMD-Workstation/system");
modules = [ (import (./machines + "/AMD-Workstation")) { device = "AMD-Workstation"; } ]; modules = [ (import (./machines + "/AMD-Workstation")) { device = "AMD-Workstation"; mainuser = "alukard"; } ];
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
channelName = "unstable-zfs"; channelName = "unstable-zfs";
}; };
@ -178,13 +178,13 @@
packages = { packages = {
Wayland-VM = nixos-generators.nixosGenerate { Wayland-VM = nixos-generators.nixosGenerate {
system = builtins.readFile (./machines/Wayland-VM/system); system = builtins.readFile (./machines/Wayland-VM/system);
modules = [ (import (./machines/Wayland-VM)) { device = "Wayland-VM"; } ]; modules = [ (import (./machines/Wayland-VM)) { device = "Wayland-VM"; mainuser = "alukard"; } ];
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
format = "vm"; format = "vm";
}; };
Hypervisor-VM = nixos-generators.nixosGenerate { Hypervisor-VM = nixos-generators.nixosGenerate {
system = builtins.readFile (./machines/Hypervisor-VM/system); system = builtins.readFile (./machines/Hypervisor-VM/system);
modules = [ (import (./machines/Hypervisor-VM)) { device = "Hypervisor-VM"; } ]; modules = [ (import (./machines/Hypervisor-VM)) { device = "Hypervisor-VM"; mainuser = "alukard"; } ];
specialArgs = { inherit inputs; }; specialArgs = { inherit inputs; };
format = "vm"; format = "vm";
}; };

View File

@ -39,25 +39,26 @@
hardware.video.hidpi.enable = lib.mkForce false; hardware.video.hidpi.enable = lib.mkForce false;
hardware.firmware = [ pkgs.rtl8761b-firmware ]; hardware.firmware = [ pkgs.rtl8761b-firmware ];
home-manager.users.alukard.home.packages = lib.mkIf config.deviceSpecific.enableVirtualisation [ home-manager.users.${config.mainuser} = {
inputs.nixos-generators.packages.${pkgs.system}.nixos-generate home.packages = lib.mkIf config.deviceSpecific.enableVirtualisation [
inputs.nixos-generators.packages.${pkgs.system}.nixos-generate
# pkgs.looking-glass-client
];
home.stateVersion = "21.11";
};
# pkgs.looking-glass-client
];
home-manager.users.alukard.home.stateVersion = "21.11";
system.stateVersion = "21.11"; system.stateVersion = "21.11";
# VFIO Passthough # VFIO Passthough
# virtualisation = { # virtualisation = {
# sharedMemoryFiles = { # sharedMemoryFiles = {
# # scream = { # # scream = {
# # user = "alukard"; # # user = config.mainuser;
# # group = "qemu-libvirtd"; # # group = "qemu-libvirtd";
# # mode = "666"; # # mode = "666";
# # }; # # };
# looking-glass = { # looking-glass = {
# user = "alukard"; # user = config.mainuser;
# group = "libvirtd"; # group = "libvirtd";
# mode = "666"; # mode = "666";
# }; # };

View File

@ -46,6 +46,6 @@
# "mem_sleep_default=deep" # "mem_sleep_default=deep"
# ]; # ];
home-manager.users.alukard.home.stateVersion = "21.11"; home-manager.users.${config.mainuser}.home.stateVersion = "21.11";
system.stateVersion = "21.11"; system.stateVersion = "21.11";
} }

View File

@ -167,9 +167,10 @@ in {
fonts.enableDefaultFonts = lib.mkForce false; fonts.enableDefaultFonts = lib.mkForce false;
fonts.fonts = [ (pkgs.nerdfonts.override { fonts = [ "FiraCode" "VictorMono" ]; }) ]; fonts.fonts = [ (pkgs.nerdfonts.override { fonts = [ "FiraCode" "VictorMono" ]; }) ];
home-manager.users.alukard.home.packages = with pkgs; [ bat podman-compose ]; home-manager.users.${config.mainuser} = {
home.packages = with pkgs; [ bat podman-compose ];
home-manager.users.alukard.xdg.mime.enable = false; xdg.mime.enable = false;
home-manager.users.alukard.home.stateVersion = "22.11"; home.stateVersion = "22.11";
};
system.stateVersion = "22.11"; system.stateVersion = "22.11";
} }

View File

@ -58,6 +58,6 @@
}]; }];
}; };
home-manager.users.alukard.home.stateVersion = "21.11"; home-manager.users.${config.mainuser}.home.stateVersion = "21.11";
system.stateVersion = "21.11"; system.stateVersion = "21.11";
} }

View File

@ -54,7 +54,7 @@
networking.hostName = "Wayland-VM"; networking.hostName = "Wayland-VM";
users.mutableUsers = false; users.mutableUsers = false;
users.users.alukard = { users.users.${config.mainuser} = {
isNormalUser = true; isNormalUser = true;
extraGroups = [ "wheel" "video" "input" ]; extraGroups = [ "wheel" "video" "input" ];
uid = 1000; uid = 1000;
@ -135,7 +135,7 @@
security.polkit.enable = true; security.polkit.enable = true;
services.getty.autologinUser = "alukard"; services.getty.autologinUser = config.mainuser;
environment.shellAliases = { environment.shellAliases = {
ws = "waydroid show-full-ui"; ws = "waydroid show-full-ui";

View File

@ -56,7 +56,7 @@ in {
###### Implementation ###### Implementation
config.home-manager.users.alukard = mkIf cfg.enable { config.home-manager.users.${config.mainuser} = mkIf cfg.enable {
systemd.user.services.seadrive-daemon = { systemd.user.services.seadrive-daemon = {
Service = { Service = {
Type = "simple"; Type = "simple";

View File

@ -97,7 +97,7 @@ let
mkIndividualSecrets = name: cfg: mkIndividualSecrets = name: cfg:
map (x: { map (x: {
"${name}-envsubst-${x}" = { "${name}-envsubst-${x}" = {
encrypted = "${config.home-manager.users.alukard.xdg.dataHome}/password-store/${ encrypted = "${config.home-manager.users.${config.mainuser}.xdg.dataHome}/password-store/${
lib.optionalString (!isNull cfg.directory) "${cfg.directory}/" lib.optionalString (!isNull cfg.directory) "${cfg.directory}/"
}${x}.gpg"; }${x}.gpg";
services = [ ]; services = [ ];

View File

@ -24,7 +24,7 @@ let
}; };
user = mkOption { user = mkOption {
type = str; type = str;
default = "alukard"; default = config.mainuser;
}; };
owner = mkOption { owner = mkOption {
type = str; type = str;
@ -127,11 +127,11 @@ in {
options.secretsConfig = { options.secretsConfig = {
password-store = lib.mkOption { password-store = lib.mkOption {
type = lib.types.path; type = lib.types.path;
default = "${config.home-manager.users.alukard.xdg.dataHome}/password-store"; default = "${config.home-manager.users.${config.mainuser}.xdg.dataHome}/password-store";
}; };
gnupgHome = lib.mkOption { gnupgHome = lib.mkOption {
type = lib.types.path; type = lib.types.path;
default = "${config.home-manager.users.alukard.xdg.dataHome}/gnupg"; default = "${config.home-manager.users.${config.mainuser}.xdg.dataHome}/gnupg";
}; };
repo = lib.mkOption { repo = lib.mkOption {
type = str; type = str;
@ -143,14 +143,14 @@ in {
mkMerge (concatLists (mapAttrsToList mkServices config.secrets)); mkMerge (concatLists (mapAttrsToList mkServices config.secrets));
config.security.doas.extraRules = [{ config.security.doas.extraRules = [{
users = [ "alukard" ]; users = [ config.mainuser ];
noPass = true; noPass = true;
keepEnv = true; keepEnv = true;
cmd = "/run/current-system/sw/bin/systemctl "; cmd = "/run/current-system/sw/bin/systemctl ";
args = [ "restart" ] ++ allServicesMap; args = [ "restart" ] ++ allServicesMap;
}]; }];
config.home-manager.users.alukard = { config.home-manager.users.${config.mainuser} = {
systemd.user.services.activate-secrets = { systemd.user.services.activate-secrets = {
Service = { Service = {
ExecStart = "${activate-secrets}/bin/activate-secrets"; ExecStart = "${activate-secrets}/bin/activate-secrets";

7
modules/users.nix Normal file
View File

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
with lib;
with types; {
options = {
mainuser = mkOption { type = str; };
};
}

View File

@ -43,11 +43,11 @@
VISUAL = config.defaultApplications.editor.cmd; VISUAL = config.defaultApplications.editor.cmd;
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.activation."mimeapps-remove" = { home.activation."mimeapps-remove" = {
before = [ "checkLinkTargets" ]; before = [ "checkLinkTargets" ];
after = [ ]; after = [ ];
data = "rm -f /home/alukard/.config/mimeapps.list"; data = "rm -f /home/${config.mainuser}/.config/mimeapps.list";
}; };
xdg.mimeApps = { xdg.mimeApps = {

View File

@ -8,7 +8,7 @@ with config.deviceSpecific;
# cmd = "${pkgs.alacritty}/bin/alacritty"; # cmd = "${pkgs.alacritty}/bin/alacritty";
# desktop = "alacritty"; # desktop = "alacritty";
# }; # };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.alacritty = { programs.alacritty = {
# enable = isDesktop; # enable = isDesktop;
enable = false; enable = false;

View File

@ -3,7 +3,7 @@ with lib;
let let
thm = config.lib.base16.theme; thm = config.lib.base16.theme;
fonts = config.lib.base16.theme.fonts; fonts = config.lib.base16.theme.fonts;
profileName = "alukard"; profileName = config.mainuser;
profilePath = ".mozilla/firefox/${profileName}"; profilePath = ".mozilla/firefox/${profileName}";
mkUserJs = { prefs ? {}, extraPrefs ? "" }: '' mkUserJs = { prefs ? {}, extraPrefs ? "" }: ''
${extraPrefs} ${extraPrefs}
@ -14,7 +14,7 @@ let
''; '';
firefox-kpoxa = pkgs.writeShellScriptBin "firefox-kpoxa" '' firefox-kpoxa = pkgs.writeShellScriptBin "firefox-kpoxa" ''
${pkgs.firefox-wayland}/bin/firefox -profile /home/alukard/.mozilla/firefox/kpoxa ${pkgs.firefox-wayland}/bin/firefox -profile /home/${config.mainuser}/.mozilla/firefox/kpoxa
''; '';
in { in {
environment.sessionVariables = { environment.sessionVariables = {
@ -28,7 +28,7 @@ in {
desktop = "firefox"; desktop = "firefox";
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.packages = [ firefox-kpoxa ]; home.packages = [ firefox-kpoxa ];
# Mailvelope GnuPG integration # Mailvelope GnuPG integration
home.file.".mozilla/native-messaging-hosts/gpgmejson.json".text = '' home.file.".mozilla/native-messaging-hosts/gpgmejson.json".text = ''
@ -69,7 +69,7 @@ in {
enable = true; enable = true;
package = pkgs.firefox-wayland; package = pkgs.firefox-wayland;
profiles = { profiles = {
alukard = { ${config.mainuser} = {
id = 0; id = 0;
userChrome = '' userChrome = ''
#TabsToolbar { #TabsToolbar {

View File

@ -1,5 +1,5 @@
{ config, lib, pkgs, ... }: { { config, lib, pkgs, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.packages = [ pkgs.google-drive-ocamlfuse ]; home.packages = [ pkgs.google-drive-ocamlfuse ];
# systemd.user.services.google-drive-ocamlfuse = { # systemd.user.services.google-drive-ocamlfuse = {
# Service = { # Service = {

View File

@ -1,10 +1,10 @@
{ config, pkgs, inputs, lib, system, ... }: { { config, pkgs, inputs, lib, system, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.packages = [ pkgs.himalaya ]; home.packages = [ pkgs.himalaya ];
xdg.configFile."himalaya/config.toml".text = '' xdg.configFile."himalaya/config.toml".text = ''
downloads-dir="/home/alukard/Downloads/mail" downloads-dir="/home/${config.mainuser}/Downloads/mail"
name="Dmitriy Kholkin" name="Dmitriy Kholkin"
signature="Regards," signature="Regards,"
[ataraxiadev] [ataraxiadev]

View File

@ -7,7 +7,7 @@ in with config.deviceSpecific;
cmd = "${pkgs.kitty}/bin/kitty"; cmd = "${pkgs.kitty}/bin/kitty";
desktop = "kitty"; desktop = "kitty";
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.kitty = { programs.kitty = {
enable = true; enable = true;
font.name = "${thm.fonts.mono.family} ${thm.fontSizes.small.str}"; font.name = "${thm.fonts.mono.family} ${thm.fontSizes.small.str}";

View File

@ -1,5 +1,5 @@
{ lib, pkgs, config, ... }: { { lib, pkgs, config, ... }: {
home-manager.users.alukard = lib.mkIf config.deviceSpecific.isGaming { home-manager.users.${config.mainuser} = lib.mkIf config.deviceSpecific.isGaming {
home.packages = [ pkgs.mangohud ]; home.packages = [ pkgs.mangohud ];
xdg.configFile."MangoHud/MangoHud.conf".source = pkgs.writeText "MangoHud.conf" '' xdg.configFile."MangoHud/MangoHud.conf".source = pkgs.writeText "MangoHud.conf" ''
fps_limit=60 fps_limit=60
@ -36,7 +36,7 @@
text_color=ffffff text_color=ffffff
toggle_hud=Shift_R+F12 toggle_hud=Shift_R+F12
toggle_logging=Shift_L+F2 toggle_logging=Shift_L+F2
output_folder=/home/alukard output_folder=/home/${config.mainuser}
media_player_name=spotify media_player_name=spotify
''; '';
}; };

View File

@ -12,7 +12,7 @@
port = 6600 port = 6600
[local] [local]
media_dir = /home/alukard/Music media_dir = /home/${config.mainuser}/Music
''; '';
extensionPackages = with pkgs; [ extensionPackages = with pkgs; [
mopidy-local mopidy-local

View File

@ -1,23 +1,23 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
{ {
home-manager.users.alukard.programs.mpv = { home-manager.users.${config.mainuser} = {
enable = true; programs.mpv = {
config = { enable = true;
vo = "gpu"; config = {
gpu-context = "wayland"; vo = "gpu";
save-position-on-quit = "yes"; gpu-context = "wayland";
hwdec = if config.deviceSpecific.devInfo.gpu.vendor == "nvidia" then save-position-on-quit = "yes";
"vdpau" hwdec = if config.deviceSpecific.devInfo.gpu.vendor == "nvidia" then
else "vdpau"
"vaapi"; else
ytdl-format = if config.deviceSpecific.isLaptop then "vaapi";
"bestvideo[height<=?1080]+bestaudio/best" ytdl-format = if config.deviceSpecific.isLaptop then
else "bestvideo[height<=?1080]+bestaudio/best"
"bestvideo[height<=?2160]+bestaudio/best"; else
"bestvideo[height<=?2160]+bestaudio/best";
};
}; };
}; home.file.".config/yt-dlp/config".text = ''
home-manager.users.alukard.home.file.".config/yt-dlp/config" = {
text = ''
--cookies-from-browser firefox --cookies-from-browser firefox
--mark-watched --mark-watched
''; '';

View File

@ -1,5 +1,5 @@
{ pkgs, ... }: { { pkgs, ... }: {
home-manager.users.alukard.programs.ncmpcpp = { home-manager.users.${config.mainuser}.programs.ncmpcpp = {
enable = true; enable = true;
# mpdMusicDir = "$HOME/Music"; # mpdMusicDir = "$HOME/Music";
settings = { settings = {

View File

@ -2,7 +2,7 @@
with config.deviceSpecific; { with config.deviceSpecific; {
programs.adb.enable = true; programs.adb.enable = true;
home-manager.users.alukard.home.packages = with pkgs; [ home-manager.users.${config.mainuser}.home.packages = with pkgs; [
# cli # cli
a2ln a2ln
bat bat

View File

@ -1,6 +1,6 @@
{ config, pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
config = lib.mkIf (config.device == "AMD-Workstation") { config = lib.mkIf (config.device == "AMD-Workstation") {
services.ratbagd.enable = true; services.ratbagd.enable = true;
home-manager.users.alukard.home.packages = [ pkgs.piper ]; home-manager.users.${config.mainuser}.home.packages = [ pkgs.piper ];
}; };
} }

View File

@ -9,7 +9,7 @@ in
desktop = "rofi"; desktop = "rofi";
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.rofi = { programs.rofi = {
enable = true; enable = true;
package = pkgs.rofi-wayland; package = pkgs.rofi-wayland;

View File

@ -1,5 +1,5 @@
{ config, lib, pkgs, ... }: { { config, lib, pkgs, ... }: {
home-manager.users.alukard.home.packages = with pkgs; [ home-manager.users.${config.mainuser}.home.packages = with pkgs; [
spotifywm spotifywm
]; ];
startupApplications = [ startupApplications = [

View File

@ -9,7 +9,7 @@
# systemd.user.services.x11-ownership = rec { # systemd.user.services.x11-ownership = rec {
# # serviceConfig.Type = "oneshot"; # # serviceConfig.Type = "oneshot";
# script = '' # script = ''
# chown alukard /tmp/.X11-unix # chown ${config.mainuser} /tmp/.X11-unix
# ''; # '';
# after = [ "graphical-session.target" ]; # after = [ "graphical-session.target" ];
# wants = after; # wants = after;
@ -17,7 +17,7 @@
# }; # };
# Start Steam only after the network is up # Start Steam only after the network is up
# home-manager.users.alukard.systemd.user.services.steam-startup = { # home-manager.users.${config.mainuser}.systemd.user.services.steam-startup = {
# Service = { # Service = {
# ExecStart = "${pkgs.steam}/bin/steam"; # ExecStart = "${pkgs.steam}/bin/steam";
# Type = "oneshot"; # Type = "oneshot";

View File

@ -1,5 +1,5 @@
{ config, lib, pkgs, ... }: { { config, lib, pkgs, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.packages = [ pkgs.sunshine ]; home.packages = [ pkgs.sunshine ];
systemd.user.services.sunshine = { systemd.user.services.sunshine = {
Unit.Description = "Sunshine is a Gamestream host for Moonlight."; Unit.Description = "Sunshine is a Gamestream host for Moonlight.";

View File

@ -1,5 +1,5 @@
{ config, pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
services.syncthing.enable = true; services.syncthing.enable = true;
}; };
} }

View File

@ -4,7 +4,7 @@ let
mullvad-exclude ${pkgs.tor-browser-bundle-bin}/bin/tor-browser mullvad-exclude ${pkgs.tor-browser-bundle-bin}/bin/tor-browser
''; '';
in { in {
home-manager.users.alukard.home.packages = if config.deviceSpecific.wireguard.enable then [ home-manager.users.${config.mainuser}.home.packages = if config.deviceSpecific.wireguard.enable then [
tor-browser tor-browser
] else [ ] else [
pkgs.tor-browser-bundle-bin pkgs.tor-browser-bundle-bin

View File

@ -4,7 +4,7 @@
# desktop = "vivaldi"; # desktop = "vivaldi";
# }; # };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.packages = with pkgs; [ home.packages = with pkgs; [
((vivaldi.overrideAttrs (oldAttrs: rec { ((vivaldi.overrideAttrs (oldAttrs: rec {
buildInputs = oldAttrs.buildInputs ++ [ pkgs.libglvnd pkgs.pipewire pkgs.wayland ]; buildInputs = oldAttrs.buildInputs ++ [ pkgs.libglvnd pkgs.pipewire pkgs.wayland ];

View File

@ -3,10 +3,10 @@ let
thmFile = config.lib.base16.templateFile; thmFile = config.lib.base16.templateFile;
thm = config.lib.base16.theme; thm = config.lib.base16.theme;
EDITOR = pkgs.writeShellScript "code-editor" '' EDITOR = pkgs.writeShellScript "code-editor" ''
source "/etc/profiles/per-user/alukard/etc/profile.d/hm-session-vars.sh" source "/etc/profiles/per-user/${config.mainuser}/etc/profile.d/hm-session-vars.sh"
NIX_OZONE_WL=1 \ NIX_OZONE_WL=1 \
exec \ exec \
${config.home-manager.users.alukard.programs.vscode.package}/bin/code \ ${config.home-manager.users.${config.mainuser}.programs.vscode.package}/bin/code \
-w -n \ -w -n \
"$@" "$@"
''; '';
@ -17,7 +17,7 @@ in
desktop = "code-wayland"; desktop = "code-wayland";
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.vscode = { programs.vscode = {
enable = true; enable = true;
package = pkgs.vscode; package = pkgs.vscode;
@ -37,7 +37,7 @@ in
cp -R * $out/share/vscode/extensions/direnv.direnv-vscode cp -R * $out/share/vscode/extensions/direnv.direnv-vscode
''; '';
})) }))
(pkgs.callPackage ./theme.nix { } config.lib.base16.theme) (pkgs.callPackage ./theme.nix { mainuser = config.mainuser; } config.lib.base16.theme)
aaron-bond.better-comments aaron-bond.better-comments
alefragnani.bookmarks alefragnani.bookmarks

View File

@ -1,4 +1,4 @@
{ linkFarm }: { mainuser, linkFarm }:
{ base00-hex, base01-hex, base02-hex, base03-hex, base04-hex, base05-hex, base06-hex, base07-hex, base08-hex, base09-hex { base00-hex, base01-hex, base02-hex, base03-hex, base04-hex, base05-hex, base06-hex, base07-hex, base08-hex, base09-hex
, base0A-hex, base0B-hex, base0C-hex, base0D-hex, base0E-hex, base0F-hex, ... }: , base0A-hex, base0B-hex, base0C-hex, base0D-hex, base0E-hex, base0F-hex, ... }:
let let
@ -919,7 +919,7 @@ let
name = "theme"; name = "theme";
displayName = "Generated theme"; displayName = "Generated theme";
version = "0.0.0"; version = "0.0.0";
publisher = "alukard"; publisher = mainuser;
engines.vscode = "^1.22.0"; engines.vscode = "^1.22.0";
contributes.themes = [{ contributes.themes = [{
label = "Generated theme"; label = "Generated theme";
@ -933,7 +933,7 @@ let
}; };
}; };
in with builtins; in with builtins;
linkFarm "alukard.theme" (attrValues (mapAttrs (name: value: { linkFarm "${mainuser}.theme" (attrValues (mapAttrs (name: value: {
name = "share/vscode/extensions/alukard.theme/${name}"; name = "share/vscode/extensions/${mainuser}.theme/${name}";
path = toFile (baseNameOf name) value; path = toFile (baseNameOf name) value;
}) theme)) }) theme))

View File

@ -20,6 +20,6 @@ in {
# environment.etc."gbinder.d/anbox.conf".source = lib.mkForce anboxGbinderConf; # environment.etc."gbinder.d/anbox.conf".source = lib.mkForce anboxGbinderConf;
virtualisation.waydroid.enable = true; virtualisation.waydroid.enable = true;
# virtualisation.lxd.enable = true; # virtualisation.lxd.enable = true;
home-manager.users.alukard.home.packages = [ pkgs.waydroid-script ]; home-manager.users.${config.mainuser}.home.packages = [ pkgs.waydroid-script ];
}; };
} }

View File

@ -24,7 +24,7 @@ with deviceSpecific;
"nofail" "nofail"
"dmode=0755" "dmode=0755"
"fmode=0644" "fmode=0644"
"uid=${toString config.users.users.alukard.uid}" "uid=${toString config.users.users.${config.mainuser}.uid}"
"gid=${toString config.users.groups.smbuser.gid}" "gid=${toString config.users.groups.smbuser.gid}"
]; ];
}; };
@ -35,7 +35,7 @@ with deviceSpecific;
options = [ options = [
# "noatime" # "noatime"
"nofail" "nofail"
"uid=${toString config.users.users.alukard.uid}" "uid=${toString config.users.users.${config.mainuser}.uid}"
"gid=${toString config.users.groups.smbuser.gid}" "gid=${toString config.users.groups.smbuser.gid}"
]; ];
} else { } else {
@ -44,7 +44,7 @@ with deviceSpecific;
device = "//192.168.0.100/data"; device = "//192.168.0.100/data";
options = [ options = [
"credentials=${secrets.samba.decrypted}" "credentials=${secrets.samba.decrypted}"
"uid=${toString config.users.users.alukard.uid}" "uid=${toString config.users.users.${config.mainuser}.uid}"
"gid=${toString config.users.groups.users.gid}" "gid=${toString config.users.groups.users.gid}"
"vers=3.0" "vers=3.0"
"nofail" "nofail"
@ -62,7 +62,7 @@ with deviceSpecific;
options = [ options = [
# "noatime" # "noatime"
"nofail" "nofail"
"uid=${toString config.users.users.alukard.uid}" "uid=${toString config.users.users.${config.mainuser}.uid}"
"gid=${toString config.users.groups.smbuser.gid}" "gid=${toString config.users.groups.smbuser.gid}"
]; ];
}; };
@ -72,7 +72,7 @@ with deviceSpecific;
# device = "//192.168.0.100/files"; # device = "//192.168.0.100/files";
# options = [ # options = [
# "credentials=${secrets.samba.decrypted}" # "credentials=${secrets.samba.decrypted}"
# "uid=${toString config.users.users.alukard.uid}" # "uid=${toString config.users.users.${config.mainuser}.uid}"
# "gid=${toString config.users.groups.users.gid}" # "gid=${toString config.users.groups.users.gid}"
# "vers=3.0" # "vers=3.0"
# "nofail" # "nofail"

View File

@ -5,7 +5,7 @@ in {
config = lib.mkIf vpn.enable { config = lib.mkIf vpn.enable {
services.mullvad-vpn.enable = true; services.mullvad-vpn.enable = true;
services.mullvad-vpn.enableExcludeWrapper = true; services.mullvad-vpn.enableExcludeWrapper = true;
home-manager.users.alukard.home.packages = [ pkgs.mullvad-vpn ]; home-manager.users.${config.mainuser}.home.packages = [ pkgs.mullvad-vpn ];
startupApplications = [ "${pkgs.mullvad-vpn}/share/mullvad/mullvad-gui" ]; startupApplications = [ "${pkgs.mullvad-vpn}/share/mullvad/mullvad-gui" ];
}; };
} }

View File

@ -34,14 +34,14 @@ with config.deviceSpecific; {
# "nixos-rocm.cachix.org-1:VEpsf7pRIijjd8csKjFNBGzkBqOmw8H9PRmgAq14LnE=" # "nixos-rocm.cachix.org-1:VEpsf7pRIijjd8csKjFNBGzkBqOmw8H9PRmgAq14LnE="
# "webcord.cachix.org-1:l555jqOZGHd2C9+vS8ccdh8FhqnGe8L78QrHNn+EFEs=" # "webcord.cachix.org-1:l555jqOZGHd2C9+vS8ccdh8FhqnGe8L78QrHNn+EFEs="
]; ];
trusted-users = [ "root" "alukard" "@wheel" ]; trusted-users = [ "root" config.mainuser "@wheel" ];
}; };
buildMachines = [ buildMachines = [
{ {
hostName = "nix-builder"; hostName = "nix-builder";
maxJobs = 8; maxJobs = 8;
sshUser = "alukard"; sshUser = config.mainuser;
sshKey = config.secrets.ssh-builder.decrypted; sshKey = config.secrets.ssh-builder.decrypted;
systems = [ "x86_64-linux" "i686-linux" ]; systems = [ "x86_64-linux" "i686-linux" ];
supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ]; supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ];

View File

@ -3,7 +3,7 @@ with config.deviceSpecific; {
security.apparmor.enable = !isContainer; security.apparmor.enable = !isContainer;
programs.firejail.enable = true; programs.firejail.enable = true;
users.mutableUsers = false; users.mutableUsers = false;
users.users.alukard = { users.users.${config.mainuser} = {
isNormalUser = true; isNormalUser = true;
extraGroups = [ extraGroups = [
"adbusers" "adbusers"
@ -37,7 +37,7 @@ with config.deviceSpecific; {
security.sudo = { security.sudo = {
enable = true; enable = true;
extraRules = [{ extraRules = [{
users = [ "alukard" ]; users = [ config.mainuser ];
commands = [{ commands = [{
command = "/run/current-system/sw/bin/nixos-rebuild"; command = "/run/current-system/sw/bin/nixos-rebuild";
options = [ "SETENV" "NOPASSWD" ]; options = [ "SETENV" "NOPASSWD" ];
@ -50,39 +50,39 @@ with config.deviceSpecific; {
}]; }];
}]; }];
# extraConfig = lib.concatStrings ['' # extraConfig = lib.concatStrings [''
# alukard ALL = (root) NOPASSWD: /run/current-system/sw/bin/btrfs fi usage / # ${config.mainuser} ALL = (root) NOPASSWD: /run/current-system/sw/bin/btrfs fi usage /
# '' # ''
# (if (isLaptop) then '' # (if (isLaptop) then ''
# alukard ALL = (root) NOPASSWD: /run/current-system/sw/bin/tlp-stat # ${config.mainuser} ALL = (root) NOPASSWD: /run/current-system/sw/bin/tlp-stat
# alukard ALL = (root) NOPASSWD: /run/current-system/sw/bin/tlp ac # ${config.mainuser} ALL = (root) NOPASSWD: /run/current-system/sw/bin/tlp ac
# alukard ALL = (root) NOPASSWD: /run/current-system/sw/bin/tlp bat # ${config.mainuser} ALL = (root) NOPASSWD: /run/current-system/sw/bin/tlp bat
# '' else "") # '' else "")
# ]; # ];
}; };
security.doas = { security.doas = {
enable = true; enable = true;
extraRules = [{ extraRules = [{
users = [ "alukard" ]; users = [ config.mainuser ];
keepEnv = true; keepEnv = true;
persist = true; persist = true;
} { } {
users = [ "alukard" ]; users = [ config.mainuser ];
noPass = true; noPass = true;
keepEnv = true; keepEnv = true;
cmd = "/run/current-system/sw/bin/btrfs"; cmd = "/run/current-system/sw/bin/btrfs";
args = [ "fi" "usage" "/" ]; args = [ "fi" "usage" "/" ];
}] ++ lib.optionals isLaptop [{ }] ++ lib.optionals isLaptop [{
users = [ "alukard" ]; users = [ config.mainuser ];
noPass = true; noPass = true;
keepEnv = true; keepEnv = true;
cmd = "/run/current-system/sw/bin/tlp"; cmd = "/run/current-system/sw/bin/tlp";
} { } {
users = [ "alukard" ]; users = [ config.mainuser ];
noPass = true; noPass = true;
keepEnv = true; keepEnv = true;
cmd = "/run/current-system/sw/bin/tlp-stat"; cmd = "/run/current-system/sw/bin/tlp-stat";
}]; }];
}; };
systemd.services."user@" = { serviceConfig = { Restart = "always"; }; }; systemd.services."user@" = { serviceConfig = { Restart = "always"; }; };
services.getty.autologinUser = "alukard"; services.getty.autologinUser = config.mainuser;
} }

View File

@ -1,5 +1,5 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
with config.users.users.alukard; with config.users.groups.${group}; { with config.users.users.${config.mainuser}; with config.users.groups.${group}; {
secrets."cloudflare-ddns-ataraxiadev" = { secrets."cloudflare-ddns-ataraxiadev" = {
owner = "${toString uid}"; owner = "${toString uid}";
# permissions = "400"; # permissions = "400";

View File

@ -24,7 +24,7 @@ in with config.virtualisation.oci-containers; {
image = "rocm-arch"; image = "rocm-arch";
ports = [ "80:7860/tcp" ]; ports = [ "80:7860/tcp" ];
volumes = [ volumes = [
"/home/alukard/projects/rocm-terminal/shared:/shared" "/home/${config.mainuser}/projects/rocm-terminal/shared:/shared"
]; ];
}; };

View File

@ -3,7 +3,7 @@
inputs.vscode-server-fixup.nixosModules.home-manager.nixos-vscode-server inputs.vscode-server-fixup.nixosModules.home-manager.nixos-vscode-server
]; ];
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
services.vscode-server.enable = true; services.vscode-server.enable = true;
}; };
} }

View File

@ -78,18 +78,20 @@ with config.deviceSpecific; {
pkgs.stlink pkgs.stlink
]; ];
home-manager.users.alukard.services.udiskie.enable = !isServer; home-manager.users.${config.mainuser}.services = {
udiskie.enable = !isServer;
home-manager.users.alukard.services.gammastep = { gammastep = {
enable = !isServer; enable = !isServer;
latitude = 48.79; latitude = 48.79;
longitude = 44.78; longitude = 44.78;
temperature.day = 6500; temperature.day = 6500;
temperature.night = 3000; temperature.night = 3000;
};
}; };
secrets.seadrive = { secrets.seadrive = {
owner = "alukard"; owner = config.mainuser;
}; };
services.seadrive = { services.seadrive = {
enable = !isServer; enable = !isServer;

View File

@ -1,8 +1,11 @@
{ config, lib, pkgs, ... }: { { config, lib, pkgs, ... }: {
home-manager.users.alukard.xdg.configFile."easyeffects/output/HE4XX.json".text = home-manager.users.${config.mainuser} = {
(builtins.readFile ./HE4XX.json); xdg.configFile = {
home-manager.users.alukard.xdg.configFile."easyeffects/output/Bluetooth.json".text = "easyeffects/output/HE4XX.json".text =
(builtins.readFile ./Bluetooth.json); (builtins.readFile ./HE4XX.json);
"easyeffects/output/Bluetooth.json".text =
home-manager.users.alukard.services.easyeffects.enable = true; (builtins.readFile ./Bluetooth.json);
};
services.easyeffects.enable = true;
};
} }

View File

@ -1,4 +1,4 @@
{ pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
sound.enable = false; sound.enable = false;
services.pipewire = { services.pipewire = {
@ -84,18 +84,20 @@
''; '';
}; };
home-manager.users.alukard.xdg.configFile."wireplumber/bluetooth.lua.d/51-bluez-config.lua".text = '' home-manager.users.${config.mainuser} = {
bluez_monitor.properties = { xdg.configFile."wireplumber/bluetooth.lua.d/51-bluez-config.lua".text = ''
["bluez5.enable-sbc-xq"] = true, bluez_monitor.properties = {
["bluez5.enable-msbc"] = true, ["bluez5.enable-sbc-xq"] = true,
["bluez5.hw-volume"] = "[ hfp_ag hsp_ag a2dp_source a2dp_sink ]", ["bluez5.enable-msbc"] = true,
["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag a2dp_sink ]", ["bluez5.hw-volume"] = "[ hfp_ag hsp_ag a2dp_source a2dp_sink ]",
["bluez5.reconnect-profiles"] = "[ hsp_hs hfp_hf a2dp_sink ]", ["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag a2dp_sink ]",
} ["bluez5.reconnect-profiles"] = "[ hsp_hs hfp_hf a2dp_sink ]",
''; }
security.rtkit.enable = true; '';
home.packages = [ pkgs.pavucontrol pkgs.pulseaudio ];
};
home-manager.users.alukard.home.packages = [ pkgs.pavucontrol pkgs.pulseaudio ]; security.rtkit.enable = true;
hardware.pulseaudio.enable = lib.mkForce false; hardware.pulseaudio.enable = lib.mkForce false;
services.jack.jackd.enable = lib.mkForce false; services.jack.jackd.enable = lib.mkForce false;

View File

@ -26,7 +26,7 @@ with config.deviceSpecific; {
onShutdown = "shutdown"; onShutdown = "shutdown";
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.file.".config/libvirt/libvirt.conf".text = '' home.file.".config/libvirt/libvirt.conf".text = ''
uri_default = "qemu:///system" uri_default = "qemu:///system"
''; '';

View File

@ -1,6 +1,6 @@
{ config, pkgs, ... }: { { config, pkgs, ... }: {
environment.systemPackages = [ pkgs.copyq ]; environment.systemPackages = [ pkgs.copyq ];
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
wayland.windowManager.hyprland.extraConfig = '' wayland.windowManager.hyprland.extraConfig = ''
windowrule=float,title=(.*CopyQ) windowrule=float,title=(.*CopyQ)
''; '';

View File

@ -2,7 +2,7 @@
let let
thm = config.lib.base16.theme; thm = config.lib.base16.theme;
in { in {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.pointerCursor = { home.pointerCursor = {
package = thm.cursorPackage; package = thm.cursorPackage;
name = "Bibata-Modern-TokyoNight"; name = "Bibata-Modern-TokyoNight";

View File

@ -1,5 +1,5 @@
{ ... }: { { config, ... }: {
home-manager.users.alukard.programs = { home-manager.users.${config.mainuser}.programs = {
direnv = { direnv = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;

View File

@ -1,5 +1,5 @@
{ { config, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.git = { programs.git = {
enable = true; enable = true;
lfs.enable = true; lfs.enable = true;

View File

@ -1,6 +1,6 @@
{ config, lib, ... }: { config, lib, ... }:
with config.deviceSpecific; { with config.deviceSpecific; {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.gpg = { programs.gpg = {
enable = true; enable = true;
homedir = config.secretsConfig.gnupgHome; homedir = config.secretsConfig.gnupgHome;

View File

@ -34,7 +34,7 @@ in {
gtk.iconCache.enable = true; gtk.iconCache.enable = true;
programs.dconf.enable = true; programs.dconf.enable = true;
services.dbus.packages = with pkgs; [ dconf gcr ]; services.dbus.packages = with pkgs; [ dconf gcr ];
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
gtk = { gtk = {
enable = true; enable = true;
iconTheme = { iconTheme = {

View File

@ -5,7 +5,7 @@ let
gsettings = "${pkgs.glib}/bin/gsettings"; gsettings = "${pkgs.glib}/bin/gsettings";
gnomeSchema = "org.gnome.desktop.interface"; gnomeSchema = "org.gnome.desktop.interface";
importGsettings = pkgs.writeShellScript "import_gsettings.sh" '' importGsettings = pkgs.writeShellScript "import_gsettings.sh" ''
config="/home/alukard/.config/gtk-3.0/settings.ini" config="/home/${config.mainuser}/.config/gtk-3.0/settings.ini"
if [ ! -f "$config" ]; then exit 1; fi if [ ! -f "$config" ]; then exit 1; fi
gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')" gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')"
icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')" icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')"
@ -42,7 +42,7 @@ in with config.deviceSpecific; with lib; {
}; };
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
imports = [ imports = [
inputs.hyprland.homeManagerModules.default inputs.hyprland.homeManagerModules.default
]; ];

View File

@ -3,7 +3,7 @@ let
scripts = import ./scripts pkgs config; scripts = import ./scripts pkgs config;
thm = config.lib.base16.theme; thm = config.lib.base16.theme;
in { in {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
# xsession.windowManager.i3.config.bars = [{ # xsession.windowManager.i3.config.bars = [{
wayland.windowManager.sway.config.bars = [{ wayland.windowManager.sway.config.bars = [{
id = "default"; id = "default";

View File

@ -16,7 +16,7 @@ with config.lib.base16.theme; {
KDEDIRS = KDEDIRS =
"/run/current-system/sw:/run/current-system/sw/share/kservices5:/run/current-system/sw/share/kservicetypes5:/run/current-system/sw/share/kxmlgui5"; "/run/current-system/sw:/run/current-system/sw/share/kservices5:/run/current-system/sw/share/kservicetypes5:/run/current-system/sw/share/kxmlgui5";
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
services.kdeconnect.enable = true; services.kdeconnect.enable = true;
xdg.configFile."kdeglobals".text = lib.generators.toGitINI { xdg.configFile."kdeglobals".text = lib.generators.toGitINI {

View File

@ -19,7 +19,7 @@ with config.deviceSpecific; {
longitude = 44.78; longitude = 44.78;
}; };
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.language = let home.language = let
en = "en_GB.utf8"; en = "en_GB.utf8";
ru = "ru_RU.utf8"; ru = "ru_RU.utf8";

View File

@ -1,5 +1,5 @@
{ pkgs, config, ... }: { { pkgs, config, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
systemd.user.services.mako = { systemd.user.services.mako = {
Service = { ExecStart = "${pkgs.mako}/bin/mako"; }; Service = { ExecStart = "${pkgs.mako}/bin/mako"; };
Install = { Install = {

View File

@ -4,7 +4,7 @@
LESS = "MR"; LESS = "MR";
LESSHISTFILE = "~/.local/share/lesshist"; LESSHISTFILE = "~/.local/share/lesshist";
SYSTEMD_LESS = LESS; SYSTEMD_LESS = LESS;
CARGO_HOME = "${config.home-manager.users.alukard.xdg.dataHome}/cargo"; CARGO_HOME = "${config.home-manager.users.${config.mainuser}.xdg.dataHome}/cargo";
LIBVIRT_DEFAULT_URI = "qemu:///system"; LIBVIRT_DEFAULT_URI = "qemu:///system";
}; };
@ -12,7 +12,7 @@
services.dbus.packages = [ pkgs.pass-secret-service ]; services.dbus.packages = [ pkgs.pass-secret-service ];
xdg.portal.extraPortals = [ pkgs.pass-secret-service ]; xdg.portal.extraPortals = [ pkgs.pass-secret-service ];
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
news.display = "silent"; news.display = "silent";
systemd.user.startServices = true; systemd.user.startServices = true;

View File

@ -1,5 +1,5 @@
{ ... }: { { config, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.nix-index = { programs.nix-index = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;

View File

@ -1,6 +1,6 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
{ {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
services.picom = { services.picom = {
enable = true; enable = true;
backend = "glx"; backend = "glx";

View File

@ -9,7 +9,7 @@ with config.deviceSpecific; {
ports = [ 22 ]; ports = [ 22 ];
}; };
users.users.alukard.openssh.authorizedKeys.keys = [ users.users.${config.mainuser}.openssh.authorizedKeys.keys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC+xd8ClJPvJuAdYC9HlNnjiubEtYfvnKjYr9ROV+UmPVvI3ZITF24OaMI+fxgR0EqGfcUzSGom8528IB53Q3aFMIAaA0vKjW+jrByyB2l/k/+ttpLbH75c9WyOpAcUDTen8BhHKPyXOHoJ1jLu7GFmtPZ+mZo8thFB/VIRrwECHd8DnF0drsSCorkRp1bZC7bAHgztaYHNBUoAVGgJ7nLwW7DotlgbUEDiPJHXOxd/c/ZlXIB/cfUUqF+L5ThbMPhMcwRMspLy+nQdmHhih9k6SkvYqJoNqHT5/XeShb0RkIzvUWT2CYTPop5kAY5mMnatVTOY1FZPhHzk3G8MhOQ3r/elM/ecZxmjL8uozMN9kRGf1IL4DgQZfVqQRILdNSQGb0tfeiyirNZe1RlDw9UvMnZJOw0EkiC9lSSRhBWXXxAmxRrbNFTPQSp+/kiIGDmp2AsGhD11CfTDEU3wcLEUPBUqp1FYSzHncJyEKGy2Dpa5xaUJ0cuyGL4W3WHDXa4sTfY+AIXbQTD88Ujdsbfzyd6lrikG4D/crCurXissrh7q9DuYKWRI24cp5bw9lG33U1EXisnZqFyZNwMAmSj2QEGsHCwSevn0FgyRa2WYXgpZ9hfgY4le+ZSMo2JTosQ6DjGyxMDyQAHJ/ismTTzL67Q2p6U+73toYm62Qqdspw== (none)" "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC+xd8ClJPvJuAdYC9HlNnjiubEtYfvnKjYr9ROV+UmPVvI3ZITF24OaMI+fxgR0EqGfcUzSGom8528IB53Q3aFMIAaA0vKjW+jrByyB2l/k/+ttpLbH75c9WyOpAcUDTen8BhHKPyXOHoJ1jLu7GFmtPZ+mZo8thFB/VIRrwECHd8DnF0drsSCorkRp1bZC7bAHgztaYHNBUoAVGgJ7nLwW7DotlgbUEDiPJHXOxd/c/ZlXIB/cfUUqF+L5ThbMPhMcwRMspLy+nQdmHhih9k6SkvYqJoNqHT5/XeShb0RkIzvUWT2CYTPop5kAY5mMnatVTOY1FZPhHzk3G8MhOQ3r/elM/ecZxmjL8uozMN9kRGf1IL4DgQZfVqQRILdNSQGb0tfeiyirNZe1RlDw9UvMnZJOw0EkiC9lSSRhBWXXxAmxRrbNFTPQSp+/kiIGDmp2AsGhD11CfTDEU3wcLEUPBUqp1FYSzHncJyEKGy2Dpa5xaUJ0cuyGL4W3WHDXa4sTfY+AIXbQTD88Ujdsbfzyd6lrikG4D/crCurXissrh7q9DuYKWRI24cp5bw9lG33U1EXisnZqFyZNwMAmSj2QEGsHCwSevn0FgyRa2WYXgpZ9hfgY4le+ZSMo2JTosQ6DjGyxMDyQAHJ/ismTTzL67Q2p6U+73toYm62Qqdspw== (none)"
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDP0/DReYSAfkucroMTdELzTORsGhhbEa+W0FDFBnwViHuoqoKvetCOkW657icexc5v/j6Ghy3+Li9twbHnEDzUJVtNtauhGMjOcUYt6pTbeJ09CGSAh+orxzeY4vXp7ANb91xW8yRn/EE4ALxqbLsc/D7TUMl11fmf0UW+kLgU5TcUYVSLMjQqBpD1Lo7lXLrImloDxe5fwoBDT09E59r9tq6+/3aHz8mpKRLsIQIV0Av00BRJ+/OVmZuBd9WS35rfkpUYmpEVInSJy3G4O6kCvY/zc9Bnh67l4kALZZ0+6W23kBGrzaRfaOtCEcscwfIu+6GXiHOL33rrMNNinF0T2942jGc18feL6P/LZCzqz8bGdFNxT43jAGPeDDcrJEWAJZFO3vVTP65dTRTHQG2KlQMzS7tcif6YUlY2JLJIb61ZfLoShH/ini/tqsGT0Be1f3ndOFt48h4XMW1oIF+EXaHYeO2UJ6855m8Wpxs4bP/jX6vMV38IvvnHy4tWD50= alukard@AMD-Workstation" "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDP0/DReYSAfkucroMTdELzTORsGhhbEa+W0FDFBnwViHuoqoKvetCOkW657icexc5v/j6Ghy3+Li9twbHnEDzUJVtNtauhGMjOcUYt6pTbeJ09CGSAh+orxzeY4vXp7ANb91xW8yRn/EE4ALxqbLsc/D7TUMl11fmf0UW+kLgU5TcUYVSLMjQqBpD1Lo7lXLrImloDxe5fwoBDT09E59r9tq6+/3aHz8mpKRLsIQIV0Av00BRJ+/OVmZuBd9WS35rfkpUYmpEVInSJy3G4O6kCvY/zc9Bnh67l4kALZZ0+6W23kBGrzaRfaOtCEcscwfIu+6GXiHOL33rrMNNinF0T2942jGc18feL6P/LZCzqz8bGdFNxT43jAGPeDDcrJEWAJZFO3vVTP65dTRTHQG2KlQMzS7tcif6YUlY2JLJIb61ZfLoShH/ini/tqsGT0Be1f3ndOFt48h4XMW1oIF+EXaHYeO2UJ6855m8Wpxs4bP/jX6vMV38IvvnHy4tWD50= alukard@AMD-Workstation"
]; ];
@ -22,12 +22,12 @@ with config.deviceSpecific; {
programs.ssh.extraConfig = '' programs.ssh.extraConfig = ''
Host nix-builder Host nix-builder
hostname 192.168.0.100 hostname 192.168.0.100
user alukard user ${config.mainuser}
identitiesOnly yes identitiesOnly yes
identityFile ${config.secrets.ssh-builder.decrypted} identityFile ${config.secrets.ssh-builder.decrypted}
''; '';
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
programs.ssh = { programs.ssh = {
enable = true; enable = true;
matchBlocks = { matchBlocks = {
@ -40,19 +40,19 @@ with config.deviceSpecific; {
}; };
"matrix.pve" = { "matrix.pve" = {
hostname = "192.168.0.11"; hostname = "192.168.0.11";
user = "alukard"; user = config.mainuser;
}; };
"nixos.pve" = { "nixos.pve" = {
hostname = "192.168.0.12"; hostname = "192.168.0.12";
user = "alukard"; user = config.mainuser;
}; };
"dell.ataraxia" = { "dell.ataraxia" = {
hostname = "192.168.0.101"; hostname = "192.168.0.101";
user = "alukard"; user = config.mainuser;
}; };
"amd.ataraxia" = { "amd.ataraxia" = {
hostname = "192.168.0.100"; hostname = "192.168.0.100";
user = "alukard"; user = config.mainuser;
}; };
}; };
extraConfig = '' extraConfig = ''

View File

@ -1,6 +1,6 @@
{ config, lib, pkgs, inputs, ... }: { config, lib, pkgs, inputs, ... }:
with config.deviceSpecific; { with config.deviceSpecific; {
home-manager.users.alukard.programs.waybar = { home-manager.users.${config.mainuser}.programs.waybar = {
enable = true; enable = true;
# package = inputs.nixpkgs-wayland.packages.${pkgs.system}.waybar; # package = inputs.nixpkgs-wayland.packages.${pkgs.system}.waybar;
settings = { settings = {

View File

@ -1,5 +1,5 @@
{ config, pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
xdg.enable = true; xdg.enable = true;
xdg.userDirs.enable = true; xdg.userDirs.enable = true;

View File

@ -2,7 +2,7 @@
environment.pathsToLink = [ "/share/zsh" ]; environment.pathsToLink = [ "/share/zsh" ];
environment.sessionVariables.SHELL = "${pkgs.zsh}/bin/zsh"; environment.sessionVariables.SHELL = "${pkgs.zsh}/bin/zsh";
home-manager.users.alukard = { home-manager.users.${config.mainuser} = {
home.sessionVariables.SHELL = "${pkgs.zsh}/bin/zsh"; home.sessionVariables.SHELL = "${pkgs.zsh}/bin/zsh";
programs = { programs = {
zsh = { zsh = {

View File

@ -19,6 +19,7 @@
secrets-envsubst secrets-envsubst
security security
ssh ssh
users
zsh zsh
]; ];
} }

View File

@ -17,6 +17,7 @@
secrets-envsubst secrets-envsubst
security security
ssh ssh
users
zsh zsh
vscode-server vscode-server

View File

@ -18,6 +18,7 @@
secrets-envsubst secrets-envsubst
security security
ssh ssh
users
zsh zsh
]; ];