Refactor config paths & update host imports

• Relocates common configurations from a user-specific directory to a global hierarchy
• Adds host-specific files and updates import paths for better modularity
• Introduces an experimental GNOME mutter feature
This commit is contained in:
Chris Toph 2025-05-27 14:44:19 -04:00
parent eecdf2ff1c
commit 270ebded3d
71 changed files with 196 additions and 94 deletions

View file

@ -108,6 +108,10 @@ with lib.hm.gvariant;
num-workspaces = 3;
};
"org/gnome/mutter" = {
experimental-features = [ "scale-monitor-framebuffer" ];
};
"org/gnome/nautilus/preferences" = {
default-folder-viewer = "icon-view";
migrated-gtk-settings = true;

View file

Before

Width:  |  Height:  |  Size: 6.2 MiB

After

Width:  |  Height:  |  Size: 6.2 MiB

View file

Before

Width:  |  Height:  |  Size: 2.9 MiB

After

Width:  |  Height:  |  Size: 2.9 MiB

View file

Before

Width:  |  Height:  |  Size: 8.9 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

View file

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View file

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View file

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View file

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View file

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View file

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View file

Before

Width:  |  Height:  |  Size: 189 KiB

After

Width:  |  Height:  |  Size: 189 KiB

View file

@ -0,0 +1,22 @@
{
lib,
pkgs,
...
}:
{
# imports = lib.flatten [
# ## Common Imports ##
# (map lib.custom.relativeToRoot [
# "home/global/common/development"
# ])
# ## Cloud Specific ##
# ./config
# ];
## Packages with no needed configs ##
# home.packages = builtins.attrValues {
# inherit (pkgs)
# ;
# };
}

View file

@ -1,13 +1,20 @@
{
lib,
pkgs,
config,
...
}:
{
imports = [
## Required Configs ##
../common/core # required
];
# imports = lib.flatten [
# ## Common Imports ##
# (map lib.custom.relativeToRoot [
# "home/global/common/development"
# ])
# ## Komodo Specific ##
# ./config
# ];
home.file = {
Pool.source = config.lib.file.mkOutOfStoreSymlink "/pool";

View file

@ -0,0 +1,22 @@
{
lib,
pkgs,
...
}:
{
# imports = lib.flatten [
# ## Common Imports ##
# (map lib.custom.relativeToRoot [
# "home/global/common/development"
# ])
# ## Proxy Specific ##
# ./config
# ];
## Packages with no needed configs ##
# home.packages = builtins.attrValues {
# inherit (pkgs)
# ;
# };
}

View file

@ -1,14 +1,17 @@
{
lib,
pkgs,
...
}:
{
imports = [
## Required Configs ##
../common/core # required
imports = lib.flatten [
## Common Imports ##
(map lib.custom.relativeToRoot [
"home/global/common/vscode-server.nix"
])
## Host-specific Optional Configs ##
../common/optional/vscode-server.nix
## Nix Specific ##
# ./config
];
## Packages with no needed configs ##

View file

@ -0,0 +1,22 @@
{
lib,
pkgs,
...
}:
{
# imports = lib.flatten [
# ## Common Imports ##
# (map lib.custom.relativeToRoot [
# "home/global/common/development"
# ])
# ## Proxy Specific ##
# ./config
# ];
## Packages with no needed configs ##
# home.packages = builtins.attrValues {
# inherit (pkgs)
# ;
# };
}

View file

@ -1,20 +1,20 @@
{
pkgs,
lib,
inputs,
config,
...
}:
{
imports = [
## Required Configs ##
../common/core # required
## Optional Configs ##
../common/optional/browsers
../common/optional/gnome
../common/optional/development
../common/optional/gaming
../common/optional/xdg.nix
imports = lib.flatten [
## Common Imports ##
(map lib.custom.relativeToRoot [
"home/global/common/browsers"
"home/global/common/gnome"
"home/global/common/development"
"home/global/common/gaming"
"home/global/common/xdg.nix"
])
## Rune Specific ##
./config

39
home/hosts/vm/default.nix Normal file
View file

@ -0,0 +1,39 @@
{
lib,
pkgs,
...
}:
{
imports = lib.flatten [
## Common Imports ##
(map lib.custom.relativeToRoot [
"home/global/common/browsers"
"home/global/common/gnome"
"home/global/common/development"
"home/global/common/vscode-server.nix"
"home/global/common/xdg.nix"
])
## VM Specific ##
# ./config
];
## Packages with no needed configs ##
home.packages = builtins.attrValues {
inherit (pkgs)
## Tools ##
inspector
foot
;
};
monitors = [
{
name = "Virtual-1";
width = 2560;
height = 1440;
refreshRate = 60;
primary = true;
}
];
}

View file

@ -1,10 +0,0 @@
{
pkgs,
...
}:
{
imports = [
## Required Configs ##
../common/core # required
];
}

View file

@ -1,10 +0,0 @@
{
pkgs,
...
}:
{
imports = [
## Required Configs ##
../common/core # required
];
}

View file

@ -1,16 +0,0 @@
{
pkgs,
...
}:
{
imports = [
## Required Configs ##
../common/core # required
];
## Packages with no needed configs ##
# home.packages = builtins.attrValues {
# inherit (pkgs)
# ;
# };
}

View file

@ -1,38 +0,0 @@
{
pkgs,
...
}:
{
imports = [
## Required Configs ##
../common/core # required
## Host-specific Optional Configs ##
../common/optional/browsers
# ../common/optional/gnome
../common/optional/hyprland
../common/optional/development
# ../common/optional/gaming
../common/optional/vscode-server.nix
../common/optional/xdg.nix # file associations
];
## Packages with no needed configs ##
home.packages = builtins.attrValues {
inherit (pkgs)
## Tools ##
inspector
foot
;
};
monitors = [
{
name = "Virtual-1";
width = 2560;
height = 1440;
refreshRate = 60;
primary = true;
}
];
}

View file

@ -0,0 +1,7 @@
{
lib,
...
}:
{
imports = lib.custom.scanPaths ./.;
}

View file

@ -0,0 +1,12 @@
{
lib,
hostSpec,
...
}:
{
imports = [
(lib.custom.relativeToRoot "home/global/core")
./config
(lib.custom.relativeToRoot "home/hosts/${hostSpec.hostName}")
];
}

View file

@ -0,0 +1,7 @@
{
lib,
...
}:
{
imports = lib.custom.scanPaths ./.;
}

View file

@ -0,0 +1,12 @@
{
lib,
hostSpec,
...
}:
{
imports = [
(lib.custom.relativeToRoot "home/global/core")
./config
(lib.custom.relativeToRoot "home/hosts/${hostSpec.hostName}")
];
}

View file

@ -0,0 +1,7 @@
{
lib,
...
}:
{
imports = lib.custom.scanPaths ./.;
}

View file

@ -0,0 +1,12 @@
{
lib,
hostSpec,
...
}:
{
imports = [
(lib.custom.relativeToRoot "home/global/core")
./config
(lib.custom.relativeToRoot "home/hosts/${hostSpec.hostName}")
];
}

View file

@ -88,7 +88,7 @@ in
imports = [
(
{ config, ... }:
import (lib.custom.relativeToRoot "home/${username}/${hostSpec.hostName}") {
import (lib.custom.relativeToRoot "home/users/${username}") {
inherit
config
hostSpec