My Nix Configuration

[home] Move top-level files to home modules

Changed files
+146 -101
homes
x86_64-linux
modules
home
scripts
theming
xdg
-18
homes/x86_64-linux/pyrox/scripts.nix
···
-
{
-
lib,
-
pkgs,
-
config,
-
...
-
}: {
-
home.activation = {
-
cloneDoom = lib.hm.dag.entryAfter ["writeBoundary"] ''
-
if [ ! -d "${config.home.homeDirectory}/.config/emacs" ]; then
-
$DRY_RUN_CMD ${pkgs.git}/bin/git clone --depth=1 --single-branch "https://github.com/doomemacs/doomemacs" "${config.home.homeDirectory}/.config/emacs"
-
$DRY_RUN_CMD ${config.home.homeDirectory}/.config/emacs/bin/doom sync -u
-
fi
-
'';
-
removeLocalFonts = lib.hm.dag.entryAfter ["writeBoundary"] ''
-
unlink ${config.home.homeDirectory}/.local/share/fonts
-
'';
-
};
-
}
+10 -4
homes/x86_64-linux/pyrox/theming.nix modules/home/theming/default.nix
···
{
pkgs,
config,
+
lib,
+
osConfig,
...
-
}: {
+
}:
+
let
+
osPro = osConfig.py.profiles;
+
in
+
{
catppuccin = {
flavor = "mocha";
accent = "blue";
};
-
gtk = {
+
gtk = lib.mkIf osPro.graphical.enable {
enable = true;
catppuccin = {
enable = true;
size = "compact";
-
tweaks = ["rimless"];
+
tweaks = [ "rimless" ];
cursor.enable = true;
};
font = {
name = "IBM Plex Mono";
size = 14;
};
-
gtk3.bookmarks = ["file:///${config.home.homeDirectory}/Downloads"];
+
gtk3.bookmarks = [ "file:///${config.home.homeDirectory}/Downloads" ];
iconTheme = {
package = pkgs.papirus-icon-theme;
name = "Papirus-Dark";
-79
homes/x86_64-linux/pyrox/xdg.nix
···
-
{config, lib, pkgs, ...}: let
-
homeDir = config.home.homeDirectory;
-
in {
-
xdg = {
-
enable = true;
-
mime.enable = true;
-
configHome = lib.mkForce "${homeDir}/.config";
-
dataHome = lib.mkForce "${homeDir}/.local/share";
-
portal = {
-
enable = true;
-
xdgOpenUsePortal = true;
-
extraPortals = [
-
pkgs.xdg-desktop-portal-gtk
-
pkgs.xdg-desktop-portal-wlr
-
];
-
config = {
-
common = {
-
default = [
-
"gtk"
-
];
-
"org.freedesktop.impl.portal.Screenshot" = ["wlr"];
-
"org.freedesktop.impl.portal.ScreenCast" = ["wlr"];
-
};
-
};
-
};
-
mimeApps = {
-
enable = true;
-
associations.added = {
-
"application/pdf" = ["firefox.desktop"];
-
"application/rdf+xml" = ["firefox.desktop"];
-
"application/rss+xml" = ["firefox.desktop"];
-
"application/xhtml+xml" = ["firefox.desktop"];
-
"application/xhtml_xml" = ["firefox.desktop"];
-
"application/xml" = ["firefox.desktop"];
-
"image/gif" = ["viewnior.desktop" "firefox.desktop"];
-
"image/jpeg" = ["viewnior.desktop" "firefox.desktop"];
-
"image/png" = ["viewnior.desktop" "firefox.desktop"];
-
"image/webp" = ["viewnior.desktop" "firefox.desktop"];
-
"text/html" = ["firefox.desktop"];
-
"text/xml" = ["firefox.desktop"];
-
"x-scheme-handler/http" = ["firefox.desktop"];
-
"x-scheme-handler/https" = ["firefox.desktop"];
-
"x-scheme-handler/about" = ["firefox.desktop"];
-
"x-scheme-handler/unknown" = ["firefox.desktop"];
-
"x-scheme-handler/mailto" = ["thunderbird.desktop" "firefox.desktop"];
-
"x-scheme-handler/webcal" = ["firefox.desktop" "thunderbird.desktop"];
-
};
-
defaultApplications = {
-
"application/pdf" = ["firefox.desktop"];
-
"application/rdf+xml" = ["firefox.desktop"];
-
"application/rss+xml" = ["firefox.desktop"];
-
"application/xhtml+xml" = ["firefox.desktop"];
-
"application/xhtml_xml" = ["firefox.desktop"];
-
"application/xml" = ["firefox.desktop"];
-
"image/gif" = ["viewnior.desktop" "firefox.desktop"];
-
"image/jpeg" = ["viewnior.desktop" "firefox.desktop"];
-
"image/png" = ["viewnior.desktop" "firefox.desktop"];
-
"image/webp" = ["viewnior.desktop" "firefox.desktop"];
-
"text/html" = ["firefox.desktop"];
-
"text/xml" = ["firefox.desktop"];
-
"x-scheme-handler/http" = ["firefox.desktop"];
-
"x-scheme-handler/https" = ["firefox.desktop"];
-
"x-scheme-handler/about" = ["firefox.desktop"];
-
"x-scheme-handler/unknown" = ["firefox.desktop"];
-
"x-scheme-handler/mailto" = ["thunderbird.desktop" "firefox.desktop"];
-
"x-scheme-handler/webcal" = ["firefox.desktop" "thunderbird.desktop"];
-
"x-scheme-handler/steam" = ["steam-native.desktop" "steam.desktop"];
-
"x-scheme-handler/steamlink" = ["steam-native.desktop" "steam.desktop"];
-
};
-
};
-
userDirs = {
-
enable = true;
-
createDirectories = true;
-
music = "$HOME/music";
-
publicShare = "$HOME/.xdg/share";
-
templates = "$HOME/.xdg/templates";
-
};
-
};
-
}
+8
modules/home/scripts/default.nix
···
+
{ lib, config, ... }:
+
{
+
home.activation = {
+
removeLocalFonts = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
+
unlink ${config.home.homeDirectory}/.local/share/fonts
+
'';
+
};
+
}
+128
modules/home/xdg/default.nix
···
+
{
+
config,
+
lib,
+
pkgs,
+
osConfig,
+
...
+
}:
+
let
+
homeDir = config.home.homeDirectory;
+
osPro = osConfig.py.profiles;
+
in
+
{
+
xdg = {
+
enable = true;
+
mime.enable = lib.mkIf osPro.graphical.enable true;
+
configHome = lib.mkForce "${homeDir}/.config";
+
dataHome = lib.mkForce "${homeDir}/.local/share";
+
portal = lib.mkIf osPro.graphical.enable {
+
enable = true;
+
xdgOpenUsePortal = true;
+
extraPortals = [
+
pkgs.xdg-desktop-portal-gtk
+
pkgs.xdg-desktop-portal-wlr
+
];
+
config = {
+
common = {
+
default = [ "gtk" ];
+
"org.freedesktop.impl.portal.Screenshot" = [ "wlr" ];
+
"org.freedesktop.impl.portal.ScreenCast" = [ "wlr" ];
+
};
+
};
+
};
+
mimeApps = lib.mkIf osPro.graphical.enable {
+
enable = true;
+
associations.added = {
+
"application/pdf" = [ "firefox.desktop" ];
+
"application/rdf+xml" = [ "firefox.desktop" ];
+
"application/rss+xml" = [ "firefox.desktop" ];
+
"application/xhtml+xml" = [ "firefox.desktop" ];
+
"application/xhtml_xml" = [ "firefox.desktop" ];
+
"application/xml" = [ "firefox.desktop" ];
+
"image/gif" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"image/jpeg" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"image/png" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"image/webp" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"text/html" = [ "firefox.desktop" ];
+
"text/xml" = [ "firefox.desktop" ];
+
"x-scheme-handler/http" = [ "firefox.desktop" ];
+
"x-scheme-handler/https" = [ "firefox.desktop" ];
+
"x-scheme-handler/about" = [ "firefox.desktop" ];
+
"x-scheme-handler/unknown" = [ "firefox.desktop" ];
+
"x-scheme-handler/mailto" = [
+
"thunderbird.desktop"
+
"firefox.desktop"
+
];
+
"x-scheme-handler/webcal" = [
+
"firefox.desktop"
+
"thunderbird.desktop"
+
];
+
};
+
defaultApplications = {
+
"application/pdf" = [ "firefox.desktop" ];
+
"application/rdf+xml" = [ "firefox.desktop" ];
+
"application/rss+xml" = [ "firefox.desktop" ];
+
"application/xhtml+xml" = [ "firefox.desktop" ];
+
"application/xhtml_xml" = [ "firefox.desktop" ];
+
"application/xml" = [ "firefox.desktop" ];
+
"image/gif" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"image/jpeg" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"image/png" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"image/webp" = [
+
"viewnior.desktop"
+
"firefox.desktop"
+
];
+
"text/html" = [ "firefox.desktop" ];
+
"text/xml" = [ "firefox.desktop" ];
+
"x-scheme-handler/http" = [ "firefox.desktop" ];
+
"x-scheme-handler/https" = [ "firefox.desktop" ];
+
"x-scheme-handler/about" = [ "firefox.desktop" ];
+
"x-scheme-handler/unknown" = [ "firefox.desktop" ];
+
"x-scheme-handler/mailto" = [
+
"thunderbird.desktop"
+
"firefox.desktop"
+
];
+
"x-scheme-handler/webcal" = [
+
"firefox.desktop"
+
"thunderbird.desktop"
+
];
+
"x-scheme-handler/steam" = [
+
"steam-native.desktop"
+
"steam.desktop"
+
];
+
"x-scheme-handler/steamlink" = [
+
"steam-native.desktop"
+
"steam.desktop"
+
];
+
};
+
};
+
userDirs = {
+
enable = true;
+
createDirectories = true;
+
music = "$HOME/music";
+
publicShare = "$HOME/.xdg/share";
+
templates = "$HOME/.xdg/templates";
+
};
+
};
+
}