1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-01-29 07:52:50 -05:00

Update readme and make nerd fonts optional

This commit is contained in:
bbedward
2025-07-17 22:15:15 -04:00
parent 66671f757b
commit fbae03de14
2 changed files with 31 additions and 13 deletions

View File

@@ -8,20 +8,31 @@ Specifically created for [Niri](https://github.com/YaLTeR/niri).
## Installation ## Installation
1. Install dependencies, this will vary based on your distribution. 1. Install required dependencies
This shell kinda depends on [Niri](https://github.com/YaLTeR/niri), but only for workspaces and the active window widget in TopBar. So it could be used on any other wayland compositor with minimal changes.
```bash ```bash
# Arch # Arch
paru -S quickshell-git nerd-fonts ttf-material-symbols-variable-git matugen cliphist cava wl-clipboard ddcutil paru -S quickshell-git ttf-material-symbols-variable-git
# Some dependencies are optional
# - cava for audio visualizer, without it music will just randomly visualize
# - cliphist for clipboard history
# - matugen for dynamic themes based on wallpaper
# - ddcutil for brightness changing
``` ```
2. Configure SwayBG (Optional) 2. Install optional dependencies to unlock certain features
| Dependency | Purpose | If Missing |
|------------|---------|------------|
| cava | Equalizer in TopBar uses Audio Data | Equalizer shifts at random |
| cliphist | Allows clipboard history view | No clipboard history view available |
| matugen | Allows dynamic themes based on wallpaper | Just can choose from preconfigured themes instead of dynamic colors |
| ddcutil (or brightnessctl) | Allows controlling brightness of monitors | No Brightness |
| wl-clipboard | Unlocks copy functionality of certain elements, such as process PIDs | No copy |
| swaybg | Wallpaper | Just one wallpaper solution, others will work just not with `set-wallpaper.sh` below |
```bash
# Arch
paru -S nerd-fonts ttf-material-symbols-variable-git matugen cliphist cava wl-clipboard ddcutil swaybg
3. Configure SwayBG (If Desired)
``` ```
# Install wallpaper script # Install wallpaper script
@@ -51,14 +62,14 @@ set-wallpaper.sh /path/to/image.jpg
systemctl --user enable --now swaybg.service systemctl --user enable --now swaybg.service
``` ```
3. Install DankMaterialShell 4. Install DankMaterialShell
``` ```
mkdir -p ~/.config/quickshell mkdir -p ~/.config/quickshell
git clone https://github.com/bbedward/DankMaterialShell.git ~/.config/quickshell/DankMaterialShell git clone https://github.com/bbedward/DankMaterialShell.git ~/.config/quickshell/DankMaterialShell
``` ```
4. Enable 5. Enable
``` ```
qs -c DankMaterialShell qs -c DankMaterialShell

View File

@@ -5,6 +5,13 @@ import qs.Services
Rectangle { Rectangle {
id: root id: root
readonly property bool nerdFontAvailable: Qt.fontFamilies()
.indexOf("Symbols Nerd Font") !== -1
Component.onCompleted: {
console.log(Qt.fontFamilies());
}
width: 40 width: 40
height: 30 height: 30
radius: Theme.cornerRadius radius: Theme.cornerRadius
@@ -12,8 +19,8 @@ Rectangle {
Text { Text {
anchors.centerIn: parent anchors.centerIn: parent
text: OSDetectorService.osLogo || "apps" text: nerdFontAvailable && OSDetectorService.osLogo || "apps"
font.family: OSDetectorService.osLogo ? "NerdFont" : Theme.iconFont font.family: nerdFontAvailable && OSDetectorService.osLogo ? "Symbols Nerd Font" : Theme.iconFont
font.pixelSize: Theme.iconSize - 6 font.pixelSize: Theme.iconSize - 6
font.weight: Theme.iconFontWeight font.weight: Theme.iconFontWeight
color: Theme.surfaceText color: Theme.surfaceText