nixos-configs/modules/desktop/default.nix
matt1432 4971014e19 chore: update sources
Flake Inputs:
    • Updated input 'custom-sidebar-src':
        'github:elchininet/custom-sidebar' (2025-03-12) rev: 82f40bbaa1bf833290de84efbdc576362cc75905
      → 'github:elchininet/custom-sidebar' (2025-03-15) rev: c7750d7b10b01d17d9850db58a8c8ac8211eb9d5

    • Updated input 'gpu-screen-recorder-src':
        'git+https://repo.dec05eba.com/gpu-screen-recorder' (2025-03-13) rev: bab9a0560d15e7e1621469cf8db3e70bc29833b6
      → 'git+https://repo.dec05eba.com/gpu-screen-recorder' (2025-03-14) rev: 190c775a08ca092ac0145ce3483a421bfdc940c6

    • Updated input 'home-manager':
        'github:nix-community/home-manager' (2025-03-14) rev: 30cce6848a5aa41ceb5fb33185b84868cc3e9bef
      → 'github:nix-community/home-manager' (2025-03-14) rev: 4e12151c9e014e2449e0beca2c0e9534b96a26b4

    • Updated input 'hyprgrass':
        'github:horriblename/hyprgrass' (2025-03-13) rev: ce0dcda79e0b24c9dfee2d80df50940669554f9d
      → 'github:horriblename/hyprgrass' (2025-03-14) rev: 94ebb595b646c9788b9d39928648deab24ece9d0

    • Updated input 'hyprland':
        'github:hyprwm/Hyprland' (2025-03-12) rev: e86d3a14e46d19d8a47f8ceb6410546715d45f10
      → 'github:hyprwm/Hyprland' (2025-03-15) rev: e59680481d74fdfcc432bb9640ba2c979022c4c2

    • Updated input 'hyprland/aquamarine':
        'github:hyprwm/aquamarine' (2025-03-06) rev: 81498562d0f53e613d30368bb5b076784fa86f80
      → 'github:hyprwm/aquamarine' (2025-03-14) rev: bea48d0bbe15fb3d758a8b6be865836c97056575

    • Updated input 'hyprland/hyprutils':
        'github:hyprwm/hyprutils' (2025-03-04) rev: 6b0154b183f9539097f13af9b5da78ca24da6df2
      → 'github:hyprwm/hyprutils' (2025-03-09) rev: dd1f720cbc2dbb3c71167c9598045dd3261d27b3

    • Updated input 'hyprland/xdph':
        'github:hyprwm/xdg-desktop-portal-hyprland' (2025-01-23) rev: e09dfe2726c8008f983e45a0aa1a3b7416aaeb8a
      → 'github:hyprwm/xdg-desktop-portal-hyprland' (2025-03-14) rev: 150b0b6f52bb422a1b232a53698606fe0320dde0

    • Updated input 'jovian':
        'github:Jovian-Experiments/Jovian-NixOS' (2025-03-13) rev: 662d117ac0ffc81f3e91b5f0fb800c3effd904a1
      → 'github:Jovian-Experiments/Jovian-NixOS' (2025-03-14) rev: 534188d0b0cbddf3f9df3f20cfbc424efb46b36c

    • Updated input 'material-symbols-src':
        'github:beecho01/material-symbols' (2025-03-05) rev: 35cb201a18931f2096a883cf86bc08cc11ec456c
      → 'github:beecho01/material-symbols' (2025-03-14) rev: 376709da5aa69163ffb02deb13e9e7fac93ae53f

    • Updated input 'nix-gaming':
        'github:fufexan/nix-gaming' (2025-03-11) rev: 64a949349294543a48b3f946c9fca84332d1398b
      → 'github:fufexan/nix-gaming' (2025-03-14) rev: b2a32ef80ad0cc7f3dee928771791625ff9494c1

    • Updated input 'nixpkgs':
        'github:NixOS/nixpkgs' (2025-03-13) rev: 01f44b8389188522fba255168c70eda093867746
      → 'github:NixOS/nixpkgs' (2025-03-13) rev: 6607cf789e541e7873d40d3a8f7815ea92204f32

    • Updated input 'nixpkgs-wayland':
        'github:nix-community/nixpkgs-wayland' (2025-03-13) rev: 35d3b8403711ab0b38c4554703c283900cfeeb7a
      → 'github:nix-community/nixpkgs-wayland' (2025-03-15) rev: ff6a5e6d2e8ae7ffff051ea35966ae2d225f397e

    • Updated input 'spotifyplus-src':
        'github:thlucas1/homeassistantcomponent_spotifyplus' (2025-03-13) rev: cf1acfa270b14bdaae8ca4f36cf7099f65824554
      → 'github:thlucas1/homeassistantcomponent_spotifyplus' (2025-03-14) rev: 05a60bbefa09ac173ce8dab0dd5d71d23b379ac9

    • Updated input 'spotifywebapi-src':
        'github:thlucas1/SpotifyWebApiPython' (2025-03-13) rev: e6c5bfe0c5621bf0e24d61060a7c181a6226c6c4
      → 'github:thlucas1/SpotifyWebApiPython' (2025-03-14) rev: 23e89dc0a68d10447e756ee6c0e5e9fa0fdbdc18

Docker Images:
    • vegardit/gitea-act-runner dind-latest:
       sha256:a1c106a18b1fa02736064a18f9d31d18253347b7625673a58d5cfd98cc64bc2f
     → sha256:6190e52b6df100a1ca6be7e2e8331c60422440f98dfd286cc49c6be54d6783b5

    • nextcloud fpm:
       sha256:dd76149894cc80b2d55b06d9d3f79a8aacc9d5246161bdcf4e0271406af10c8e
     → sha256:6854c0336040c628b84bd286fa898675d00d77139b0299c6e39793da454e2115

    • ghcr.io/linuxserver/sonarr latest:
       sha256:49a8e636fd4514b23d37c84660101fecbb632174ba0569e0f09bbd2659a2a925
     → sha256:b666479159c0ffc17d5c2281737c9a88d78afcaa0aa52cb441b46336f6feba31

nix-update executions:
    homepage: 1.0.1 -> 1.0.2
2025-03-14 23:37:36 -04:00

122 lines
2.6 KiB
Nix

self: {
config,
lib,
...
}: let
inherit (self.inputs) home-manager;
inherit (lib) elemAt mkIf mkOption types;
cfg = config.roles.desktop;
flakeDir = config.environment.variables.FLAKE;
in {
imports = [
(import ./manager self)
(import ./environment self)
self.nixosModules.nvidia
home-manager.nixosModules.home-manager
];
config = mkIf cfg.enable {
assertions = [
{
assertion = lib.hasPrefix "/home/${cfg.user}/" flakeDir;
message = ''
Your $FLAKE environment variable needs to point to a directory in
the main users' home to use the desktop module.
'';
}
];
nixpkgs.overlays = map (i: self.inputs.${i}.overlays.default) [
"hyprgrass"
"hyprland"
"hyprland-plugins"
"hyprpaper"
"nixpkgs-wayland"
];
};
options.roles.desktop = {
enable = mkOption {
type = types.bool;
default = false;
};
user = mkOption {
type = types.str;
description = ''
The name of the user who is going to be using the "DE".
'';
};
ags.enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether we want to enable AGS for the DE shell.
'';
};
mainMonitor = mkOption {
type = types.str;
description = ''
The name of the main monitor used for Hyprland
and Greetd which also uses Hyprland.
'';
# This is to allow a bash script to know whether this value exists
default = "null";
};
fontName = mkOption {
type = types.str;
default = elemAt config.fonts.fontconfig.defaultFonts.monospace 0;
};
fontSize = mkOption {
type = types.float;
default = 12.0;
description = ''
The size of the font in GUIs.
'';
};
isLaptop = mkOption {
type = types.bool;
description = ''
If the computer is a laptop.
'';
default = false;
};
isTouchscreen = mkOption {
type = types.bool;
description = ''
If the computer has a touchscreen.
'';
default = false;
};
displayManager = {
enable = mkOption {
type = types.bool;
default = true;
description = ''
Whether we want to enable the Display Manager.
'';
};
duplicateScreen = mkOption {
type = types.bool;
description = ''
If we should duplicate the login prompt on all monitors.
'';
default = true;
};
};
};
# For accurate stack trace
_file = ./default.nix;
}