From 60271a2359db305a82d8924f8a6fcd267b16460f Mon Sep 17 00:00:00 2001 From: Christoph Hollizeck Date: Mon, 20 Apr 2026 17:12:57 +0200 Subject: [PATCH 1/2] dms: use greeter to login --- flake.lock | 21 +++++++++++++++ flake.nix | 5 ++++ modules/desktop/addons/dms/default.nix | 3 +++ modules/desktop/addons/dms/settings.json | 2 +- modules/desktop/default.nix | 33 ++++++++++++++++-------- modules/desktop/niri.nix | 21 +++++++++++++++ modules/users/cholli/default.nix | 8 ++++++ 7 files changed, 81 insertions(+), 12 deletions(-) diff --git a/flake.lock b/flake.lock index dc8d382..1375df3 100644 --- a/flake.lock +++ b/flake.lock @@ -255,6 +255,26 @@ "type": "github" } }, + "danksearch": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1775400666, + "narHash": "sha256-R0Eh0KeaclBb5tIs8hQg6+DjqENn7SBlZkJKZCt3NYg=", + "owner": "AvengeMedia", + "repo": "danksearch", + "rev": "53663c86805edd79c9c17fa0adf14f54b8edfc24", + "type": "github" + }, + "original": { + "owner": "AvengeMedia", + "repo": "danksearch", + "type": "github" + } + }, "devenv": { "inputs": { "cachix": "cachix", @@ -2466,6 +2486,7 @@ "inputs": { "catppuccin": "catppuccin", "dankMaterialShell": "dankMaterialShell", + "danksearch": "danksearch", "devenv": "devenv", "dgop": "dgop", "disko": "disko", diff --git a/flake.nix b/flake.nix index 4503fca..785aefa 100644 --- a/flake.nix +++ b/flake.nix @@ -101,6 +101,11 @@ }; }; + danksearch = { + url = "github:AvengeMedia/danksearch"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + dgop = { url = "github:AvengeMedia/dgop"; inputs.nixpkgs.follows = "nixpkgs-unstable"; diff --git a/modules/desktop/addons/dms/default.nix b/modules/desktop/addons/dms/default.nix index 2c39347..b2e5b84 100644 --- a/modules/desktop/addons/dms/default.nix +++ b/modules/desktop/addons/dms/default.nix @@ -11,6 +11,7 @@ imports = [ inputs.dankMaterialShell.homeModules.dank-material-shell inputs.dankMaterialShell.homeModules.niri + inputs.danksearch.homeModules.dsearch ]; config = lib.mkIf osConfig.programs.niri.enable { @@ -40,6 +41,8 @@ enableAudioWavelength = false; enableCalendarEvents = false; }; + + programs.dsearch.enable = true; }; }; } diff --git a/modules/desktop/addons/dms/settings.json b/modules/desktop/addons/dms/settings.json index 5b1b5cb..056932d 100644 --- a/modules/desktop/addons/dms/settings.json +++ b/modules/desktop/addons/dms/settings.json @@ -214,7 +214,7 @@ "greeterRememberLastUser": true, "greeterEnableFprint": false, "greeterEnableU2f": false, - "greeterWallpaperPath": "", + "greeterWallpaperPath": "/home/cholli/Pictures/horizon-zero-dawn-aloy.jpg", "greeterUse24HourClock": true, "greeterShowSeconds": false, "greeterPadHours12Hour": false, diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index 02d600e..42a4668 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -13,22 +13,25 @@ in { - security.pam.services.gdm.enableGnomeKeyring = true; - services.displayManager.gdm = { - enable = true; - wayland = true; - }; - environment = { systemPackages = with pkgs; [ zenbrowser sourcegit + + (pkgs.catppuccin-kvantum.override { + accent = "lavender"; + variant = "mocha"; + }) + pkgs.adwaita-icon-theme ]; sessionVariables = { DEFAULT_BROWSER = "${zenbrowser}/bin/zen-beta"; BROWSER = "zen-beta"; + + QT_QPA_PLATFORMTHEME = "kvantum"; + QS_ICON_THEME = "adwaita"; }; etc = lib.mkIf config.programs._1password.enable { @@ -57,11 +60,19 @@ # }; # }; - # qt = { - # enable = true; - # platformTheme.name = "gnome"; - # style.name = "adwaita-dark"; - # }; + qt = { + enable = true; + platformTheme = "qtct"; + style = { + package = ( + pkgs.catppuccin-kvantum.override { + accent = "lavender"; + variant = "mocha"; + } + ); + name = "kvantum"; + }; + }; systemd.user.sessionVariables = osConfig.home-manager.users.cholli.home.sessionVariables; diff --git a/modules/desktop/niri.nix b/modules/desktop/niri.nix index bea3f1b..3a9c73d 100644 --- a/modules/desktop/niri.nix +++ b/modules/desktop/niri.nix @@ -3,11 +3,32 @@ nixos.niri = { inputs, pkgs, ... }: { + imports = [ + inputs.dankMaterialShell.nixosModules.greeter + ]; + programs.niri = { enable = true; package = inputs.niri-flake.packages.${pkgs.stdenv.hostPlatform.system}.niri-unstable; }; + programs.dank-material-shell = { + greeter = { + enable = true; + compositor.name = "niri"; + + configHome = "/home/cholli"; + }; + }; + + security = { + pam = { + services.greetd.enableGnomeKeyring = true; + }; + }; + + services.accounts-daemon.enable = true; + environment.systemPackages = with pkgs; [ kitty diff --git a/modules/users/cholli/default.nix b/modules/users/cholli/default.nix index 7d8da18..4e630e4 100644 --- a/modules/users/cholli/default.nix +++ b/modules/users/cholli/default.nix @@ -68,6 +68,14 @@ topLevel: { nix.settings.trusted-users = [ topLevel.config.flake.meta.users.cholli.username ]; + systemd.tmpfiles.rules = + let + username = "cholli"; + in + [ + "f+ /var/lib/AccountsService/users/${username} 0600 root root - [User]\\nIcon=/var/lib/AccountsService/icons/${username}\\n" # notice the "\\n" we don't want nix to insert a new line in our string, just pass it as \n to systemd + "L+ /var/lib/AccountsService/icons/${username} - - - - ${./profile.png}" + ]; }; homeManager.cholli = From 59e1ab3c3d0db0806f49718bb7d21eff7f0590bc Mon Sep 17 00:00:00 2001 From: Christoph Hollizeck Date: Mon, 20 Apr 2026 17:14:54 +0200 Subject: [PATCH 2/2] yggdrasil: torchlight stuff --- flake.lock | 57 +++++++++++++++++++++++++++++++- flake.nix | 5 +++ modules/games/various-games.nix | 8 +++++ modules/users/cholli/default.nix | 2 ++ 4 files changed, 71 insertions(+), 1 deletion(-) diff --git a/flake.lock b/flake.lock index 1375df3..fa903cc 100644 --- a/flake.lock +++ b/flake.lock @@ -659,6 +659,24 @@ "type": "github" } }, + "flake-utils": { + "inputs": { + "systems": "systems_4" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "git-hooks": { "inputs": { "flake-compat": [ @@ -2521,6 +2539,7 @@ "simple-nixos-mailserver": "simple-nixos-mailserver", "sops-nix": "sops-nix", "systems": "systems_3", + "titrack": "titrack", "treefmt-nix": "treefmt-nix_3", "zen-browser": "zen-browser", "zig-overlay": "zig-overlay", @@ -2654,6 +2673,21 @@ } }, "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_5": { "flake": false, "locked": { "lastModified": 1681028828, @@ -2669,6 +2703,27 @@ "type": "github" } }, + "titrack": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": [ + "nixpkgs-unstable" + ] + }, + "locked": { + "lastModified": 1776569300, + "narHash": "sha256-LzXfD81tc/wOvyG0ODLfivSJ6dBo4q8MyfOi69E129U=", + "owner": "Daholli", + "repo": "TiTrack", + "rev": "1ff3100c4f35032b147069123e1fac98a2b220b4", + "type": "github" + }, + "original": { + "owner": "Daholli", + "repo": "TiTrack", + "type": "github" + } + }, "treefmt-nix": { "inputs": { "nixpkgs": [ @@ -2850,7 +2905,7 @@ "nixpkgs": [ "nixpkgs" ], - "systems": "systems_4" + "systems": "systems_5" }, "locked": { "lastModified": 1776646674, diff --git a/flake.nix b/flake.nix index 785aefa..6621e92 100644 --- a/flake.nix +++ b/flake.nix @@ -65,6 +65,11 @@ inputs.nixpkgs.follows = "nixpkgs-unstable"; }; + titrack = { + url = "github:Daholli/TiTrack"; + inputs.nixpkgs.follows = "nixpkgs-unstable"; + }; + ### # hyprland stuff hyprland = { diff --git a/modules/games/various-games.nix b/modules/games/various-games.nix index ab97c78..285b128 100644 --- a/modules/games/various-games.nix +++ b/modules/games/various-games.nix @@ -2,6 +2,10 @@ flake.modules.nixos.games = { inputs, pkgs, ... }: { + imports = [ + inputs.titrack.nixosModules.default + ]; + environment.systemPackages = with pkgs; [ prismlauncher starsector @@ -10,5 +14,9 @@ pyfa inputs.nixpkgs-master.legacyPackages.${pkgs.stdenv.hostPlatform.system}.rusty-path-of-building ]; + + services.titrack = { + enable = true; + }; }; } diff --git a/modules/users/cholli/default.nix b/modules/users/cholli/default.nix index 4e630e4..081aa78 100644 --- a/modules/users/cholli/default.nix +++ b/modules/users/cholli/default.nix @@ -58,6 +58,8 @@ topLevel: { "networkmanager" "sound" "tty" + "usb" + "systemd-journal" "wheel" ]; shell = pkgs.fish;