dms: use greeter to login

This commit is contained in:
Christoph Hollizeck 2026-04-20 17:12:57 +02:00
parent 479dad5cb4
commit 60271a2359
7 changed files with 81 additions and 12 deletions

21
flake.lock generated
View file

@ -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",

View file

@ -101,6 +101,11 @@
};
};
danksearch = {
url = "github:AvengeMedia/danksearch";
inputs.nixpkgs.follows = "nixpkgs";
};
dgop = {
url = "github:AvengeMedia/dgop";
inputs.nixpkgs.follows = "nixpkgs-unstable";

View file

@ -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;
};
};
}

View file

@ -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,

View file

@ -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;

View file

@ -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

View file

@ -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 =