[tohru] DRY home directory more sensibly

This commit is contained in:
Katherina Walshe-Grey 2024-06-04 21:27:40 +01:00
parent 7a0921806e
commit 85b08086fb

View file

@ -3,6 +3,7 @@
{ {
users.users.bluebird = { users.users.bluebird = {
isNormalUser = true; isNormalUser = true;
home = "/home/bluebird";
description = "Bluebird"; description = "Bluebird";
extraGroups = [ extraGroups = [
"wheel" # sudo "wheel" # sudo
@ -17,83 +18,79 @@
]; ];
}; };
home-manager.users.bluebird = { pkgs, ... }: home-manager.users.bluebird = { pkgs, ... }: {
let home.homeDirectory = config.users.users.bluebird.home;
homeDirectory = "/home/bluebird";
in
{
home.homeDirectory = homeDirectory;
home.packages = with pkgs; [ home.packages = with pkgs; [
fortune fortune
htop htop
tree tree
nil nil
nixpkgs-fmt nixpkgs-fmt
]; ];
dconf = { dconf = {
enable = true; enable = true;
settings = settings =
let
backgroundOptions = {
color-shading-type = "solid";
picture-options = "zoom";
picture-uri = "${homeDirectory}/.background-image";
primary-color = "#3a4ba0";
secondary-color = "#2f302f";
};
in
{
"org/gnome/desktop/background" = backgroundOptions // {
picture-uri-dark = backgroundOptions.picture-uri;
};
"org/gnome/desktop/screensaver" = backgroundOptions;
"org/gnome/desktop/interface".color-scheme = "prefer-dark";
};
};
home.file.".background-image".source = ./background-image.jpg;
programs.chromium.enable = true;
programs.git = {
enable = true;
userName = "Katherina Walshe-Grey";
userEmail = "git@katherina.rocks";
};
programs.vscode =
let let
system = builtins.currentSystem; backgroundOptions = {
sources = import ../../npins; color-shading-type = "solid";
extensions = (import sources.nix-vscode-extensions).extensions.${system}; picture-options = "zoom";
picture-uri = "${config.users.users.bluebird.home}/.background-image";
primary-color = "#3a4ba0";
secondary-color = "#2f302f";
};
in in
{ {
enable = true; "org/gnome/desktop/background" = backgroundOptions // {
enableExtensionUpdateCheck = false; picture-uri-dark = backgroundOptions.picture-uri;
enableUpdateCheck = false;
package = pkgs.vscodium;
extensions = (with pkgs.vscode-extensions; [
jnoortheen.nix-ide
ms-python.python
]) ++ (with extensions.open-vsx; [
robbowen.synthwave-vscode
]);
mutableExtensionsDir = false;
userSettings = {
"extensions.autoUpdate" = false;
"git.autofetch" = true;
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nil";
"nix.serverSettings".nil = {
diagnostics.ignored = [ "unused_binding" "unused_with" ];
formatting.command = [ "nixpkgs-fmt" ];
};
"workbench.colorTheme" = "SynthWave '84";
}; };
"org/gnome/desktop/screensaver" = backgroundOptions;
"org/gnome/desktop/interface".color-scheme = "prefer-dark";
}; };
home.stateVersion = "23.11";
}; };
home.file.".background-image".source = ./background-image.jpg;
programs.chromium.enable = true;
programs.git = {
enable = true;
userName = "Katherina Walshe-Grey";
userEmail = "git@katherina.rocks";
};
programs.vscode =
let
system = builtins.currentSystem;
sources = import ../../npins;
extensions = (import sources.nix-vscode-extensions).extensions.${system};
in
{
enable = true;
enableExtensionUpdateCheck = false;
enableUpdateCheck = false;
package = pkgs.vscodium;
extensions = (with pkgs.vscode-extensions; [
jnoortheen.nix-ide
ms-python.python
]) ++ (with extensions.open-vsx; [
robbowen.synthwave-vscode
]);
mutableExtensionsDir = false;
userSettings = {
"extensions.autoUpdate" = false;
"git.autofetch" = true;
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nil";
"nix.serverSettings".nil = {
diagnostics.ignored = [ "unused_binding" "unused_with" ];
formatting.command = [ "nixpkgs-fmt" ];
};
"workbench.colorTheme" = "SynthWave '84";
};
};
home.stateVersion = "23.11";
};
} }