From 93de0bbce61fd53bef21ae966f104c3b1428a3ab Mon Sep 17 00:00:00 2001 From: Szymon P Date: Wed, 25 Feb 2026 16:07:56 +0100 Subject: [PATCH 1/5] readme --- README.md | 73 ++++++++ flake.lock | 490 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 561 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0065120..a6dd774 100644 --- a/README.md +++ b/README.md @@ -77,6 +77,79 @@ You need to edit `flake.nix` to match your preferences. } ``` +# Binds +## System & Power +| Bind | Action | +| :--- | :--- | +| **SUPER + Shift + Ctrl + L** | Lock screen | +| **SUPER + Shift + Ctrl + R** | Restart | +| **SUPER + Shift + Ctrl + P** | Power off | +| **SUPER + Shift + Ctrl + S** | Go to sleep | +| **SUPER + Shift + Ctrl + M** | Logout | +| **SUPER + V** | Show clipboard | +| **SUPER + Alt + V** | Clear clipboard | + +### Windows management +| Bind | Action | +| :--- | :--- | +| **SUPER + Q** | Close active window | +| **SUPER + F** | Fullscreen | +| **SUPER + T** | Toggle floating window | +| **SUPER + P** | Toggle pseudo layout | +| **SUPER + S** | Toggle split / Swap with master window | +| **SUPER + N** / **P** | Swap with next / previous window | +| **SUPER + vim keys** | Move focus (Left / Down / Up / Right) | +| **SUPER + Shift + vim keys** | Resize active window | +| **SUPER + Left Mouse Button** | Move window | +| **SUPER + Right Mouse Button**| Resize window | + +### Workspaces +| Bind | Action | +| :--- | :--- | +| **SUPER + 1-0** | Go to workspace 1-10 | +| **SUPER + Shift + 1-0** | Move active window to workspace 1-10 | +| **SUPER + Mouse Scroll** | Go to next/previous workspace | +| **SUPER + Shift + Right / Left** | Move current workspace to next/previous monitor | +| **SUPER + Tab** | Toggle scratchpad workspace | +| **SUPER + Shift + Tab** | Move window to scratchpad | + +### Applications +| Bind | Action | +| :--- | :--- | +| **SUPER + Enter** | Open terminal | +| **SUPER + Ctrl + Enter** | Open terminal (current workspace) | +| **SUPER + Space** | Open app menu | +| **SUPER + M** | Open waypaper menu | +| **SUPER + Alt + C** | Apply OpenRGB color | +| **SUPER + Ctrl + B** | Open/Focus web browser | +| **SUPER + Ctrl + N** | Open/Focus notes app | +| **SUPER + Ctrl + M** | Open/Focus music player | +| **SUPER + Ctrl + S** | Open/Focus Signal | +| **SUPER + Ctrl + V** | Open/quick switcher Vesktop | +| **SUPER + Ctrl + G** | Open/Focus Steam | +| **SUPER + Ctrl + F** | Open/Focus FreeTube | +| **SUPER + Ctrl + X** | Open/Focus X app | +| **SUPER + Ctrl + Shift + B** | Restart status bar | + +### Zoom +| Bind | Action | +| :--- | :--- | +| **SUPER + Alt + =** | Zoom in (+10%) | +| **SUPER + Alt + -** | Zoom out (-10%) | +| **SUPER + Alt + 0** | Reset zoom | + +### Screenshots & Media +| Bind | Action | +| :--- | :--- | +| **Print Screen** | Screenshot selected area | +| **SUPER + Print Screen** | Screenshot fullscreen | +| **Alt + Print Screen** | Screenshot active window | +| **Pause** | Play / Pause media | +| **SUPER + Pause** | Play / Pause Spotify | +| **Brightness Keys** | Change screen brightness (+/- 10) | +| **Volume Keys** | Change volume (+/- 5%) | +| **Mic Mute Key** | Mute / Unmute microphone | + --- I hope you'll enjoy it, if you for whatever reason want to try this random ass dotfiles found on the internet… diff --git a/flake.lock b/flake.lock index 1738511..9b7fae2 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,38 @@ { "nodes": { + "aquamarine": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "hyprwayland-scanner": [ + "hyprland", + "hyprwayland-scanner" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1771610171, + "narHash": "sha256-+DeInuhbm6a6PpHDNUS7pozDouq2+8xSDefoNaZLW0E=", + "owner": "hyprwm", + "repo": "aquamarine", + "rev": "7f9eb087703ec4acc6b288d02fa9ea3db803cd3d", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "aquamarine", + "type": "github" + } + }, "catppuccin": { "inputs": { "nixpkgs": "nixpkgs" @@ -18,6 +51,22 @@ "type": "github" } }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1767039857, + "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", + "owner": "NixOS", + "repo": "flake-compat", + "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -39,6 +88,28 @@ "type": "github" } }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "hyprland", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -59,6 +130,325 @@ "type": "github" } }, + "hyprcursor": { + "inputs": { + "hyprlang": [ + "hyprland", + "hyprlang" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1753964049, + "narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", + "owner": "hyprwm", + "repo": "hyprcursor", + "rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprcursor", + "type": "github" + } + }, + "hyprgraphics": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1770511807, + "narHash": "sha256-suKmSbSk34uPOJDTg/GbPrKEJutzK08vj0VoTvAFBCA=", + "owner": "hyprwm", + "repo": "hyprgraphics", + "rev": "7c75487edd43a71b61adb01cae8326d277aab683", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprgraphics", + "type": "github" + } + }, + "hyprland": { + "inputs": { + "aquamarine": "aquamarine", + "hyprcursor": "hyprcursor", + "hyprgraphics": "hyprgraphics", + "hyprland-guiutils": "hyprland-guiutils", + "hyprland-protocols": "hyprland-protocols", + "hyprlang": "hyprlang", + "hyprutils": "hyprutils", + "hyprwayland-scanner": "hyprwayland-scanner", + "hyprwire": "hyprwire", + "nixpkgs": "nixpkgs_2", + "pre-commit-hooks": "pre-commit-hooks", + "systems": "systems", + "xdph": "xdph" + }, + "locked": { + "lastModified": 1772022552, + "narHash": "sha256-L3zktLSXcvsqczTz7YL5PXYgn4a08tRfl9t6YYLESM8=", + "owner": "hyprwm", + "repo": "Hyprland", + "rev": "457617b5a31f70ea63e1fcc0729f29e4a9e6b486", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "Hyprland", + "type": "github" + } + }, + "hyprland-guiutils": { + "inputs": { + "aquamarine": [ + "hyprland", + "aquamarine" + ], + "hyprgraphics": [ + "hyprland", + "hyprgraphics" + ], + "hyprlang": [ + "hyprland", + "hyprlang" + ], + "hyprtoolkit": "hyprtoolkit", + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "hyprwayland-scanner": [ + "hyprland", + "hyprwayland-scanner" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1767023960, + "narHash": "sha256-R2HgtVS1G3KSIKAQ77aOZ+Q0HituOmPgXW9nBNkpp3Q=", + "owner": "hyprwm", + "repo": "hyprland-guiutils", + "rev": "c2e906261142f5dd1ee0bfc44abba23e2754c660", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-guiutils", + "type": "github" + } + }, + "hyprland-protocols": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1765214753, + "narHash": "sha256-P9zdGXOzToJJgu5sVjv7oeOGPIIwrd9hAUAP3PsmBBs=", + "owner": "hyprwm", + "repo": "hyprland-protocols", + "rev": "3f3860b869014c00e8b9e0528c7b4ddc335c21ab", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprland-protocols", + "type": "github" + } + }, + "hyprlang": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1771866172, + "narHash": "sha256-fYFoXhQLrm1rD8vSFKQBOEX4OGCuJdLt1amKfHd5GAw=", + "owner": "hyprwm", + "repo": "hyprlang", + "rev": "0b219224910e7642eb0ed49f0db5ec3d008e3e41", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprlang", + "type": "github" + } + }, + "hyprtoolkit": { + "inputs": { + "aquamarine": [ + "hyprland", + "hyprland-guiutils", + "aquamarine" + ], + "hyprgraphics": [ + "hyprland", + "hyprland-guiutils", + "hyprgraphics" + ], + "hyprlang": [ + "hyprland", + "hyprland-guiutils", + "hyprlang" + ], + "hyprutils": [ + "hyprland", + "hyprland-guiutils", + "hyprutils" + ], + "hyprwayland-scanner": [ + "hyprland", + "hyprland-guiutils", + "hyprwayland-scanner" + ], + "nixpkgs": [ + "hyprland", + "hyprland-guiutils", + "nixpkgs" + ], + "systems": [ + "hyprland", + "hyprland-guiutils", + "systems" + ] + }, + "locked": { + "lastModified": 1764592794, + "narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=", + "owner": "hyprwm", + "repo": "hyprtoolkit", + "rev": "5cfe0743f0e608e1462972303778d8a0859ee63e", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprtoolkit", + "type": "github" + } + }, + "hyprutils": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1771271487, + "narHash": "sha256-41gEiUS0Pyw3L/ge1l8MXn61cK14VAhgWB/JV8s/oNI=", + "owner": "hyprwm", + "repo": "hyprutils", + "rev": "340a792e3b3d482c4ae5f66d27a9096bdee6d76d", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprutils", + "type": "github" + } + }, + "hyprwayland-scanner": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1770501770, + "narHash": "sha256-NWRM6+YxTRv+bT9yvlhhJ2iLae1B1pNH3mAL5wi2rlQ=", + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "rev": "0bd8b6cde9ec27d48aad9e5b4deefb3746909d40", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "type": "github" + } + }, + "hyprwire": { + "inputs": { + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1771606233, + "narHash": "sha256-F3PLUqQ/TwgR70U+UeOqJnihJZ2EuunzojYC4g5xHr0=", + "owner": "hyprwm", + "repo": "hyprwire", + "rev": "06c7f1f8c4194786c8400653c4efc49dc14c0f3a", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprwire", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1771369470, @@ -76,6 +466,22 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1771848320, + "narHash": "sha256-0MAd+0mun3K/Ns8JATeHT1sX28faLII5hVLq0L3BdZU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "2fc6539b481e1d2569f25f8799236694180c0993", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1771369470, "narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=", @@ -97,7 +503,7 @@ "nixpkgs": [ "nixpkgs" ], - "systems": "systems" + "systems": "systems_2" }, "locked": { "lastModified": 1771135771, @@ -113,16 +519,55 @@ "type": "github" } }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": "flake-compat", + "gitignore": "gitignore", + "nixpkgs": [ + "hyprland", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1771858127, + "narHash": "sha256-Gtre9YoYl3n25tJH2AoSdjuwcqij5CPxL3U3xysYD08=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "49bbbfc218bf3856dfa631cead3b052d78248b83", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "root": { "inputs": { "catppuccin": "catppuccin", "home-manager": "home-manager", - "nixpkgs": "nixpkgs_2", + "hyprland": "hyprland", + "nixpkgs": "nixpkgs_3", "nixvim": "nixvim", "wallpapers": "wallpapers" } }, "systems": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_2": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -152,6 +597,47 @@ "repo": "walls-catppuccin-mocha", "type": "github" } + }, + "xdph": { + "inputs": { + "hyprland-protocols": [ + "hyprland", + "hyprland-protocols" + ], + "hyprlang": [ + "hyprland", + "hyprlang" + ], + "hyprutils": [ + "hyprland", + "hyprutils" + ], + "hyprwayland-scanner": [ + "hyprland", + "hyprwayland-scanner" + ], + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1761431178, + "narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=", + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "rev": "4b8801228ff958d028f588f0c2b911dbf32297f9", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "xdg-desktop-portal-hyprland", + "type": "github" + } } }, "root": "root", From ea28c116e1581e444865e7beffea2be296eff705 Mon Sep 17 00:00:00 2001 From: Szymon P Date: Wed, 25 Feb 2026 16:12:46 +0100 Subject: [PATCH 2/5] more readme --- README.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/README.md b/README.md index a6dd774..778b0e0 100644 --- a/README.md +++ b/README.md @@ -150,6 +150,30 @@ You need to edit `flake.nix` to match your preferences. | **Volume Keys** | Change volume (+/- 5%) | | **Mic Mute Key** | Mute / Unmute microphone | +# Default apps +| Type | Application | +| :--- | :--- | +| Web Browser | Zen Browser | +| Terminal | kitty | +| Notes | Obsidian | +| Music Player | Spotify | +| App Launcher | hyprlauncher | +| Signal | Signal-desktop | +| Discord Client | Vesktop | +| YouTube Client | FreeTube | +| Gaming Platform | Steam | +| Screen Recording | OBS Studio | +| Image Editor | GIMP | +| Wallpaper Picker | Waypaper / swww | +| Screenshot Tool | grim (capture) & satty (editor) | +| Screen Locker | hyprlock | +| Clipboard Manager | cliphist & wl-clipboard | +| RGB Lighting Control | OpenRGB | +| Audio Volume Control | pavucontrol | +| Screen Color (Night Light) | hyprsunset | +| Status bar | AShell | +| Web Apps (PWAs) | Facebook, Twitter, ProtonMail | + --- I hope you'll enjoy it, if you for whatever reason want to try this random ass dotfiles found on the internet… From 9b718e86d1ae1acb9f2c672bc969b4647a5d31e5 Mon Sep 17 00:00:00 2001 From: Szymon P Date: Wed, 25 Feb 2026 17:48:56 +0100 Subject: [PATCH 3/5] obsidian stuff --- README.md | 1 + flake.nix | 1 + home.nix | 1 + modules/cli/nixvim.nix | 2 + modules/gui/obsidian-catppuccin.nix | 21 ++++++++++ modules/gui/obsidian.nix | 65 +++++++++++++++++++++++++++++ 6 files changed, 91 insertions(+) create mode 100644 modules/gui/obsidian-catppuccin.nix create mode 100644 modules/gui/obsidian.nix diff --git a/README.md b/README.md index 778b0e0..34f1ee5 100644 --- a/README.md +++ b/README.md @@ -31,6 +31,7 @@ My dotfiles managed with [home manager](https://github.com/nix-community/home-ma * Mimeapps * Catppuccin * Home Manager +* Obsidian ## Screenshot ![Desktop screenshot](assets/screenshot.png) diff --git a/flake.nix b/flake.nix index aeed265..d45799e 100644 --- a/flake.nix +++ b/flake.nix @@ -46,6 +46,7 @@ pathConfig = { wallpaper = "Obrazy/tapety/catppuccin"; screenshot = "Obrazy/zrzuty/"; + obsidian = "Dokumenty/obsidian"; }; }; in diff --git a/home.nix b/home.nix index e4f234f..2d1992b 100644 --- a/home.nix +++ b/home.nix @@ -48,6 +48,7 @@ ./modules/gui/mako.nix ./modules/gui/mangohud.nix ./modules/gui/browsers.nix + ./modules/gui/obsidian.nix # status bars ./modules/bars/ashell.nix ./modules/bars/waybar.nix diff --git a/modules/cli/nixvim.nix b/modules/cli/nixvim.nix index c5acb94..3b6c61f 100644 --- a/modules/cli/nixvim.nix +++ b/modules/cli/nixvim.nix @@ -177,6 +177,8 @@ }; # nix nil_ls.enable = true; + # other + marksman.enable = true; }; keymaps = { lspBuf = { diff --git a/modules/gui/obsidian-catppuccin.nix b/modules/gui/obsidian-catppuccin.nix new file mode 100644 index 0000000..449fd49 --- /dev/null +++ b/modules/gui/obsidian-catppuccin.nix @@ -0,0 +1,21 @@ +{ + stdenv, + fetchFromGitHub, +}: + +stdenv.mkDerivation { + pname = "obsidian-catppuccin"; + version = "main"; + + src = fetchFromGitHub { + owner = "catppuccin"; + repo = "obsidian"; + rev = "main"; + hash = "sha256-sN5k263geOtJ1mOCQGM8UdmA/71OhBI5NRwGxJwd80E="; + }; + + installPhase = '' + mkdir -p $out + cp theme.css manifest.json $out/ + ''; +} diff --git a/modules/gui/obsidian.nix b/modules/gui/obsidian.nix new file mode 100644 index 0000000..6c343ab --- /dev/null +++ b/modules/gui/obsidian.nix @@ -0,0 +1,65 @@ +{ + isNixOS, + lib, + pkgs, + userConfig, + ... +}: + +{ + programs.obsidian = { + enable = true; + package = lib.mkIf (!isNixOS) null; + + defaultSettings = { + app = { + vimMode = true; + alwaysUpdateLinks = true; + attachmentFolderPath = "media"; + newLinkFormat = "relative"; + newFileLocation = "current"; + useMarkdownLinks = true; + showUnsupportedFiles = true; + pdfExportSettings = { + pageSize = "A4"; + landscape = false; + margin = "0"; + downscalePercent = 100; + }; + }; + + themes = [ + (pkgs.callPackage ./obsidian-catppuccin.nix { }) + ]; + + corePlugins = [ + "file-explorer" + "global-search" + "switcher" + "graph" + "backlink" + "canvas" + "outgoing-link" + "tag-pane" + "page-preview" + "note-composer" + "command-palette" + "editor-status" + "bookmarks" + "outline" + "word-count" + "bases" + ]; + }; + + vaults = { + "Notatki-szkolne" = { + target = "${userConfig.pathConfig.obsidian}/notatki-szkolne"; + }; + "Studia" = { + target = "${userConfig.pathConfig.obsidian}/ZUT-notatki"; + }; + }; + }; + +} From 3034989c0055510c5bf96dfe9c8b17eb5084e440 Mon Sep 17 00:00:00 2001 From: Szymon P Date: Wed, 25 Feb 2026 19:56:13 +0100 Subject: [PATCH 4/5] brave --- arch_packages.txt | 2 ++ home.nix | 1 + modules/desktop.nix | 49 +++++++++++++++++++++++++-------------- modules/hypr/hyprland.nix | 4 ++-- 4 files changed, 36 insertions(+), 20 deletions(-) diff --git a/arch_packages.txt b/arch_packages.txt index 923b0ed..5c70251 100644 --- a/arch_packages.txt +++ b/arch_packages.txt @@ -8,3 +8,5 @@ hyprsunset satty kitty mangohud +brave-bin +zen-browser-bin diff --git a/home.nix b/home.nix index 2d1992b..17a1b8c 100644 --- a/home.nix +++ b/home.nix @@ -74,6 +74,7 @@ home.sessionVariables = { EDITOR = "nvim"; VISUAL = "nvim"; + XDG_DATA_DIRS = "$HOME/.nix-profile/share/applications:$XDG_DATA_DIRS"; }; programs.home-manager.enable = true; diff --git a/modules/desktop.nix b/modules/desktop.nix index 158fedf..169d339 100644 --- a/modules/desktop.nix +++ b/modules/desktop.nix @@ -1,31 +1,44 @@ { ... }: -{ - xdg.desktopEntries = { - x = { - name = "X"; - genericName = "Social Media Client"; - comment = "Open X (twitter)"; - exec = "uwsm app -- chromium --app=https://x.com"; - icon = "twitter"; +let + mkWebApp = + { + name, + url, + icon, + wmClass, + }: + { + inherit name icon; + genericName = "Web app"; + comment = "Open ${name}"; + exec = "uwsm app -- brave --app=https://${url}"; terminal = false; categories = [ "Network" "WebBrowser" "X-Social" ]; + settings = { + StartupWMClass = wmClass; + }; + }; +in +{ + + xdg.desktopEntries = { + x = mkWebApp { + name = "X"; + url = "x.com"; + icon = "twitter"; + wmClass = "brave-x.com__-Default"; }; - proton-mail = { - name = "Proton mail"; - genericName = "Proton mail"; - comment = "Open Proton Mail"; - exec = "uwsm app -- chromium --app=https://mail.proton.me/u/0/inbox.com"; - terminal = false; - categories = [ "Email" ]; - settings = { - StartupWMClass = "proton-mail.com"; - }; + proton-mail = mkWebApp { + name = "Proton-mail"; + url = "mail.proton.me/u/0/inbox.com"; + icon = "proton-mail"; + wmClass = "brave-mail.proton.me__u_0_inbox.com-Default"; }; }; } diff --git a/modules/hypr/hyprland.nix b/modules/hypr/hyprland.nix index dffa984..09c74c2 100644 --- a/modules/hypr/hyprland.nix +++ b/modules/hypr/hyprland.nix @@ -193,7 +193,7 @@ in "match:class ^(zen)$, workspace 2" "match:class ^(com.github.IsmaelMartinez.teams_for_linux)$, workspace 2" "match:class ^(FreeTube)$, workspace 2" - "match:class ^(chrome-x.com__-Default)$, workspace 2" + "match:class ^(brave-x.com__-Default)$, workspace 2" "match:class ^(chrome-www.inoreader.com__all_articles-Default)$, workspace 2" "match:class ^(chrome-mail.proton.me__u_0_inbox.com-Default)$, workspace 2" "match:class ^(chrome-app.tuta.com__-Default)$, workspace 2" @@ -281,7 +281,7 @@ in "$mainMod Control_L, m, exec, [workspace 9] uwsm app -- $music_player" "$mainMod Control_L, f, exec, uwsm app -- freetube" "$mainMod Control_L, f, focuswindow, class:^(freetube)$" - "$mainMod Control_L, x, exec, uwsm app -- ~/.local/share/applications/x.desktop" + "$mainMod Control_L, x, exec, uwsm app -- ~/.nix-profile/share/applications/x.desktop" "$mainMod Control_L, x, focuswindow, class:^(chrome-x.com__-Default)$" "$mainMod CONTROL_L L_SHIFT, B, exec, killall ashell && uwsm app -- ashell" ]; From bea3099e0d0032982c0c6a124f021106e6c568f7 Mon Sep 17 00:00:00 2001 From: Szymon P Date: Wed, 25 Feb 2026 20:23:32 +0100 Subject: [PATCH 5/5] mako fix --- modules/gui/mako.nix | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/modules/gui/mako.nix b/modules/gui/mako.nix index 37375b2..01d3d49 100644 --- a/modules/gui/mako.nix +++ b/modules/gui/mako.nix @@ -35,13 +35,12 @@ border-color=#FF6347 [urgency=critical] - on-notify = - ${ - if isNixOS then - "exec ${pkgs.pulseaudio}/bin/paplay ${pkgs.sound-theme-freedesktop}/share/sounds/freedesktop/stereo/dialog-information.oga" - else - "exec paplay /usr/share/sounds/freedesktop/stereo/dialog-information.oga" - }; + on-notify=${ + if isNixOS then + "exec ${pkgs.pulseaudio}/bin/paplay ${pkgs.sound-theme-freedesktop}/share/sounds/freedesktop/stereo/dialog-information.oga" + else + "exec paplay /usr/share/sounds/freedesktop/stereo/dialog-information.oga" + } border-color=#FF0000 [mode=do-not-disturb]