mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-06 05:25:41 -05:00
XDG_DATA_DIRS for greeter
This commit is contained in:
@@ -17,6 +17,7 @@ Item {
|
||||
|
||||
required property var sessionLock
|
||||
|
||||
readonly property string xdgDataDirs: Quickshell.env("XDG_DATA_DIRS")
|
||||
property string screenName: ""
|
||||
property string randomFact: ""
|
||||
property string hyprlandCurrentLayout: ""
|
||||
@@ -1160,7 +1161,10 @@ Item {
|
||||
|
||||
Process {
|
||||
id: sessionListProc
|
||||
command: ["find", "/usr/share/wayland-sessions", "/usr/share/xsessions", "-name", "*.desktop", "-type", "f"]
|
||||
command: ["find"]
|
||||
.concat(xdgDataDirs.split(":").map(d => d + "/wayland-sessions"))
|
||||
.concat(xdgDataDirs.split(":").map(d => d + "/xsessions"))
|
||||
.concat(["-name", "*.desktop", "-type", "f", "-follow"])
|
||||
running: false
|
||||
|
||||
stdout: SplitParser {
|
||||
|
||||
@@ -12,9 +12,12 @@ A greeter for [greetd](https://github.com/kennylevinsen/greetd) that follows the
|
||||
|
||||
## Installation
|
||||
|
||||
### Automatic
|
||||
|
||||
The easiest thing is to run `dms greeter install` or `dms` for interactive installation.
|
||||
|
||||
Manual installation:
|
||||
### Manual
|
||||
|
||||
1. Install `greetd` (in most distro's standard repositories)
|
||||
2. Copy `assets/dms-niri.kdl` or `assets/dms-hypr.conf` to `/etc/greetd`
|
||||
- niri if you want to run the greeter under niri, hypr if you want to run the greeter under Hyprland
|
||||
@@ -43,6 +46,24 @@ command = "/usr/local/bin/start-dms-greetd.sh"
|
||||
|
||||
Enable the greeter with `sudo systemctl enable greetd`
|
||||
|
||||
### NixOS
|
||||
|
||||
To install the greeter on NixOS add the repo to your flake inputs as described in the readme. Then somewhere in your NixOS config add this to imports:
|
||||
```nix
|
||||
imports = [
|
||||
inputs.dankMaterialShell.nixosModules.greeter
|
||||
]
|
||||
```
|
||||
|
||||
Enable the greeter with this in your NixOS config:
|
||||
```nix
|
||||
programs.dankMaterialShell.greeter = {
|
||||
enable = true;
|
||||
compositor = "niri"; # or set to hyprland
|
||||
configHome = "/home/user"; # optionally symlinks that users DMS settings to the greeters data directory
|
||||
};
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
To run dms in greeter mode you just need to set `DMS_RUN_GREETER=1` in the environment.
|
||||
|
||||
Reference in New Issue
Block a user