Update README.md
This commit is contained in:
1 parent
6da00a9e8a
commit
d3f2544135
1 file changed
+51
-1
@@ -34,7 +34,8 @@ Press **Super+Shift+/** after logging in to see every keybind.
|
|||||||
| Audio | PipeWire, WirePlumber, SOF firmware |
|
| Audio | PipeWire, WirePlumber, SOF firmware |
|
||||||
| Hardware | Bluetooth, `tuned-ppd` power profiles, `fwupd` firmware updates |
|
| Hardware | Bluetooth, `tuned-ppd` power profiles, `fwupd` firmware updates |
|
||||||
| Desktop | niri, DankMaterialShell, `xwayland-satellite` |
|
| Desktop | niri, DankMaterialShell, `xwayland-satellite` |
|
||||||
| niri config | Waybar disabled (DMS is the bar), Super+T opens Ptyxis, Super+D opens the DMS launcher, Super+Alt+L locks with DMS |
|
| niri config | Waybar autostart disabled; DMS keybinds and Ptyxis added through an included `dms-setup.kdl` |
|
||||||
|
| Snapshots | snapper + Btrfs Assistant, with a before/after snapshot around every dnf transaction |
|
||||||
| Removed | Waybar, mako, fuzzel, swaybg, swayidle, swaylock, Alacritty (DMS replaces them) |
|
| Removed | Waybar, mako, fuzzel, swaybg, swayidle, swaylock, Alacritty (DMS replaces them) |
|
||||||
| Login screen | DMS greeter (greetd), graphical boot target |
|
| Login screen | DMS greeter (greetd), graphical boot target |
|
||||||
| Essentials | Ptyxis, Nautilus, Firefox, desktop portals, GNOME Keyring, Noto fonts, Flatpak + Flathub, fastfetch |
|
| Essentials | Ptyxis, Nautilus, Firefox, desktop portals, GNOME Keyring, Noto fonts, Flatpak + Flathub, fastfetch |
|
||||||
@@ -62,6 +63,38 @@ on re-runs; any `~/.zshrc` that was already there is backed up to `~/.zshrc.bak`
|
|||||||
- Fingerprint reader setup (Framework laptops)
|
- Fingerprint reader setup (Framework laptops)
|
||||||
- EasyEffects (for Framework's speaker profile)
|
- EasyEffects (for Framework's speaker profile)
|
||||||
|
|
||||||
|
## Keybinds added
|
||||||
|
|
||||||
|
These live in `~/.config/niri/dms-setup.kdl`, included at the end of `config.kdl` so they
|
||||||
|
override niri's defaults. To change one, add your own bind in `config.kdl` **after** the
|
||||||
|
`include` line; the script overwrites `dms-setup.kdl` on re-runs.
|
||||||
|
|
||||||
|
| Keys | Does |
|
||||||
|
| --- | --- |
|
||||||
|
| Super+T | Ptyxis |
|
||||||
|
| Super+D | DMS app launcher |
|
||||||
|
| Super+Alt+L | Lock screen |
|
||||||
|
| Super+Alt+V | Clipboard history |
|
||||||
|
| Super+Alt+N | Notifications |
|
||||||
|
| Super+Alt+C | Control centre |
|
||||||
|
| Super+Alt+S | DMS settings |
|
||||||
|
|
||||||
|
## Snapshots and rollback
|
||||||
|
|
||||||
|
On a Btrfs install (Fedora's default), the script sets up snapper:
|
||||||
|
|
||||||
|
- Every `dnf` install, update or removal takes a **pre** and **post** snapshot of the root
|
||||||
|
filesystem.
|
||||||
|
- The finished setup is saved as an "important" snapshot called
|
||||||
|
`fedora-niri-dms-setup baseline`.
|
||||||
|
- The 10 newest snapshot pairs are kept and older ones are cleaned up automatically.
|
||||||
|
|
||||||
|
To undo a bad update, open **Btrfs Assistant** → Snapper, pick the snapshot from before the
|
||||||
|
update, and restore it. From a terminal, `snapper -c root list` shows them all.
|
||||||
|
|
||||||
|
Snapshots cover `dnf` only. Flatpak updates aren't captured, and booting straight into a
|
||||||
|
snapshot from GRUB would need `grub-btrfs`, which isn't in Fedora's repos.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
- Fedora 43 or newer, installed as **Fedora Custom Operating System**
|
- Fedora 43 or newer, installed as **Fedora Custom Operating System**
|
||||||
@@ -99,6 +132,23 @@ rebooting:
|
|||||||
- No HDR yet: niri doesn't support it. HDR gaming needs a separate gamescope session.
|
- No HDR yet: niri doesn't support it. HDR gaming needs a separate gamescope session.
|
||||||
- DMS comes from the stable `avengemedia/dms` COPR, not the faster-moving `dms-git`.
|
- DMS comes from the stable `avengemedia/dms` COPR, not the faster-moving `dms-git`.
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
Every push and pull request runs `.gitea/workflows/shellcheck.yml`, which syntax-checks
|
||||||
|
and ShellChecks every `.sh` file in the repo. It needs Actions enabled on the repo
|
||||||
|
(Settings → Repository → Enable Repository Actions) and an `act_runner` registered with
|
||||||
|
the `ubuntu-latest` label.
|
||||||
|
|
||||||
|
```
|
||||||
|
fedora-niri-dms/
|
||||||
|
├── fedora-niri-dms-setup.sh
|
||||||
|
├── README.md
|
||||||
|
├── LICENSE
|
||||||
|
└── .gitea/
|
||||||
|
└── workflows/
|
||||||
|
└── shellcheck.yml
|
||||||
|
```
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
MIT
|
MIT
|
||||||
Reference in new issue
Block a user