AvengeMedia / AvengeMedia/DankMaterialShell

Persist light/dark mode in `settings.json`

Open
#1,320 0 comments 0 reactions 0 assignees View on GitHub
feature request
Dominant language
QML
Stars
8.1k
Forks
515
Avg merge
1d 8h
Merged PRs (30d)
102

Description

### Feature Description

Right now light/dark mode is persisted in `~/.local/state/DankMaterialShell/session.json` as `isLightMode`. We should have an option to persist it in `~/.config/DankMaterialShell/settings.json` instead.

### Use Case

I want to control the light/dark mode using my Nix configuration.

### Compositor(s)

- [x] All compositors
- [ ] Niri
- [ ] Hyprland
- [ ] MangoWC (dwl)
- [ ] Sway
- [ ] Other (specify below)

### Proposed Solution

Save light/dark mode in `~/.config/DankMaterialShell/setings.json`

### Alternatives/Existing Solutions

I don't think there's an alternative option.

Contributor guide

Open the contributing guide

Research direction

Compare the existing isLightMode persistence in ~/.local/state/DankMaterialShell/session.json with the proposed ~/.config/DankMaterialShell/settings.json location. Trace the light/dark mode persistence entry point, then verify that the setting can be controlled through the configuration file and survives restarting DankMaterialShell.

Written by the indexing model from the issue text.

Assessment

Domain
desktop
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.