963 Commits

Author SHA1 Message Date
clsty d192a25faa Merge remote-tracking branch 'refs/remotes/origin/main'
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Waiting to run
2026-06-05 14:50:37 +08:00
clsty 0bfade5c36 Fix microtex build failure (#3422) 2026-06-05 14:49:57 +08:00
end-4 d619ddcd82 not use raw keycode binds for super+alt+ws (fixes #3368) 2026-06-05 08:42:06 +02:00
clsty 3cb611c04e No more sleep 0
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-05-29 13:46:40 +08:00
Minh f5b2b7548d Fix wrong dpms syntax (#3407) 2026-05-26 20:19:33 +02:00
VietNguyenx e0f2a34949 Wrong dpms syntax 2026-05-27 01:06:27 +07:00
end-4 6eb590b1a2 add light/dark wallpaper variant switching based on suffix 2026-05-25 00:27:31 +02:00
Minh 14376cec94 fix(ii): send configured User-Agent to Konachan requests (#3232) 2026-05-24 23:51:29 +02:00
Minh 397fb8d8c4 Fix broken waifu.im image and tag search (#3239) 2026-05-24 23:45:50 +02:00
Minh aa044b4563 fix source url safe access 2026-05-24 23:45:15 +02:00
end-4 a15f2a8a39 add a weak anti flashbang variant 2026-05-24 23:37:01 +02:00
end-4 9b149e6fef qs: sidebar: quick toggle: friendlier/shorter default state text 2026-05-24 23:34:21 +02:00
Minh eb3613d3ed fix: show escaped text for selected entry in clipboard (#3303) 2026-05-24 23:28:35 +02:00
Minh 091da11da5 Fix monitor scale type (#3312) 2026-05-24 23:26:05 +02:00
Minh a56cee16f1 Restore nwg-displays entry (#3381) 2026-05-24 22:55:37 +02:00
Minh 54a1d172d7 add file existence check for nwg displays include 2026-05-24 22:55:17 +02:00
Minh c58bb07a6b fix(qs): NotificationItem polish() loop on Qt 6.11 — freezes sidebar (#3388) 2026-05-24 22:52:56 +02:00
Minh 9c115f7a8f fix: hypridle Lua-dispatch compatibility for lock and DPMS (#3393) 2026-05-24 22:34:45 +02:00
Minh b9e05599bc Fix screen corners only appearing on integrated monitor (#3386) 2026-05-24 11:28:01 +02:00
Love, Trevor S ce80951210 fix: hypridle dispatch commands for Lua-based Hyprland 2026-05-22 11:41:16 -07:00
RamonBritoDev 6eaa869fac fix(qs): NotificationItem polish() loop on Qt 6.11
summaryText.Layout.fillWidth depended on summaryRow.implicitWidth,
its own parent RowLayout, creating a circular dependency:

  summaryText.Layout.fillWidth
    -> changes summaryText.width
    -> changes summaryRow.implicitWidth
    -> re-evaluates summaryText.Layout.fillWidth (loop)

Qt 6.10 tolerated this through layout settling heuristics, but
Qt 6.11.1 detects the loop and emits "ColumnLayout called polish()
inside updatePolish() of ColumnLayout" warnings repeatedly, pinning
CPU at 100% and freezing the sidebar/notification UI when opened.

Use root.width (the stable width inherited from the parent ListView)
as the reference for the elision threshold instead of the recursive
summaryRow.implicitWidth.
2026-05-21 16:23:40 +00:00
Jihed Kdiss 8f9cf67be7 fix(screenCorners): remove shadowing screen property to fix multi-monitor corner rendering 2026-05-21 14:16:22 +01:00
Zhengjie Min 20d1ff065b style: space indent 2026-05-20 11:38:00 -04:00
Zhengjie Min 25fe0ab01e fix(hyprland): restore nwg-display entry 2026-05-20 11:32:13 -04:00
Minh c1b37bc467 fix(hyprsunset): remove vestigial Hyprland.dispatch broken under .lua schema (#3356) 2026-05-18 23:40:22 +02:00
Minh b470bf3fe8 Fix: XDG_DATA_DIRS now expands correctly (fixes 3354) (#3358) 2026-05-18 23:06:27 +02:00
GregorVal d4e777911e Fix: XDG_DATA_DIRS now expands correctly
Previously the environmental variable would become literally 
*:$XDG_DATA_DIRS
Now the variable is expanded correctly
2026-05-17 14:46:26 +02:00
zzalli d4d78a5e62 fix(hyprsunset): remove vestigial Hyprland.dispatch broken under .lua schema 2026-05-17 15:36:14 +03:00
end-4 c0706258b1 add back some repetitive keybinds to cheatsheet 2026-05-16 23:27:26 +02:00
Minh 68c67aced4 Update keybinds.lua to allow hl.unbind() (#3336) 2026-05-14 19:43:29 +02:00
VietNguyenx 215ac747d8 Update keybinds.lua 2026-05-15 00:31:29 +07:00
end-4 9eda50178b remove redundant scripts 2026-05-14 14:37:06 +02:00
end-4 d5f9afe7c0 qs: remove no longer necessary unlock refocus hack 2026-05-14 14:34:45 +02:00
end-4 5c66902900 qs: fix wrong capitalization in cheatsheet 2026-05-14 14:34:07 +02:00
end-4 28ba8a4f43 hl: make custom stuff optional 2026-05-14 12:35:29 +02:00
end-4 798d35a538 hl: remove that whatever jetbrains windowrule (fixes #3324) 2026-05-14 12:28:05 +02:00
end-4 7d5ce9a793 hl: fix #3327 send to scratchpad desc at wrong scope 2026-05-14 12:25:28 +02:00
end-4 c53265754c hl: create custom config files automatically 2026-05-14 12:21:00 +02:00
end-4 239b532ec6 ctrl+super+shift+d for dark/light toggle (like powertoys) 2026-05-14 10:43:23 +02:00
end-4 d1daedc6d2 qs: cheatsheet: display categories nicely 2026-05-14 09:37:45 +02:00
end-4 2ade168a20 hl config: remove unused bash scripts 2026-05-14 08:17:29 +02:00
end-4 08201f2ac0 hl: keybinds: fix workspace groups, categorize descriptions 2026-05-14 08:16:47 +02:00
Minh ad12fe6ddf feat: notification on specific monitor (#3292) 2026-05-13 20:01:56 +02:00
end-4 9e1568fcdc qs: rename config option notifications.monitor to notifications.forceMonitor 2026-05-13 20:01:21 +02:00
Minh b7b2e6e10d fix Hyprsunset default color temperature (#3254) 2026-05-13 19:49:51 +02:00
Minh 00a4235a81 Update emoji list to emoji 17.0 (#3268) 2026-05-13 19:48:48 +02:00
Minh c504cdf22b Fix kitty config (#3284) 2026-05-13 19:47:06 +02:00
Minh e6d2a7d88c Fix HOME env in lua (#3316) 2026-05-13 19:46:22 +02:00
Minh b50a4a7faa Merge branch 'main' into fix-home-env 2026-05-13 19:46:12 +02:00
Minh 737eb7c356 Do not override XDG_DATA_DIRS (fixes #2583) (#3321) 2026-05-13 19:42:50 +02:00
Minh 5ce6280d98 fix(keybinds): correct fullscreen and maximize bind syntax (#3306) 2026-05-13 19:39:43 +02:00
GregorVal f7773acab4 Do not override XDG_DATA_DIRS (fixes #2583) 2026-05-13 17:51:41 +02:00
imitoy e8721b4b01 Fix HOME env in lua 2026-05-13 16:03:09 +08:00
PetLucy b85ed8691a Fix monitor scale type
Changes the default monitor scale value from `"1"` to `1`.

This fixes the typo in the default monitor configuration.
2026-05-12 15:23:17 -05:00
Rasmion ac8d0e9a42 fix: specify toggle action explicitly 2026-05-12 22:00:36 +02:00
Minh 412b2222c2 readme: move warning content to wiki 2026-05-12 15:37:00 +02:00
Rasmion d6b27cf9dd fix(keybinds): correct fullscreen and maximize bind syntax 2026-05-12 14:45:53 +02:00
end-4 c53e9891cb qs: fix super key hold state properly 2026-05-12 12:07:33 +02:00
end-4 1e442f1af0 qs: temp fix super key always thought to be held down 2026-05-12 11:13:26 +02:00
Minh 20dde15900 readme: add hyprland 0.55 warning 2026-05-12 11:04:30 +02:00
end-4 ba0e76da1b fix hyprland theming 2026-05-12 10:47:44 +02:00
end-4 1c117e0880 add example keybind for editing user keybinds 2026-05-12 10:34:59 +02:00
end-4 7aad60eb2c install script: add check for hyprland.conf rename 2026-05-12 10:31:40 +02:00
end-4 a9f87c06ca install script: rename hyprland.conf to not use it 2026-05-12 10:06:10 +02:00
end-4 281b3e5627 previous commit but in the "legacy" script 2026-05-12 09:59:17 +02:00
end-4 388783e992 hyprland: exclude monitors and workspaces conf 2026-05-12 09:55:24 +02:00
end-4 ae7f6bd165 fix keybind cheatsheet 2026-05-12 09:28:07 +02:00
lnb 403f7aa685 fix: show escaped text for selected entry in clipboard 2026-05-12 12:04:28 +05:30
end-4 807c761ed0 qs: fix some manual hyprland dispatches 2026-05-12 08:28:10 +02:00
end-4 7dcbabcd8c fix screen locking 2026-05-12 08:11:47 +02:00
end-4 2e161911bc qs: fix hyprland overrides (game mode, anti flashbang) 2026-05-12 07:54:56 +02:00
end-4 e11d084be8 remove redundant wallpaper switching stuff 2026-05-11 23:46:23 +02:00
end-4 760c7034aa qs: fix hyprland dispatchers 2026-05-11 23:45:44 +02:00
Minh 6c041b953a migrate hyprland config to lua (#3269) 2026-05-11 23:02:05 +02:00
end-4 9f4afde0c5 use globalshortcut for 4finger up touchpad gesture 2026-05-11 23:00:50 +02:00
end-4 010f070eef fix stuff 2026-05-11 22:52:48 +02:00
Linuxius f6b97c4649 Update general.lua 2026-05-09 21:57:36 +02:00
electricsteve 0da83ba460 feat: notification on specific monitor 2026-05-09 19:10:43 +02:00
Celestial.y bebf66da89 Use packages from end-4/ii-package-builds for fedora (#3288) 2026-05-09 00:10:09 +08:00
fb24m adb36f435e replace tested note 2026-05-08 17:49:55 +04:00
fb24m c67c8840e4 rewrite script to use RPM built using GitHub action 2026-05-08 17:32:53 +04:00
clsty bfad75c93a Fix quickshell PKGBUILD to work with some packages (fix #3286)
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-05-08 08:31:42 +08:00
fb24m 74c10b915d fix kitty config 2026-05-07 21:45:11 +04:00
Linuxius 0ae900515e Add files via upload 2026-05-07 19:20:37 +02:00
Linuxius c3147dc7ff Add files via upload 2026-05-07 11:19:53 +02:00
Linuxius fb3ec1fdfc Add files via upload 2026-05-06 19:15:03 +02:00
Celestial.y 5c69271c10 fedora: Install packages right after building (#3273) 2026-05-05 07:12:02 +08:00
fb24m 84cd4582dd install every package right after building 2026-05-05 00:49:38 +04:00
end-4 e7c283e91e fix terminal theming
i've got no fucking clue why this works
2026-05-04 10:24:11 +02:00
end-4 f992294ec2 proper image scaling with screen scaling (#3036, #3037) 2026-05-04 09:20:12 +02:00
Minh c652d2a7f3 Update gtk-4 styles for recent changes (#3266) 2026-05-04 08:17:57 +02:00
Linuxius d1cd892c0f Add files via upload 2026-05-03 13:16:49 +02:00
Linuxius 63495d0b28 Add files via upload 2026-05-03 11:13:26 +02:00
Linuxius 36a4a19bca Add files via upload 2026-05-03 11:12:54 +02:00
ThomasNoorlander c693a3f539 Create variables.lua 2026-05-02 17:50:36 +02:00
ThomasNoorlander c0888cbb98 Create rules.lua 2026-05-02 17:50:24 +02:00
ThomasNoorlander 2cfb0c2757 Create keybinds.lua 2026-05-02 17:50:11 +02:00
ThomasNoorlander b034a712a9 Create general.lua 2026-05-02 17:49:57 +02:00
ThomasNoorlander aff6206930 Create execs.lua 2026-05-02 17:49:42 +02:00
ThomasNoorlander 0e1f6a97fc Create env.lua 2026-05-02 17:49:28 +02:00
ThomasNoorlander 7834f22243 Add files via upload 2026-05-02 17:48:52 +02:00
ThomasNoorlander cec16c8720 Create main.lua 2026-05-02 17:48:26 +02:00
ThomasNoorlander 54e19afa81 Add files via upload 2026-05-02 17:47:55 +02:00
Hanz Montano ffabb85693 feat: update emoji list to emoji 17.0 2026-05-02 12:09:57 +08:00
fb24m 242de398c3 add linunwind-devel to dependencies for cpptrace 2026-05-02 01:29:43 +04:00
fb24m fe9eb0e84c add class selectors to nautilus pathbar elements 2026-05-01 18:49:57 +04:00
Celestial.y 47235ac440 fedora: remove hyprland-qt-support from SPECS (#3262) 2026-04-29 19:06:54 +08:00
fb24m e79c9a8792 fedora: remove hyprland-qt-support from SPECS 2026-04-29 14:41:16 +04:00
Celestial.y 762629d2f1 Update version tag to 4.1.0 in matugen.spec (#3259) 2026-04-28 23:30:42 +08:00
MVN123123123123123 7596509777 Modify commit hash and snapshot date in matugen.spec
Updated commit hash and snapshot date in matugen.spec
2026-04-28 20:59:23 +07:00
MVN123123123123123 e6570bbe75 Update version tag to 4.1.0 in matugen.spec 2026-04-28 20:50:24 +07:00
Reluckycf 72d950ed51 change hyprsunset default color temp to 6000 2026-04-25 18:58:48 -05:00
Kashi754 4eef9ea18e Fix still tags not being applied to search request. 2026-04-21 19:23:21 +09:00
Celestial.y a2c1641090 ID failing to recognize (#3244) 2026-04-18 09:06:45 +08:00
jwihardi 25de796710 ID strips string and single quote 2026-04-17 20:15:48 -04:00
Kashi754 329fa31262 Fix broken waifu.im image and tag search 2026-04-15 18:16:56 +09:00
Hugo Hsi 14f8b84635 fix(ii): add Konachan support in sidebar 2026-04-14 01:58:37 -04:00
Hugo Hsi 36e0c3fddc fix(ii): remove Konachan wallpaper UA fallback 2026-04-14 01:58:30 -04:00
Hugo Hsi d24cbff7ac fix(ii): send user agent for Konachan wallpaper 2026-04-14 01:51:08 -04:00
end-4 96bf8dcbf0 dock: fix window title alignment on popup 2026-04-13 18:40:30 +02:00
Minh a9dcab5e41 Fix dock preview not showing up after first hover (#3228) 2026-04-13 18:33:31 +02:00
end-4 a57119005d update generic terminal theming to handle prompt colors 2026-04-13 16:40:41 +02:00
Minh 5467ab7f06 readme: don't assume reader's knowledge of "dotfiles" 2026-04-13 16:39:53 +02:00
fb24m fdd3cf5ef8 Update gtk4 styles for Material 3 Expressive (#3127)
Co-authored-by: Minh <97237370+end-4@users.noreply.github.com>
2026-04-13 15:44:50 +02:00
wbbwbwbwbwbb dbcde24003 Fix dock preview not showing up after first hover 2026-04-12 18:37:19 -07:00
Celestial.y e03cbfec91 fedora: skip up to date packages while installing (#3225) 2026-04-12 19:50:05 +08:00
fb24m eae36f4d4f fedora: skip up to date packages while installing 2026-04-12 15:32:01 +04:00
Celestial.y 09ff686f18 fedora: Update matugen to 4.0.0 to avoid errors (#3223) 2026-04-12 09:42:58 +08:00
Minh 0040588fd2 update readme 2026-04-12 00:03:42 +02:00
end-4 94fa3f9c40 bar: make lower-center group more compact 2026-04-11 21:07:22 +02:00
fb24m 4b4e1fd53c unquickshell matugen.spec 2026-04-11 22:23:08 +04:00
fb24m 5e6db59bfc compile matugen from sources instead of installing it from copr 2026-04-11 22:07:16 +04:00
end-4 5f9febd4b7 hyprland: less prominent borders
further reduces visual noise, especially in light mode
2026-04-10 22:12:23 +02:00
end-4 3e0561578c background: parallax: make amount configurable, fix change reactivity, disable by default 2026-04-10 21:36:24 +02:00
end-4 fa3bf6f5df make ScrollEdgeFade color less weird 2026-04-08 17:43:32 +02:00
end-4 a5eca98543 hyprland: prevent error from loading nonexistent user config files 2026-04-08 12:12:20 +02:00
end-4 a8761bc6f2 installation: not overwrite whole quickshell dir, overwrite hyprland.conf 2026-04-08 12:04:25 +02:00
end-4 dd26742d52 screen translator: handle rotated text 2026-04-08 10:22:55 +02:00
clsty 771cc18be5 Use install_dir__skip_ifexist() for hypr/custom/ (#3201) 2026-04-08 14:59:31 +08:00
clsty ada4b856f6 Override hyprland entry by default (#3201)
and provide --skip-hyprland-entry to skip that
2026-04-08 14:01:22 +08:00
end-4 d44bbcfefc fix some "overrides a member of the base object" warnings 2026-04-07 22:59:38 +02:00
end-4 6589158f51 sidebar: ai: dont scroll automatically
it used to work fine but now it's extremely annoying
2026-04-07 16:01:39 +02:00
end-4 f3ab1366d8 hyprconfigurator: create conf file if doesn't exist 2026-04-07 16:01:12 +02:00
end-4 d42420f848 Merge branch 'main' of https://github.com/end-4/dots-hyprland 2026-04-06 16:16:19 +02:00
end-4 9f5be8b0bc make hyprland config more configurable 2026-04-06 10:22:13 +02:00
Justin 747abbde9e make screen snip keybind take screenshot of only focused monitor (#3177)
Co-authored-by: 97237370+end-4@users.noreply.github.com
2026-04-06 08:44:36 +02:00
Celestial.y 0fb7d4dfd8 Update config.fish (add missing end in #3174) (#3192) 2026-04-06 12:34:24 +08:00
VietNguyenx c1c964aa89 Update config.fish (add missing end in #3174)
Add missing end in config.fish after commit #3174
2026-04-06 10:29:18 +07:00
Minh 099406a276 Adding alias to kitten ssh when using kitty (#3174) 2026-04-06 00:18:29 +02:00
end-4 2d0ac6e7db screen translator: more error handling & refetch token when expired 2026-04-05 23:19:08 +02:00
Minh d24e227245 refactor(musicRecognition): replace parec/ffmpeg pipeline with songrec listen fix:#3057 (#3058) 2026-04-05 21:45:18 +02:00
end-4 fad2a5f8ae Update LauncherSearch.qml
fix /wallpaper in launcher not working
2026-04-05 20:22:36 +02:00
end-4 1e2a6d23e3 starship: fix ass contrast when unthemed #3189 2026-04-05 20:19:18 +02:00
end-4 aea6216a7f ai: update default prompt 2026-04-04 23:33:32 +02:00
end-4 77ce65a53c overview: search: fix contrast issue on highlighted item 2026-04-04 23:32:07 +02:00
end-4 799bfae184 screen translator: open on focused monitor 2026-04-03 20:50:37 +02:00
end-4 0ebe70976f add screen translation keybind 2026-04-03 20:26:20 +02:00
end-4 f88b21e681 add missing bezier curve for screen translator 2026-04-03 19:33:28 +02:00
end-4 64b52f6a90 add screen translation 2026-04-03 19:31:24 +02:00
end-4 ec3b92a938 add MultiTurnProcess 2026-04-03 18:53:50 +02:00
end-4 59398595a5 refactor toolbar fab 2026-04-03 18:53:33 +02:00
end-4 eef2b691e7 lock: refactor error shake anim 2026-04-03 18:51:24 +02:00
end-4 347ada664d region selector: repage image after crop 2026-04-03 18:51:06 +02:00
end-4 a06764e111 revealer: more correct visible conditions 2026-04-03 18:50:44 +02:00
Minh d42c9b63be #2499 #2184 Rework wallpaper parallax (#2641) 2026-04-02 22:51:25 +02:00
end-4 dfe9c876d2 fix widget parallax 2026-04-02 22:46:52 +02:00
end-4 4408b5d9d3 fix not working with more than 10 workspaces 2026-04-02 22:22:35 +02:00
Celestial.y e356dbb6f9 gentoo: removed oneui (#3176) 2026-04-02 08:25:31 +08:00
jwihardi 7948d01d94 gentoo: removed oneui 2026-04-01 18:45:54 -04:00
daniel0alves 8447588c7f adding alias to kitten ssh when using kitty 2026-04-01 22:21:45 +01:00
clsty 56ad8b80b2 Remove file check before bibata-modern-classic-bin
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-04-01 08:43:06 +08:00
Ivan Rosinskii fe8d9887fa Merge branch 'end-4:main' into parallax 2026-04-01 01:00:47 +02:00
clsty bcb815aac5 Add group metadata into PKGBUILDs (#3165)
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Waiting to run
2026-03-31 19:26:15 +08:00
Celestial.y da99437351 support for sudo alternatives (#3167) 2026-03-31 08:38:17 +08:00
Martin Hanzlowsky ba2da84e7b fix: sudo check 2026-03-30 21:31:11 +02:00
clsty b4a57bbbec Update dist-nix
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Waiting to run
2026-03-30 21:48:45 +08:00
clsty 687beedc4a remove install-OneUI() 2026-03-30 21:42:24 +08:00
clsty 2243f8e489 Remove oneui4-icons deps (#3166) 2026-03-30 21:39:05 +08:00
Minh 6c0c7beaa6 Add quick fix for max int workspace bug coming back from a shutdown, logout, or sleep (#3161) 2026-03-30 10:40:57 +02:00
clsty 40705b4635 Add moderator workflow to prevent possible spam
Maybe remove this workflow in future
2026-03-30 10:39:41 +08:00
Celestial.y 83701e3038 Russian localization improvements (#3160) 2026-03-30 08:42:33 +08:00
lunstia 0493c08759 Add quick fix for workspace bug coming back from a logout or sleep 2026-03-29 19:33:18 -04:00
end-4 0c3be42218 region selector: switch to rect region mode for region record
(circle selection mode won't show the breathing border)
2026-03-29 23:59:04 +02:00
end-4 f6f07d4f65 ColorUtils: more robust solveOverlayColor 2026-03-29 23:52:26 +02:00
fb24m 3a20c0c2bb remove unnecessary reductions, correct the declensions 2026-03-29 23:30:30 +04:00
fb24m db10d4a45b remove unnecessary reductions, fix clock fonts settings 2026-03-29 23:16:59 +04:00
Minh 33f2865967 clarify plasma browser integration size note
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-03-28 10:00:33 +01:00
Minh 7eae26474f add fr_FR translation (#3145) 2026-03-28 09:56:26 +01:00
Celestial.y f6f0dedcb8 fix pkg size info (#3154) 2026-03-28 16:33:19 +08:00
KAGEYAM4 257abdf80a fix typo 2026-03-28 11:38:17 +05:30
end-4 f3caad4d90 fix gamma popup triggered on shell startup 2026-03-27 23:40:38 +01:00
Minh 7a983b049f feat(ai): auto-resize input with scroll (#3148) 2026-03-27 22:56:30 +01:00
end-4 69c5ac5cb3 sidebar: ai: fix shaky send button 2026-03-27 22:56:15 +01:00
Minh 55a33fb7d7 Make brightness quickslider follow gamma lower limit (#3139) 2026-03-27 22:41:45 +01:00
Celestial.y 72aa169087 Fedora: adjust dotfiles to sync with dist-arch (#3149) 2026-03-28 00:29:54 +08:00
Ivan Rosinskii 7f0fba51a9 Merge branch 'end-4:main' into parallax 2026-03-27 16:40:41 +01:00
fb24m 842d1323e9 return local_specs to local scope 2026-03-27 17:55:10 +04:00
fb24m 26adce8fc0 fedora: add a spec for cpptrace (now required by quickshell) and its dependencies 2026-03-27 17:50:40 +04:00
fb24m bdc6026cc2 fedora: update quickshell version 2026-03-27 16:35:39 +04:00
end-4 9f882d9f3c overview: ensure fullscreen windows are in front of others 2026-03-27 08:58:38 +01:00
end-4 15b4394865 add back accidentally removed es_MX translation 2026-03-27 08:34:47 +01:00
end-4 67fbaf1d27 sidebar: add pair button to bluetooth menu 2026-03-27 08:33:32 +01:00
Celestial.y 7206d1a19e Add spanish translation (#3138) 2026-03-27 11:17:00 +08:00
LilFishyChan ae9de61b72 feat(ai): auto-resize input with scroll 2026-03-27 10:51:50 +08:00
ilaicraftYT 0a8fb89501 implement spanish suggestions 2026-03-26 13:25:16 -06:00
0xbbuddha b1e2f86360 add translation fr_FR 2026-03-26 19:02:58 +01:00
Ivan Rosinskii 74329eb294 Merge branch 'end-4:main' into parallax 2026-03-26 18:37:09 +01:00
Minh 01562ca544 Add translation keys for cookie clocks settings (#3143) 2026-03-25 22:15:05 +01:00
fb24m dde0988a45 quality improvments 2026-03-25 20:45:59 +04:00
fb24m c117d9903a add translation keys for cookie clocks settings 2026-03-25 19:19:19 +04:00
Celestial.y 29d40ca90a Gentoo: songrec update (#3137) 2026-03-25 14:31:53 +08:00
altrup 737ccce538 Make brightness quickslider follow gamma lower limit 2026-03-24 20:16:17 -04:00
Minh 96f5f82656 Decrease gamma when attempting to decrease brightness below 0 (#3122) 2026-03-24 22:57:53 +01:00
end-4 35fb3d4da8 make 25 lowest possible gamma 2026-03-24 22:55:36 +01:00
ilaicraftYT 17c2762b1d few spanish tweaks 2026-03-24 15:40:26 -06:00
ilaicraftYT 27bd759a41 add spanish translation for quickshell 2026-03-24 14:56:01 -06:00
jwihardi 2ed29f5c46 gentoo: updated widget deps to use guru songrec
oops
2026-03-24 16:43:02 -04:00
altrup 75594fb5cf Change bar scroll icon to gamma when changing gamma 2026-03-24 13:22:39 -04:00
altrup f86d42d8f2 fix anchors formatting 2026-03-24 13:12:32 -04:00
end-4 b6fc897b39 make gamma indicator icon not scale 2026-03-24 17:18:01 +01:00
end-4 8f66afe109 minor formatting fix 2026-03-24 17:17:01 +01:00
end-4 72b8b7aecb fix bar scrolls not also changing gamma 2026-03-24 17:16:03 +01:00
Xleb a9721c7cfe Update Russian localization: Quality improvements (#3134) 2026-03-24 15:43:32 +01:00
end-4 774ce228a0 fish: update prompt; don't be fancy in tty 2026-03-24 14:50:53 +01:00
end-4 abea376e59 reload kitty after theming 2026-03-24 14:47:56 +01:00
Celestial.y bf2fec015c Gentoo Update (#3119) 2026-03-24 13:19:55 +08:00
altrup 78c6e3c16f Fix hyprsunset config not applying on launch 2026-03-23 22:15:25 -04:00
altrup deadf6cc4f Fix math for quickslider icon changing sides of handle 2026-03-23 21:54:19 -04:00
Ivan Rosinskii ae0412b513 Merge branch 'end-4:main' into parallax 2026-03-23 23:24:01 +01:00
jwihardi f974dea8e5 fixed comment 2026-03-23 17:58:56 -04:00
Celestial.y ede3cf8858 Update Russian localization and add missing strings no.2 (#3106) 2026-03-23 18:31:22 +08:00
Minh dfe6eee674 click-to-mute on app icons in the volume mixer (#3103) 2026-03-23 08:21:41 +01:00
end-4 854016e82a change mousearea to correct item and add tooltip 2026-03-23 08:21:18 +01:00
Ivan Rosinskii b4956cc05c Merge branch 'end-4:main' into parallax 2026-03-23 08:09:39 +01:00
altrup e06a3be726 Fix small visual bug when slider goes over divider 2026-03-22 23:38:21 -04:00
altrup 3e0f480ce0 Add padding logic to background 2026-03-22 23:14:26 -04:00
altrup 065b34ccde Add divider to brightness quick slider 2026-03-22 23:05:09 -04:00
jwihardi 41b6c190d2 moved depclean to the end 2026-03-22 20:50:55 -04:00
jwihardi 795f4042b0 updated use flags 2026-03-22 20:33:08 -04:00
jwihardi aff4705d6a added version number, updated deps, added := slots 2026-03-22 20:20:08 -04:00
xleb-normal a7353e5033 Update Russian localization Final tweak: Change Night Light to Night Mode 2026-03-23 03:37:43 +05:00
xleb-normal a43228ab28 Merge branch 'main' into update-russian-v2 2026-03-23 03:36:01 +05:00
altrup fc7524a30f Add gamma slider to night light dialog 2026-03-22 18:02:00 -04:00
altrup a28ed6023e Update quickslider to also decrease gamma when brightness is at 0 2026-03-22 17:44:30 -04:00
altrup 973b83bc15 Add gamma indicator 2026-03-22 16:52:35 -04:00
altrup 9d065f2c8e Undo temp fix 2026-03-22 16:37:25 -04:00
altrup 4caa59dd9e Decrease gamma when brightness is requested to go lower beyond 0 2026-03-22 16:36:17 -04:00
Minh 8aa9041106 Add XWayland configuration to fix blurry fonts while using fractional scale (#3121) 2026-03-22 18:28:07 +01:00
Anh 58a122a3b4 Add XWayland configuration to fix blurry fonts while using fractional scale
It will disable windows scaling on xwayland software to prevent blurry fonts. Source: https://wiki.hypr.land/Configuring/XWayland/
2026-03-22 20:13:01 +07:00
end-4 6e76977976 region selector: breathing border 2026-03-22 10:10:01 +01:00
Pico 15a56bdce3 use text color for mute icon and promote root to MouseArea 2026-03-22 10:40:07 +03:00
end-4 33db15f991 vrr off (#3118) 2026-03-22 08:08:34 +01:00
jwihardi 9dcf63b54a disabled breakpad, i3, and i3-ipc by default 2026-03-21 21:37:30 -04:00
jwihardi b61ae3abe7 gentoo updated keyword 2026-03-21 21:30:10 -04:00
jwihardi 42f14b92d0 gentoo updated quickshell ebuild 2026-03-21 21:29:48 -04:00
xleb-normal fc17e29ebf Russian localization update, minor improvements 2026-03-21 01:44:11 +05:00
xleb-normal b306d308b7 Update Russian localization and add missing strings #2 2026-03-20 14:18:36 +05:00
Pico 369fadd74b add click-to-mute on app icons in the volume mixer 2026-03-20 09:01:01 +03:00
Minh fd86b282a6 systray: (un)pin button, fix menu placecment (#3100) 2026-03-19 18:38:37 +01:00
end-4 0362b21f5a tray service: revert togglePin() for fewer if cases 2026-03-19 18:28:08 +01:00
end-4 fd2d69e407 SysTrayMenu: hide pin button when in subpage, remove unnecessary close() 2026-03-19 18:27:49 +01:00
end-4 7a01602c5e fix weird indentation 2026-03-19 18:19:10 +01:00
end-4 4a9d6a2665 update quickshell version
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-03-19 16:42:24 +01:00
end-4 be1838e40d add anti-flashbang with shader 2026-03-19 12:40:05 +01:00
end-4 7cf704d450 refactor GameModeToggle's conf opt fetching 2026-03-19 12:39:12 +01:00
Ivan Rosinskii 4eedd030df Merge branch 'end-4:main' into parallax 2026-03-19 12:09:22 +01:00
end-4 74ce3378d0 add missing import in AnnotationSourceButton 2026-03-19 09:24:53 +01:00
end-4 a831fa92e8 hyprconfigurator: atomic writes 2026-03-19 09:13:27 +01:00
end-4 7e94ee60aa sessionwarnings: pacman: only check critical operations 2026-03-19 08:48:43 +01:00
end-4 9a11a0d8f9 make game mode persistent (#3084) 2026-03-18 08:27:14 +01:00
LilFishyChan a574baacc5 feat(translations): add "Pin" and "Unpin" labels to English and Chinese translations 2026-03-17 17:08:12 +08:00
LilFishyChan bd923a0f88 feat(SysTray): add pinning functionality to system tray items 2026-03-17 17:07:59 +08:00
LilFishyChan 735fb7895b fix(SysTrayItem): anchor popup menu to icon instead of fixed coordinates
- Improved anchor positioning to make the expanded menu follow the icon dynamically rather than using fixed absolute coordinates.
- Replaced manual `rect` calculations with direct `item: root` binding.
- Updated `gravity` and `edges` logic to properly support both vertical and horizontal bar orientations.
2026-03-17 16:22:47 +08:00
Minh fffa2b5749 readme: move the inspirations part to bottom 2026-03-14 22:49:50 +01:00
Ivan Rosinskii 673e5ffe2e Merge branch 'end-4:main' into parallax 2026-03-14 21:09:39 +01:00
Minh 8190c3b976 Allow centering widgets in overlay using right-click (#2967) 2026-03-13 23:52:02 +01:00
Minh 5ac58bdb3c sidebar: translator: don't make RTL text LTR (#3028) 2026-03-13 23:47:56 +01:00
Minh 9bbfef19e2 [small bug fix] fixed thumbnail urlencode for file names with (,),* (#3042) 2026-03-13 23:41:24 +01:00
Minh bda3834176 fix(quickshell): load extraModels properly in AI sidebar (#3076) 2026-03-13 23:32:33 +01:00
Minh 3653715029 ai: refactor user model loading 2026-03-13 23:32:07 +01:00
Minh 0974a6069a theming: kitty theme without terminal escape codes (#3086) 2026-03-13 23:13:09 +01:00
end-4 5710fbb3d6 fix player track change slow art update (#2036) 2026-03-13 22:55:35 +01:00
end-4 fb4b5e83a9 un-revert matugen 4.0 fix 2026-03-13 14:29:08 +01:00
Celestial.y a052a01eee Updated the Russian language (#3089) 2026-03-13 13:36:40 +08:00
xleb-normal 97d4f8e438 Small final improvements №2 2026-03-13 09:35:36 +05:00
xleb-normal a245b4681d Small final improvements 2026-03-13 09:17:18 +05:00
xleb-normal 8c34bcf124 Improved color names 2026-03-13 09:07:36 +05:00
xleb-normal f554a0512d Slight modification of watch style names 2026-03-13 08:55:05 +05:00
xleb-normal 370574d8ca Refine translations: fix typos and resolve Full/Hollow ambiguity 2026-03-13 08:46:20 +05:00
xleb-normal c3b152b318 Updated the Russian language 2026-03-13 07:36:58 +05:00
end-4 26c69e5fd3 add missing fluent ethernet-filled icon 2026-03-12 13:11:38 +01:00
nrand 1671959186 theming: kitty theme without terminal escape codes
Up until now, colors were applied with the help of terminal escape
codes, ran from the fish config. This still happens (so theming will
still kinda also work for other terminals), but, for kitty specifically,
I've also added a way to apply the theme on startup, without the need
for loading the fish config.
2026-03-11 11:58:04 +02:00
clsty a7f1cddd45 Fix uv not idempotent (close #3016) 2026-03-09 09:01:34 +08:00
tivnantu b4b422bd9c fix(quickshell): load extraModels properly in AI sidebar
- Use Object.assign in addModel to trigger QML binding recalculation
- Load extraModels in Component.onCompleted as fallback when
  onReadyChanged doesn't fire (Config already ready at load time)
2026-03-07 02:00:50 +08:00
Minh 1dcf90ac57 Fix dock first launch (#2707) 2026-03-04 23:33:12 +01:00
altrup 2e0dea28a5 Merge remote-tracking branch 'upstream/main' into fix-dock-first-launch 2026-03-04 15:01:36 -05:00
Ivan Rosinskii 9873a23794 Merge branch 'end-4:main' into parallax 2026-03-04 09:44:16 +01:00
Aman 8c66dc7aa7 fix(musicRecognition): restore 2s interval and fix songrec process leak 2026-03-04 09:21:29 +05:30
Celestial.y 9cbeded70d Gentoo updates (#3071) 2026-03-04 10:59:12 +08:00
jwihardi 01f2ebb246 updated keywords 2026-03-03 21:06:57 -05:00
jwihardi 1f9a8ea37c updated quickshell commit no. and added vulkan-headers BDEPEND 2026-03-03 20:59:23 -05:00
end-4 5cbf5608be keybinds: add splitratio 2026-03-03 22:34:01 +01:00
end-4 0c843c8d03 Merge branch 'main' of https://github.com/end-4/dots-hyprland 2026-03-03 18:22:30 +01:00
end-4 c85e98d6f9 theming: material code: add antigravity 2026-03-03 18:22:22 +01:00
Minh 7013893cbd fix(quickshell): fix qs crashing when sidebar is detached while in use (#3069) 2026-03-03 18:20:31 +01:00
3N1GM4.ExE 65eeea7ffa fix(quickshell): fix qs crashing when sidebar is detached while in use
This is a small fix that removes the left sidebar from the focus grab system before destroying the panel.
2026-03-03 17:50:39 +01:00
Aman 5860462082 Merge branch 'main' into main 2026-03-03 21:28:12 +05:30
Minh 33bd04200a fix: music recognition for songrec 0.6.3+ (#3027)
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-03-03 15:45:50 +01:00
Minh 4fc56f6c78 Fix wifi signal strength bar display (#3063) 2026-03-03 15:23:59 +01:00
end-4 ba4ac764aa installation: add vulkan-headers to quickshell build dep 2026-03-03 15:20:19 +01:00
rijaluddin 65dab672cf Merge branch 'end-4:main' into main 2026-03-03 20:03:05 +07:00
end-4 ea0dd2c9a4 update quickshell 2026-03-03 10:35:59 +01:00
Ivan Rosinskii e52d569b9e Merge branch 'end-4:main' into parallax 2026-03-03 00:07:25 +01:00
rijaluddin f610332877 Merge branch 'end-4:main' into main 2026-03-03 04:31:27 +07:00
rijaluddina bbc84b68ef Fix wiFi signal strength bar display
1. Using root.active?.strength ?? 0 instead of root.networkStrength
2. Added checking wifiStatus === "connected" — only show signal bars if
actually connected
2026-03-03 04:23:46 +07:00
end-4 2554fc7d61 waffles: more readable calendar months when scrolling 2026-03-02 21:58:47 +01:00
Minh dc172862b0 fix(network): correct regex escaping for Wi-Fi signal strength retrieval (#3056) 2026-03-02 18:04:27 +01:00
Aman 0725edd35d refactor(musicRecognition): replace parec/ffmpeg pipeline with songrec listen fix:#3057
Use `songrec listen --audio-device` instead of manually capturing audio
with parec, converting with ffmpeg, and passing to audio-file-to-recognized-song.
Drops temp file handling and simplifies the recognition loop.
2026-03-01 15:46:02 +05:30
Furkan 77dd839320 Fix escape character in network strength command 2026-03-01 11:06:06 +03:00
Celestial.y 1402a19c98 Fix extra whitespace (#3047) 2026-02-28 09:22:55 +08:00
Jay Turner 57b78135a6 Fix extra whitespace that was mildly annoying me 2026-02-28 01:01:29 +00:00
end-4 48fec445ad hyprland: nuke unused plugin config to fix error on 0.54 2026-02-27 22:49:34 +01:00
end-4 060b8693ef hyprland: adjust some effects 2026-02-27 22:48:23 +01:00
Minh a187d013e4 fix(dock): add robust retry mechanism for desktop entry lookup (#2952) 2026-02-26 21:02:47 +01:00
Minh 577fab457f waffle: bar: adjust desktop entry lookup interval & timeout 2026-02-26 21:02:21 +01:00
Ivan Rosinskii 35bb2a1ad9 Merge branch 'end-4:main' into parallax 2026-02-26 09:15:36 +01:00
sugashss1 095d637c70 fixed thumbnail urlencode for file names with (,),*
matched output of urlencode with

gio info "/home/su/Pictures/Wallpapers/as()*[].png" | grep "uri:"

uri: file:///home/su/Pictures/Wallpapers/as()*%5B%5D.png
2026-02-25 22:15:27 +05:30
Akash 373a9e5670 Merge branch 'end-4:main' into main 2026-02-25 13:40:52 +05:30
Celestial.y d11ef2adef fix: sudo keepalive cleanup leaking exit code 143 (#3040) 2026-02-25 16:00:31 +08:00
GokuPlay609 9a3bb5e59e fix: sudo keepalive cleanup leaking exit code 143
wait on a SIGTERM-killed process returns 143 (128+15).
With set -e active in the setup script, this overrides the
script's exit code, making a successful install appear failed.

Amp-Thread-ID: https://ampcode.com/threads/T-019c93b6-b135-743f-8844-6a1ca8875506
Co-authored-by: Amp <amp@ampcode.com>
2026-02-25 13:16:46 +05:30
Minh 8bf279e571 Remove [hidden] comment for zoom keybinds (#3026) 2026-02-22 15:03:02 +01:00
end-4 e72d39fecb gtk theme: m3-ize more colors, fix distracting inactive fade 2026-02-21 21:48:54 +01:00
end-4 c5e0c2d3dc gtk theme: improve readability 2026-02-21 20:38:34 +01:00
Muhannad H. c19e625069 fix: add support for RTL in the translator 2026-02-21 20:01:24 +02:00
Javier Rolando aea06d42ab fix: music recognition for songrec 0.6.3+ 2026-02-21 06:55:20 -03:00
VietNguyenx 40fb416366 Merge pull request #1 from VietNguyenVN/bruh
Remove unnecessary [hidden] comment for zoom keybinds keybinds.conf
2026-02-21 15:51:33 +07:00
Akash ab1b720503 Merge branch 'end-4:main' into main 2026-02-21 10:26:52 +05:30
VietNguyenx b6c2fd3f18 Remove unnecessary [hidden] comment for zoom keybinds keybinds.conf 2026-02-21 11:36:24 +07:00
end-4 3d9f51030c settings: allow crazy background clock sizes (closes #2974) 2026-02-20 14:48:03 +01:00
Minh 14770e5b75 fix(quickshell): mpris not detecting browser players when plasma-browser-integration is installed (#3002) 2026-02-20 09:39:51 +01:00
end-4 2e7ea9d9f6 fix gemini clock styling 2026-02-20 09:11:43 +01:00
end-4 60c197e2f5 gemini-categorize-wallpaper.sh: upgrade gemini from 2.0 to 2.5 (#3015) 2026-02-20 08:25:18 +01:00
Ivan Rosinskii 47c5ffe5f9 Merge branch 'end-4:main' into parallax 2026-02-18 11:15:57 +01:00
Akash 5ab4812a3b Merge branch 'end-4:main' into main 2026-02-18 10:44:53 +05:30
end-4 c063bdfe86 revert updated matugen interaction for now
This reverts commit 585a7b0f06.
2026-02-17 23:01:25 +01:00
Akash cea0acafff fix: refine desktop entry lookup retry logic 2026-02-17 14:47:08 +05:30
Akash fb1b674a30 fix: Implement a limited retry mechanism for desktop entry lookups in app buttons. 2026-02-16 21:44:13 +05:30
Akash 8d52e83a59 Update touchpad settings in general.conf 2026-02-16 20:46:10 +05:30
Akash 7670c135ed Merge branch 'end-4:main' into main 2026-02-16 17:04:44 +05:30
end-4 a7f30838de Update shapes 2026-02-16 09:44:26 +01:00
end-4 585a7b0f06 fix wallpaper script blocked by matugen interaction
https://github.com/InioX/matugen/issues/255
2026-02-16 09:42:36 +01:00
GokuPlay609 502dffeac7 fix(quickshell): mpris not detecting browser players when plasma-browser-integration is installed
Amp-Thread-ID: https://ampcode.com/threads/T-019c5f8e-6544-735e-88e3-aa29c2d3bbf6
Co-authored-by: Amp <amp@ampcode.com>
2026-02-15 10:22:03 +05:30
Ivan Rosinskii 52f1a7af65 Merge branch 'end-4:main' into parallax 2026-02-12 00:12:21 +01:00
Akash 1e7f065add Merge branch 'end-4:main' into main 2026-02-11 13:17:04 +05:30
Minh f128c48356 fix wallpaper not switching when setting a custom accent color (#2850) 2026-02-10 23:35:37 +01:00
Ivan Rosinskii 44244ed1bf Merge branch 'end-4:main' into parallax 2026-02-10 20:50:56 +01:00
Akash e3d89101f1 Merge branch 'end-4:main' into main 2026-02-09 14:37:51 +05:30
end-4 0435681032 remove "invalid override of property change signal or superclass signal" 2026-02-08 20:36:52 +01:00
Ivan Rosinskii 33b4ef42f4 Merge branch 'end-4:main' into parallax 2026-02-08 20:34:11 +01:00
end-4 633afb54c9 clearer session screen download warning, update check config option 2026-02-08 20:33:53 +01:00
Akash feeb0bba8c Modify touchpad settings in general.conf 2026-02-07 17:27:55 +05:30
Akash 92e9aa2976 Merge branch 'end-4:main' into main 2026-02-07 17:21:56 +05:30
Minh 09d5817f2e Fix overview search field and right sidebar losing focus (#2838) 2026-02-07 08:49:34 +01:00
end-4 d23d39df04 fish: more typo aliases 2026-02-06 21:50:54 +01:00
end-4 9e9c6b70b6 Update shapes 2026-02-06 21:50:34 +01:00
end-4 3a14cc644b ai: remove openrouter deepseek 2026-02-06 21:08:22 +01:00
Minh 2132829184 fix(quickshell): bug temp lock screen workspaces (#2942) 2026-02-06 21:06:05 +01:00
Akash 9fbc549da4 Merge branch 'end-4:main' into main 2026-02-05 07:21:23 +05:30
ar-Raqmi 4d6f58a914 feat: allow centering widgets via taskbar right-click 2026-02-04 23:23:35 +08:00
Ivan Rosinskii 4601605df9 Merge branch 'end-4:main' into parallax 2026-02-03 19:58:18 +01:00
Celestial.y 640a147721 gentoo pugixml and glaze removed (#2959) 2026-02-03 15:34:22 +08:00
jwihardi 145731d8bb removed glaze 2026-02-02 12:01:50 -05:00
jacub c1a6034a13 Merge branch 'end-4:main' into main 2026-02-02 12:01:07 -05:00
ATDMA 68f0355940 refactor(quickshell): simplify workspace ID handling in Workspaces.qml and Lock.qml 2026-02-01 17:06:53 -05:00
Akash 4fbd238a90 fix(dock): add robust retry mechanism for desktop entry lookup
Resolves an issue where dock buttons would fail to function on startup if the system's application database wasn't fully loaded. Adds a self-healing timer to DockAppButton.
2026-02-01 10:54:40 +05:30
Ivan Rosinskii b3117ce578 Merge branch 'end-4:main' into parallax 2026-01-31 23:08:50 +01:00
end-4 f8903da663 Add fallback to xcb for QT_QPA_PLATFORM (#2882) 2026-01-31 14:07:49 +01:00
ATMDA 15ceda494e fix(quickshell): hide lock-screen temp workspace from UI, batch lock/unlock 2026-01-30 08:51:19 -05:00
jacub f1a2784777 Update README.md with Hyprland installation guidance
Removed outdated troubleshooting steps for Hyprland installation issues and consolidated cache clearing instructions.
2026-01-29 16:43:04 -05:00
jwihardi 52ae3b187f pugixml added to hyprwire dep 2026-01-29 14:04:09 -05:00
Ivan Rosinskii 622b6ec424 Merge branch 'end-4:main' into parallax 2026-01-28 18:33:32 +01:00
clsty 4ff3435446 mimic update dist-fedora
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-01-28 09:18:09 +08:00
Celestial.y e24de7f935 Gentoo -> Hyproverlay (#2931) 2026-01-28 09:11:08 +08:00
clsty 6215f54c9f Properly deprecate matugen-bin 2026-01-28 09:07:35 +08:00
jwihardi a55ebc5f48 removed spaces 2026-01-27 11:41:45 -05:00
jwihardi f3f9d183f2 removed aquamarine comment 2026-01-27 11:41:14 -05:00
jwihardi 21e3f253d9 hard code glaze and pugixml till fixed and removed qt 2026-01-27 11:40:11 -05:00
jwihardi 1be524ce15 hard code glaze and pugixml till fixed 2026-01-27 11:17:41 -05:00
jwihardi aee7240627 switch to hyproverlay 2026-01-27 09:44:03 -05:00
jwihardi 901b4cf1ff using hyproverlay 2026-01-27 08:59:21 -05:00
Ivan Rosinskii d92a081b57 Merge branch 'end-4:main' into parallax 2026-01-26 14:39:45 +01:00
Celestial.y 6bf455a042 matugen now available in extra repo (#2924)
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2026-01-26 18:01:41 +08:00
KAGEYAM4 d3ccde299e matugen now available in extra repo 2026-01-26 00:57:13 +05:30
Ivan Rosinskii 18004b5959 Merge branch 'end-4:main' into parallax 2026-01-25 16:58:30 +01:00
end-4 1588a20b46 make wifi/bluetooth device items not unexpectedly use fancy text 2026-01-24 15:08:22 +01:00
Celestial.y 6075835d85 fix(exp-update): Resolve stdin conflict causing truncated filenames (#2919) 2026-01-24 09:10:54 +08:00
Bishoy Ehab 63dd6516f1 fix(exp-update): use fd 9 for file loop to prevent stdin conflict with inner interactive commands 2026-01-23 21:35:34 +02:00
Celestial.y 1b4c439c3e feat(exp-update): add --default-choice option (#2915) 2026-01-23 08:06:39 +08:00
Bishoy Ehab 76ee7b6bb1 feat(exp-update): support string inputs in interactive mode and help text 2026-01-22 19:52:17 +02:00
Bishoy Ehab c30776e811 feat: update exp-update default-choice to use string flags 2026-01-22 19:42:29 +02:00
Bishoy Ehab a217d4c5da feat(exp-update): add --default-choice option for non-interactive updates 2026-01-22 15:25:05 +02:00
Ivan Rosinskii b236690f2a Merge branch 'end-4:main' into parallax 2026-01-21 18:59:19 +01:00
end-4 36051b5970 use hyprland's built-in animation for zooming 2026-01-21 11:04:47 +01:00
Ivan Rosinskii f98e3cd3e9 Merge branch 'end-4:main' into parallax 2026-01-19 16:06:38 +01:00
altrup 30269dd052 Merge remote-tracking branch 'upstream/main' into fix-search-focus-loss 2026-01-15 10:18:44 -05:00
Celestial.y 20ec7717a4 Feature migrate update script into XDG standards (#2891) 2026-01-15 08:10:36 +08:00
Oussama Mahdjour bbf1066ceb fixed typo in the test script for exp update 2026-01-14 20:35:00 +01:00
Oussama Mahdjour 798e4bde27 migrate to XDG standards for update ignore file 2026-01-14 20:34:30 +01:00
Celestial.y 224bdbd5cb Feature: Indonesian translations (#2888) 2026-01-14 23:27:40 +08:00
narendnp 2cb45c3a78 revert letter capitalization to better suit grammatical correctness (EYD) 2026-01-14 22:27:48 +08:00
narendnp 80db68467f improve ID translations 2026-01-14 22:07:33 +08:00
Narend 8182dbb17b Merge branch 'end-4:main' into feat_id-translation 2026-01-14 21:54:49 +08:00
Celestial.y ecc8d42265 Fix on uninstall script (Fix #2886) (#2887) 2026-01-14 21:41:25 +08:00
daniel0alves 6afc4b1aa7 fix on uninstall script with -r 2026-01-14 12:30:47 +00:00
daniel0alves 1c3c255ab6 Change rm command to use -- option for safety 2026-01-14 11:26:35 +00:00
daniel0alves a5c61d9ab0 fix on uninstall script 2026-01-14 11:23:10 +00:00
daniel0alves 887d54bf07 fix on uninstall script 2026-01-14 09:27:39 +00:00
Ivan Rosinskii 2d0cff9716 Merge branch 'end-4:main' into parallax 2026-01-13 15:30:57 +01:00
narendnp 47beca14de feat: Indonesian translations 2026-01-13 20:40:57 +08:00
end-4 9611288d79 sidebar: fix weird calendar placement 2026-01-13 10:19:33 +01:00
Ruslan 2af409b1e5 Add fallback to xcb for QT_QPA_PLATFORM 2026-01-13 10:15:15 +03:00
Celestial.y 800c75c4d2 Fix Fedora installation for Hyperland v0.53.1 in Fedora 43 (#2881) 2026-01-13 08:26:34 +08:00
Celestial.y e0640a8782 Added pt_BR translations for Illogical Impulse. (#2864) 2026-01-13 08:24:11 +08:00
altrup 1932dcbab8 Add keyboardFocus.OnDemand to WallpaperSelector 2026-01-12 14:58:04 -05:00
altrup 94490f371b Fix case with unfocusable dismissables 2026-01-12 14:00:41 -05:00
Rafael 3fbf9a7056 fix: translation corrections and review suggestions 2026-01-12 12:37:58 -03:00
brunoorsolon b75ae3817c remove extra comma 2026-01-12 16:13:11 +01:00
Rafael Lopes 26abbd29e2 Update dots/.config/quickshell/ii/translations/pt_BR.json
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-12 12:03:21 -03:00
Rafael Lopes 09c09ebfcf Update dots/.config/quickshell/ii/translations/pt_BR.json
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-12 12:02:58 -03:00
brunoorsolon 36658322c4 feddeps - hyprland-guiutils replaces hyprland-qtutils (archived) and add repo with up to date hyprland packages 2026-01-12 15:31:21 +01:00
end-4 a9a92e0203 qs: dont force scale factor 1 2026-01-12 13:29:44 +01:00
end-4 eecc1201d8 hyprland: also load custom env vars before default config
allows making shell scale update-friendly
2026-01-12 11:30:20 +01:00
end-4 0f24287a39 make osk always above everything else (#2862) 2026-01-12 11:20:14 +01:00
end-4 07446b5399 region selector: adjust cursor hint text
caelestia man told me always using droplet shape makes more sense. i'm indifferent between droplet and full-round, so sure...
2026-01-11 13:19:13 +01:00
end-4 803500c4b0 region selector: dashed border, move action indicator to cursor 2026-01-11 12:04:52 +01:00
clsty d8018e97fe Update reasoning for bluedevil and plasma-nm (fix #2869) 2026-01-11 17:50:02 +08:00
Rafael 6675fb8abb feat: Add Portuguese (Brazil) translation 2026-01-10 16:25:41 -03:00
altrup cf2e944742 Add WlrKeyboardFocus.OnDemand to sidebar right when open 2026-01-10 14:09:22 -05:00
end-4 e9b80dbbf4 dock: fix transparent preview popup 2026-01-10 16:30:33 +01:00
end-4 b7b94b4a4e bar: hide left sidebar icon when everything's disabled 2026-01-10 11:46:17 +01:00
end-4 1a9d78fb48 sidebar: add empty page when only anime tab is closet-enabled 2026-01-10 11:35:05 +01:00
end-4 97d22378ff sidebar: add empty placeholder (#2804) 2026-01-10 11:29:20 +01:00
end-4 809dac681f brightness: don't detach brightness set cmds to prevent spam (#2828) 2026-01-10 11:20:53 +01:00
end-4 46911074f9 lock: fix weird selection (fixes #2453) 2026-01-10 11:08:00 +01:00
end-4 528102ba4a fix lock anim hack for multimonitor 2026-01-10 10:43:29 +01:00
clsty 755a9b15a5 Remove hyprpm from config (fix #2839) 2026-01-10 14:54:18 +08:00
Celestial.y f05358ed28 sdata: deps-info: fix typo :3 (#2859) 2026-01-10 07:16:22 +08:00
pspsp 922c85795f sdata: deps-info: fix typo :3 2026-01-09 19:22:30 +00:00
altrup 5b27dfa747 Uncomment WlrLayerShell.keyboardFocus in Overview 2026-01-09 13:54:44 -05:00
Celestial.y 57b5e34f27 German Translation (#2756) 2026-01-09 09:26:07 +08:00
René 3b86fe7de7 Update dots/.config/quickshell/ii/translations/de_DE.json
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-08 20:44:47 +01:00
reakjra 360f1258f3 fix wallpaper not switching when setting a custom accent color 2026-01-08 04:06:22 +01:00
Ivan Rosinskii 672e756fbf Merge branch 'end-4:main' into parallax 2026-01-04 10:40:10 +01:00
end-4 60fd1ea030 feat: add last refresh timestamp to weather popup (#2819) 2026-01-04 10:37:09 +01:00
end-4 bf06497f9e weatherpopup: remove useless layouts 2026-01-04 10:36:03 +01:00
end-4 22970db52f Fix: Wallpaper selector missing previews (#2818) 2026-01-04 10:25:27 +01:00
Greyfeather 14c930d48c Use wrapper functions in DateTime to format 2026-01-03 22:05:02 -07:00
Greyfeather 7197f9ddfb add last refresh timestamp to weather popup 2026-01-03 21:46:18 -07:00
ech0 58e372c590 Fixed issue where thumbgenProc would not fallback on generate-thumbnails-magick.sh if thumbgen-venv.sh fails.
Fixed issue where thumbnails would not reload after being generated.
2026-01-03 18:11:42 -05:00
end-4 8538efe743 overview: tab to copy selected result 2026-01-04 00:10:49 +01:00
end-4 b268f1d61c add missing comma 2026-01-03 19:36:24 +01:00
end-4 711793dd66 FIX: Quick Settings keybinding hint (#2794) 2026-01-03 19:26:30 +01:00
end-4 dc57f940d0 Fix when wifi having space in between (#2812) 2026-01-03 19:23:17 +01:00
pandakewt da578735e6 fix: update changePassword function to use SSID variable for network modification 2026-01-03 13:58:07 +07:00
altrup 31e821250f Force focus workaround 2026-01-02 16:04:01 -05:00
Ivan Rosinskii ce6d5969e0 Merge branch 'end-4:main' into parallax 2026-01-02 15:47:43 +01:00
end-4 d5b599da3d overview: limit search results while typing (less laggy emoji/clipboard search) 2026-01-01 16:52:58 +01:00
Celestial.y c9d0248a6a Fix missing v in 3.files.sh (#2792) 2026-01-01 23:42:24 +08:00
end-4 7238b2b15c use shared focusgrab for most stuff (makes osk usable w/ other panels) 2026-01-01 16:36:50 +01:00
Rili 5a687c3565 fix persisting Windows key, instead of user configured key 2026-01-01 16:46:45 +02:00
end-4 171cf6059f Update shapes 2026-01-01 11:41:39 +01:00
end-4 e818a202b8 overview: fix clipboard and emoji keybinds 2026-01-01 10:43:47 +01:00
end-4 199845bf59 update shapes submodule 2026-01-01 10:43:13 +01:00
end-4 575b26d572 make overview show only on focused monitor (fixes #2782) 2026-01-01 09:26:43 +01:00
end-4 af1adef5f1 make date not misaligned for vertical digital clock 2026-01-01 09:21:01 +01:00
end-4 c5c8ad2236 lock screen: unfuck resolution 2026-01-01 09:11:55 +01:00
Celestial.y 8cb2c7e016 Update windowrule examples (#2788) 2025-12-31 21:29:29 +08:00
W1ngD1nGa5ter d30c8138df Update windowrule examples
Make it work under the new syntax
2025-12-31 19:46:32 +08:00
Celestial.y 0027e8a6e3 Update auto-Hypr.sh/auto-Hypr.fish to use start-hyprland instead for hyprland 0.53 (#2779) 2025-12-31 07:49:43 +08:00
VietNguyenx 652104a358 Update auto-Hypr.fish to use start-hyprland instead (Hyprland 0.53)
Hyprland 0.53 introduced start-hyprland as the recommended launcher when starting Hyprland from a TTY.

This PR updates the relevant files to avoid some messages on tty autologin.
2025-12-31 00:14:07 +07:00
VietNguyenx e9d6ed874c Update auto-Hypr.sh to use start-hyprland instead (for Hyprland ≥ 0.53)
Hyprland 0.53 now introduced start-hyprland as the recommended launcher when starting Hyprland from a TTY
2025-12-31 00:04:38 +07:00
end-4 aaa8448011 fix(hyprland configs): Support for Hyprland 0.53.0 (fix #2775) (#2776) 2025-12-30 09:17:19 +01:00
end-4 f02e9ba2a5 Merge branch 'main' into fixes-for-0.53.0 2025-12-30 09:17:09 +01:00
end-4 a05b0bb559 hyprland: migrate to new windowrule syntax (#2553) 2025-12-30 09:01:32 +01:00
end-4 60c1a92cf5 Merge branch 'main' into main 2025-12-30 09:01:24 +01:00
end-4 91f6f95460 remove "transparency looks ass" notice 2025-12-30 08:54:30 +01:00
August 2434b36098 oopsies :3c 2025-12-29 20:30:31 -06:00
August a849fe0883 Fixes for Hyprland 0.53.0 2025-12-29 18:43:00 -06:00
end-4 8ae14725e6 Fix background clock widget's color being obnoxious (#2730) 2025-12-29 19:09:06 +01:00
end-4 e8a05d12e9 Fixed SearchWidget.qml to use proper implicitHeight calculation (#2773) 2025-12-29 18:55:12 +01:00
end-4 76fbe3d04a feat(clock): Improve digital clock style (#2593) 2025-12-29 18:48:24 +01:00
end-4 7763a26e03 backgroundconfig: format, adjust texts 2025-12-29 18:47:15 +01:00
end-4 281943306e bg clock: put bottom time text in a loader 2025-12-29 18:42:03 +01:00
end-4 61feb958ec add comment for empty style name assignment 2025-12-29 18:37:55 +01:00
end-4 953427692f remove unnecessary imports 2025-12-29 18:31:05 +01:00
end-4 b21699b8a0 fix weird vertical clock with 12h format 2025-12-29 18:25:49 +01:00
Celestial.y d13bcddb33 fix(exp-update): build packages in /tmp with auto-cleanup (#2768) 2025-12-29 21:00:56 +08:00
radicalgale b820bdc654 Fixed SearchWidget.qml to use proper implicitHeight calculation
The `SearchWidget.qml` has the wrong `implicitHeight` value. Instead of using `searchWidgetContent.implicitHeight` it uses `searchBar.implicitHeight`. This causes the search bar to ignore mouse clicks and only allows the user to launch apps by pressing Return (Enter). 

This issue isn't present if Overview is enabled, because it expands `columnLayout.implicitHeight`, then gets hidden if search isn't equal to "", allowing the mouse clicks to go through. So, to reproduce this issue, try turning off Overview and launching any app in search results by using mouse.
2025-12-29 19:39:15 +07:00
Bishoy Ehab d178dafac6 fix(exp-update): build packages in /tmp with auto-cleanup 2025-12-29 06:24:19 +02:00
end-4 d22822e734 fix transparent todo list add dialog 2025-12-27 20:14:57 +01:00
end-4 5c141e0361 fix transparent booru image menu 2025-12-27 12:02:27 +01:00
end-4 e1f30bf85c less transparent light mode 2025-12-27 12:02:08 +01:00
end-4 c5aaf721c8 hyprland: tune shadows and borders 2025-12-27 11:24:19 +01:00
end-4 13a827c0f4 group panels more properly 2025-12-27 09:58:14 +01:00
René 64e726d4c5 Merge pull request #1 from Ninso112/commit
Add German translations for Quickshell interface
2025-12-27 01:22:34 +01:00
Ninso112 392ef6b74f Add German translations for Quickshell interface 2025-12-27 01:21:30 +01:00
end-4 db60f8775d ai: default to gemini 2.5 2025-12-26 22:06:18 +01:00
end-4 5a48a22e71 feat: Removed deprecated Gemini and GitHub AI models, and added Gemin… (#2753) 2025-12-26 22:04:12 +01:00
end-4 1e2a972747 fix translator lang selector transparency 2025-12-26 21:42:55 +01:00
KemonoNeco a34ead004f feat: Removed deprecated Gemini and GitHub AI models, and added Gemini 3 Flash. 2025-12-26 12:24:28 -08:00
end-4 a658aced0d fix transparent combobox 2025-12-25 21:21:40 +01:00
Ivan Rosinskii 6ad8717a47 Merge branch 'end-4:main' into parallax 2025-12-23 23:35:22 +01:00
end-4 76ca889eec waffles: adjust colors 2025-12-23 10:31:05 +01:00
end-4 ec7d6fd66b waffles: make bar not hide when locked 2025-12-23 09:11:06 +01:00
end-4 cfb8b44d7a sidebar: fix unintended transparent statusbar 2025-12-23 09:05:41 +01:00
reakjra c580b050e4 Fix background clock widget's color being obnoxious 2025-12-22 23:34:52 +01:00
end-4 d7ae6014ed waffles: popup notifs 2025-12-22 23:01:42 +01:00
end-4 29c8001785 waffle: start: move Other category to last 2025-12-22 23:01:00 +01:00
end-4 896aa97701 fix wrong notif and overlay crosshair titlebar color 2025-12-22 00:16:19 +01:00
end-4 8d7dd0d6ae overlay: fix weird transparency 2025-12-21 23:52:01 +01:00
end-4 41f007a771 increase session screen transparency 2025-12-21 23:38:49 +01:00
end-4 4041310b4d make transparency not ass 2025-12-21 23:29:32 +01:00
end-4 d5dbf7ab7f fix(overview): correct 4 finger vertical swipes (#2712) 2025-12-21 07:26:55 +01:00
end-4 8842df6340 waffles: screen snip 2025-12-20 11:46:07 +01:00
end-4 169b24bea5 region selector: add region hover fade anim 2025-12-20 11:45:39 +01:00
end-4 e499f4f8f1 waffles: start: limit clipboard results to prevent lag, adjust btn 2025-12-20 11:45:10 +01:00
Ivan Rosinskii ae8be40c2d Merge branch 'end-4:main' into parallax 2025-12-18 19:16:43 +01:00
Bernat Felip 3eec36d20d fix(overview): correct 4 finger vertical swipes 2025-12-18 16:26:34 +01:00
clsty ed6a0204b4 Fix arg of install_google_sans_flex (closes #2702) 2025-12-18 21:31:27 +08:00
Celestial.y b01e0c315a update dist-fedora (#2710) 2025-12-18 21:26:48 +08:00
Celestial.y a38c725d3d Remove redundant set -e; not using set -x 2025-12-18 21:25:11 +08:00
Elysia 17a3874ab1 chore: Added a fallback mechanism for build failures. (ref #2706) 2025-12-18 18:24:31 +08:00
Elysia 34991dd32e chore: fine-tune installation script. (ref #2566) 2025-12-18 15:49:00 +08:00
Elysia 28d3f6a94a chore: remove redundant packages. 2025-12-18 15:29:09 +08:00
end-4 252a1055c2 make install script proceed prompt less confusing 2025-12-17 23:39:44 +01:00
altrup 4ac6784844 Commet out workaround 2025-12-17 17:05:02 -05:00
Celestial.y ea8f0fbc2d Gentoo minor modifications (#2700) 2025-12-16 10:37:03 +08:00
jwihardi 61f0f0dc97 removed user files, accidentally commited them earlier 2025-12-15 20:00:49 -05:00
jwihardi dd00908026 Update README with patch credit information
Added patch credit for hyprland-qtutils.
2025-12-15 19:56:23 -05:00
jwihardi 4b1e02dda6 removed install prints 2025-12-15 19:45:03 -05:00
jwihardi 0cff92d02c Document hyprland-qtutils emerging issues and fixes
Added troubleshooting steps for emerging hyprland-qtutils, including a patch suggestion.
2025-12-15 19:30:10 -05:00
jwihardi 125e57c98f Merge branch 'end-4:main' into main 2025-12-15 19:16:16 -05:00
jwihardi 2b9e5b1a6f added hyprland-qtutils patch 2025-12-15 19:15:42 -05:00
end-4 f65f805fe2 waffles: taskview: fix weird close anim trajectory 2025-12-15 09:18:55 +01:00
end-4 409fc94d6e waffle: start menu: fix unconsistency that's fixed in the real thing
no way i intentionally make it weird so it matches and then they make it not weird lol
2025-12-15 09:18:28 +01:00
end-4 36ff18bfe3 waffles: lock: open anim 2025-12-15 00:31:22 +01:00
end-4 60b2225cc6 waffles: taskview: esc to close 2025-12-15 00:31:10 +01:00
end-4 70363ab886 make panel family cycle keybind less misclickable 2025-12-14 23:46:29 +01:00
end-4 663eb1896a waffles: overview: more proper anims and dragging functionality
ITS FUCKING WORKING AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2025-12-14 23:40:32 +01:00
altrup b73cdf0379 Refresh desktopEntry on applications change 2025-12-14 12:11:39 -05:00
vaguesyntax c92832ff95 digital clock: fix properties (again) 2025-12-14 14:18:03 +03:00
vaguesyntax 607d6056c1 fix(digital clock): layout and handle properties better 2025-12-14 14:07:01 +03:00
vaguesyntax 2ef8342187 fix(digital clock): properly define clock color 2025-12-14 13:51:38 +03:00
vaguesyntax 0e3b3eceb6 digital clock: add font.family option 2025-12-14 13:48:37 +03:00
end-4 f1fdb941e1 persistent cheatsheet tabs (closes #2681) 2025-12-14 10:47:53 +01:00
end-4 f91ca59fb6 feat: add support for custom user action in search bar (#2670) 2025-12-14 10:38:39 +01:00
end-4 5f51b97b6d replace manual file:// replacement with util functions 2025-12-14 10:38:12 +01:00
end-4 c02daf5c12 proper error handling for AIs (left sidebar) (#2679) 2025-12-14 10:27:01 +01:00
end-4 e1601b972f Merge branch 'wooze-pao-fp-dev' 2025-12-14 10:25:06 +01:00
end-4 8d0d71812a Merge branch 'fp-dev' of https://github.com/wooze-pao/dots-hyprland into wooze-pao-fp-dev 2025-12-14 10:24:46 +01:00
end-4 e206c4334c waffles: taskview: draggable windows 2025-12-14 10:20:54 +01:00
end-4 3358ebe639 overview: custom workspace order (#2691) 2025-12-14 09:53:53 +01:00
end-4 abd657ed76 fix braces 2025-12-14 09:53:37 +01:00
end-4 04211411af Fix(thumbnail): Make thumbnail generator script work (#2648) 2025-12-14 09:44:59 +01:00
end-4 536c1ab465 Revert "wallpaper selector: add thumbnail loading indicator"
This reverts commit fa47c6778c.
2025-12-14 09:43:59 +01:00
end-4 29c4a6a15f wait why is this here 2025-12-13 23:18:07 +01:00
end-4 93bc4d935c waffles: notif center: drag to dismiss 2025-12-13 23:07:26 +01:00
end-4 f0926b6ce3 waffles: bar: use listview for tasks 2025-12-13 22:08:30 +01:00
end-4 d54ad65b50 waffles: taskview: fix sizes not getting updated 2025-12-13 22:07:47 +01:00
nrand 91a2a520b0 overview: custom workspace order 2025-12-13 16:43:34 +02:00
end-4 136f4a3e48 waffles: taskview: fix unintended window transparency 2025-12-13 00:50:55 +01:00
end-4 f71ed855e5 waffles: taskview: show windows 2025-12-13 00:45:35 +01:00
end-4 39a3a0c484 waffles: taskview: indicate active ws 2025-12-12 09:18:55 +01:00
Celestial.y 2ead5fa4ab Skip fish/conf.d when syncing to preserve user customizations (#2623) 2025-12-12 13:47:37 +08:00
Perdixky d83733bd86 Restore original rsync_dir__sync() implementation 2025-12-12 08:42:45 +08:00
Ivan Rosinskii 1ea3153886 Merge branch 'end-4:main' into parallax 2025-12-12 00:14:46 +01:00
end-4 eaae89c904 make touchpad scrolling less slow 2025-12-11 23:29:54 +01:00
end-4 044221be93 waffles: task view: workspaces 2025-12-11 23:29:42 +01:00
reakjra e874a6a3e0 proper error handling 2025-12-11 22:00:03 +01:00
end-4 70c0adb8e5 waffles: make calendar spacing more accurate 2025-12-10 22:38:07 +01:00
Ivan Rosinskii 3ae0973df5 Merge branch 'end-4:main' into parallax 2025-12-10 19:03:44 +01:00
stewart86 b966e2d539 feat: add support for custom user action scripts
Add ability to define custom actions by placing executable scripts in
~/.config/illogical-impulse/actions/

- Script filename becomes the action name (extension stripped)
- Use /script-name in search bar to execute
- Arguments are passed to the script
- Uses FolderListModel for auto-reload when scripts are added/removed
- Follows existing pattern of user-customizable directories (ai/prompts)
2025-12-10 18:26:59 +08:00
Celestial.y 6da58f5235 translations: improve and complete zh_CN translation (#2664) 2025-12-10 12:57:47 +08:00
Fengzi bcd7fb1c1b translations: missed zh_CN string
This is one of the cases where the translation is not accurate, but I'll use the exact translation in Windows for strings that only appear in waffles
2025-12-09 19:30:46 -05:00
end-4 80f4a0549c Add persistent accent color (#2659) 2025-12-09 23:59:48 +01:00
end-4 1a3cc9b4d3 bar: make battery indicator more aligned 2025-12-09 23:50:28 +01:00
end-4 0cc521aef5 option for satty instead of swappy (#2585) 2025-12-09 23:27:23 +01:00
end-4 d9b1d0261d waffles: fix lock colors in some places for light mode 2025-12-09 23:26:43 +01:00
end-4 fdbe39d744 waffles: add lock screen, fix ctrl alt del screen for light mode 2025-12-09 23:05:48 +01:00
Fengzi 3cb61c4267 translations: update zh_CN based on feedback 2 2025-12-09 10:50:27 -05:00
Fengzi bb65137415 translations: update zh_CN based on feedback 2025-12-09 10:35:22 -05:00
Fengzi 95c6fcab01 translations: zh-CN another update & remove unused 2025-12-09 08:51:25 -05:00
Fengzi fce229cdc3 translations: improve & complete zh_CN translation 2025-12-09 07:55:24 -05:00
end-4 bfe97c1c05 refractor lock screen 2025-12-08 14:48:44 +01:00
end-4 8b8ac44852 waffles: polkit 2025-12-08 10:34:05 +01:00
Eric 34b5892374 Polish script changes a little 2025-12-07 22:50:46 -05:00
Eric 0645200807 Allow persistant accent color 2025-12-07 21:44:32 -05:00
end-4 1c8339df10 waffles: start: sort items alphabetically in each category 2025-12-07 20:58:49 +01:00
end-4 8b1f0fc1d4 waffles: bar: make start and search button more accurate 2025-12-07 20:58:28 +01:00
end-4 6c460b209c waffles: context menus for app buttons 2025-12-07 00:04:24 +01:00
end-4 13968db31c waffles: ctrl alt del menu 2025-12-06 23:14:08 +01:00
end-4 80a7804ade waffles: start menu apps 2025-12-06 13:17:29 +01:00
EoinKanro ddf1bc6a08 Remove tricky calculations and fix sourceSize 2025-12-06 00:53:07 +01:00
vaguesyntax fa47c6778c wallpaper selector: add thumbnail loading indicator 2025-12-06 00:26:36 +03:00
vaguesyntax 255006172f fix: make thumbnail generator script actually work 2025-12-06 00:22:13 +03:00
Ivan Rosinskii 52d6e8a5d1 Fix sourceSize quality 2025-12-05 18:07:40 +01:00
Ivan Rosinskii ead056c207 Fix widgets and decrease parallaxRation 2025-12-05 17:41:12 +01:00
Ivan Rosinskii 9a0e4181a5 Merge branch 'end-4:main' into parallax 2025-12-05 16:44:05 +01:00
end-4 ed89ad882f waffles: start menu: add the right arrow thingy 2025-12-05 12:20:50 +01:00
end-4 3b4c721584 audio: protection: fix weird volume limit behaviors (#2640) 2025-12-05 10:38:33 +01:00
end-4 7a2e21ac7c add service for privacy indicators 2025-12-05 00:19:37 +01:00
end-4 9043ae7bf6 waffles: functioning search 2025-12-05 00:19:21 +01:00
EoinKanro 758c84feaf Make readonly parallaxRation 2025-12-04 23:47:08 +01:00
EoinKanro 1efd2dfa19 Remove todo and make readonly additionalScaleFactor 2025-12-04 22:47:50 +01:00
EoinKanro 1193b7a802 Rework parallax 2025-12-04 22:30:55 +01:00
Fengzi f62ab85a19 audio: protection: fix weird volume limit behavior 2025-12-04 15:37:52 -05:00
vaguesyntax 15481c646a digital clock: add roundness slider and fix settings layout 2025-12-04 23:07:03 +03:00
end-4 8e704e4009 lock: ctrl+enter to also turn on idle inhibitor 2025-12-04 20:40:33 +01:00
end-4 e9b5e7d7d2 add placeholder when volume mixer is empty 2025-12-04 16:29:49 +01:00
Perdixky 8cfb3be4cd Use a public API to wrap rsync_* function 2025-12-04 17:06:26 +08:00
Perdixky 85892940b5 Merge branch 'end-4:main' into main 2025-12-04 16:47:56 +08:00
Madjid Taha 7d9a405146 Fix CPU frequency detection for non-English locales (#2629)
* fix: ensure lscpu is using en_US locale for LANG

* fix: use environment in Process
2025-12-04 08:20:21 +01:00
LIghtJUNction 8203115a24 Move the comments from the default configuration to the custom configuration and add more comments. (#2621) 2025-12-04 08:17:24 +01:00
Celestial.y 895faae39f Set PACMAN_AUTH to prevent repeated sudo password prompts (#2630)
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2025-12-04 07:36:55 +08:00
end-4 71c1fbe1dd waffles: start: more search progress 2025-12-03 23:23:08 +01:00
end-4 4055ad48fa launcher search service: use proper type instead of json clumps 2025-12-03 22:07:06 +01:00
end-4 05aae36e82 overviewwidget: fix undefined warning 2025-12-03 22:05:55 +01:00
tmcnulty387 20d60a11f7 Set PACMAN_AUTH to prevent repeated sudo password prompts 2025-12-03 13:23:41 -05:00
Celestial.y b0c396aa21 Loop sudo in background during installation (#2624) 2025-12-03 21:44:13 +08:00
Celestial.y ed9e510c32 Remove determine subcommand install* 2025-12-03 21:35:36 +08:00
Perdixky d3c1ae14b8 Move trap to each needed subcommand 2025-12-03 21:00:01 +08:00
Perdixky ffd01741d9 Remove repeated code 2025-12-03 13:58:49 +08:00
Perdixky 8a9f105e75 Eliminate repeated sudo password prompts during installation 2025-12-03 10:20:44 +08:00
Perdixky dd07a62dc0 Skip fish/conf.d when syncing to preserve user customizations 2025-12-03 10:04:17 +08:00
end-4 c093265b05 config: use KDE network manager GUI for WiFi settings (#2589) 2025-12-02 23:02:05 +01:00
end-4 1dd959fad4 Merge branch 'main' into main 2025-12-02 23:01:36 +01:00
Celestial.y 4cfb706b6f Move the contents of the default comment to the custom configuration folder to avoid being replaced when updating (#2618) 2025-12-02 21:37:19 +08:00
LIghtJUNction 90f9467871 Update execs.conf 2025-12-02 21:29:37 +08:00
LIghtJUNction cce06cc2f0 Update execs.conf 2025-12-02 21:29:11 +08:00
LIghtJUNction 1d40360cf2 Update env.conf 2025-12-02 21:28:41 +08:00
LIghtJUNction f08bbc0d67 Update env.conf 2025-12-02 21:28:18 +08:00
end-4 4ce4645749 move launcher search logic to a service 2025-12-01 22:00:36 +01:00
end-4 4cad401ea6 add layerrules for more waffles stuff 2025-12-01 13:28:41 +01:00
end-4 8d2c8bd38e waffles: power menu and user account menu 2025-12-01 13:27:01 +01:00
end-4 61b5cf8cb6 fix(floating-image): Fix gif not showing (#2610) 2025-12-01 08:25:33 +01:00
Celestial.y 9c48fd32ef Gentoo added libqalculate (#2611) 2025-12-01 04:56:47 +08:00
jwihardi c352ebc2fc Merge branch 'end-4:main' into main 2025-11-30 15:32:19 -05:00
jwihardi b45f2dd235 added libqalculate gentoo 2025-11-30 15:31:02 -05:00
end-4 4442200479 waffles: start menu base 2025-11-29 23:23:58 +01:00
vaguesyntax f5fea85334 fix: capital letters 2025-11-29 15:05:07 +03:00
vaguesyntax 8892982874 feat: refactor font settings and add width config option 2025-11-29 14:57:38 +03:00
end-4 677fa06b06 waffles: notifications: image support 2025-11-29 12:51:31 +01:00
vaguesyntax c11814b1f8 fix: weight property not properly applied (styleName conflict) 2025-11-29 14:35:52 +03:00
vaguesyntax 3cf14671ad fix: get gif size properly 2025-11-29 02:40:28 +03:00
end-4 d2c019f8de fix "+0 notifications" 2025-11-29 00:37:15 +01:00
end-4 6b90e37b0f waffles: expandable notifs 2025-11-29 00:23:19 +01:00
vaguesyntax 21f2a9c65d fix: find a better solution on variableAxes 2025-11-28 23:48:06 +03:00
vaguesyntax fd209851d9 digital clock: use clocktext instead of styledtext 2025-11-28 23:21:58 +03:00
vaguesyntax 533b9c01f5 digital clock: several improvements 2025-11-28 23:10:33 +03:00
clsty b4038dafa9 Update dist-nix
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
- Not use NixGL but let home-manager automatically handle it (since hm 25.11)
- Add libqalculate
2025-11-28 22:42:47 +08:00
clsty 04f73e67c8 Add qalc dep for dist-arch and deps-info (#2591) 2025-11-28 21:07:39 +08:00
Celestial.y 2503c1f14b Add Qalculate as Dependency for Fedora (#2591) 2025-11-28 20:57:39 +08:00
eren b214993c16 Add Qalculate as Dependency for Fedora
fixes math
2025-11-28 12:51:19 +01:00
Perdixky 2a1aaa9b7e config: use KDE network manager GUI for WiFi settings
Replace nmtui (terminal UI) with kcmshell6 kcm_networkmanagement for
network settings to match the Bluetooth settings UI style and provide
a more consistent graphical user experience.
2025-11-28 14:07:58 +08:00
end-4 2fd25af353 waffles: notifications, kind of 2025-11-27 23:25:59 +01:00
Celestial.y b7ad7361d6 added gentoo uninstall (#2588) 2025-11-28 06:01:46 +08:00
jwihardi 9cb5cc1416 added gentoo uninstall 2025-11-27 15:29:30 -05:00
end-4 0700e024d9 waffles: calendar: generalize first day of week 2025-11-27 13:17:24 +01:00
end-4 d40df98aa5 waffles: make calendar more 🍔🦅-friendly
do we care about somalia and ethiopia
2025-11-27 08:14:15 +01:00
end-4 d27fbede2a waffles: more continuous infinite scrolling calendar 2025-11-26 22:57:40 +01:00
end-4 a786f0353e listview anims always run to end 2025-11-26 22:55:09 +01:00
end-4 9ba8723a5d waffles: map media controls bind to action center 2025-11-26 19:40:19 +01:00
wooze-pao e4b5718833 Fix: finger print keep running when use password login 2025-11-25 23:08:31 -06:00
end-4 b4920a7cb6 right sidebar: slightly nicer bottom group tab switch anim 2025-11-25 13:12:46 +01:00
end-4 08739043f6 right sidebar: don't load all bottom group tabs 2025-11-25 10:44:29 +01:00
Moeta Yuko 55152aee4b hyprland: migrate to new windowrule syntax 2025-11-24 23:25:39 +00:00
end-4 9053927480 wnotificationcenter: somewhat working calendar 2025-11-24 22:45:54 +01:00
end-4 616c1dfe3a Ddcci fixes (#2562) 2025-11-24 20:49:18 +01:00
Moeta Yuko 5242373db5 brightness: adjust DDCCI initialize timings
* Delay DDCCI monitor initialization until after `ddcutil detect` to
  ensure `isDdc`, `busNum`, and `ddcMonitors` are properly set.
* Run `ddcutil getvcp` sequentially to avoid failures from concurrent
  executions.
2025-11-24 18:36:13 +00:00
Moeta Yuko 1836a2ff1c brightness: use connector name to distinguish different monitors
One may have multiple monitors of the same model
2025-11-24 17:00:58 +00:00
Celestial.y cecb476ed3 Revert the "waybar" note modification
68c159f210
2025-11-24 23:38:03 +08:00
end-4 e6f36114bd waffles: notif center: calendar header and focus 2025-11-24 10:18:05 +01:00
end-4 449d6fc285 Revert "Add Gemini 3 Pro to model list" (#2558) 2025-11-23 22:28:55 +01:00
end-4 0703429393 Revert "Add Gemini 3 Pro to model list" 2025-11-23 22:27:17 +01:00
end-4 0adefcc0d3 Add Gemini 3 Pro to model list (#2557) 2025-11-23 22:22:26 +01:00
viridivn 996579729d no abbreviations 2025-11-23 16:03:56 -05:00
end-4 25816662f8 wactioncenter: fix wrong gap from bar 2025-11-23 21:40:44 +01:00
end-4 19ba7dac48 overlay: recorder: fix open folder button missing text 2025-11-23 21:38:50 +01:00
end-4 07f8a72d6d wactioncenter: media controls 2025-11-23 21:35:43 +01:00
viridivn e46c7c0d3d add gemini 3 model 2025-11-23 15:23:45 -05:00
end-4 c78c363388 Fix: Flatpak app doesnt appear on app launcher (#2545) 2025-11-23 12:22:25 +01:00
end-4 12ebcf2d19 Wallpapers: add IpcHandler for applying (#2533) 2025-11-23 12:07:29 +01:00
end-4 52f67431c7 move wallpapers ipc handler to the right place 2025-11-23 12:06:48 +01:00
end-4 f9755694f7 waffles: fix start button alignment when left aligned 2025-11-23 11:59:12 +01:00
end-4 a72d5f98af waffles: osd: fix very precisely timed value change causing it to not reopen 2025-11-23 11:56:18 +01:00
end-4 fae2309f62 hyprland: add window rule for waffle osd 2025-11-23 11:48:42 +01:00
end-4 a17a909fd9 make waffle osd initially closed 2025-11-23 11:45:49 +01:00
end-4 3087e5da92 waffles: osd 2025-11-23 11:39:11 +01:00
end-4 6e986fa8b0 waffles: add config option for switch handle positioning 2025-11-23 11:38:57 +01:00
end-4 adfc7a15e8 refractor text-with-fixed-width 2025-11-23 11:38:21 +01:00
end-4 0f11296ee1 wactioncenter: night light page 2025-11-22 23:33:26 +01:00
end-4 9a113c24ca wactioncenter: sound input menu 2025-11-22 22:11:31 +01:00
end-4 55961ae079 wactioncenter: bluetooth menu 2025-11-22 21:55:47 +01:00
end-4 7613bba393 more rubik -> google sans flex 2025-11-22 20:02:24 +01:00
end-4 52af531c9f hyprlock: use google sans flex 2025-11-22 19:57:53 +01:00
end-4 92beee6c16 fcitx5: use google sans flex 2025-11-22 19:50:07 +01:00
end-4 be5b03dfdc remove qt{5/6}ct (not used) 2025-11-22 19:46:02 +01:00
end-4 67c7fd09dd less weird layer fade out curve 2025-11-22 19:44:14 +01:00
end-4 f0a042246c bring back reload popup 2025-11-22 19:43:52 +01:00
end-4 9cf66f4d83 waffle action center: disconnect button bg 2025-11-22 19:42:34 +01:00
end-4 8943d568f5 use google sans flex for qt apps 2025-11-22 19:35:04 +01:00
end-4 4d79cc6764 fix weird blur with window anim 2025-11-22 19:23:59 +01:00
Celestial.y 0b3cc187cb fix: Script exit unexpectedly. ref #2543 (#2546) 2025-11-22 17:39:58 +00:00
Elysia e2230a0a35 fix: Script exit unexpectedly. ref #2543 2025-11-23 00:56:09 +08:00
Nasrullaunais 4b0cb15762 Fix: Adds standard Flatpak export paths to XDG_DATA_DIRS to ensure applications appear in the Quickshell launcher. Explicitly includes /usr/local/share and /usr/share as fallbacks to prevent system applications from disappearing if the variable was previously unset. 2025-11-22 22:03:36 +05:30
end-4 da233086c2 adjust wstackview anims 2025-11-22 16:56:19 +01:00
end-4 65ef0ca666 add toggle page indicator interactions 2025-11-22 16:56:05 +01:00
end-4 6376521d14 waffle: adjust acrylic rectangle and border colors 2025-11-22 16:37:21 +01:00
end-4 7b2cfb11f6 make wbutton not have stupid inset by default 2025-11-22 16:36:41 +01:00
end-4 6cb1b738c6 fancier dropdown (#2397) 2025-11-22 16:08:19 +01:00
end-4 4878f7dbb1 combobox: update color mappings 2025-11-22 16:07:10 +01:00
end-4 b350d87ce2 fix weirdly spaced topright button when bluetooth unavailable (#2482) 2025-11-22 15:32:03 +01:00
end-4 3507aee627 adjust waffle opacity 2025-11-22 15:29:12 +01:00
end-4 9466013124 Fix translator output parsing using trans brief mode (#2521) 2025-11-22 15:21:47 +01:00
end-4 b869336738 feature (Settings): Change fonts (#2516) 2025-11-22 15:17:34 +01:00
end-4 4fc85a926f hyprland: update blur params 2025-11-22 12:35:13 +01:00
end-4 31998a6c32 waffles: transparency 2025-11-22 12:34:16 +01:00
end-4 cd7bf9c1c2 improve auto color scheme performance 2025-11-22 11:34:24 +01:00
clsty 68c159f210 Update about deps-info.md 2025-11-22 09:07:15 +08:00
clsty 30c845d226 Update deps-info.md 2025-11-22 08:59:31 +08:00
clsty d69559e8f6 Update deps-info.md 2025-11-22 08:55:25 +08:00
clsty 0c8391534a Update deps-info link 2025-11-22 08:32:30 +08:00
Celestial.y e0584bf50e Revert image link mistakenly changed
b93213ddb6
2025-11-22 08:19:44 +08:00
end-4 79762e4193 waffle: action center: wifi menu (without auth) 2025-11-22 00:19:53 +01:00
end-4 fbfb81c83b action center: scrollable quick sliders (#2536) 2025-11-21 22:18:56 +01:00
end-4 35a1f7906a proper anim for action center stackview 2025-11-21 22:12:37 +01:00
end-4 a10b8b50d4 change balanced power profiles icon 2025-11-21 22:12:05 +01:00
end-4 53399549fc make update password prompt use polkit 2025-11-21 15:33:23 +01:00
EphraimShikanga 8660d68420 Added apply to IpcHandler 2025-11-21 12:45:50 +03:00
end-4 e8326b96d7 Fix: Remove duplicate apps in Quickshell launcher using filter (#2528) 2025-11-20 23:34:58 +01:00
end-4 b93213ddb6 more sussy wait i mean up-to-date preview 2025-11-20 23:31:53 +01:00
Celestial.y 9885dd7a1e update dist-fedora (#2530) 2025-11-21 03:12:22 +08:00
Elysia 7016b59933 fix: uninstall.sh is now working properly. 2025-11-21 02:19:51 +08:00
Elysia 527cb9e9b0 Install Google Sans Flex font from the copr repo. 2025-11-21 02:01:35 +08:00
Elysia 23fcd183bf fix: package name flaws 2025-11-21 00:37:31 +08:00
Elysia 9001cae848 feat: add uninstall script. 2025-11-21 00:29:49 +08:00
Nasrullaunais 6e5ba69430 Fix: Remove duplicate apps in Quickshell launcher using filter 2025-11-20 07:26:48 +05:30
end-4 5c8d824749 waffles: action center: volume menu 2025-11-19 23:39:18 +01:00
uiovasot 2fbfbb80ef Fix translator output parsing using trans brief mode 2025-11-19 21:21:57 +09:00
Celestial.y bca177eed2 Fix typo in 1-issue.yml 2025-11-19 17:32:55 +08:00
clsty b052df4d72 Remove unused font deps
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2025-11-19 08:10:17 +08:00
reakjra 255232135b feature (Settings): Change fonts 2025-11-19 01:03:28 +01:00
clsty 03890d0099 Tweak structure of files.sh 2025-11-19 07:57:55 +08:00
clsty bfc07aa4e4 Clean uneeded lines 2025-11-19 07:46:40 +08:00
clsty 1a844e512b Remove exp-update-old 2025-11-19 07:42:49 +08:00
Celestial.y 148384200c Fix file existence check in dedup_and_sort_listfile (#2514) 2025-11-19 06:30:39 +08:00
end-4 64c1b5be0b actioncenter: stack view setup 2025-11-18 23:25:29 +01:00
Celestial.y 488b3c06d6 Setup script subcmd-exp-merge (#2510) 2025-11-19 06:24:07 +08:00
end-4 4cbb0f23c6 action center: toggle pages
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Waiting to run
2025-11-18 23:08:51 +01:00
end-4 b650120fd4 action center: toggles barely working 2025-11-18 21:28:34 +01:00
Sh4dow f7cb85632e Merge branch 'end-4:main' into main 2025-11-18 19:46:50 +00:00
end-4 f3bfe8a374 unfuck material symbols rendering 2025-11-18 20:29:34 +01:00
end-4 dfe11810fc use google sans flex also for numbers 2025-11-18 20:29:10 +01:00
end-4 aeb106ed21 use google sans flex (#2509) 2025-11-18 17:45:06 +01:00
Sh4dow c0de7f1d37 Fix file existence check in dedup_and_sort_listfile 2025-11-18 15:28:21 +00:00
reakjra 625b4da3b7 Merge branch 'main' into setup/subcmd-exp-merge 2025-11-18 15:52:30 +01:00
Celestial.y e6e86b4258 Update uninstall 2025-11-18 22:52:02 +08:00
reakjra f21e282780 read over safe_read 2025-11-18 15:50:29 +01:00
reakjra ae28d0bd6d bound 2025-11-18 15:48:21 +01:00
reakjra d8921a6608 Warn message 2025-11-18 15:45:37 +01:00
clsty 0ec4b3f54a Improve function call 2025-11-18 22:28:08 +08:00
clsty b79fb33134 Fix install font 2025-11-18 22:24:18 +08:00
clsty 99171c9512 Add install_google_sans_flex (#2509) 2025-11-18 22:15:49 +08:00
clsty 189530507f Rework uninstall
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Waiting to run
2025-11-18 21:37:14 +08:00
reakjra 781404749e exp-merge subcommand script 2025-11-18 14:32:05 +01:00
clsty 9fd83a2812 Let 3.files.sh logs installed files 2025-11-18 17:02:46 +08:00
end-4 e830dc93cc Fix darkly widget style not being applied (#2505) 2025-11-18 00:21:33 +01:00
end-4 268b072a16 add manifestv2 chrome flag 2025-11-17 23:44:19 +01:00
end-4 fcee7ce6f9 refractor quick toggles data, add volume slider for waffles action center 2025-11-17 23:43:25 +01:00
Celestial.y 9228165428 Gentoo added Kirigami dep (#2506) 2025-11-18 02:46:09 +08:00
jwihardi 8f6e2bc7fb added kirigami, updated revision number 2025-11-17 13:42:44 -05:00
Sh4dow c7bd1019e7 Fix darkly widget style not being applied 2025-11-17 17:19:39 +00:00
Celestial.y 0e3cf4c908 fix: don't run github action on forks (#2504) 2025-11-17 22:18:20 +08:00
Manpreet Singh e8bae0e529 Merge branch 'end-4:main' into fix/workflow-run-on-forks 2025-11-17 19:00:43 +05:30
end-4 2d65af70ad waffles: add action center window 2025-11-16 23:52:07 +01:00
end-4 71e0538cf5 wbar: update anchor position when pinning tray items 2025-11-16 22:06:30 +01:00
end-4 28bf94904f wbar: unpin and stuff
i realized i mixed up pinning and unpinning, but whatever
2025-11-16 21:59:42 +01:00
end-4 986461f590 wbar: drag to pin tray item 2025-11-16 21:07:42 +01:00
end-4 869f9529f6 update fluent icons note 2025-11-16 21:05:32 +01:00
Celestial.y 83b54f5fc4 [refactor] Updated some Fedora-related content (#2496) 2025-11-16 21:49:22 +08:00
Celestial.y d2692cc95e Apply suggestion from @clsty 2025-11-16 21:48:29 +08:00
Celestial.y 11dd8c9efb Apply suggestion from @clsty 2025-11-16 21:46:48 +08:00
Elysia ec76180f4c Merge remote-tracking branch 'origin/fedora' into fedora 2025-11-16 21:28:16 +08:00
Elysia 2ce060484a fix a bug 2025-11-16 21:24:02 +08:00
ririko6z 9adf310738 Update 2.setups.sh: Added some comments 2025-11-16 21:16:53 +08:00
end-4 a23ee83aad waffles: add notes 2025-11-16 13:02:04 +01:00
end-4 5aa384e906 wbar: make tray menu more rectangular 2025-11-16 13:01:39 +01:00
Elysia 8574dbcb02 This may improve compatibility 2025-11-16 19:50:40 +08:00
Elysia f33bc7663e Update dependencies for sync-dist-arch. 2025-11-16 19:42:21 +08:00
Elysia 1271f147ed Use copr repositories to replace local builds as much as possible. 2025-11-16 19:40:41 +08:00
end-4 5b69995945 wbar: tray 2025-11-16 12:05:09 +01:00
end-4 c71a2498d0 bar: refractor tray model into a service 2025-11-16 12:04:54 +01:00
end-4 803f2ecb42 remove unused imports 2025-11-16 12:04:21 +01:00
end-4 be1ce37014 easyeffects: update headless launch flags 2025-11-16 09:44:11 +01:00
Elysia 2a34831f87 Delete redundant spec files 2025-11-16 14:40:19 +08:00
clsty 5c746f34b7 Add kdePackages.kirigami in deps-info and dist-nix
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2025-11-16 08:00:36 +08:00
end-4 3dfd043645 deps: add kirigami 2025-11-16 00:25:14 +01:00
end-4 d15960d930 wbar: make volume tooltip show muted state 2025-11-16 00:15:26 +01:00
end-4 885a9eb0b3 wbar: make task view btn anim less weird 2025-11-16 00:10:55 +01:00
end-4 4abfcd0162 wbar: animated start icon, search, and task view icons 2025-11-16 00:02:57 +01:00
end-4 68a9c8729f make super and super+tab use different quickshell globalshortcuts 2025-11-15 22:05:22 +01:00
end-4 4e07aa52ba wbar: make update button update when clicked 2025-11-15 22:03:34 +01:00
end-4 7ff3a212ab readme: update overview pic 2025-11-15 22:01:04 +01:00
end-4 fdc38d69f7 wbar: add updates indicator 2025-11-15 21:30:28 +01:00
end-4 6ee7212bdc wbar: add right click menus 2025-11-15 17:30:51 +01:00
end-4 839718cc2b FluentIcon: add monochrome prop 2025-11-15 17:30:17 +01:00
end-4 bbe0329df4 add radius to barbutton 2025-11-15 17:29:48 +01:00
end-4 5d6d9234ac refractor taskbar pinning 2025-11-15 17:22:46 +01:00
end-4 d990d68472 not use anchors in children items in notif list view 2025-11-15 17:22:32 +01:00
Celestial.y 24df9ce2e4 Improve .gitignore 2025-11-15 17:38:33 +08:00
Celestial.y 4393c05e46 Update diagnose 2025-11-15 17:06:05 +08:00
end-4 6d221f558b contributing.md: add code style guide 2025-11-15 08:51:42 +01:00
end-4 f3ad9f27f6 format (kinda) 2025-11-15 08:29:48 +01:00
end-4 d0de047db0 wbar: (partial) right click menu for start button 2025-11-15 08:27:31 +01:00
end-4 4e86ec9fe9 Brightness fix for multiple devices (#2415) 2025-11-15 08:26:10 +01:00
end-4 6f7b501430 fix weird notes text area sizing 2025-11-15 08:16:30 +01:00
end-4 bd1c9bfb2a add artix in distro recognition (#2487) 2025-11-15 08:07:29 +01:00
clsty 443f86d347 Improve message 2025-11-15 09:23:41 +08:00
clsty 6dd0387833 Improve message 2025-11-15 08:35:59 +08:00
clsty b6dfbf6c97 Add --ignore-outdate; improve outdate message 2025-11-15 08:26:50 +08:00
end-4 47cd7be87e grey out easyeffects button if not available 2025-11-14 23:13:33 +01:00
end-4 3c25d18f88 sidebar: grey out bluetooth button if unavailable 2025-11-14 23:00:56 +01:00
end-4 cc519e9f60 background: make switching between clock stylies less janky 2025-11-14 22:46:11 +01:00
end-4 aa85e2168e clock: separate style for lock screen (#2374) (#2433) 2025-11-14 22:42:19 +01:00
nrand bd284a5ef4 clock: code cleanups + cookie by default 2025-11-14 17:49:02 +02:00
end-4 541c701d5a fix click to show for vertical bar clock 2025-11-14 15:41:37 +01:00
end-4 179815b73c Feature (Bar): New Setting for Tooltip Behavior on the Bar (#2431) 2025-11-14 15:37:40 +01:00
end-4 11064d04f0 use a proper icon for tooltips click to show option 2025-11-14 15:37:02 +01:00
end-4 767d2beb6c overlay: notes widget (closes #2231) (#2402) 2025-11-14 14:35:47 +01:00
end-4 c19dd725b8 really rename all "stickypad" to "notes" 2025-11-14 14:32:58 +01:00
end-4 42f29d47b4 stickypad: adjust copy button size 2025-11-14 14:26:02 +01:00
Firmino Veras 2ccdf3b751 add option to open tooltips by pressing the mouse button 2025-11-14 09:55:06 -03:00
end-4 02afa37da1 stickypad: adjust spacing 2025-11-14 13:34:12 +01:00
end-4 4ea48d60f8 stickypad: feedback for copy 2025-11-14 11:46:21 +01:00
end-4 c16cff52b8 simplify copy button 2025-11-14 11:44:25 +01:00
end-4 5bec659486 stickypad: remove redundant stuff, make clickable text area larger 2025-11-14 11:18:31 +01:00
end-4 8404817e51 capitalize L in copyList 2025-11-14 11:13:49 +01:00
end-4 eb8f1379f2 fix null warning 2025-11-14 11:09:26 +01:00
end-4 a3cb292fe9 reduce manual updates by aliasing stickypadContents to input area's text 2025-11-14 11:05:50 +01:00
end-4 f8ffe5e63f format, move text color to styled text area 2025-11-14 10:57:26 +01:00
end-4 a5b941360c stickypad: make placeholder show tip with bulletpoints 2025-11-14 10:44:08 +01:00
end-4 c8c4642c61 call stickypad notes 2025-11-14 10:28:09 +01:00
end-4 237fa85f0f Merge changes from main 2025-11-14 10:08:04 +01:00
end-4 f46835c9a1 stickypad: moves files to correct place 2025-11-14 10:07:07 +01:00
end-4 67b02627ae Merge branch 'main' of https://github.com/end-4/dots-hyprland into sticky-merge-main 2025-11-14 10:06:44 +01:00
end-4 98ef819fee stickypad: unfuck window size 2025-11-14 09:57:11 +01:00
end-4 42147b2117 stickypad: fix imports 2025-11-14 09:56:57 +01:00
end-4 61a9d406f2 fix not launching 2025-11-14 09:52:22 +01:00
end-4 4b8f294a91 Add Valve icon (#2467) 2025-11-14 09:39:36 +01:00
end-4 9e3e14ca83 Fix issue. Codeblock/Textblock/Thinkblock content can't be fully rendered (#2471) 2025-11-14 09:39:05 +01:00
end-4 bf225d6de2 Change model to ScriptModel for messageBlocks 2025-11-14 09:38:10 +01:00
菜叶片(ItsSunshineXD) 2e5be90237 Fix segmentContent property assignment in MessageThinkBlock 2025-11-14 13:22:25 +08:00
菜叶片(ItsSunshineXD) c369db75eb Refactor message block model to use root.messageBlocks 2025-11-14 13:22:09 +08:00
MannuVilasara 347cbd9803 don't run update-notifications on forks 2025-11-14 07:18:13 +05:30
Celestial.y b5ccddf34d fix: syntax error in 3.files-legacy.sh (#2469)
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2025-11-14 09:38:11 +08:00
MannuVilasara f0643c9c5c fix: syntanx error in 3.files-legacy.sh 2025-11-14 07:02:16 +05:30
clsty 63c3433b6f Not using pkgver() in PKGBUILD 2025-11-14 09:19:20 +08:00
clsty f8af8093f7 Improve case syntax 2025-11-14 09:13:46 +08:00
clsty 45a78c383b Add -F, --firstrun 2025-11-14 09:09:58 +08:00
fuggy 499b0628ea Add Valve icon 2025-11-13 18:37:09 -06:00
end-4 18c264a85e make menu fade anim not arbitrary 2025-11-13 23:44:21 +01:00
Celestial.y 323b0bc257 Add .gitignore 2025-11-14 06:40:17 +08:00
end-4 1495669a60 styledcombobox: remove dupe scrollbar 2025-11-13 23:40:02 +01:00
end-4 b97c2d1d4d styledcombobox: pointing hand cursor shape 2025-11-13 23:38:39 +01:00
end-4 a135b09ec7 styledcombobox: make dropdown arrow nicer 2025-11-13 23:35:24 +01:00
Celestial.y 666cf09d5f Remove pkgver in PKGBUILD so it does not get modified during building 2025-11-14 06:29:31 +08:00
end-4 6c7ac470bd left sidebar: pinning (closes #2395) 2025-11-13 23:27:19 +01:00
Pico 7049dda7de fixed button contrast when triggered 2025-11-14 01:26:38 +03:00
Pico 3e55442654 replace color:"transparent" with transparentize 2025-11-14 01:21:09 +03:00
Pico 21c5111961 added shadow to items list 2025-11-14 01:15:18 +03:00
Pico 2362c2ab3f fixed some undefined warnings 2025-11-14 01:08:47 +03:00
Pico bda5422ccc use triangle instead of the up/down arrows 2025-11-14 01:03:53 +03:00
Pico 86aab5b1fd replace for loop with findIndex 2025-11-14 00:51:07 +03:00
end-4 6f61782c8f styledcombobox: fix some warnings, use styledlistview 2025-11-13 22:26:53 +01:00
end-4 6f19e1cdd6 styledcombobox: use predefined color anim 2025-11-13 22:21:50 +01:00
end-4 c64f3a0122 combobox: make color names more consistent with other buttons 2025-11-13 22:18:37 +01:00
end-4 37c1d9cf61 Make sure that script to restore video wallpaper is ran on startup (fix #1947) (#2440) 2025-11-13 21:29:05 +01:00
end-4 5ad3508d3e bg: clock: fix funny overlapping status row (#2413) 2025-11-13 21:23:42 +01:00
end-4 6194ef912b remove screen corners for waffle panel family 2025-11-13 21:23:16 +01:00
end-4 e07ddaa0b3 make switch of more correct size 2025-11-13 21:23:02 +01:00
Celestial.y 2ea3904b56 Update help 2025-11-13 09:17:18 +08:00
Celestial.y 8d1fe864ad Rename func in diagnose 2025-11-13 07:44:32 +08:00
Celestial.y 3e4674d651 Add git status in diagnose 2025-11-13 07:40:42 +08:00
end-4 5c92ad64f9 fix bar wrong model 2025-11-12 21:53:22 +01:00
end-4 b828a1dbf0 waffles: bar (#2458) 2025-11-12 21:49:43 +01:00
end-4 cfdbb873aa appsearch: use own guessing before quickshell's heuristic lookup 2025-11-12 19:02:54 +01:00
clsty 4cc4ad749b Update help 2025-11-13 01:49:36 +08:00
clsty 3c390d95be Update help 2025-11-13 01:47:21 +08:00
clsty 0917ee65f2 Enable hypr_mon_guard by default 2025-11-13 01:20:14 +08:00
clsty 6889185c3e Add hypr_mon_guard 2025-11-13 01:05:18 +08:00
clsty 1844d12bc5 Typo: fix #2454 2025-11-12 23:13:07 +08:00
clsty 55b5d7145d Update virtmon 2025-11-12 23:11:50 +08:00
clsty 480ef19b01 Update virtmon 2025-11-12 22:19:41 +08:00
clsty 31c9fe1f5a Update help 2025-11-12 21:59:25 +08:00
clsty 5696a4348e Update virtmon 2025-11-12 21:54:08 +08:00
clsty 9997fdce0c Add subcmd resetfirstrun 2025-11-12 21:25:25 +08:00
clsty 318d80de38 Update subcmd virtmon 2025-11-12 21:07:21 +08:00
clsty ca261d931d Update comment 2025-11-12 18:57:34 +08:00
clsty 56c07a514f Improve virtmon 2025-11-12 18:55:33 +08:00
clsty 9162c24ccd Handle vnc port 2025-11-12 18:36:43 +08:00
Celestial.y 155a11734f Fix for nix (fix #2452) 2025-11-12 17:49:34 +08:00
clsty 7c590bd5d8 Update virtmon 2025-11-12 17:42:34 +08:00
clsty a250675b5c Update virtmon 2025-11-12 17:37:28 +08:00
clsty 3f8c62a81b Improve print_os_group_id_functions location 2025-11-12 17:14:41 +08:00
clsty f2cd533ae9 Add subcmd virtmon (WIP) 2025-11-12 17:11:14 +08:00
end-4 efcb826f5c use more reliable kurukuru gif source 2025-11-11 16:00:04 +01:00
clsty 1ad99b43a0 Fix for nix
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Has been cancelled
2025-11-11 16:13:41 +08:00
clsty 2dfbb84b23 Fix rsync hypr dir path not found 2025-11-11 15:48:17 +08:00
clsty de7d504160 Tweak position of print_os_group_id_functions 2025-11-11 15:37:01 +08:00
fuggy 8225a3981a Add script to restore video wallpaper on startup 2025-11-10 22:55:57 -06:00
clsty c91191f89b Remove dup dep for gentoo and fedora 2025-11-11 10:53:38 +08:00
clsty ac55a66dd4 Remove duplicated dependencies 2025-11-11 10:44:29 +08:00
clsty febe3d53e3 Update deps-info.md (close #2102) 2025-11-11 10:36:03 +08:00
clsty 60ef4a873d Update TODO 2025-11-11 09:51:58 +08:00
clsty 462ddefb7f Fix color
Comment on Discussion When sdata/dist-arch/ Changes / comment_on_discussion (push) Waiting to run
2025-11-11 09:36:25 +08:00
clsty dc958436d8 Update message 2025-11-11 09:33:14 +08:00
clsty e00e703af2 Improve distro determine 2025-11-11 09:16:47 +08:00
clsty 6fedb70f69 Update comment 2025-11-11 09:16:27 +08:00
Celestial.y 378af7ac2a Propose fix typo and ignore emacs backup files (#2432) 2025-11-11 06:20:21 +08:00
nrand a065829eee clock: separate style for lock screen (#2374) 2025-11-10 20:58:35 +02:00
John E f1479626f3 Propose fix typo and ignore emacs backup files
Signed-off-by: John E <jeis4wpi@outlook.com>
2025-11-10 13:11:13 -05:00
imitoy 60eed56ea7 Brightness fix: Use percentage brightness to handle multiple devices correctly 2025-11-09 16:12:11 +08:00
imitoy 11fa846ae1 Brightness fix: Use percentage brightness to handle multiple devices correctly 2025-11-09 16:10:24 +08:00
imitoy 3502e46d19 Brightness fix: Use percentage brightness to handle multiple devices correctly 2025-11-09 16:03:19 +08:00
Marepalli Santhosh eccfec4671 Merge branch 'end-4:main' into feat/sticky 2025-11-09 11:44:33 +05:30
Marepalli Santhosh 819735169b removed unnecessary comments 2025-11-09 11:40:53 +05:30
Marepalli Santhosh ee94828d97 removed unnecessary comments 2025-11-09 11:39:23 +05:30
Marepalli Santhosh 935a8ee411 removed unnecessary comments 2025-11-09 11:37:32 +05:30
Marepalli Santhosh 8a5852f61a removed unnecessary comments 2025-11-09 11:36:04 +05:30
Marepalli Santhosh 9c1c97a7ec removed unnecessary comments 2025-11-09 11:35:14 +05:30
Marepalli Santhosh 77e6264568 removed unnecessary comments 2025-11-09 11:34:00 +05:30
Marepalli Santhosh 631d496001 removed unnecessary keyboard focus and ESC handler, as they are handled by overlay 2025-11-09 11:20:19 +05:30
Marepalli Santhosh 5820106e31 removed overriding opacity, as one can change in their config, current default is 0.7 2025-11-09 11:11:17 +05:30
Marepalli Santhosh cd452c256e Delete dots/.config/quickshell/ii/modules/overlay/stickypad/qmldir 2025-11-09 10:59:51 +05:30
Marepalli Santhosh c035427e6a removed unnecessary comments 2025-11-09 10:49:52 +05:30
Pico d8bcf2ed59 added symbol (icon) support to items 2025-11-09 01:41:00 +03:00
Pico eafe9f7217 Delete DropDownButton
we don't need DropDownButton anymore
2025-11-09 00:26:42 +03:00
Pico 96e4ca1095 remove height animation to prevent jump on reposition
Height animation breaks when popup auto repositions from down to up. Simple fade animation works smoothly regardless of direction.
2025-11-09 00:23:44 +03:00
Pico fa6a4e8543 spice it up with smooth animations 2025-11-09 00:11:12 +03:00
Pico a2ae9497df fix language selector index binding 2025-11-08 23:55:16 +03:00
Pico 225e03b0a3 remove check mark
it looks better without check mark
2025-11-08 21:35:37 +03:00
Pico 4c5bc19748 correct item corner radius 2025-11-08 21:31:24 +03:00
Pico 9209ca8216 fix item list size calculation to fit all items in list 2025-11-08 21:25:59 +03:00
Pico 424510065d Merge branch 'main' into language-dropdown 2025-11-08 20:30:12 +03:00
Pico c7c38bf0b1 Switch from DropdownButton to StyledComboBox 2025-11-08 20:12:30 +03:00
Pico 8b5a783c1f Added StyledComboBox 2025-11-08 20:12:08 +03:00
Pico 3f1b5bba95 fix some auto resizing issue on items 2025-11-08 19:19:59 +03:00
Pico 9cf2aa83a1 better border 2025-11-08 19:13:52 +03:00
Pico 6fa417a4c1 fix the positioning problem 2025-11-08 19:09:41 +03:00
Pico 6b0572975f make dropdown options like a overlay 2025-11-08 19:06:41 +03:00
marepallisanthosh999333 549a43ac7f feat: add sticky overlay functionality 2025-11-08 20:29:14 +05:30
Pico 5504bd3f09 switch selection array to language dropdown 2025-11-08 04:25:59 +03:00
Pico fb1b5db279 Add dropdown button for language 2025-11-08 04:25:21 +03:00
787 changed files with 29081 additions and 8836 deletions
+17 -6
View File
@@ -2,22 +2,33 @@
- Please, please, please, make multiple PRs if you have many features/fixes, and don't shove your personal changes along with the PR, including changed defaults
- We can accept features that we do not personally want, but in that case we will ask you to make it configurable/optionally loaded.
- If you want to start working on something big to contribute, it might be a good idea to ask first to not waste your effort (but if you've already done it for yourself, it doesn't hurt to submit).
- If you want to start working on something _big_ to contribute, it might be a good idea to ask first to not waste your effort (but if you've already done it for yourself, it doesn't hurt to submit).
# Code details
# Translations
## Contributing to i18n
See `dots/.config/quickshell/ii/translations/tools`
For contributing in translation (i18n) for Quickshell, see also `dots/.config/quickshell/ii/translations/tools`.
# Code
## Dynamic loading
- If something's not always necessary, especially when guarded by a config option to enable/disable, put it in a `Loader`. One tip with `Loader`s is sometimes you will need to declare positioning properties (like `anchors`) in the `Loader`, not the `sourceComponent`.
- If something's not always necessary, especially when guarded by a config option to enable/disable, put it in a `Loader`
- Note that you will need to declare positioning properties (like `anchors`) in the `Loader`, not the `sourceComponent`
- When something that's to be dynamically loaded doesn't affect its parent layout, you can have a fading animation by using FadeLoader and set the `shown` prop instead of `active` and `visible`
## Practical concerns
- Make sure what you add does not require significant resources for a minor purpose or harm usability just for the sake of looking nice. The dotfiles must remain practical for daily driving.
- If there is something really fancy and impractical anyway, add a config option for it and make sure it's disabled by default.
- If there is something really fancy and impractical anyway, add a config option for it and make sure it's disabled by default (example: constantly rotating background clock)
## Style
- Spaces
- Space properties and children data into meaningful groups. (but of course, don't use 2+ blanks in a row)
- Put spaces between text and operators: `if (condition) { ... } else { ... }` instead of `if(condition){ ... }else{ ... }`
- As you can see, it's pretty easy to use lots of nesting. There's no hard limit, end-4 himself nests a lot too, but avoid/mitigate that:
- Prefer early return: Use something like `if (!condition) return; doStuff();` instead of `if (condition) { doStuff() }`
- If you feel it's a bother to refractor something into a new file, remember there's `component` to declare reusable components in the same file.
# Setting up
+1 -1
View File
@@ -4,7 +4,7 @@ labels: ["ISSUE"]
body:
- type: markdown
attributes:
value: "**Welcome to submit a new issue!**\n- Please search in [existing issues](https://github.com/end-4/dots-hyprland/issues?q=is%3Aissue) before continue.\n- It takes only 3 steps, so please be patient :)\n- NOTE 1: If your issue is not a feature request, and it does not fit into the following form, for example \"how can I edit some widget\", please use [Discussions](https://github.com/end-4/dots-hyprland/discussions) instead.\n- NOTE 2: If your problem is distro specific and you do not use Arch(-based) distros, plesae submit [Discussion at Extra Distros](https://github.com/end-4/dots-hyprland/discussions/new?category=extra-distros) instead."
value: "**Welcome to submit a new issue!**\n- Please search in [existing issues](https://github.com/end-4/dots-hyprland/issues?q=is%3Aissue) before continue.\n- It takes only 3 steps, so please be patient :)\n- NOTE 1: If your issue is not a feature request, and it does not fit into the following form, for example \"how can I edit some widget\", please use [Discussions](https://github.com/end-4/dots-hyprland/discussions) instead.\n- NOTE 2: If your problem is distro specific and you do not use Arch(-based) distros, please submit [Discussion at Extra Distros](https://github.com/end-4/dots-hyprland/discussions/new?category=extra-distros) instead."
- type: checkboxes
attributes:
label: "Step 1. Before you submit"
+64 -59
View File
@@ -17,26 +17,39 @@
<h3></h3>
</div>
<details>
> [!WARNING]
> Hyprland 0.55 update:
> If your distro has not shipped Hyprland 0.55 and/or you're not ready for it, you should switch to the Pre-Hyprland Luaification release (or not update yet, if you're going to do that). See the wiki for more info: [Install](https://ii.clsty.link/en/ii-qs/01setup/#automated-installation) | [Update](https://ii.clsty.link/en/ii-qs/01setup/#updating)
<details>
<summary>What this is/isn't</summary>
- Technically, configuration files
- Realistically, mostly the custom graphical shell
- NOT a system setup script: no graphic drivers, no zram setup, etc.
</details>
<details>
<summary>Notable features</summary>
- **Overview**: Shows open apps with live previews. Type to search/calculate/run
- **AI**: Gemini API and Ollama models
- **Autogenerated colors**: Accessible and beautiful Material colors based on wallpaper
- **Overview**: Shows open apps with live previews
- **AI**: Gemini, Ollama, and more
- **QoL**: screen translation, anti-flashbang, Google Lens
- **Material themes**: Choose your wallpaper, done, enjoy
- **Transparent installation**: Every command is shown before it's run
</details>
<details>
<summary>Installation (illogical-impulse Quickshell)</summary>
- _If you're new to Linux and decide to use Hyprland, you're in for a tough ride._
<details>
<summary>Installation</summary>
- **IMPORTANT: Hyprland 0.55 Update**: If your distro has not shipped Hyprland 0.55 and/or you're not ready for it, you should switch to the Pre-Hyprland Luaification release. See [the wiki](https://ii.clsty.link/en/ii-qs/01setup/) for more info
- Just run `bash <(curl -s https://ii.clsty.link/get)`
- Or, clone this repo and run `./setup install`
- See [document](https://ii.clsty.link/en/ii-qs/01setup/) for details.
- **Default keybinds**: Should be somewhat familiar to Windows or GNOME users. Important ones:
- See [the wiki](https://ii.clsty.link/en/ii-qs/01setup/) for more details
- **Keybinds**: Should be somewhat familiar to Windows or GNOME users. Important ones:
- `Super`+`/` = keybind list
- `Super`+`Enter` = terminal
- If for whatever reason the keybind list widget does not work, here's an image:
<img width="1412" height="828" alt="image" src="https://github.com/user-attachments/assets/8f7bd216-9e03-47e3-8709-0008772a4133" />
</details>
@@ -44,19 +57,17 @@
<details>
<summary>Software overview</summary>
| Software | Purpose |
| ------------- | ------------- |
| [Hyprland](https://github.com/hyprwm/hyprland) | The compositor (manages and renders windows) |
| [Quickshell](https://quickshell.outfoxxed.me/) | A QtQuick-based widget system, used for the status bar, sidebars, etc. |
| Others | See [deps-info.md](https://github.com/end-4/dots-hyprland/blob/main/sdata/deps-info.md) |
- For the full list of dependencies, see the [sdata/dist-arch folder](https://github.com/end-4/dots-hyprland/tree/main/sdata/dist-arch)
- THERE IS NO WAYBAR STOP FUCKING CALLING EVERY BAR WAYBAR
</details>
<details>
<summary>Discord</summary>
<a href="https://discord.gg/GtdRBXgMwq"> Server link </a> | I hope this provides a friendlier environment for support without needing me to personally accept every friend request/DM. For real issues, prefer GitHub
<a href="https://discord.gg/GtdRBXgMwq"> Server link</a> | I hope this provides a friendlier environment for support without needing me to personally accept every friend request/DM. For real issues, prefer GitHub
</details>
@@ -69,21 +80,15 @@
<img src="assets/illogical-impulse.svg" alt="illogical-impulse logo" style="float:left; width:400;">
</div>
### illogical-impulse<sup>Quickshell</sup>
This is the latest and only supported style. Other stuff are still there mostly for viewing pleasure and not actual use, but code is still available, see below.
Widget system: Quickshell | Support: Yes
[Showcase video](https://www.youtube.com/watch?v=RPwovTInagE)
| AI, settings app | Some widgets |
|:---|:---------------|
| <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/ea0154a1-e984-4bb6-a424-23247cefe3c6" /> | <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/6eba0d57-2606-4cea-8993-e6f169e82e70" /> |
| Window management | Weeb power |
| <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/e77a7c96-1905-4126-a2a0-434f818825a2" /> | <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/c8544e99-8881-477f-b83a-d6e35c0184a1" /> |
### Other styles: Available at the end of the readme.
| <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/5d4e7d07-d0b4-4406-a4c9-ed7ba90e3fe4" /> | <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/6a32395f-9437-4192-8faf-2951a9e84cbe" /> |
| Window management | wow look its orange |
| <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/c51bed8b-3670-4d4c-9074-873be224fb8e" /> | <img width="1920" height="1080" alt="image" src="https://github.com/user-attachments/assets/98703a66-0743-439f-a721-cef7afa6ab95" /> |
<div align="center">
<h2>• thank you •</h2>
@@ -102,34 +107,24 @@ Widget system: Quickshell | Support: Yes
<h3></h3>
</div>
- If you would like to give me some milk😳 (i dont drink coffee): https://github.com/sponsors/end-4
- Virtual tentacle cat website points chart
- I promise not to attempt an +ULTRARICOSHOT irl... Coins can go here: https://github.com/sponsors/end-4
- Tentacle cat hub twinkle internet points
[![Stargazers over time](https://starchart.cc/end-4/dots-hyprland.svg?variant=adaptive)](https://starchart.cc/end-4/dots-hyprland)
<div align="center">
<h2>• inspirations/copying •</h2>
<h3></h3>
</div>
- Inspiration: osu!lazer, Windows 11, Material Design 3, AvdanOS (concept)
- Copying: The license allows you to. Personally I have absolutely no problem with others redistributing/recreating my work. There's no "stealing" (maybe unless you loudly do weird stuff and violate the license) <sub>(some people actually had to ask smh)</sub>
---
---
<div align="center">
<h2>• old, UNSUPPORTED stuff •</h2>
<h2>• previous styles •</h2>
<h3></h3>
</div>
- Source for illogical-impulse AGS available in the `ii-ags` branch, others in the `archive` branch.
- The list goes from newest to the oldest, and the code quality is worse the older a style is
- No bug fix or official support will be provided.
- **Unsupported!**
- **Source**: illogical-impulse AGS in `ii-ags` branch, others in `archive` branch.
- List is in reverse chronological order
### illogical-impulse<sup>AGS</sup>
### illogical-impulse (AGS)
Widget system: AGS | Support: No
@@ -141,33 +136,43 @@ Widget system: AGS | Support: No
#### m3ww
Widget system: EWW | Support: No, dead
Widget system: EWW | Support: No
<a href="https://streamable.com/85ch8x">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/09533e64-b6d7-47eb-a840-ee90c6776adf" alt="Material Eww!">
</a>
<a href="https://streamable.com/85ch8x">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/09533e64-b6d7-47eb-a840-ee90c6776adf" alt="Material Eww!">
</a>
#### NovelKnock
Widget system: EWW | Support: No
Widget system: EWW | Support: No
<a href="https://streamable.com/7vo61k">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/42903d03-bf6f-49d4-be7f-dd77e6cb389d" alt="Desktop Preview">
</a>
<a href="https://streamable.com/7vo61k">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/42903d03-bf6f-49d4-be7f-dd77e6cb389d" alt="Desktop Preview">
</a>
#### Hybrid
Widget system: EWW | Support: No
<a href="https://streamable.com/4oogot">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/190deb1e-f6f5-46ce-8cf0-9b39944c079d" alt="click the circles!">
</a>
Widget system: EWW | Support: No
<a href="https://streamable.com/4oogot">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/190deb1e-f6f5-46ce-8cf0-9b39944c079d" alt="click the circles!">
</a>
#### Windoes
Widget system: EWW | Support: No
<a href="https://streamable.com/5qx614">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/b15317b1-f295-49f5-b90c-fb6328b8d886" alt="Desktop Preview">
</a>
Widget system: EWW | Support: No
<a href="https://streamable.com/5qx614">
<img src="https://github.com/end-4/dots-hyprland/assets/97237370/b15317b1-f295-49f5-b90c-fb6328b8d886" alt="Desktop Preview">
</a>
<div align="center">
<h2>• inspirations/copying •</h2>
<h3></h3>
</div>
- Inspiration: osu!lazer (Hybrid), Windows 11 (Windoes), AvdanOS (NovelKnock), Material Design 3 (m3ww & later)
- Copying: Absolutely, feel free. Just follow the license and it's all good
@@ -12,6 +12,7 @@ on:
jobs:
comment_on_discussion:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main' && github.repository == 'end-4/dots-hyprland'
steps:
- name: Create comment on discussion #2140
env:
+30
View File
@@ -0,0 +1,30 @@
name: AI Moderator
on:
issues:
types: [opened]
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
spam-detection:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
models: read
contents: read
steps:
- uses: actions/checkout@v4
- uses: github/ai-moderator@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
spam-label: 'spam'
ai-label: 'ai-generated'
minimize-detected-comments: true
# Built-in prompt configuration (all enabled by default)
enable-spam-detection: true
enable-link-spam-detection: true
enable-ai-detection: true
# custom-prompt-path: '.github/prompts/my-custom.prompt.yml' # Optional
+11 -2
View File
@@ -1,8 +1,17 @@
/diagnose.result
/cache
# Ignore Python cache files
__pycache__/
*.py[cod]
dots/.config/quickshell/ii/.qmlls.ini
.update-lock
/dots/.config/quickshell/ii/.qmlls.ini
# exp-update
/.update-lock
# custom os-release
/os-release
# Emacs auto backup file
*~
+13 -11
View File
@@ -36,40 +36,42 @@ _exec() {
"$@"
err=$?;if [ ! $err -eq 0 ];then echo "[---EXIT $err---]";else echo "[---SUCCESS---]";fi
}
ii_check_distro_id() {
_check_distro_id() {
OS_RELEASE_FILE=/etc/os-release
if [[ -f "$OS_RELEASE_FILE" ]]; then
OS_DISTRO_ID=$(awk -F'=' '/^ID=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
OS_DISTRO_ID_LIKE=$(awk -F'=' '/^ID_LIKE=/ { gsub("\"","",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
OS_DISTRO_ID=$(awk -F'=' '/^ID=/ { gsub(/["\x27]/,"",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
OS_DISTRO_ID_LIKE=$(awk -F'=' '/^ID_LIKE=/ { gsub(/["\x27]/,"",$2); print tolower($2) }' ${OS_RELEASE_FILE} 2> /dev/null)
echo "distro ID: $OS_DISTRO_ID"
echo "distro ID_LIKE: $OS_DISTRO_ID_LIKE"
else
echo "$OS_RELEASE_FILE does not exist."
fi
}
ii_check_distro() {
_check_distro() {
lsb_release -a || cat /etc/os-release || cat /etc/lsb-release
}
ii_check_venv() {
_check_venv() {
source $(eval echo $ILLOGICAL_IMPULSE_VIRTUAL_ENV)/bin/activate
which python
deactivate
}
ii_check_quickshell_version() {
_check_quickshell_version() {
pacman -Q | grep -E 'quickshell|qt6-base'
}
ii_check_PKGBUILD_version() {
_check_PKGBUILD_version() {
pacman -Q | grep '^illogical-impulse-'
}
e "Checking git repo info"
x git remote get-url origin
x git rev-parse HEAD
x git status
x git submodule status --recursive
e "Checking distro"
x ii_check_distro_id
#x ii_check_distro
x _check_distro_id
x cat os-release
#x _check_distro
e "Checking variables"
x declare -p XDG_CACHE_HOME # ~/.cache
@@ -90,8 +92,8 @@ x ls -l ~/.local/state/quickshell/.venv
e "Checking versions"
x Hyprland --version
x ii_check_quickshell_version
x ii_check_PKGBUILD_version
x _check_quickshell_version
x _check_PKGBUILD_version
e "Finished. Output saved as \"$output_file\"."
if ! command -v curl 2>&1 >>/dev/null ;then echo "\"curl\" not found, pastebin upload unavailable.";exit;fi
+3 -3
View File
@@ -3,11 +3,11 @@ Vertical Candidate List=False
# Use mouse wheel to go to prev or next page
WheelForPaging=True
# Font
Font="Rubik 11"
Font="Google Sans Flex 11"
# Menu Font
MenuFont="Rubik 11"
MenuFont="Google Sans Flex 11"
# Tray Font
TrayFont="Rubik 11"
TrayFont="Google Sans Flex 11"
# Prefer Text Icon
PreferTextIcon=False
# Show Layout Name In Icon
+1 -2
View File
@@ -10,7 +10,6 @@ exec-once = gnome-keyring-daemon --start --components=secrets
exec-once = hypridle
exec-once = dbus-update-activation-environment --all
exec-once = sleep 1 && dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # Some fix idk
exec-once = hyprpm reload
# Audio
exec-once = easyeffects --gapplication-service
@@ -24,7 +23,7 @@ exec-once = wl-paste --type image --watch bash -c 'cliphist store && qs -c $qsCo
exec-once = hyprctl setcursor Bibata-Modern-Classic 24
# Fix dock pinned apps not launching properly (https://github.com/end-4/dots-hyprland/issues/2200)
exec-once = sleep 3.5 && hyprctl reload && sleep 0.5 && touch ~/.config/quickshell/ii/shell.qml
# exec-once = sleep 3.5 && hyprctl reload && sleep 0.5 && touch ~/.config/quickshell/ii/shell.qml
# For fedora to setup polkit
exec-once = /usr/libexec/kf6/polkit-kde-authentication-agent-1
+1
View File
@@ -4,3 +4,4 @@
--ignore-gpu-blocklist
--enable-features=TouchpadOverscrollHistoryNavigation
--enable-wayland-ime
--disable-features=ExtensionManifestV2Unsupported
+1 -1
View File
@@ -1,5 +1,5 @@
# Auto start Hyprland on tty1
if test -z "$DISPLAY" ;and test "$XDG_VTNR" -eq 1
mkdir -p ~/.cache
exec Hyprland > ~/.cache/hyprland.log 2>&1
exec start-hyprland > ~/.cache/hyprland.log 2>&1
end
+21 -14
View File
@@ -1,26 +1,33 @@
function fish_prompt -d "Write out the prompt"
# This shows up as USER@HOST /home/user/ >, with the directory colored
# $USER and $hostname are set by fish, so you can just use them
# instead of using `whoami` and `hostname`
printf '%s@%s %s%s%s > ' $USER $hostname \
(set_color $fish_color_cwd) (prompt_pwd) (set_color normal)
end
if status is-interactive # Commands to run in interactive sessions can go here
# Commands to run in interactive sessions can go here
if status is-interactive
# No greeting
set fish_greeting
# Use starship
starship init fish | source
function starship_transient_prompt_func
starship module character
end
if test "$TERM" != "linux"
starship init fish | source
enable_transience
end
# Colors
if test -f ~/.local/state/quickshell/user/generated/terminal/sequences.txt
cat ~/.local/state/quickshell/user/generated/terminal/sequences.txt
end
# Aliases
alias pamcan pacman
alias ls 'eza --icons'
# kitty doesn't clear properly so we need to do this weird printing
alias clear "printf '\033[2J\033[3J\033[1;1H'"
alias celar "printf '\033[2J\033[3J\033[1;1H'"
alias claer "printf '\033[2J\033[3J\033[1;1H'"
alias pamcan pacman
alias q 'qs -c ii'
if test "$TERM" != "linux"
alias ls 'eza --icons'
end
if test "$TERM" = "xterm-kitty"
alias ssh 'kitten ssh'
end
end
+1 -1
View File
@@ -1,5 +1,5 @@
include="~/.config/fuzzel/fuzzel_theme.ini"
font=Gabarito
font=Google Sans Flex:weight=medium
terminal=kitty -1
prompt=">> "
layer=overlay
-2
View File
@@ -1,2 +0,0 @@
# You can put extra environment variables here
# https://wiki.hyprland.org/Configuring/Environment-variables/
+1
View File
@@ -0,0 +1 @@
-2
View File
@@ -1,2 +0,0 @@
# You can make apps auto-start here
# Relevant Hyprland wiki section: https://wiki.hyprland.org/Configuring/Keywords/#executing
+1
View File
@@ -0,0 +1 @@
-2
View File
@@ -1,2 +0,0 @@
# Put general config stuff here
# Here's a list of every variable: https://wiki.hyprland.org/Configuring/Variables/
+1
View File
@@ -0,0 +1 @@
-11
View File
@@ -1,11 +0,0 @@
# See https://wiki.hyprland.org/Configuring/Binds/
#!
##! User
bind = Ctrl+Super, Slash, exec, xdg-open ~/.config/illogical-impulse/config.json # Edit shell config
bind = Ctrl+Super+Alt, Slash, exec, xdg-open ~/.config/hypr/custom/keybinds.conf # Edit extra keybinds
# Add stuff here
# Use #! to add an extra column on the cheatsheet
# Use ##! to add a section in that column
# Add a comment after a bind to add a description, like above
+1
View File
@@ -0,0 +1 @@
hl.bind("CTRL+SUPER+ALT+Slash", hl.dsp.exec_cmd("xdg-open ~/.config/hypr/custom/keybinds.lua"), {description = "Edit user keybinds"} )
-3
View File
@@ -1,3 +0,0 @@
# You can put custom rules here
# Window/layer rules: https://wiki.hyprland.org/Configuring/Window-Rules/
# Workspace rules: https://wiki.hyprland.org/Configuring/Workspace-Rules/
+1
View File
@@ -0,0 +1 @@
+1
View File
@@ -0,0 +1 @@
+4 -4
View File
@@ -1,11 +1,11 @@
$lock_cmd = hyprctl dispatch global quickshell:lock & pidof qs quickshell hyprlock || hyprlock
$lock_cmd = hyprctl dispatch 'hl.dsp.global("quickshell:lock")' & pidof qs quickshell hyprlock || hyprlock
# $lock_cmd = pidof hyprlock || hyprlock
$suspend_cmd = systemctl suspend || loginctl suspend
general {
lock_cmd = $lock_cmd
before_sleep_cmd = loginctl lock-session
after_sleep_cmd = hyprctl dispatch global quickshell:lockFocus
after_sleep_cmd = hyprctl dispatch 'hl.dsp.global("quickshell:lockFocus")'
inhibit_sleep = 3
}
@@ -16,8 +16,8 @@ listener {
listener {
timeout = 600 # 10mins
on-timeout = hyprctl dispatch dpms off
on-resume = hyprctl dispatch dpms on
on-timeout = hyprctl dispatch 'hl.dsp.dpms({ action = "disable" })'
on-resume = hyprctl dispatch 'hl.dsp.dpms({ action = "enable" })'
}
listener {
-25
View File
@@ -1,25 +0,0 @@
# This file sources other files in `hyprland` and `custom` folders
# You wanna add your stuff in files in `custom`
$qsConfig = ii
exec = hyprctl dispatch submap global # DO NOT REMOVE THIS OR YOU WON'T BE ABLE TO USE ANY KEYBIND
submap = global # This is required for catchall to work
# Defaults
source=hyprland/env.conf
source=hyprland/execs.conf
source=hyprland/general.conf
source=hyprland/rules.conf
source=hyprland/colors.conf
source=hyprland/keybinds.conf
# Custom
source=custom/env.conf
source=custom/execs.conf
source=custom/general.conf
source=custom/rules.conf
source=custom/keybinds.conf
# nwg-displays support
source=workspaces.conf
source=monitors.conf
+44
View File
@@ -0,0 +1,44 @@
-- This file sources other files in `hyprland` and `custom` folders
-- You wanna add your stuff in files in `custom`
-- Internal stuff --
require("hyprland.lib")
require("hyprland.services")
-- Environment variables --
require("hyprland.env")
if is_file_exists(HOME .. "/.config/hypr/custom/env.lua") then
require("custom.env")
end
-- Default configurations --
require("hyprland.execs")
require("hyprland.general")
require("hyprland.rules")
require("hyprland.colors")
require("hyprland.keybinds")
-- Custom configurations --
if is_file_exists(HOME .. "/.config/hypr/custom/execs.lua") then
require("custom.execs")
end
if is_file_exists(HOME .. "/.config/hypr/custom/general.lua") then
require("custom.general")
end
if is_file_exists(HOME .. "/.config/hypr/custom/rules.lua") then
require("custom.rules")
end
if is_file_exists(HOME .. "/.config/hypr/custom/keybinds.lua") then
require("custom.keybinds")
end
-- nwg-displays support --
if is_file_exists(HOME .. "/.config/hypr/workspaces.lua") then
require("workspaces")
end
if is_file_exists(HOME .. "/.config/hypr/monitors.lua") then
require("monitors")
end
-- Shell overrides --
require("hyprland.shellOverrides.main")
-34
View File
@@ -1,34 +0,0 @@
# exec = export SLURP_ARGS='-d -c FFDAD4BB -b 673B3444 -s 00000000'
general {
col.active_border = rgba(F7DCDE39)
col.inactive_border = rgba(A58A8D30)
}
misc {
background_color = rgba(1D1011FF)
}
plugin {
hyprbars {
# Honestly idk if it works like css, but well, why not
bar_text_font = Rubik, Geist, AR One Sans, Reddit Sans, Inter, Roboto, Ubuntu, Noto Sans, sans-serif
bar_height = 30
bar_padding = 10
bar_button_padding = 5
bar_precedence_over_border = true
bar_part_of_window = true
bar_color = rgba(1D1011FF)
col.text = rgba(F7DCDEFF)
# example buttons (R -> L)
# hyprbars-button = color, size, on-click
hyprbars-button = rgb(F7DCDE), 13, 󰖭, hyprctl dispatch killactive
hyprbars-button = rgb(F7DCDE), 13, 󰖯, hyprctl dispatch fullscreen 1
hyprbars-button = rgb(F7DCDE), 13, 󰖰, hyprctl dispatch movetoworkspacesilent special
}
}
windowrulev2 = bordercolor rgba(FFB2BCAA) rgba(FFB2BC77),pinned:1
+16
View File
@@ -0,0 +1,16 @@
hl.config({
general = {
col = {
active_border = "rgba(44464f77)",
inactive_border = "rgba(1a1b2033)",
},
},
misc = {
background_color = "rgba(121318FF)",
},
})
hl.window_rule({ -- not sure how to syntax "pin 1"
match = { pin = 1 },
border_color = "rgba(afc6ffAA) rgba(afc6ff77)",
})
-27
View File
@@ -1,27 +0,0 @@
# ######### Input method ##########
# See https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland
#env = QT_IM_MODULE, fcitx
#env = XMODIFIERS, @im=fcitx
#env = SDL_IM_MODULE, fcitx
#env = GLFW_IM_MODULE, ibus
#env = INPUT_METHOD, fcitx
# ############ Wayland #############
env = ELECTRON_OZONE_PLATFORM_HINT,auto
# ############ Themes #############
env = QT_QPA_PLATFORM, wayland
env = QT_QPA_PLATFORMTHEME, kde
env = XDG_MENU_PREFIX, plasma-
# ######## Wayland #########
# Tearing
# env = WLR_DRM_NO_ATOMIC, 1
# ?
# env = WLR_NO_HARDWARE_CURSORS, 1
# ######## Virtual envrionment #########
env = ILLOGICAL_IMPULSE_VIRTUAL_ENV, ~/.local/state/quickshell/.venv
# ######## Terminal application #########
env = TERMINAL,kitty -1
+16
View File
@@ -0,0 +1,16 @@
local home_dir = os.getenv("HOME")
-- Wayland
hl.env("ELECTRON_OZONE_PLATFORM_HINT", "auto")
-- Applications
local xdg_data_dirs_old = os.getenv("XDG_DATA_DIRS") or ""
hl.env("XDG_DATA_DIRS", home_dir .. "/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share:" .. xdg_data_dirs_old)
-- Themes
hl.env("QT_QPA_PLATFORM", "wayland;xcb")
hl.env("QT_QPA_PLATFORMTHEME", "kde")
hl.env("XDG_MENU_PREFIX", "plasma-")
-- Virtual environment
hl.env("ILLOGICAL_IMPULSE_VIRTUAL_ENV", home_dir .. "/.local/state/quickshell/.venv")
-28
View File
@@ -1,28 +0,0 @@
# Bar, wallpaper
exec-once = ~/.config/hypr/hyprland/scripts/start_geoclue_agent.sh
exec-once = qs -c $qsConfig &
# Input method
# exec-once = fcitx5
# Core components (authentication, lock screen, notification daemon)
exec-once = gnome-keyring-daemon --start --components=secrets
exec-once = hypridle
exec-once = dbus-update-activation-environment --all
exec-once = sleep 1 && dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # Some fix idk
exec-once = hyprpm reload
# Audio
exec-once = easyeffects --gapplication-service
# Clipboard: history
# exec-once = wl-paste --watch cliphist store &
exec-once = wl-paste --type text --watch bash -c 'cliphist store && qs -c $qsConfig ipc call cliphistService update'
exec-once = wl-paste --type image --watch bash -c 'cliphist store && qs -c $qsConfig ipc call cliphistService update'
# Cursor
exec-once = hyprctl setcursor Bibata-Modern-Classic 24
# Fix dock pinned apps not launching properly (https://github.com/end-4/dots-hyprland/issues/2200)
# This causes https://github.com/end-4/dots-hyprland/issues/2427
# exec-once = sleep 3.5 && hyprctl reload && sleep 0.5 && touch ~/.config/quickshell/ii/shell.qml
+25
View File
@@ -0,0 +1,25 @@
-- put former exec-once commands inside the func and former exec commands outside
hl.on("hyprland.start", function ()
-- Bar, wallpaper
hl.exec_cmd("$HOME/.config/hypr/hyprland/scripts/start_geoclue_agent.sh")
hl.exec_cmd("qs -c $qsConfig")
hl.exec_cmd("$HOME/.config/hypr/custom/scripts/__restore_video_wallpaper.sh")
-- Core components (authentication, lock screen, notification daemon)
hl.exec_cmd("gnome-keyring-daemon --start --components=secrets")
hl.exec_cmd("hypridle")
hl.exec_cmd("dbus-update-activation-environment --all")
hl.exec_cmd("sleep 1 && dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP") -- Some fix idk
-- Audio
hl.exec_cmd("easyeffects --hide-window --service-mode")
-- Clipboard: history
--hl.exec_cmd("wl-paste --watch cliphist store")
hl.exec_cmd("wl-paste --type text --watch bash -c 'cliphist store && qs -c $qsConfig ipc call cliphistService update'")
hl.exec_cmd("wl-paste --type image --watch bash -c 'cliphist store && qs -c $qsConfig ipc call cliphistService update'")
-- Cursor
hl.exec_cmd("hyprctl setcursor Bibata-Modern-Classic 24")
end)
-174
View File
@@ -1,174 +0,0 @@
# MONITOR CONFIG
monitor=,preferred,auto,1
# monitor=,addreserved, 0, 0, 0, 0 # Custom reserved area
# HDMI port: mirror display. To see device name, use `hyprctl monitors`
# monitor=HDMI-A-1,1920x1080@60,1920x0,1,mirror,eDP-1
gesture = 3, swipe, move,
gesture = 3, pinch, float
gesture = 4, horizontal, workspace
gesture = 4, up, dispatcher, global, quickshell:overviewToggle
gesture = 4, down, dispatcher, global, quickshell:overviewClose
gestures {
workspace_swipe_distance = 700
workspace_swipe_cancel_ratio = 0.2
workspace_swipe_min_speed_to_force = 5
workspace_swipe_direction_lock = true
workspace_swipe_direction_lock_threshold = 10
workspace_swipe_create_new = true
}
general {
# Gaps and border
gaps_in = 4
gaps_out = 5
gaps_workspaces = 50
border_size = 1
col.active_border = rgba(0DB7D4FF)
col.inactive_border = rgba(31313600)
resize_on_border = true
no_focus_fallback = true
allow_tearing = true # This just allows the `immediate` window rule to work
snap {
enabled = true
window_gap = 4
monitor_gap = 5
respect_gaps = true
}
}
dwindle {
preserve_split = true
smart_split = false
smart_resizing = false
# precise_mouse_move = true
}
decoration {
rounding = 18
blur {
enabled = true
xray = true
special = false
new_optimizations = true
size = 14
passes = 3
brightness = 1
noise = 0.04
contrast = 1
popups = false
popups_ignorealpha = 0.6
input_methods = true
input_methods_ignorealpha = 0.8
}
shadow {
enabled = true
ignore_window = true
range = 30
offset = 0 2
render_power = 4
color = rgba(00000010)
}
# Dim
dim_inactive = true
dim_strength = 0.025
dim_special = 0.07
}
animations {
enabled = true
# Curves
bezier = expressiveFastSpatial, 0.42, 1.67, 0.21, 0.90
bezier = expressiveSlowSpatial, 0.39, 1.29, 0.35, 0.98
bezier = expressiveDefaultSpatial, 0.38, 1.21, 0.22, 1.00
bezier = emphasizedDecel, 0.05, 0.7, 0.1, 1
bezier = emphasizedAccel, 0.3, 0, 0.8, 0.15
bezier = standardDecel, 0, 0, 0, 1
bezier = menu_decel, 0.1, 1, 0, 1
bezier = menu_accel, 0.52, 0.03, 0.72, 0.08
# Configs
# windows
animation = windowsIn, 1, 3, emphasizedDecel, popin 80%
animation = windowsOut, 1, 2, emphasizedDecel, popin 90%
animation = windowsMove, 1, 3, emphasizedDecel, slide
animation = border, 1, 10, emphasizedDecel
# layers
animation = layersIn, 1, 2.7, emphasizedDecel, popin 93%
animation = layersOut, 1, 2.4, menu_accel, popin 94%
# fade
animation = fadeLayersIn, 1, 0.5, menu_decel
animation = fadeLayersOut, 1, 2.7, menu_accel
# workspaces
animation = workspaces, 1, 7, menu_decel, slide
## specialWorkspace
animation = specialWorkspaceIn, 1, 2.8, emphasizedDecel, slidevert
animation = specialWorkspaceOut, 1, 1.2, emphasizedAccel, slidevert
}
input {
kb_layout = us
numlock_by_default = true
repeat_delay = 250
repeat_rate = 35
follow_mouse = 1
off_window_axis_events = 2
touchpad {
natural_scroll = yes
disable_while_typing = true
clickfinger_behavior = true
scroll_factor = 0.5
}
}
misc {
disable_hyprland_logo = true
disable_splash_rendering = true
vfr = 1
vrr = 1
mouse_move_enables_dpms = true
key_press_enables_dpms = true
animate_manual_resizes = false
animate_mouse_windowdragging = false
enable_swallow = false
swallow_regex = (foot|kitty|allacritty|Alacritty)
new_window_takes_over_fullscreen = 2
allow_session_lock_restore = true
session_lock_xray = true
initial_workspace_tracking = false
focus_on_activate = true
}
binds {
scroll_event_delay = 0
hide_special_on_workspace_change = true
}
cursor {
zoom_factor = 1
zoom_rigid = false
hotspot_padding = 1
}
# Overview
plugin {
hyprexpo {
columns = 3
gap_size = 5
bg_col = rgb(000000)
workspace_method = first 1 # [center/first] [workspace] e.g. first 1 or center m+1
enable_gesture = false # laptop touchpad, 4 fingers
gesture_distance = 300 # how far is the "max"
gesture_positive = false
}
}
+305
View File
@@ -0,0 +1,305 @@
-- MONITOR CONFIG
hl.monitor({
output = "",
mode = "preferred",
position = "auto",
scale = 1
})
hl.gesture({
fingers = 3,
direction = "swipe",
action = "move"
})
hl.gesture({
fingers = 3,
direction = "pinch",
action = "fullscreen"
})
hl.gesture({
fingers = 4,
direction = "horizontal",
action = "workspace"
})
hl.gesture({
fingers = 4,
direction = "up",
action = function()
hl.dispatch(hl.dsp.global("quickshell:overviewWorkspacesToggle"))
end
})
hl.gesture({
fingers = 4,
direction = "down",
action = function()
hl.dispatch(hl.dsp.global("quickshell:overviewWorkspacesToggle"))
end
})
hl.config({
gestures = {
workspace_swipe_distance = 700,
workspace_swipe_cancel_ratio = 0.2,
workspace_swipe_min_speed_to_force = 5,
workspace_swipe_direction_lock = true,
workspace_swipe_direction_lock_threshold = 10,
workspace_swipe_create_new = true
},
general = {
-- Gaps and border
gaps_in = 4,
gaps_out = 5,
gaps_workspaces = 50,
border_size = 1,
col = {
active_border = "rgba(0DB7D455)",
inactive_border = "rgba(31313600)"
},
resize_on_border = true,
no_focus_fallback = true,
allow_tearing = true, -- This just allows the `immediate` window rule to work
snap = {
enabled = true,
window_gap = 4,
monitor_gap = 5,
respect_gaps = true
}
},
decoration = {
-- 2 = circle, higher = squircle, 4 = very obvious squircle
-- Fuck clearly visible squircles. 100% Apple brainrot.
rounding_power = 2.5,
rounding = 18,
blur = {
enabled = true,
xray = true,
special = false,
new_optimizations = true,
size = 10,
passes = 3,
brightness = 1,
noise = 0.05,
contrast = 0.89,
vibrancy = 0.5,
vibrancy_darkness = 0.5,
popups = false,
popups_ignorealpha = 0.6,
input_methods = true,
input_methods_ignorealpha = 0.8
},
shadow = {
enabled = true,
range = 20,
offset = {0, 2},
render_power = 10,
color = "rgba(00000020)"
},
-- Dim
dim_inactive = true,
dim_strength = 0.05,
dim_special = 0.2
},
animations = {
enabled = true
},
dwindle = {
preserve_split = true,
smart_split = false,
smart_resizing = false
-- precise_mouse_move = true,
},
})
-- Curves
hl.curve("expressiveFastSpatial", {
type = "bezier",
points = {{0.42, 1.67}, {0.21, 0.90}}
})
hl.curve("expressiveSlowSpatial", {
type = "bezier",
points = {{0.39, 1.29}, {0.35, 0.98}}
})
hl.curve("expressiveDefaultSpatial", {
type = "bezier",
points = {{0.38, 1.21}, {0.22, 1.00}}
})
hl.curve("emphasizedDecel", {
type = "bezier",
points = {{0.05, 0.7}, {0.1, 1}}
})
hl.curve("emphasizedAccel", {
type = "bezier",
points = {{0.3, 0}, {0.8, 0.15}}
})
hl.curve("standardDecel", {
type = "bezier",
points = {{0, 0}, {0, 1}}
})
hl.curve("menu_decel", {
type = "bezier",
points = {{0.1, 1}, {0, 1}}
})
hl.curve("menu_accel", {
type = "bezier",
points = {{0.52, 0.03}, {0.72, 0.08}}
})
hl.curve("stall", {
type = "bezier",
points = {{1, -0.1}, {0.7, 0.85}}
})
-- Configs
-- windows
hl.animation({
leaf = "windowsIn",
enabled = true,
speed = 3,
bezier = "emphasizedDecel",
style = "popin 80%"
})
hl.animation({
leaf = "fadeIn",
enabled = true,
speed = 3,
bezier = "emphasizedDecel"
})
hl.animation({
leaf = "windowsOut",
enabled = true,
speed = 2,
bezier = "emphasizedDecel",
style = "popin 90%"
})
hl.animation({
leaf = "fadeOut",
enabled = true,
speed = 2,
bezier = "emphasizedDecel"
})
hl.animation({
leaf = "windowsMove",
enabled = true,
speed = 3,
bezier = "emphasizedDecel",
style = "slide"
})
hl.animation({
leaf = "border",
enabled = true,
speed = 10,
bezier = "emphasizedDecel"
})
-- layers
hl.animation({
leaf = "layersIn",
enabled = true,
speed = 2.7,
bezier = "emphasizedDecel",
style = "popin 93%"
})
hl.animation({
leaf = "layersOut",
enabled = true,
speed = 2.4,
bezier = "menu_accel",
style = "popin 94%"
})
-- fade
hl.animation({
leaf = "fadeLayersIn",
enabled = true,
speed = 0.5,
bezier = "menu_decel"
})
hl.animation({
leaf = "fadeLayersOut",
enabled = true,
speed = 2.7,
bezier = "stall"
})
-- workspaces
hl.animation({
leaf = "workspaces",
enabled = true,
speed = 7,
bezier = "menu_decel",
style = "slide"
})
-- specialWorkspace
hl.animation({
leaf = "specialWorkspaceIn",
enabled = true,
speed = 2.8,
bezier = "emphasizedDecel",
style = "slidevert"
})
hl.animation({
leaf = "specialWorkspaceOut",
enabled = true,
speed = 1.2,
bezier = "emphasizedAccel",
style = "slidevert"
})
-- zoom
hl.animation({
leaf = "zoomFactor",
enabled = true,
speed = 3,
bezier = "standardDecel"
})
hl.config({
input = {
kb_layout = "us",
numlock_by_default = true,
repeat_delay = 250,
repeat_rate = 35,
follow_mouse = 1,
off_window_axis_events = 2,
touchpad = {
natural_scroll = true,
disable_while_typing = true,
clickfinger_behavior = true,
scroll_factor = 0.7
}
},
misc = {
disable_hyprland_logo = true,
disable_splash_rendering = true,
vrr = 0,
mouse_move_enables_dpms = true,
key_press_enables_dpms = true,
animate_manual_resizes = false,
animate_mouse_windowdragging = false,
enable_swallow = false,
swallow_regex = "(foot|kitty|allacritty|Alacritty)",
on_focus_under_fullscreen = 2,
allow_session_lock_restore = true,
session_lock_xray = true,
initial_workspace_tracking = false,
focus_on_activate = true
},
binds = {
scroll_event_delay = 0,
hide_special_on_workspace_change = true
},
cursor = {
zoom_factor = 1,
zoom_rigid = false,
zoom_disable_aa = true,
hotspot_padding = 1
},
xwayland = {
force_zero_scaling = true
}
})
-270
View File
@@ -1,270 +0,0 @@
# Lines ending with `# [hidden]` won't be shown on cheatsheet
# Lines starting with #! are section headings
#!
##! Shell
# These absolutely need to be on top, or they won't work consistently
bindid = Super, Super_L, Toggle overview, global, quickshell:overviewToggleRelease # Toggle overview/launcher
bindid = Super, Super_R, Toggle overview, global, quickshell:overviewToggleRelease # [hidden] Toggle overview/launcher
bind = Super, Super_L, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || fuzzel # [hidden] Launcher (fallback)
bind = Super, Super_R, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || fuzzel # [hidden] Launcher (fallback)
binditn = Super, catchall, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Ctrl, Super_L, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Ctrl, Super_R, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse:272, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse:273, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse:274, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse:275, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse:276, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse:277, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse_up, global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bind = Super, mouse_down,global, quickshell:overviewToggleReleaseInterrupt # [hidden]
bindit = ,Super_L, global, quickshell:workspaceNumber # [hidden]
bindit = ,Super_R, global, quickshell:workspaceNumber # [hidden]
bindd = Super, V, Clipboard history >> clipboard, global, quickshell:overviewClipboardToggle # Clipboard history >> clipboard
bindd = Super, Period, Emoji >> clipboard, global, quickshell:overviewEmojiToggle # Emoji >> clipboard
bindd = Super, Tab, Toggle overview, global, quickshell:overviewToggle # [hidden] Toggle overview/launcher (alt)
bindd = Super, A, Toggle left sidebar, global, quickshell:sidebarLeftToggle # Toggle left sidebar
bind = Super+Alt, A, global, quickshell:sidebarLeftToggleDetach # [hidden]
bind = Super, B, global, quickshell:sidebarLeftToggle # [hidden]
bind = Super, O, global, quickshell:sidebarLeftToggle # [hidden]
bindd = Super, N, Toggle right sidebar, global, quickshell:sidebarRightToggle # Toggle right sidebar
bindd = Super, Slash, Toggle cheatsheet, global, quickshell:cheatsheetToggle # Toggle cheatsheet
bindd = Super, K, Toggle on-screen keyboard, global, quickshell:oskToggle # Toggle on-screen keyboard
bindd = Super, M, Toggle media controls, global, quickshell:mediaControlsToggle # Toggle media controls
bind = Super, G, global, quickshell:overlayToggle # Toggle overlay
bindd = Ctrl+Alt, Delete, Toggle session menu, global, quickshell:sessionToggle # Toggle session menu
bindd = Super, J, Toggle bar, global, quickshell:barToggle # Toggle bar
bind = Ctrl+Alt, Delete, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill wlogout || wlogout -p layer-shell # [hidden] Session menu (fallback)
bind = Shift+Super+Alt, Slash, exec, qs -p ~/.config/quickshell/$qsConfig/welcome.qml # [hidden] Launch welcome app
bindle=, XF86MonBrightnessUp, exec, qs -c $qsConfig ipc call brightness increment || brightnessctl s 5%+ # [hidden]
bindle=, XF86MonBrightnessDown, exec, qs -c $qsConfig ipc call brightness decrement || brightnessctl s 5%- # [hidden]
bindle=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+ -l 1.5# [hidden]
bindle=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%- # [hidden]
bindl = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle # [hidden]
bindld = Super+Shift,M, Toggle mute, exec, wpctl set-mute @DEFAULT_SINK@ toggle # [hidden]
bindl = Alt ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle # [hidden]
bindl = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle # [hidden]
bindld = Super+Alt,M, Toggle mic, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle # [hidden]
bindd = Ctrl+Super, T, Toggle wallpaper selector, global, quickshell:wallpaperSelectorToggle # Wallpaper selector
bindd = Ctrl+Super+Alt, T, Select random wallpaper, global, quickshell:wallpaperSelectorRandom # Random wallpaper
bindd = Ctrl+Super, T, Change wallpaper, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/quickshell/$qsConfig/scripts/colors/switchwall.sh # [hidden] Change wallpaper (fallback)
bind = Ctrl+Super, R, exec, killall ags agsv1 gjs ydotool qs quickshell; qs -c $qsConfig & # Restart widgets
bind = Super+Alt, W, global, quickshell:panelFamilyCycle # Cycle panel family
##! Utilities
# Screenshot, Record, OCR, Color picker, Clipboard history
bindd = Super, V, Copy clipboard history entry, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || cliphist list | fuzzel --match-mode fzf --dmenu | cliphist decode | wl-copy # [hidden] Clipboard history >> clipboard (fallback)
bindd = Super, Period, Copy an emoji, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || ~/.config/hypr/hyprland/scripts/fuzzel-emoji.sh copy # [hidden] Emoji >> clipboard (fallback)
bind = Super+Shift, S, global, quickshell:regionScreenshot # Screen snip
bind = Super+Shift, S, exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || hyprshot --freeze --clipboard-only --mode region --silent # [hidden] Screen snip (fallback)
bind = Super+Shift, A, global, quickshell:regionSearch # Google Lens
bind = Super+Shift, A, exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || ~/.config/hypr/hyprland/scripts/snip_to_search.sh # [hidden] Google Lens (fallback)
# OCR
bind = Super+Shift, X, global, quickshell:regionOcr # Character recognition >> clipboard
bind = Super+Shift, T, global, quickshell:regionOcr # [hidden]
bind = Super+Shift, X,exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || grim -g "$(slurp $SLURP_ARGS)" "/tmp/ocr_image.png" && tesseract "/tmp/ocr_image.png" stdout -l $(tesseract --list-langs | awk 'NR>1{print $1}' | tr '\\n' '+' | sed 's/\\+$/\\n/') | wl-copy && rm "/tmp/ocr_image.png" # [hidden]
bind = Super+Shift, T,exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || grim -g "$(slurp $SLURP_ARGS)" "/tmp/ocr_image.png" && tesseract "/tmp/ocr_image.png" stdout -l $(tesseract --list-langs | awk 'NR>1{print $1}' | tr '\\n' '+' | sed 's/\\+$/\\n/') | wl-copy && rm "/tmp/ocr_image.png" # [hidden]
# Color picker
bindd = Super+Shift, C, Color picker, exec, hyprpicker -a # Pick color (Hex) >> clipboard
# Fullscreen screenshot
bindl = ,Print,exec,grim - | wl-copy # Screenshot >> clipboard
bindln = Ctrl,Print, exec, mkdir -p $(xdg-user-dir PICTURES)/Screenshots && grim $(xdg-user-dir PICTURES)/Screenshots/Screenshot_"$(date '+%Y-%m-%d_%H.%M.%S')".png # Screenshot >> clipboard & file (file)
bindln = Ctrl,Print,exec,grim - | wl-copy # [hidden] Screenshot >> clipboard & file (clipboard)
# Recording stuff
bindl = Super+Shift, R, global, quickshell:regionRecord # Record region (no sound)
bindl = Super+Shift, R, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/quickshell/$qsConfig/scripts/videos/record.sh # [hidden] Record region (no sound) (fallback)
bindl = Super+Alt, R, global, quickshell:regionRecord # [hidden] Record region (no sound)
bindl = Super+Alt, R, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/quickshell/$qsConfig/scripts/videos/record.sh # [hidden] Record region (no sound) (fallback)
bindl = Ctrl+Alt, R, exec, ~/.config/quickshell/$qsConfig/scripts/videos/record.sh --fullscreen # [hidden] Record screen (no sound)
bindl = Super+Shift+Alt, R, exec, ~/.config/quickshell/$qsConfig/scripts/videos/record.sh --fullscreen --sound # Record screen (with sound)
# AI
bindd = Super+Shift+Alt, mouse:273, Generate AI summary for selected text, exec, ~/.config/hypr/hyprland/scripts/ai/primary-buffer-query.sh # [hidden] AI summary for selected text
#!
##! Window
# Focusing
bindm = Super, mouse:272, movewindow # Move
bindm = Super, mouse:274, movewindow # [hidden]
bindm = Super, mouse:273, resizewindow # Resize
#/# bind = Super, ←/↑/→/↓,, # Focus in direction
bind = Super, Left, movefocus, l # [hidden]
bind = Super, Right, movefocus, r # [hidden]
bind = Super, Up, movefocus, u # [hidden]
bind = Super, Down, movefocus, d # [hidden]
bind = Super, BracketLeft, movefocus, l # [hidden]
bind = Super, BracketRight, movefocus, r # [hidden]
#/# bind = Super+Shift, ←/↑/→/↓,, # Move in direction
bind = Super+Shift, Left, movewindow, l # [hidden]
bind = Super+Shift, Right, movewindow, r # [hidden]
bind = Super+Shift, Up, movewindow, u # [hidden]
bind = Super+Shift, Down, movewindow, d # [hidden]
bind = Alt, F4, killactive, # [hidden] Close (Windows)
bind = Super, Q, killactive, # Close
bind = Super+Shift+Alt, Q, exec, hyprctl kill # Forcefully zap a window
# Window split ratio
#/# binde = Super, ;/',, # Adjust split ratio
binde = Super, Semicolon, splitratio, -0.1 # [hidden]
binde = Super, Apostrophe, splitratio, +0.1 # [hidden]
# Positioning mode
bind = Super+Alt, Space, togglefloating, # Float/Tile
bind = Super, D, fullscreen, 1 # Maximize
bind = Super, F, fullscreen, 0 # Fullscreen
bind = Super+Alt, F, fullscreenstate, 0 3 # Fullscreen spoof
bind = Super, P, pin # Pin
#/# bind = Super+Alt, Hash,, # Send to workspace # (1, 2, 3,...)
# We use raw keycodes because some keyboard layouts register number keys as different chars. The codes can be verified with `wev`
bind = Super+Alt, code:10, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 1 # [hidden]
bind = Super+Alt, code:11, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 2 # [hidden]
bind = Super+Alt, code:12, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 3 # [hidden]
bind = Super+Alt, code:13, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 4 # [hidden]
bind = Super+Alt, code:14, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 5 # [hidden]
bind = Super+Alt, code:15, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 6 # [hidden]
bind = Super+Alt, code:16, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 7 # [hidden]
bind = Super+Alt, code:17, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 8 # [hidden]
bind = Super+Alt, code:18, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 9 # [hidden]
bind = Super+Alt, code:19, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 10 # [hidden]
# keypad numbers
bind = Super+Alt, code:87, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 1 # [hidden]
bind = Super+Alt, code:88, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 2 # [hidden]
bind = Super+Alt, code:89, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 3 # [hidden]
bind = Super+Alt, code:83, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 4 # [hidden]
bind = Super+Alt, code:84, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 5 # [hidden]
bind = Super+Alt, code:85, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 6 # [hidden]
bind = Super+Alt, code:79, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 7 # [hidden]
bind = Super+Alt, code:80, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 8 # [hidden]
bind = Super+Alt, code:81, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 9 # [hidden]
bind = Super+Alt, code:90, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 10 # [hidden]
# #/# bind = Super+Shift, Scroll ↑/↓,, # Send to workspace left/right
bind = Super+Shift, mouse_down, movetoworkspace, r-1 # [hidden]
bind = Super+Shift, mouse_up, movetoworkspace, r+1 # [hidden]
bind = Super+Alt, mouse_down, movetoworkspace, -1 # [hidden]
bind = Super+Alt, mouse_up, movetoworkspace, +1 # [hidden]
#/# bind = Super+Shift, Page_↑/↓,, # Send to workspace left/right
bind = Super+Alt, Page_Down, movetoworkspace, +1 # [hidden]
bind = Super+Alt, Page_Up, movetoworkspace, -1 # [hidden]
bind = Super+Shift, Page_Down, movetoworkspace, r+1 # [hidden]
bind = Super+Shift, Page_Up, movetoworkspace, r-1 # [hidden]
bind = Ctrl+Super+Shift, Right, movetoworkspace, r+1 # [hidden]
bind = Ctrl+Super+Shift, Left, movetoworkspace, r-1 # [hidden]
bind = Super+Alt, S, movetoworkspacesilent, special # Send to scratchpad
bind = Ctrl+Super, S, togglespecialworkspace, # [hidden]
##! Workspace
# Switching
#/# bind = Super, Hash,, # Focus workspace # (1, 2, 3,...)
# We use raw keycodes because some keyboard layouts register number keys as different chars. The codes can be verified with `wev`
bind = Super, code:10, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 1 # [hidden]
bind = Super, code:11, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 2 # [hidden]
bind = Super, code:12, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 3 # [hidden]
bind = Super, code:13, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 4 # [hidden]
bind = Super, code:14, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 5 # [hidden]
bind = Super, code:15, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 6 # [hidden]
bind = Super, code:16, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 7 # [hidden]
bind = Super, code:17, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 8 # [hidden]
bind = Super, code:18, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 9 # [hidden]
bind = Super, code:19, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 10 # [hidden]
# keypad numbers
bindp = Super, code:87, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 1 # [hidden]
bindp = Super, code:88, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 2 # [hidden]
bindp = Super, code:89, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 3 # [hidden]
bindp = Super, code:83, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 4 # [hidden]
bindp = Super, code:84, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 5 # [hidden]
bindp = Super, code:85, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 6 # [hidden]
bindp = Super, code:79, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 7 # [hidden]
bindp = Super, code:80, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 8 # [hidden]
bindp = Super, code:81, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 9 # [hidden]
bindp = Super, code:90, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 10 # [hidden]
#/# bind = Ctrl+Super, ←/→,, # Focus left/right
bind = Ctrl+Super, Right, workspace, r+1 # [hidden]
bind = Ctrl+Super, Left, workspace, r-1 # [hidden]
#/# bind = Ctrl+Super+Alt, ←/→,, # [hidden] Focus busy left/right
bind = Ctrl+Super+Alt, Right, workspace, m+1 # [hidden]
bind = Ctrl+Super+Alt, Left, workspace, m-1 # [hidden]
#/# bind = Super, Page_↑/↓,, # Focus left/right
bind = Super, Page_Down, workspace, +1 # [hidden]
bind = Super, Page_Up, workspace, -1 # [hidden]
bind = Ctrl+Super, Page_Down, workspace, r+1 # [hidden]
bind = Ctrl+Super, Page_Up, workspace, r-1 # [hidden]
#/# bind = Super, Scroll ↑/↓,, # Focus left/right
bind = Super, mouse_up, workspace, +1 # [hidden]
bind = Super, mouse_down, workspace, -1 # [hidden]
bind = Ctrl+Super, mouse_up, workspace, r+1 # [hidden]
bind = Ctrl+Super, mouse_down, workspace, r-1 # [hidden]
## Special
bind = Super, S, togglespecialworkspace, # Toggle scratchpad
bind = Super, mouse:275, togglespecialworkspace, # [hidden]
bind = Ctrl+Super, BracketLeft, workspace, -1 # [hidden]
bind = Ctrl+Super, BracketRight, workspace, +1 # [hidden]
bind = Ctrl+Super, Up, workspace, r-5 # [hidden]
bind = Ctrl+Super, Down, workspace, r+5 # [hidden]
##! Virtual machines
bind = Super+Alt, F1, exec, notify-send 'Entered Virtual Machine submap' 'Keybinds disabled. Hit Super+Alt+F1 to escape' -a 'Hyprland' && hyprctl dispatch submap virtual-machine # Disable keybinds
submap = virtual-machine
bind = Super+Alt, F1, exec, notify-send 'Exited Virtual Machine submap' 'Keybinds re-enabled' -a 'Hyprland' && hyprctl dispatch submap global # [hidden]
submap = global
#!
# Testing
bind = Super+Alt, f11, exec, bash -c 'RANDOM_IMAGE=$(find ~/Pictures -type f | grep -v -i "nipple" | grep -v -i "pussy" | shuf -n 1); ACTION=$(notify-send "Test notification with body image" "This notification should contain your user account <b>image</b> and <a href=\"https://discord.com/app\">Discord</a> <b>icon</b>. Oh and here is a random image in your Pictures folder: <img src=\"$RANDOM_IMAGE\" alt=\"Testing image\"/>" -a "Hyprland keybind" -p -h "string:image-path:/var/lib/AccountsService/icons/$USER" -t 6000 -i "discord" -A "openImage=Open profile image" -A "action2=Open the random image" -A "action3=Useless button"); [[ $ACTION == *openImage ]] && xdg-open "/var/lib/AccountsService/icons/$USER"; [[ $ACTION == *action2 ]] && xdg-open \"$RANDOM_IMAGE\"' # [hidden]
bind = Super+Alt, f12, exec, bash -c 'RANDOM_IMAGE=$(find ~/Pictures -type f | grep -v -i "nipple" | grep -v -i "pussy" | shuf -n 1); ACTION=$(notify-send "Test notification" "This notification should contain a random image in your <b>Pictures</b> folder and <a href=\"https://discord.com/app\">Discord</a> <b>icon</b>.\n<i>Flick right to dismiss!</i>" -a "Discord (fake)" -p -h "string:image-path:$RANDOM_IMAGE" -t 6000 -i "discord" -A "openImage=Open profile image" -A "action2=Useless button" -A "action3=Cry more"); [[ $ACTION == *openImage ]] && xdg-open "/var/lib/AccountsService/icons/$USER"' # [hidden]
bind = Super+Alt, Equal, exec, notify-send "Urgent notification" "Ah hell no" -u critical -a 'Hyprland keybind' # [hidden]
##! Session
bindd = Super, L, Lock, exec, loginctl lock-session # Lock
bindld = Super+Shift, L, Suspend system, exec, systemctl suspend || loginctl suspend # Sleep
# bindl=,switch:on:Lid Switch, exec, systemctl suspend || loginctl suspend # [hidden] Suspend when laptop lid is closed, uncomment if for whatever reason it's not the default behavior
bindd = Ctrl+Shift+Alt+Super, Delete, Shutdown, exec, systemctl poweroff || loginctl poweroff # [hidden] Power off
##! Screen
# Zoom
binde = Super, Minus, exec, qs -c $qsConfig ipc call zoom zoomOut # Zoom out
binde = Super, Equal, exec, qs -c $qsConfig ipc call zoom zoomIn # Zoom in
binde = Super, Minus, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/hypr/hyprland/scripts/zoom.sh decrease 0.1 # [hidden] Zoom out
binde = Super, Equal, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/hypr/hyprland/scripts/zoom.sh increase 0.1 # [hidden] Zoom in
# Zoom with keypad
binde = Super, code:82, exec, qs -c $qsConfig ipc call zoom zoomOut # [hidden] Zoom out
binde = Super, code:86, exec, qs -c $qsConfig ipc call zoom zoomIn # [hidden] Zoom in
binde = Super, code:82, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/hypr/hyprland/scripts/zoom.sh decrease 0.1 # [hidden] Zoom out
binde = Super, code:86, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/hypr/hyprland/scripts/zoom.sh increase 0.1 # [hidden] Zoom in
##! Media
bindl= Super+Shift, N, exec, playerctl next || playerctl position `bc <<< "100 * $(playerctl metadata mpris:length) / 1000000 / 100"` # Next track
bindl= ,XF86AudioNext, exec, playerctl next || playerctl position `bc <<< "100 * $(playerctl metadata mpris:length) / 1000000 / 100"` # [hidden]
bindl= ,XF86AudioPrev, exec, playerctl previous # [hidden]
bind = Super+Shift+Alt, mouse:275, exec, playerctl previous # [hidden]
bind = Super+Shift+Alt, mouse:276, exec, playerctl next || playerctl position `bc <<< "100 * $(playerctl metadata mpris:length) / 1000000 / 100"` # [hidden]
bindl= Super+Shift, B, exec, playerctl previous # Previous track
bindl= Super+Shift, P, exec, playerctl play-pause # Play/pause media
bindl= ,XF86AudioPlay, exec, playerctl play-pause # [hidden]
bindl= ,XF86AudioPause, exec, playerctl play-pause # [hidden]
##! Apps
bind = Super, Return, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "${TERMINAL}" "kitty -1" "foot" "alacritty" "wezterm" "konsole" "kgx" "uxterm" "xterm" # Terminal
bind = Super, T, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "${TERMINAL}" "kitty -1" "foot" "alacritty" "wezterm" "konsole" "kgx" "uxterm" "xterm" # [hidden] (terminal) (alt)
bind = Ctrl+Alt, T, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "${TERMINAL}" "kitty -1" "foot" "alacritty" "wezterm" "konsole" "kgx" "uxterm" "xterm" # [hidden] (terminal) (for Ubuntu people)
bind = Super, E, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "dolphin" "nautilus" "nemo" "thunar" "${TERMINAL}" "kitty -1 fish -c yazi" # File manager
bind = Super, W, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "google-chrome-stable" "zen-browser" "firefox" "brave" "chromium" "microsoft-edge-stable" "opera" "librewolf" # Browser
bind = Super, C, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "code" "codium" "cursor" "zed" "zedit" "zeditor" "kate" "gnome-text-editor" "emacs" "command -v nvim && kitty -1 nvim" "command -v micro && kitty -1 micro" # Code editor
bind = Ctrl+Super+Shift+Alt, W, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "wps" "onlyoffice-desktopeditors" "libreoffice" # Office software
bind = Super, X, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "kate" "gnome-text-editor" "emacs" # Text editor
bind = Ctrl+Super, V, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "pavucontrol-qt" "pavucontrol" # Volume mixer
bind = Super, I, exec, XDG_CURRENT_DESKTOP=gnome ~/.config/hypr/hyprland/scripts/launch_first_available.sh "qs -p ~/.config/quickshell/$qsConfig/settings.qml" "systemsettings" "gnome-control-center" "better-control" # Settings app
bind = Ctrl+Shift, Escape, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "gnome-system-monitor" "plasma-systemmonitor --page-name Processes" "command -v btop && kitty -1 fish -c btop" # Task manager
# Cursed stuff
## Make window not amogus large
bind = Ctrl+Super, Backslash, resizeactive, exact 640 480 # [hidden]
+359
View File
@@ -0,0 +1,359 @@
require("hyprland.lib")
require("hyprland.variables")
if is_file_exists(HOME .. "/.config/hypr/custom/variables.lua") then
require("custom.variables")
end
local qsScripts = "$HOME/.config/quickshell/$qsConfig/scripts"
local hyprScripts = "$HOME/.config/hypr/hyprland/scripts"
local qsIpcCall = "qs -c $qsConfig ipc call"
local qsIsAlive = qsIpcCall .. " TEST_ALIVE"
hl.bind("SUPER + SUPER_L", hl.dsp.global("quickshell:searchToggleRelease"), { description = "Shell: Toggle search" })
hl.bind("SUPER + SUPER_R", hl.dsp.global("quickshell:searchToggleRelease"))
hl.bind("SUPER + SUPER_L", hl.dsp.exec_cmd(qsIsAlive .. " || pkill fuzzel || fuzzel"))
hl.bind("SUPER + SUPER_R", hl.dsp.exec_cmd(qsIsAlive .. " || pkill fuzzel || fuzzel"))
hl.bind("SUPER_L", hl.dsp.global("quickshell:workspaceNumber"), { ignore_mods = true, transparent = true })
hl.bind("SUPER_R", hl.dsp.global("quickshell:workspaceNumber"), { ignore_mods = true, transparent = true })
hl.bind("SUPER_L", hl.dsp.global("quickshell:workspaceNumber"),
{ ignore_mods = true, transparent = true, release = true })
hl.bind("SUPER_R", hl.dsp.global("quickshell:workspaceNumber"),
{ ignore_mods = true, transparent = true, release = true })
hl.bind("SUPER + Tab", hl.dsp.global("quickshell:overviewWorkspacesToggle"), { description = "Shell: Toggle overview" })
hl.bind("SUPER + V", hl.dsp.global("quickshell:overviewClipboardToggle"))
hl.bind("SUPER + Period", hl.dsp.global("quickshell:overviewEmojiToggle"))
hl.bind("SUPER + A", hl.dsp.global("quickshell:sidebarLeftToggle"), { description = "Shell: Toggle left sidebar" })
hl.bind("SUPER + ALT + A", hl.dsp.global("quickshell:sidebarLeftToggleDetach"))
hl.bind("SUPER + B", hl.dsp.global("quickshell:sidebarLeftToggle"))
hl.bind("SUPER + O", hl.dsp.global("quickshell:sidebarLeftToggle"))
hl.bind("SUPER + N", hl.dsp.global("quickshell:sidebarRightToggle"), { description = "Shell: Toggle right sidebar" })
hl.bind("SUPER + Slash", hl.dsp.global("quickshell:cheatsheetToggle"), { description = "Shell: Toggle cheatsheet" })
hl.bind("SUPER + K", hl.dsp.global("quickshell:oskToggle"), { description = "Shell: Toggle on-screen keyboard" })
hl.bind("SUPER + M", hl.dsp.global("quickshell:mediaControlsToggle"), { description = "Shell: Toggle media controls" })
hl.bind("SUPER + G", hl.dsp.global("quickshell:overlayToggle"), { description = "Shell: Toggle widget overlay" })
hl.bind("CTRL + ALT + Delete", hl.dsp.global("quickshell:sessionToggle"), { description = "Shell: Toggle session menu" })
hl.bind("SUPER + J", hl.dsp.global("quickshell:barToggle"), { description = "Shell: Toggle bar" })
hl.bind("CTRL + ALT + Delete", hl.dsp.exec_cmd(qsIsAlive .. " || pkill wlogout || wlogout -p layer-shell"))
hl.bind("SHIFT + SUPER + ALT + Slash", hl.dsp.exec_cmd("qs -p $HOME/.config/quickshell/$qsConfig/welcome.qml"))
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd(qsIpcCall .. " brightness increment || brightnessctl s 5%+"),
{ locked = true, repeating = true })
hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd(qsIpcCall .. " brightness decrement || brightnessctl s 5%-"),
{ locked = true, repeating = true })
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+ -l 1.5"),
{ locked = true, repeating = true })
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%-"),
{ locked = true, repeating = true })
hl.bind("CTRL + SUPER + T", hl.dsp.global("quickshell:wallpaperSelectorToggle"),
{ description = "Shell: Change wallpaper" })
hl.bind("CTRL + SUPER + ALT + T", hl.dsp.global("quickshell:wallpaperSelectorRandom"),
{ description = "Shell: Random wallpaper" })
hl.bind("CTRL + SUPER + SHIFT + D", hl.dsp.global("quickshell:toggleLightDark"),
{ description = "Shell: Toggle light/dark mode" })
hl.bind("CTRL + SUPER + T", hl.dsp.exec_cmd(qsIsAlive .. " || " .. qsScripts .. "/colors/switchwall.sh"))
hl.bind("CTRL + SUPER + R", hl.dsp.exec_cmd("killall ydotool qs quickshell; qs -c $qsConfig &"),
{ description = "Shell: Restart widgets" })
hl.bind("CTRL + SUPER + P", hl.dsp.global("quickshell:panelFamilyCycle"), { description = "Shell: Cycle panel family" })
--##! Utilities
--# Screenshot, Record, OCR, Color picker, Clipboard history
hl.bind("SUPER + V", hl.dsp.exec_cmd(
qsIsAlive .. " || pkill fuzzel || cliphist list | fuzzel --match-mode fzf --dmenu | cliphist decode | wl-copy"),
{ description = "Utilities: Clipboard history >> clipboard" })
hl.bind("SUPER + Period", hl.dsp.exec_cmd(
qsIsAlive .. " || pkill fuzzel || " .. hyprScripts .. "/fuzzel-emoji.sh copy"),
{ description = "Utilities: Emoji >> clipboard" })
hl.bind("SUPER + SHIFT + S", hl.dsp.global("quickshell:regionScreenshot"), { description = "Utilities: Screen snip" })
hl.bind("SUPER + SHIFT + S",
hl.dsp.exec_cmd(qsIsAlive .. " || pidof slurp || hyprshot --freeze --clipboard-only --mode region --silent"))
hl.bind("SUPER + SHIFT + A", hl.dsp.global("quickshell:regionSearch"), { description = "Utilities: Google Lens" })
hl.bind("SUPER + SHIFT + A", hl.dsp.exec_cmd(qsIsAlive .. " || pidof slurp || " .. hyprScripts .. "/snip_to_search.sh"))
--# OCR
hl.bind("SUPER + SHIFT + X", hl.dsp.global("quickshell:regionOcr"),
{ description = "Utilities: Character recognition >> clipboard" })
hl.bind("SUPER + SHIFT + T", hl.dsp.global("quickshell:screenTranslate"),
{ description = "Utilities: Translate screen content" })
hl.bind("SUPER + SHIFT + X", hl.dsp.exec_cmd(
qsIsAlive ..
" || pidof slurp || grim -g \"$(slurp $SLURP_ARGS)\" \"/tmp/ocr_image.png\" && tesseract \"/tmp/ocr_image.png\" stdout -l $(tesseract --list-langs | awk 'NR>1{print $1}' | tr '\\\\n' '+' | sed 's/\\\\+$/\\\\n/') | wl-copy && rm \"/tmp/ocr_image.png\""
))
--# Color picker
hl.bind("SUPER + SHIFT + C", hl.dsp.exec_cmd("hyprpicker -a"),
{ description = "Utilities: Pick color #RRGGBB >> clipboard" })
--# Recording stuff
hl.bind("SUPER + SHIFT + R", hl.dsp.global("quickshell:regionRecord"),
{ locked = true, description = "Utilities: Record region (no sound)" })
hl.bind("SUPER + SHIFT + R", hl.dsp.exec_cmd(qsIsAlive .. " || " .. qsScripts .. "/videos/record.sh"), { locked = true })
hl.bind("SUPER + ALT + R", hl.dsp.global("quickshell:regionRecord"), { locked = true })
hl.bind("SUPER + ALT + R", hl.dsp.exec_cmd(qsIsAlive .. " || " .. qsScripts .. "/videos/record.sh"), { locked = true })
hl.bind("CTRL + ALT + R", hl.dsp.exec_cmd(qsScripts .. "/videos/record.sh --fullscreen"), { locked = true })
hl.bind("SUPER + SHIFT + ALT + R", hl.dsp.exec_cmd(qsScripts .. "/videos/record.sh --fullscreen --sound"),
{ locked = true, description = "Utilities: Record screen (with sound)" })
--# Fullscreen screenshot
local grimhyprctl = "grim -o \"$(hyprctl activeworkspace -j | jq -r '.monitor')\""
hl.bind("Print", hl.dsp.exec_cmd(grimhyprctl .. " - | wl-copy"),
{ locked = true, description = "Utilities: Screenshot >> clipboard" })
hl.bind("CTRL + Print", hl.dsp.exec_cmd(
"mkdir -p $(xdg-user-dir PICTURES)/Screenshots && " ..
grimhyprctl .. " $(xdg-user-dir PICTURES)/Screenshots/Screenshot_\"$(date '+%Y-%m-%d_%H.%M.%S')\".png"
), { locked = true, non_consuming = true, description = "Utilities: Screenshot >> clipboard & file" })
hl.bind("CTRL + Print", hl.dsp.exec_cmd(grimhyprctl .. " - | wl-copy"), { locked = true, non_consuming = true })
--# AI
hl.bind("SUPER + SHIFT + ALT + mouse:273", hl.dsp.exec_cmd(hyprScripts .. "/ai/primary-buffer-query.sh"),
{ description = "Utilities: Generate AI summary for selected text" })
-- (requires a running ollama model)
--##! Screen
--# Zoom
local function zoomfunction(value)
local zoomvalue = hl.get_config("cursor:zoom_factor")
if (zoomvalue + value) > 3.0 then
hl.config({ cursor = { zoom_factor = 3.0 } })
elseif (zoomvalue + value) < 1.0 then
hl.config({ cursor = { zoom_factor = 1.0 } })
else
hl.config({ cursor = { zoom_factor = zoomvalue + value } })
end
end
hl.bind("SUPER + Minus", function() zoomfunction(-0.3) end, { repeating = true, description = "Screen: Zoom out" })
hl.bind("SUPER + Equal", function() zoomfunction(0.3) end, { repeating = true, description = "Screen: Zoom in" })
--# Zoom with keypad
hl.bind("SUPER + code:82", function() zoomfunction(-0.3) end, { repeating = true })
hl.bind("SUPER + code:86", function() zoomfunction(0.3) end, { repeating = true })
--##! Media
local mediaNextCommand =
"playerctl next || playerctl position `bc <<< \"100 * $(playerctl metadata mpris:length) / 1000000 / 100\"`"
hl.bind("SUPER + SHIFT + N", hl.dsp.exec_cmd(mediaNextCommand), { locked = true, description = "Media: Next track" })
hl.bind("XF86AudioNext", hl.dsp.exec_cmd(mediaNextCommand), { locked = true })
hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl previous"), { locked = true })
hl.bind("SUPER + SHIFT + ALT + mouse:275", hl.dsp.exec_cmd("playerctl previous"))
hl.bind("SUPER + SHIFT + ALT + mouse:276", hl.dsp.exec_cmd(mediaNextCommand))
hl.bind("SUPER + SHIFT + B", hl.dsp.exec_cmd("playerctl previous"),
{ locked = true, description = "Media: Previous track" })
hl.bind("SUPER + SHIFT + P", hl.dsp.exec_cmd("playerctl play-pause"),
{ locked = true, description = "Media: Play/pause media" })
hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause"), { locked = true })
hl.bind("XF86AudioPause", hl.dsp.exec_cmd("playerctl play-pause"), { locked = true })
hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_SINK@ toggle"), { locked = true })
hl.bind("SUPER + SHIFT + M", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_SINK@ toggle"),
{ locked = true, description = "Media: Toggle mute" })
hl.bind("ALT + XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_SOURCE@ toggle"), { locked = true })
hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_SOURCE@ toggle"), { locked = true })
hl.bind("SUPER + ALT + M", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_SOURCE@ toggle"),
{ locked = true, description = "Media: Toggle mic" })
--#!
--##! Window
--# Focusing
hl.bind("SUPER + mouse:272", hl.dsp.window.drag(), { mouse = true, description = "Window: Move" })
hl.bind("SUPER + mouse:274", hl.dsp.window.drag(), { mouse = true })
hl.bind("SUPER + mouse:273", hl.dsp.window.resize(), { mouse = true, description = "Window: Resize" })
--#/# bind = SUPER + ←/↑/→/↓,, -- Focus in direction
for i = 1, 4 do
local arrowkey = { "Left", "Right", "Up", "Down" }
local focusdir = { "l", "r", "u", "d" }
hl.bind("SUPER + " .. arrowkey[i], hl.dsp.focus({ direction = focusdir[i] }),
{ description = "Window: Focus " .. arrowkey[i] })
end
for i = 1, 2 do
local arrowkey = { "BracketLeft", "BracketRight" }
local focusdir = { "l", "r" }
hl.bind("SUPER + " .. arrowkey[i], hl.dsp.focus({ direction = focusdir[i] }))
end
--#/# bind = SUPER + SHIFT, ←/↑/→/↓,, -- Move in direction
for i = 1, 4 do
local arrowkey = { "Left", "Right", "Up", "Down" }
local focusdir = { "l", "r", "u", "d" }
hl.bind("SUPER + SHIFT + " .. arrowkey[i], hl.dsp.window.move({ direction = focusdir[i] }),
{ description = "Window: Move " .. arrowkey[i] })
end
hl.bind("ALT + F4",
function()
hl.exec_cmd(
"notify-send \"Wrong close keybind\" \"Super+Q to close. Use Alt+F4 for Windows VMs\" -a Hyprland")
end,
{ non_consuming = true })
hl.bind("SUPER + Q", hl.dsp.window.close(), { description = "Window: Close" })
hl.bind("SUPER + SHIFT + ALT + Q", hl.dsp.exec_cmd("hyprctl kill"), { description = "Window: Forcefully zap a window" })
--# Window split ratio
--#/# binde = SUPER, ;/',, -- Adjust split ratio
hl.bind("SUPER + Semicolon", hl.dsp.layout("splitratio -0.1"), { repeating = true })
hl.bind("SUPER + Apostrophe", hl.dsp.layout("splitratio +0.1"), { repeating = true })
--# Positioning mode
hl.bind("SUPER + ALT + Space", hl.dsp.window.float({ action = "toggle" }), { description = "Window: Float/Tile" })
hl.bind("SUPER + D", hl.dsp.window.fullscreen({ mode = "maximized", action = "toggle" }),
{ description = "Window: Maximize" })
hl.bind("SUPER + F", hl.dsp.window.fullscreen({ mode = "fullscreen", action = "toggle" }),
{ description = "Window: Fullscreen" })
hl.bind("SUPER + ALT + F", hl.dsp.window.fullscreen_state({ internal = 0, client = 3, action = "toggle" }),
{ description = "Window: Fullscreen spoof" })
hl.bind("SUPER + P", hl.dsp.window.pin(), { description = "Window: Pin" })
--#/# bind = SUPER+ALT, Hash,, -- Send to workspace -- (1, 2, 3,...)
for i = 1, 10 do
hl.bind("SUPER + ALT + " .. (i % 10), function()
hl.dispatch(hl.dsp.window.move({ workspace = workspace_in_group(i), follow = false }))
end, { description = "Window: Send to workspace " .. i })
end
--# We also use raw keycodes because some keyboard layouts register number keys as different chars. The codes can be verified with `wev`
-- for i = 1, 10 do
-- local numberkey = { 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 }
-- hl.bind("SUPER + ALT + code:" .. numberkey[i], function()
-- hl.dispatch(hl.dsp.window.move({ workspace = workspace_in_group(i), follow = false }))
-- end)
-- end
--# keypad numbers
for i = 1, 10 do
local numpadkey = { 87, 88, 89, 83, 84, 85, 79, 80, 81, 90 }
hl.bind("SUPER + ALT + code:" .. numpadkey[i], function()
hl.dispatch(hl.dsp.window.move({ workspace = workspace_in_group(i), follow = false }))
end)
end
--# #/# bind = SUPER+SHIFT, Scroll ↑/↓,, -- Send to workspace left/right
for i = 1, 4 do
local key = { "SUPER + SHIFT + mouse_", "SUPER + ALT + mouse_" }
local keycombos = { key[1] .. "down", key[1] .. "up", key[2] .. "down", key[2] .. "up" }
local prefix = { "r-", "r+", "r-", "r+" }
hl.bind(keycombos[i], hl.dsp.window.move({ workspace = prefix[i] .. "1" }))
end
--#/# bind = SUPER+SHIFT, Page_↑/↓,, -- Send to workspace left/right
for i = 1, 2 do
local keydirs = { "Up", "Down" }
local prefix = { "r-", "r+" }
local descdir = { "left", "right" }
hl.bind("SUPER + SHIFT + Page_" .. keydirs[i], hl.dsp.window.move({ workspace = prefix[i] .. "1" }), {description = "Window: Send to workspace " .. descdir[i]})
end
for i = 1, 4 do
local key = { "SUPER + ALT + Page_", "CTRL + SUPER + SHIFT + " }
local keycombos = { key[1] .. "down", key[1] .. "up", key[2] .. "Right", key[2] .. "Left" }
local prefix = { "r+", "r-", "r+", "r-" }
hl.bind(keycombos[i], hl.dsp.window.move({ workspace = prefix[i] .. "1" })) -- # [hidden]
end
hl.bind("SUPER + ALT + S",
hl.dsp.window.move({ workspace = "special:special", follow = false }), { description = "Window: Send to scratchpad" })
hl.bind("CTRL + SUPER + S", hl.dsp.workspace.toggle_special("special"))
--##! Workspace
--# Switching
--#/# bind = SUPER, Hash,, -- Focus workspace -- (1, 2, 3,...)
for i = 1, 10 do
hl.bind("SUPER + " .. (i % 10), function()
hl.dispatch(hl.dsp.focus({ workspace = workspace_in_group(i) }))
end, { description = "Workspace: Focus " .. i })
end
--# We also use raw keycodes because some keyboard layouts register number keys as different chars. The codes can be verified with `wev`
for i = 1, 10 do
local numberkey = { 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 }
hl.bind("SUPER + code:" .. numberkey[i], function()
hl.dispatch(hl.dsp.focus({ workspace = workspace_in_group(i) }))
end)
end
--# keypad numbers
for i = 1, 10 do
local numpadkey = { 87, 88, 89, 83, 84, 85, 79, 80, 81, 90 }
hl.bind("SUPER + code:" .. numpadkey[i], function()
hl.dispatch(hl.dsp.focus({ workspace = workspace_in_group(i) }))
end)
end
--#/# bind = CTRL+SUPER, ←/→,, -- Focus left/right
--#/# bind = CTRL+SUPER+ALT, ←/→,, -- # [hidden] Focus busy left/right
for i = 1, 2 do
local keys = { "Left", "Right" }
local prefix = { "r-", "r+" }
local descdir = { "left", "right" }
hl.bind("CTRL + SUPER + " .. keys[i], hl.dsp.focus({ workspace = prefix[i] .. "1" }), {description = "Workspace: Focus " .. descdir[i]})
end
for i = 1, 2 do
local keys = { "Left", "Right" }
local prefix = { "m-", "m+" }
hl.bind("CTRL + SUPER + ALT + " .. keys[i], hl.dsp.focus({ workspace = prefix[i] .. "1" }))
end
--#/# bind = SUPER, Page_↑/↓,, -- Focus left/right
for i = 1, 4 do
local key = { "SUPER + Page_Down", "SUPER + Page_Up" }
local keycombos = { key[1], key[2], "CTRL + " .. key[1], "CTRL + " .. key[2] }
local prefix = { "r+", "r-", "r+", "r-" }
hl.bind(keycombos[i], hl.dsp.focus({ workspace = prefix[i] .. "1" }))
end
--#/# bind = SUPER, Scroll ↑/↓,, -- Focus left/right
for i = 1, 4 do
local key = { "SUPER + mouse_up", "SUPER + mouse_down" }
local keycombos = { key[1], key[2], "CTRL + " .. key[1], "CTRL + " .. key[2] }
local prefix = { "+", "-", "r+", "r-" }
hl.bind(keycombos[i], hl.dsp.focus({ workspace = prefix[i] .. "1" }))
end
--## Special
hl.bind("SUPER + S", hl.dsp.workspace.toggle_special("special"), { description = "Workspace: Toggle scratchpad" })
hl.bind("SUPER + mouse:275", hl.dsp.workspace.toggle_special("special"))
for i = 1, 4 do
local key = { "BracketLeft", "BracketRight", "Up", "Down" }
local prefix = { "-1", "+1", "r-5", "r+5" }
hl.bind("CTRL + SUPER + " .. key[i], hl.dsp.focus({ workspace = prefix[i] }))
end
--##! Virtual machines
hl.define_submap("virtual-machine", function()
hl.bind("SUPER + ALT + F1", function()
local currentsubmap = hl.get_current_submap()
if currentsubmap == "virtual-machine" then
hl.dispatch(hl.dsp.exec_cmd(
"notify-send 'Exited Virtual Machine submap' 'Keybinds re-enabled' -a 'Hyprland'"))
hl.dispatch(hl.dsp.submap("reset"))
elseif currentsubmap == "" then
hl.dispatch(hl.dsp.exec_cmd(
"notify-send 'Entered Virtual Machine submap' 'Keybinds disabled. hit SUPER+ALT+F1 to escape' -a 'Hyprland'"))
hl.dispatch(hl.dsp.submap("virtual-machine"))
end
end, { submap_universal = true })
end)
--#!
--# Testing
hl.bind("SUPER + ALT + F11",
hl.dsp.exec_cmd(
"bash -c 'RANDOM_IMAGE=$(find ~/Pictures -type f | shuf -n 1); ACTION=$(notify-send \"Test notification with body image\" \"This notification should contain your user account <b>image</b> and <a href=\\\"https://discord.com/app\\\">Discord</a> <b>icon</b>. Oh and here is a random image in your Pictures folder: <img src=\\\"$RANDOM_IMAGE\\\" alt=\\\"Testing image\\\"/>\" -a \"Hyprland\" -p -h \"string:image-path:/var/lib/AccountsService/icons/$USER\" -t 6000 -i \"discord\" -A \"openImage=Profile image\" -A \"action2=Open the random image\" -A \"action3=Useless button\"); [[ $ACTION == *openImage ]] && xdg-open \"/var/lib/AccountsService/icons/$USER\"; [[ $ACTION == *action2 ]] && xdg-open \"$RANDOM_IMAGE\"'")
) -- # [hidden]
hl.bind("SUPER + ALT + F12",
hl.dsp.exec_cmd(
"bash -c 'RANDOM_IMAGE=$(find ~/Pictures -type f | shuf -n 1); ACTION=$(notify-send \"Test notification\" \"This notification should contain a random image in your <b>Pictures</b> folder and <a href=\\\"https://discord.com/app\\\">Discord</a> <b>icon</b>.\n<i>Flick right to dismiss!</i>\" -a \"Discord (fake)\" -p -h \"string:image-path:$RANDOM_IMAGE\" -t 6000 -i \"discord\" -A \"openImage=Profile image\" -A \"action2=Useless button\"); [[ $ACTION == *openImage ]] && xdg-open \"/var/lib/AccountsService/icons/$USER\"'")
) -- # [hidden]
hl.bind("SUPER + ALT + Equal",
hl.dsp.exec_cmd("notify-send 'Urgent notification' 'Ah hell no' -u critical -a 'Hyprland keybind'")) -- # [hidden]
--##! Session
hl.bind("SUPER + L", hl.dsp.exec_cmd("loginctl lock-session"), { description = "Session: Lock" })
hl.bind("SUPER + SHIFT + L", hl.dsp.exec_cmd("systemctl suspend || loginctl suspend"),
{ locked = true, description = "Session: Sleep" }) -- Sleep
-- hl.bind("switch:on:Lid Switch", hl.dsp.exec_cmd("systemctl suspend || loginctl suspend"), {locked = true} ) -- # [hidden] Suspend when laptop lid is closed, uncomment if for whatever reason it's not the default behavior
hl.bind("CTRL + SHIFT + ALT + SUPER + Delete", hl.dsp.exec_cmd("systemctl poweroff || loginctl poweroff"),
{ description = "Session: Shut down" }) -- # [hidden] Power off
--##! Apps
hl.bind("SUPER + Return", hl.dsp.exec_cmd(terminal), { description = "App: Terminal" })
hl.bind("SUPER + T", hl.dsp.exec_cmd(terminal))
hl.bind("CTRL + ALT + T", hl.dsp.exec_cmd(terminal))
hl.bind("SUPER + E", hl.dsp.exec_cmd(fileManager), { description = "App: File manager" })
hl.bind("SUPER + W", hl.dsp.exec_cmd(browser), { description = "App: Browser" })
hl.bind("SUPER + C", hl.dsp.exec_cmd(codeEditor), { description = "App: Code editor" })
hl.bind("CTRL + SUPER + SHIFT + ALT + W", hl.dsp.exec_cmd(officeSoftware), { description = "App: Office software" })
hl.bind("SUPER + X", hl.dsp.exec_cmd(textEditor), { description = "App: Text editor" })
hl.bind("CTRL + SUPER + V", hl.dsp.exec_cmd(volumeMixer), { description = "App: Volume mixer" })
hl.bind("SUPER + I", hl.dsp.exec_cmd(settingsApp), { description = "App: Settings app" })
hl.bind("CTRL + SHIFT + Escape", hl.dsp.exec_cmd(taskManager), { description = "App: Task manager" })
--# Cursed stuff
--## Make window not amogus large
hl.bind("CTRL + SUPER + Backslash", hl.dsp.window.resize({ x = 640, y = 480, "exact" }))
+27
View File
@@ -0,0 +1,27 @@
HOME = os.getenv("HOME")
function is_file_exists(name)
local f = io.open(name, "r")
if f ~= nil then
io.close(f)
return true
else
return false
end
end
function create_if_not_exists(path)
if not is_file_exists(path) then
os.execute("mkdir -p \"$(dirname \"" .. path .. "\")\"")
os.execute("echo '-- This file will not be overwritten across dots-hyprland updates.\n-- The file name is for the sake of organization and does not matter\n-- See the corresponding files in ~/.config/hypr/hyprland for examples' > \"" .. path .. "\"")
return true
end
return false
end
function workspace_in_group(i)
local curr = hl.get_active_workspace().id
local newVal = math.floor((curr - 1) / workspaceGroupSize) * workspaceGroupSize + i
-- hl.notification.create({ text = "curr " .. curr .. " floor " .. math.floor(curr / 10) .. " new " .. newVal, duration = 5000 })
return newVal
end
-159
View File
@@ -1,159 +0,0 @@
# ######## Window rules ########
# Uncomment to apply global transparency to all windows:
# windowrulev2 = opacity 0.89 override 0.89 override, class:.*
# Disable blur for xwayland context menus
windowrulev2 = noblur,class:^()$,title:^()$
# windowrulev2 = noblur, xwayland:1
# Floating
windowrulev2 = center, title:^(Open File)(.*)$
windowrulev2 = float, title:^(Open File)(.*)$
windowrulev2 = center, title:^(Select a File)(.*)$
windowrulev2 = float, title:^(Select a File)(.*)$
windowrulev2 = center, title:^(Choose wallpaper)(.*)$
windowrulev2 = float, title:^(Choose wallpaper)(.*)$
windowrulev2 = size 60% 65%, title:^(Choose wallpaper)(.*)$
windowrulev2 = center, title:^(Open Folder)(.*)$
windowrulev2 = float, title:^(Open Folder)(.*)$
windowrulev2 = center, title:^(Save As)(.*)$
windowrulev2 = float, title:^(Save As)(.*)$
windowrulev2 = center, title:^(Library)(.*)$
windowrulev2 = float, title:^(Library)(.*)$
windowrulev2 = center, title:^(File Upload)(.*)$
windowrulev2 = float, title:^(File Upload)(.*)$
windowrulev2 = center, title:^(.*)(wants to save)$
windowrulev2 = float, title:^(.*)(wants to save)$
windowrulev2 = center, title:^(.*)(wants to open)$
windowrulev2 = float, title:^(.*)(wants to open)$
windowrulev2 = float, class:^(blueberry\.py)$
windowrulev2 = float, class:^(guifetch)$ # FlafyDev/guifetch
windowrulev2 = float, class:^(pavucontrol)$
windowrulev2 = size 45%, class:^(pavucontrol)$
windowrulev2 = center, class:^(pavucontrol)$
windowrulev2 = float, class:^(org.pulseaudio.pavucontrol)$
windowrulev2 = size 45%, class:^(org.pulseaudio.pavucontrol)$
windowrulev2 = center, class:^(org.pulseaudio.pavucontrol)$
windowrulev2 = float, class:^(nm-connection-editor)$
windowrulev2 = size 45%, class:^(nm-connection-editor)$
windowrulev2 = center, class:^(nm-connection-editor)$
windowrulev2 = float, class:.*plasmawindowed.*
windowrulev2 = float, class:kcm_.*
windowrulev2 = float, class:.*bluedevilwizard
windowrulev2 = float, title:.*Welcome
windowrulev2 = float, title:^(illogical-impulse Settings)$
windowrulev2 = float, title:.*Shell conflicts.*
windowrulev2 = float, class:org.freedesktop.impl.portal.desktop.kde
windowrulev2 = size 60% 65%, class:org.freedesktop.impl.portal.desktop.kde
windowrulev2 = float, class:^(Zotero)$
windowrulev2 = size 45%, class:^(Zotero)$
# Move
# kde-material-you-colors spawns a window when changing dark/light theme. This is to make sure it doesn't interfere at all.
windowrulev2 = float, class:^(plasma-changeicons)$
windowrulev2 = noinitialfocus, class:^(plasma-changeicons)$
windowrulev2 = move 999999 999999, class:^(plasma-changeicons)$
# stupid dolphin copy
windowrulev2 = move 40 80, title:^(Copying — Dolphin)$
# Tiling
windowrulev2 = tile, class:^dev\.warp\.Warp$
# Picture-in-Picture
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = keepaspectratio, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = move 73% 72%, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = size 25%, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = pin, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
# --- Tearing ---
windowrulev2 = immediate, title:.*\.exe
windowrulev2 = immediate, title:.*minecraft.*
windowrulev2 = immediate, class:^(steam_app).*
# Fix Jetbrain IDEs focus/rerendering problem
windowrulev2=noinitialfocus,class:^jetbrains-.*$,floating:1,title:^$|^\s$|^win\d+$
# No shadow for tiled windows (matches windows that are not floating).
windowrulev2 = noshadow, floating:0
# ######## Workspace rules ########
workspace = special:special, gapsout:30
# ######## Layer rules ########
layerrule = xray 1, .*
# layerrule = noanim, .*
layerrule = noanim, walker
layerrule = noanim, selection
layerrule = noanim, overview
layerrule = noanim, anyrun
layerrule = noanim, indicator.*
layerrule = noanim, osk
layerrule = noanim, hyprpicker
layerrule = noanim, noanim
layerrule = blur, gtk-layer-shell
layerrule = ignorezero, gtk-layer-shell
layerrule = blur, launcher
layerrule = ignorealpha 0.5, launcher
layerrule = blur, notifications
layerrule = ignorealpha 0.69, notifications
layerrule = blur, logout_dialog # wlogout
# ags
layerrule = animation slide left, sideleft.*
layerrule = animation slide right, sideright.*
layerrule = blur, session[0-9]*
layerrule = blur, bar[0-9]*
layerrule = ignorealpha 0.6, bar[0-9]*
layerrule = blur, barcorner.*
layerrule = ignorealpha 0.6, barcorner.*
layerrule = blur, dock[0-9]*
layerrule = ignorealpha 0.6, dock[0-9]*
layerrule = blur, indicator.*
layerrule = ignorealpha 0.6, indicator.*
layerrule = blur, overview[0-9]*
layerrule = ignorealpha 0.6, overview[0-9]*
layerrule = blur, cheatsheet[0-9]*
layerrule = ignorealpha 0.6, cheatsheet[0-9]*
layerrule = blur, sideright[0-9]*
layerrule = ignorealpha 0.6, sideright[0-9]*
layerrule = blur, sideleft[0-9]*
layerrule = ignorealpha 0.6, sideleft[0-9]*
layerrule = blur, indicator.*
layerrule = ignorealpha 0.6, indicator.*
layerrule = blur, osk[0-9]*
layerrule = ignorealpha 0.6, osk[0-9]*
# Quickshell
layerrule = blurpopups, quickshell:.*
layerrule = blur, quickshell:.*
layerrule = ignorealpha 0.79, quickshell:.*
layerrule = animation slide, quickshell:bar
layerrule = animation slide bottom, quickshell:cheatsheet
layerrule = animation slide bottom, quickshell:dock
layerrule = animation popin 120%, quickshell:screenCorners
layerrule = noanim, quickshell:lockWindowPusher
layerrule = animation fade, quickshell:notificationPopup
layerrule = noanim, quickshell:overlay
layerrule = noanim, quickshell:overview
layerrule = animation slide bottom, quickshell:osk
layerrule = noanim, quickshell:polkit
layerrule = xray 0, quickshell:popup # No weird color for bar tooltips (this in theory should suffice)
layerrule = ignorealpha 1, quickshell:popup # No weird color for bar tooltips (but somehow this is necessary)
layerrule = ignorealpha 1, quickshell:mediaControls # Same as above
layerrule = noanim, quickshell:regionSelector
layerrule = noanim, quickshell:screenshot
layerrule = blur, quickshell:session
layerrule = noanim, quickshell:session
layerrule = ignorealpha 0, quickshell:session
layerrule = animation slide right, quickshell:sidebarRight
layerrule = animation slide left, quickshell:sidebarLeft
layerrule = animation slide, quickshell:verticalBar
layerrule = animation slide top, quickshell:wallpaperSelector
# Launchers need to be FAST
layerrule = noanim, gtk4-layer-shell
+169
View File
@@ -0,0 +1,169 @@
-- ######## Window rules ########
-- Disable blur for xwayland context menus
hl.window_rule({match = {class = "^()$", title = "^()$" }, no_blur = true })
-- Disable blur for every window
hl.window_rule({match = {class = ".*" }, no_blur = true })
-- Floating
hl.window_rule({match = {title = "^(Open File)(.*)$" }, center = true})
hl.window_rule({match = {title = "^(Open File)(.*)$" }, float = true})
hl.window_rule({match = {title = "^(Select a File)(.*)$" }, center = true})
hl.window_rule({match = {title = "^(Select a File)(.*)$" }, float = true})
hl.window_rule({match = {title = "^(Choose wallpaper)(.*)$" }, center = true})
hl.window_rule({match = {title = "^(Choose wallpaper)(.*)$" }, float = true})
hl.window_rule({match = {title = "^(Choose wallpaper)(.*)$" }, size = {"(monitor_w*0.60)", "(monitor_h*0.65)"} })
hl.window_rule({match = {title = "^(Open Folder)(.*)$" }, center = true})
hl.window_rule({match = {title = "^(Open Folder)(.*)$" }, float = true})
hl.window_rule({match = {title = "^(Save As)(.*)$" }, center = true})
hl.window_rule({match = {title = "^(Save As)(.*)$" }, float = true})
hl.window_rule({match = {title = "^(Library)(.*)$" }, center = true})
hl.window_rule({match = {title = "^(Library)(.*)$" }, float = true})
hl.window_rule({match = {title = "^(File Upload)(.*)$" }, center = true})
hl.window_rule({match = {title = "^(File Upload)(.*)$" }, float = true})
hl.window_rule({match = {title = "^(.*)(wants to save)$" }, center = true})
hl.window_rule({match = {title = "^(.*)(wants to save)$" }, float = true})
hl.window_rule({match = {title = "^(.*)(wants to open)$" }, center = true})
hl.window_rule({match = {title = "^(.*)(wants to open)$" }, float = true})
hl.window_rule({match = {class = "^(blueberry\\.py)$" }, float = true})
hl.window_rule({match = {class = "^(guifetch)$" }, float = true}) -- FlafyDev/guifetch
hl.window_rule({match = {class = "^(pavucontrol)$" }, float = true})
hl.window_rule({match = {class = "^(pavucontrol)$" }, size = {"(monitor_w*0.45)", "(monitor_h*0.45)"} })
hl.window_rule({match = {class = "^(pavucontrol)$" }, center = true})
hl.window_rule({match = {class = "^(org.pulseaudio.pavucontrol)$" }, float = true})
hl.window_rule({match = {class = "^(org.pulseaudio.pavucontrol)$" }, size = {"(monitor_w*0.45)", "(monitor_h*0.45)"} })
hl.window_rule({match = {class = "^(org.pulseaudio.pavucontrol)$" }, center = true})
hl.window_rule({match = {class = "^(nm-connection-editor)$" }, float = true})
hl.window_rule({match = {class = "^(nm-connection-editor)$" }, size = {"(monitor_w*0.45)", "(monitor_h*0.45)"} })
hl.window_rule({match = {class = "^(nm-connection-editor)$" }, center = true})
hl.window_rule({match = {class = ".*plasmawindowed.*" }, float = true})
hl.window_rule({match = {class = "kcm_.*" }, float = true})
hl.window_rule({match = {class = ".*bluedevilwizard" }, float = true})
hl.window_rule({match = {title = ".*Welcome" }, float = true})
hl.window_rule({match = {title = "^(illogical-impulse Settings)$" }, float = true})
hl.window_rule({match = {title = ".*Shell conflicts.*" }, float = true})
hl.window_rule({match = {class = "org.freedesktop.impl.portal.desktop.kde" }, float = true})
hl.window_rule({match = {class = "org.freedesktop.impl.portal.desktop.kde" }, size = {"(monitor_w*0.60)", "(monitor_h*0.65)"} })
hl.window_rule({match = {class = "^(Zotero)$" }, float = true})
hl.window_rule({match = {class = "^(Zotero)$" }, size = {"(monitor_w*0.45)", "(monitor_h*0.45)"} })
-- Move
-- kde-material-you-colors spawns a window when changing dark/light theme. This is to make sure it doesn't interfere at all.
hl.window_rule({match = {class = "^(plasma-changeicons)$" }, float = true})
hl.window_rule({match = {class = "^(plasma-changeicons)$" }, no_initial_focus = true})
hl.window_rule({match = {class = "^(plasma-changeicons)$" }, move = {999999, 999999}})
-- stupid dolphin copy
hl.window_rule({match = {title = "^(Copying — Dolphin)$" }, move = {40, 80}})
-- Tiling
hl.window_rule({match = {class = "^dev\\.warp\\.Warp$" }, tile = true})
-- Picture-in-Picture
hl.window_rule({match = {title = "^([Pp]icture[-\\s]?[Ii]n[-\\s]?[Pp]icture)(.*)$" }, float = true})
hl.window_rule({match = {title = "^([Pp]icture[-\\s]?[Ii]n[-\\s]?[Pp]icture)(.*)$" }, keep_aspect_ratio = true})
hl.window_rule({match = {title = "^([Pp]icture[-\\s]?[Ii]n[-\\s]?[Pp]icture)(.*)$" }, move = {"(monitor_w*0.73)", "(monitor_h*0.72)"} })
hl.window_rule({match = {title = "^([Pp]icture[-\\s]?[Ii]n[-\\s]?[Pp]icture)(.*)$" }, size = {"(monitor_w*0.25)", "(monitor_h*0.25)"} })
hl.window_rule({match = {title = "^([Pp]icture[-\\s]?[Ii]n[-\\s]?[Pp]icture)(.*)$" }, float = true})
hl.window_rule({match = {title = "^([Pp]icture[-\\s]?[Ii]n[-\\s]?[Pp]icture)(.*)$" }, pin = true})
-- Screen sharing
hl.window_rule({match = {title = ".*is sharing (a window|your screen).*" }, float = true})
hl.window_rule({match = {title = ".*is sharing (a window|your screen).*" }, pin = true})
hl.window_rule({match = {title = ".*is sharing (a window|your screen).*" }, move = {"(monitor_w*.5-window_w*.5)", "(monitor_h-window_h-12)"} })
-- --- Tearing ---
hl.window_rule({match = {title = ".*\\.exe" }, immediate = true})
hl.window_rule({match = {title = ".*minecraft.*" }, immediate = true})
hl.window_rule({match = {class = "^(steam_app).*" }, immediate = true})
-- No shadow for tiled windows
hl.window_rule({match = {float = 0 }, no_shadow = true})
-- ######## Workspace rules ########
hl.workspace_rule({ workspace = "special:special", gaps_out = 30 })
-- ######## Layer rules ########
hl.layer_rule({ match = { namespace = ".*" }, xray = true})
hl.layer_rule({ match = { namespace = "walker" }, no_anim = true})
hl.layer_rule({ match = { namespace = "selection" }, no_anim = true})
hl.layer_rule({ match = { namespace = "overview" }, no_anim = true})
hl.layer_rule({ match = { namespace = "anyrun" }, no_anim = true})
hl.layer_rule({ match = { namespace = "indicator.*" }, no_anim = true})
hl.layer_rule({ match = { namespace = "osk" }, no_anim = true})
hl.layer_rule({ match = { namespace = "hyprpicker" }, no_anim = true})
hl.layer_rule({ match = { namespace = "noanim" }, no_anim = true})
hl.layer_rule({ match = { namespace = "gtk-layer-shell" }, blur = true})
hl.layer_rule({ match = { namespace = "gtk-layer-shell" }, ignore_alpha = 0})
hl.layer_rule({ match = { namespace = "launcher" }, blur = true})
hl.layer_rule({ match = { namespace = "launcher" }, ignore_alpha = 0.5})
hl.layer_rule({ match = { namespace = "notifications" }, blur = true})
hl.layer_rule({ match = { namespace = "notifications" }, ignore_alpha = 0.69})
hl.layer_rule({ match = { namespace = "logout_dialog" }, blur = true}) -- wlogout
-- ags
hl.layer_rule({ match = { namespace = "sideleft.*" }, animation = "slide left"})
hl.layer_rule({ match = { namespace = "sideright.*" }, animation = "slide right"})
hl.layer_rule({ match = { namespace = "session[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "bar[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "bar[0-9]*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "barcorner.*" }, blur = true})
hl.layer_rule({ match = { namespace = "barcorner.*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "dock[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "dock[0-9]*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "indicator.*" }, blur = true})
hl.layer_rule({ match = { namespace = "indicator.*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "overview[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "overview[0-9]*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "cheatsheet[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "cheatsheet[0-9]*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "sideright[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "sideright[0-9]*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "sideleft[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "sideleft[0-9]*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "indicator.*" }, blur = true})
hl.layer_rule({ match = { namespace = "indicator.*" }, ignore_alpha = 0.6})
hl.layer_rule({ match = { namespace = "osk[0-9]*" }, blur = true})
hl.layer_rule({ match = { namespace = "osk[0-9]*" }, ignore_alpha = 0.6})
-- Quickshell
-- Quickshell: illogical-impulse
hl.layer_rule({ match = { namespace = "quickshell:.*" }, blur_popups = true})
hl.layer_rule({ match = { namespace = "quickshell:.*" }, blur = true})
hl.layer_rule({ match = { namespace = "quickshell:.*" }, ignore_alpha = 0.79})
hl.layer_rule({ match = { namespace = "quickshell:bar" }, animation = "slide"})
hl.layer_rule({ match = { namespace = "quickshell:actionCenter" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:cheatsheet" }, animation = "slide bottom"})
hl.layer_rule({ match = { namespace = "quickshell:dock" }, animation = "slide bottom"})
hl.layer_rule({ match = { namespace = "quickshell:screenCorners" }, animation = "popin 120%"})
hl.layer_rule({ match = { namespace = "quickshell:lockWindowPusher" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:notificationPopup" }, animation = "fade"})
hl.layer_rule({ match = { namespace = "quickshell:overlay" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:overlay" }, ignore_alpha = 1})
hl.layer_rule({ match = { namespace = "quickshell:overview" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:osk" }, animation = "slide bottom"})
hl.layer_rule({ match = { namespace = "quickshell:polkit" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:popup" }, xray = false}) -- No weird color for bar tooltips (this in theory should suffice)
hl.layer_rule({ match = { namespace = "quickshell:popup" }, ignore_alpha = 1}) -- No weird color for bar tooltips (but somehow this is necessary)
hl.layer_rule({ match = { namespace = "quickshell:mediaControls" }, ignore_alpha = 1}) -- Same as above
hl.layer_rule({ match = { namespace = "quickshell:reloadPopup" }, animation = "slide"})
hl.layer_rule({ match = { namespace = "quickshell:regionSelector" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:screenshot" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:session" }, blur = true})
hl.layer_rule({ match = { namespace = "quickshell:session" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:session" }, ignore_alpha = 0})
hl.layer_rule({ match = { namespace = "quickshell:sidebarRight" }, animation = "slide right"})
hl.layer_rule({ match = { namespace = "quickshell:sidebarLeft" }, animation = "slide left"})
hl.layer_rule({ match = { namespace = "quickshell:verticalBar" }, animation = "slide"})
hl.layer_rule({ match = { namespace = "quickshell:osk" }, order = -1})
-- Quickshell: waffles
hl.layer_rule({ match = { namespace = "quickshell:wallpaperSelector" }, animation = "slide top"})
hl.layer_rule({ match = { namespace = "quickshell:wNotificationCenter" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:wOnScreenDisplay" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:wStartMenu" }, no_anim = true})
hl.layer_rule({ match = { namespace = "quickshell:wTaskView" }, ignore_alpha = 0})
hl.layer_rule({ match = { namespace = "quickshell:wTaskView" }, no_anim = true})
-- Launchers need to be FAST
hl.layer_rule({ match = { namespace = "gtk4-layer-shell" }, no_anim = true})
@@ -1885,4 +1885,69 @@ AH↗️HA↘️HA↗️HA↘️ pekora arrows hahaha rabbit
↵ enter key return
𝕏 twitter x logo
👉👈 etou ughhhhhhh shy
👉👌 put it in imagination perv
👉👌 put it in imagination perv
🫨 shaking face tremble shake shocked
🩷 pink heart love
🩵 light blue heart love cyan
🩶 grey heart gray love
🫷 leftwards pushing hand stop halt left
🫸 rightwards pushing hand stop halt right
🫎 moose animal antlers
🫏 donkey animal mule ass
🪽 wing bird feather fly
🐦‍⬛ black bird crow raven rook
🪿 goose bird honk
🪼 jellyfish sea ocean sting
🪻 hyacinth flower spring
🫚 ginger root spice food
🫛 pea pod peas vegetable food
🪭 folding hand fan fan cool
🪮 hair pick afro comb
🪇 maracas instrument music shake
🪈 flute instrument music
🪯 khanda sikh religion symbol
🛜 wireless wifi wi-fi internet network
🙂‍↔️ head shaking horizontally no shake
🙂‍↕️ head shaking vertically yes nod
🚶‍➡️ person walking facing right walk
🚶‍♀️‍➡️ woman walking facing right walk
🚶‍♂️‍➡️ man walking facing right walk
🧎‍➡️ person kneeling facing right kneel
🧎‍♀️‍➡️ woman kneeling facing right kneel
🧎‍♂️‍➡️ man kneeling facing right kneel
🧑‍🦯‍➡️ person with white cane facing right accessibility blind
👨‍🦯‍➡️ man with white cane facing right accessibility blind
👩‍🦯‍➡️ woman with white cane facing right accessibility blind
🧑‍🦼‍➡️ person in motorized wheelchair facing right accessibility
👨‍🦼‍➡️ man in motorized wheelchair facing right accessibility
👩‍🦼‍➡️ woman in motorized wheelchair facing right accessibility
🧑‍🦽‍➡️ person in manual wheelchair facing right accessibility
👨‍🦽‍➡️ man in manual wheelchair facing right accessibility
👩‍🦽‍➡️ woman in manual wheelchair facing right accessibility
🏃‍➡️ person running facing right run
🏃‍♀️‍➡️ woman running facing right run
🏃‍♂️‍➡️ man running facing right run
🧑‍🧑‍🧒 family adult adult child parents
🧑‍🧑‍🧒‍🧒 family adult adult child child parents
🧑‍🧒 family adult child parent
🧑‍🧒‍🧒 family adult child child parent
🐦‍🔥 phoenix fire bird rebirth
🍋‍🟩 lime fruit citrus green
🍄‍🟫 brown mushroom fungi
⛓️‍💥 broken chain snap shatter
🫩 face with bags under eyes tired sleepy exhausted
🫆 fingerprint id biometric
🪾 leafless tree barren dead winter
🫜 root vegetable food turnip radish
🪉 harp instrument music
🪏 shovel dig tool
🫟 splatter splash stain mess
🇨🇶 flag sark
🫪 distorted face anxiety shocked panic
🫯 fight cloud comic brawl dust
🫈 hairy creature sasquatch bigfoot
🧑‍🩰 ballet dancer dance ballerina
🫍 orca killer whale
🛘 landslide rockfall disaster
🪊 trombone instrument music
🪎 treasure chest gold loot pirate
@@ -1,18 +0,0 @@
#!/usr/bin/env bash
curr_workspace="$(hyprctl activeworkspace -j | jq -r ".id")"
dispatcher="$1"
shift ## The target is now in $1, not $2
if [[ -z "${dispatcher}" || "${dispatcher}" == "--help" || "${dispatcher}" == "-h" || -z "$1" ]]; then
echo "Usage: $0 <dispatcher> <target>"
exit 1
fi
if [[ "$1" == *"+"* || "$1" == *"-"* ]]; then ## Is this something like r+1 or -1?
hyprctl dispatch "${dispatcher}" "$1" ## $1 = workspace id since we shifted earlier.
elif [[ "$1" =~ ^[0-9]+$ ]]; then ## Is this just a number?
target_workspace=$((((curr_workspace - 1) / 10 ) * 10 + $1))
hyprctl dispatch "${dispatcher}" "${target_workspace}"
else
hyprctl dispatch "${dispatcher}" "$1" ## In case the target in a string, required for special workspaces.
exit 1
fi
@@ -1,54 +0,0 @@
#!/usr/bin/env bash
# Controls Hyprland's cursor zoom_factor, clamped between 1.0 and 3.0
# Get current zoom level
get_zoom() {
hyprctl getoption -j cursor:zoom_factor | jq '.float'
}
# Clamp a value between 1.0 and 3.0
clamp() {
local val="$1"
awk "BEGIN {
v = $val;
if (v < 1.0) v = 1.0;
if (v > 3.0) v = 3.0;
print v;
}"
}
# Set zoom level
set_zoom() {
local value="$1"
clamped=$(clamp "$value")
hyprctl keyword cursor:zoom_factor "$clamped"
}
case "$1" in
reset)
set_zoom 1.0
;;
increase)
if [[ -z "$2" ]]; then
echo "Usage: $0 increase STEP"
exit 1
fi
current=$(get_zoom)
new=$(awk "BEGIN { print $current + $2 }")
set_zoom "$new"
;;
decrease)
if [[ -z "$2" ]]; then
echo "Usage: $0 decrease STEP"
exit 1
fi
current=$(get_zoom)
new=$(awk "BEGIN { print $current - $2 }")
set_zoom "$new"
;;
*)
echo "Usage: $0 {reset|increase STEP|decrease STEP}"
exit 1
;;
esac
@@ -0,0 +1,29 @@
require("hyprland/lib")
hl.on("hyprland.start", function()
local homeDir = os.getenv("HOME")
if string.len(homeDir) == 0 then
return
end
local baseCustomDir = homeDir .. "/.config/hypr/custom"
local files = {
baseCustomDir .. "/env.lua",
baseCustomDir .. "/execs.lua",
baseCustomDir .. "/general.lua",
baseCustomDir .. "/keybinds.lua",
baseCustomDir .. "/rules.lua",
baseCustomDir .. "/variables.lua"
}
local createdFiles = 0
for _, file in ipairs(files) do
if not is_file_exists(file) then
create_if_not_exists(file)
createdFiles = createdFiles + 1
end
end
if createdFiles > 0 then
-- hl.exec_cmd("notify-send 'Hyprland config' 'Created " .. createdFiles .. " custom Hyprland config files in " .. baseCustomDir .. "' -a 'Hyprland'")
-- hl.exec_cmd("hyprctl reload")
end
end)
@@ -0,0 +1 @@
require("hyprland/services/create_custom_config")
@@ -0,0 +1,2 @@
-- DO NOT EDIT THIS FILE. IT IS MANAGED BY THE SHELL AND FOLLOWS STRICT RULES
-- In other words, I ain't writing a lua parser for this, so please be a good boi/girl/whatever
+19
View File
@@ -0,0 +1,19 @@
-- Default variables
-- Copy these to ~/.config/hypr/custom/variables.lua to make changes in a dotfiles-update-friendly manner
-- The folder within ~/.config/quickshell containing the config
hl.env("qsConfig", "ii")
-- Apps
-- PULL REQUESTS ADDING MORE WILL NOT BE ACCEPTED, CONFIG FOR YOURSELF
terminal = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'foot' 'kitty -1' 'alacritty' 'wezterm' 'konsole' 'kgx' 'uxterm' 'xterm'"
fileManager = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'dolphin' 'nautilus' 'nemo' 'thunar' 'kitty -1 fish -c yazi'"
browser = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'google-chrome-stable' 'zen-browser' 'firefox' 'brave' 'chromium' 'microsoft-edge-stable' 'opera' 'librewolf'"
codeEditor = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'windsurf' 'antigravity' 'code' 'codium' 'cursor' 'zed' 'zedit' 'zeditor' 'kate' 'gnome-text-editor' 'emacs' 'command -v nvim && kitty -1 nvim' 'command -v micro && kitty -1 micro'"
officeSoftware = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'wps' 'onlyoffice-desktopeditors' 'libreoffice'"
textEditor = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'kate' 'gnome-text-editor' 'emacs'"
volumeMixer = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'pavucontrol-qt' 'pavucontrol'"
settingsApp = "XDG_CURRENT_DESKTOP=gnome ~/.config/hypr/hyprland/scripts/launch_first_available.sh 'qs -p ~/.config/quickshell/$qsConfig/settings.qml' 'systemsettings' 'gnome-control-center' 'better-control'"
taskManager = "~/.config/hypr/hyprland/scripts/launch_first_available.sh 'gnome-system-monitor' 'plasma-systemmonitor --page-name Processes' 'command -v btop && kitty -1 fish -c btop'"
workspaceGroupSize = 10
+6 -6
View File
@@ -1,10 +1,10 @@
# This configuration is generated by matugen
# Changing these variables with matugen still enabled will overwrite them.
$text_color = rgba(FFDAD6FF)
$entry_background_color = rgba(41000311)
$entry_border_color = rgba(896E6C55)
$entry_color = rgba(FFDAD6FF)
$font_family = Rubik Light
$font_family_clock = Rubik Light
$text_color = rgba(d9e2ffFF)
$entry_background_color = rgba(00194411)
$entry_border_color = rgba(8f909955)
$entry_color = rgba(d9e2ffFF)
$font_family = Google Sans Flex Medium
$font_family_clock = Google Sans Flex Medium
$font_material_symbols = Material Symbols Rounded
-4
View File
@@ -1,4 +0,0 @@
# This file is to be overwritten by nwg-displays if you choose to use it.
# nwg-displays is a graphical tool for managing monitors.
# - Installation for Arch Linux: sudo pacman -S nwg-displays
# - Repo: https://github.com/nwg-piotr/nwg-displays
-4
View File
@@ -1,4 +0,0 @@
# This file is to be overwritten by nwg-displays if you choose to use it.
# nwg-displays is a graphical tool for managing monitors.
# - Installation for Arch Linux: sudo pacman -S nwg-displays
# - Repo: https://github.com/nwg-piotr/nwg-displays
+8 -5
View File
@@ -140,14 +140,17 @@ XftHintStyle=hintslight
TerminalApplication=kitty -1
XftSubPixel=none
fixed=JetBrainsMono Nerd Font,11,-1,5,400,0,0,0,0,0,0,0,0,0,0,1
font=Rubik,11,-1,5,400,0,0,0,0,0,0,0,0,0,0,1
menuFont=Rubik,10,-1,5,400,0,0,0,0,0,0,0,0,0,0,1
smallestReadableFont=Rubik,9,-1,5,400,0,0,0,0,0,0,0,0,0,0,1
toolBarFont=Rubik,10,-1,5,400,0,0,0,0,0,0,0,0,0,0,1
font=Google Sans Flex,11,-1,5,500,0,0,0,0,0,0,0,0,0,0,1,Medium
menuFont=Google Sans Flex,10,-1,5,500,0,0,0,0,0,0,0,0,0,0,1,Medium
smallestReadableFont=Google Sans Flex,9,-1,5,500,0,0,0,0,0,0,0,0,0,0,1,Medium
toolBarFont=Google Sans Flex,10,-1,5,500,0,0,0,0,0,0,0,0,0,0,1,Medium
[Icons]
Theme=breeze-dark
[KDE]
widgetStyle=Darkly
[KFileDialog Settings]
Allow Expansion=false
Automatically select filename extension=true
@@ -174,8 +177,8 @@ Theme=freedesktop
[WM]
activeBackground=54,52,58
activeBlend=252,252,252
activeFont=Rubik,10,-1,5,400,0,0,0,0,0,0,0,0,0,0,1
activeForeground=230,224,233
inactiveBackground=76,70,90
activeFont=Google Sans Flex,10,-1,5,500,0,0,0,0,0,0,0,0,0,0,1,Medium
inactiveBlend=161,169,177
inactiveForeground=232,222,248
+3
View File
@@ -1,3 +1,6 @@
# Theming
include ~/.local/state/quickshell/user/generated/terminal/kitty-theme.conf
# Font
font_family JetBrains Mono Nerd Font
font_size 11.0
+2 -2
View File
@@ -6,8 +6,8 @@ input_path = '~/.config/matugen/templates/colors.json'
output_path = '~/.local/state/quickshell/user/generated/colors.json'
[templates.hyprland]
input_path = '~/.config/matugen/templates/hyprland/colors.conf'
output_path = '~/.config/hypr/hyprland/colors.conf'
input_path = '~/.config/matugen/templates/hyprland/colors.lua'
output_path = '~/.config/hypr/hyprland/colors.lua'
[templates.hyprlock]
input_path = '~/.config/matugen/templates/hyprland/hyprlock-colors.conf'
+28 -12
View File
@@ -1,22 +1,38 @@
/*
* GTK Colors
* Generated with Matugen
* GTK colors generated with Matugen
* The source template is here: ~/.config/matugen/templates/gtk-3.0/gtk.css
*/
/* Accents */
@define-color accent_color {{colors.primary.default.hex}};
@define-color accent_fg_color {{colors.on_primary.default.hex}};
@define-color accent_bg_color {{colors.primary.default.hex}};
@define-color destructive_bg_color {{colors.error_container.default.hex}};
@define-color destructive_fg_color {{colors.on_error_container.default.hex}};
@define-color destructive_color {{colors.error.default.hex}};
@define-color success_bg_color #374B3E;
@define-color success_fg_color #D1E9D6;
@define-color success_color #B5CCBA;
/* Base surfaces */
@define-color window_bg_color {{colors.background.default.hex}};
@define-color window_fg_color {{colors.on_background.default.hex}};
@define-color headerbar_bg_color {{colors.surface_dim.default.hex}};
@define-color headerbar_bg_color {{colors.surface_container.default.hex}};
@define-color headerbar_backdrop_color {{colors.surface_container.default.hex}};
@define-color headerbar_fg_color {{colors.on_surface.default.hex}};
@define-color popover_bg_color {{colors.surface_dim.default.hex}};
@define-color popover_fg_color {{colors.on_surface.default.hex}};
@define-color view_bg_color {{colors.surface.default.hex}};
@define-color view_fg_color {{colors.on_surface.default.hex}};
@define-color card_bg_color {{colors.surface.default.hex}};
@define-color card_bg_color {{colors.surface_container.default.hex}};
@define-color card_fg_color {{colors.on_surface.default.hex}};
@define-color sidebar_bg_color @window_bg_color;
@define-color sidebar_fg_color @window_fg_color;
@define-color sidebar_border_color @window_bg_color;
@define-color sidebar_backdrop_color @window_bg_color;
@define-color sidebar_bg_color {{colors.surface_container.default.hex}};
@define-color sidebar_fg_color {{colors.on_surface.default.hex}};
@define-color secondary_sidebar_bg_color {{colors.surface_container_low.default.hex}};
@define-color secondary_sidebar_fg_color {{colors.on_surface.default.hex}};
@define-color sidebar_border_color @sidebar_bg_color;
@define-color sidebar_backdrop_color @sidebar_bg_color;
@define-color view_bg_color {{colors.surface_container_lowest.default.hex}};
@define-color view_fg_color {{colors.on_surface.default.hex}};
@define-color overview_bg_color {{colors.surface_container_lowest.default.hex}};
@define-color overview_fg_color {{colors.on_surface.default.hex}};
/* Popups */
@define-color popover_bg_color {{colors.surface_container_highest.default.hex}};
@define-color popover_fg_color {{colors.on_surface.default.hex}};
@define-color dialog_bg_color {{colors.surface_container_high.default.hex}};
@define-color dialog_fg_color {{colors.on_surface.default.hex}};
+519 -22
View File
@@ -1,44 +1,541 @@
/*
* GTK Colors
* Generated with Matugen
* GTK colors generated with Matugen
* The source template is here: ~/.config/matugen/templates/gtk-4.0/gtk.css
*/
@media (prefers-color-scheme: light) {
/* Accents */
@define-color accent_color {{colors.primary.light.hex}};
@define-color accent_hover_color rgba({{colors.primary.light.red}}, {{colors.primary.light.green}}, {{colors.primary.light.blue}}, 0.08);
@define-color accent_vibrant_hover_color rgba({{colors.primary.light.red}}, {{colors.primary.light.green}}, {{colors.primary.light.blue}}, 0.18);
@define-color accent_active_color rgba({{colors.primary.light.red}}, {{colors.primary.light.green}}, {{colors.primary.light.blue}}, 0.1);
@define-color accent_vibrant_active_color rgba({{colors.primary.light.red}}, {{colors.primary.light.green}}, {{colors.primary.light.blue}}, 0.26);
@define-color accent_fg_color {{colors.on_primary.light.hex}};
@define-color accent_bg_color {{colors.primary.light.hex}};
@define-color destructive_bg_color {{colors.error_container.light.hex}};
@define-color destructive_fg_color {{colors.on_error_container.light.hex}};
@define-color destructive_color {{colors.error.light.hex}};
@define-color success_bg_color #B5CCBA;
@define-color success_fg_color #213528;
@define-color success_color #374B3E;
/* Base surfaces */
@define-color window_bg_color {{colors.background.light.hex}};
@define-color window_fg_color {{colors.on_background.light.hex}};
@define-color headerbar_bg_color {{colors.surface_dim.light.hex}};
@define-color headerbar_bg_color {{colors.surface_container.light.hex}};
@define-color headerbar_backdrop_color {{colors.surface_container.light.hex}};
@define-color headerbar_fg_color {{colors.on_surface.light.hex}};
@define-color popover_bg_color {{colors.surface_dim.light.hex}};
@define-color popover_fg_color {{colors.on_surface.light.hex}};
@define-color view_bg_color {{colors.surface.light.hex}};
@define-color view_fg_color {{colors.on_surface.light.hex}};
@define-color card_bg_color {{colors.surface.light.hex}};
@define-color card_bg_color {{colors.surface_container.light.hex}};
@define-color card_fg_color {{colors.on_surface.light.hex}};
@define-color sidebar_bg_color @window_bg_color;
@define-color sidebar_fg_color @window_fg_color;
@define-color sidebar_border_color @window_bg_color;
@define-color sidebar_backdrop_color @window_bg_color;
@define-color sidebar_bg_color {{colors.background.light.hex}};
@define-color sidebar_fg_color {{colors.on_surface.light.hex}};
@define-color sidebar_row_active_bg_color {{colors.secondary_container.light.hex}};
@define-color sidebar_row_active_fg_color {{colors.on_secondary_container.light.hex}};
@define-color secondary_sidebar_bg_color {{colors.surface_container_low.light.hex}};
@define-color secondary_sidebar_backdrop_color {{colors.surface_container_low.light.hex}};
@define-color secondary_sidebar_fg_color {{colors.on_surface_variant.light.hex}};
@define-color sidebar_border_color @sidebar_bg_color;
@define-color sidebar_backdrop_color @sidebar_bg_color;
@define-color view_bg_color {{colors.surface_container_lowest.light.hex}};
@define-color view_fg_color {{colors.on_surface.light.hex}};
@define-color overview_bg_color {{colors.surface_container_lowest.light.hex}};
@define-color overview_fg_color {{colors.on_surface.light.hex}};
/* Popups */
@define-color popover_bg_color {{colors.surface_container_highest.light.hex}};
@define-color popover_fg_color {{colors.on_surface.light.hex}};
@define-color popover_fg_hover_color rgba({{colors.on_surface.light.red}}, {{colors.on_surface.light.green}}, {{colors.on_surface.light.blue}}, 0.08);
@define-color dialog_bg_color {{colors.surface_container_high.light.hex}};
@define-color dialog_fg_color {{colors.on_surface.light.hex}};
@define-color thumbnail_bg_color {{colors.surface_container_high.light.hex}};
@define-color thumbnail_fg_color {{colors.on_surface.light.hex}};
/* Material */
@define-color inverse_on_surface {{colors.inverse_on_surface.light.hex}};
@define-color inverse_primary {{colors.inverse_primary.light.hex}};
@define-color inverse_surface {{colors.inverse_surface.light.hex}};
@define-color surface_container_highest {{colors.surface_container_highest.light.hex}};
@define-color surface_container_high {{colors.surface_container_high.light.hex}};
@define-color on_surface_variant {{colors.on_surface_variant.light.hex}};
@define-color surface_variant {{colors.surface_variant.light.hex}};
@define-color outline {{colors.outline.light.hex}};
/* Material state layers */
@define-color inverse_on_surface_hover rgba({{colors.inverse_on_surface.light.red}}, {{colors.inverse_on_surface.light.green}}, {{colors.inverse_on_surface.light.blue}}, 0.08);
@define-color inverse_on_surface_active rgba({{colors.inverse_on_surface.light.red}}, {{colors.inverse_on_surface.light.green}}, {{colors.inverse_on_surface.light.blue}}, 0.18);
@define-color inverse_primary_hover rgba({{colors.inverse_primary.light.red}}, {{colors.inverse_primary.light.green}}, {{colors.inverse_primary.light.blue}}, 0.08);
@define-color inverse_primary_active rgba({{colors.inverse_primary.light.red}}, {{colors.inverse_primary.light.green}}, {{colors.inverse_primary.light.blue}}, 0.18);
}
@media (prefers-color-scheme: dark) {
/* Accents */
@define-color accent_color {{colors.primary.dark.hex}};
@define-color accent_hover_color rgba({{colors.primary.dark.red}}, {{colors.primary.dark.green}}, {{colors.primary.dark.blue}}, 0.08);
@define-color accent_vibrant_hover_color rgba({{colors.primary.dark.red}}, {{colors.primary.dark.green}}, {{colors.primary.dark.blue}}, 0.18);
@define-color accent_active_color rgba({{colors.primary.dark.red}}, {{colors.primary.dark.green}}, {{colors.primary.dark.blue}}, 0.1);
@define-color accent_vibrant_active_color rgba({{colors.primary.dark.red}}, {{colors.primary.dark.green}}, {{colors.primary.dark.blue}}, 0.2);
@define-color accent_fg_color {{colors.on_primary.dark.hex}};
@define-color accent_bg_color {{colors.primary.dark.hex}};
@define-color destructive_bg_color {{colors.error_container.dark.hex}};
@define-color destructive_fg_color {{colors.on_error_container.dark.hex}};
@define-color destructive_color {{colors.error.dark.hex}};
@define-color success_bg_color #374B3E;
@define-color success_fg_color #D1E9D6;
@define-color success_color #B5CCBA;
/* Base surfaces */
@define-color window_bg_color {{colors.background.dark.hex}};
@define-color window_fg_color {{colors.on_background.dark.hex}};
@define-color headerbar_bg_color {{colors.surface_dim.dark.hex}};
@define-color headerbar_bg_color {{colors.surface_container.dark.hex}};
@define-color headerbar_backdrop_color {{colors.surface_container.dark.hex}};
@define-color headerbar_fg_color {{colors.on_surface.dark.hex}};
@define-color popover_bg_color {{colors.surface_dim.dark.hex}};
@define-color popover_fg_color {{colors.on_surface.dark.hex}};
@define-color view_bg_color {{colors.surface.dark.hex}};
@define-color view_fg_color {{colors.on_surface.dark.hex}};
@define-color card_bg_color {{colors.surface.dark.hex}};
@define-color card_bg_color {{colors.surface_container.dark.hex}};
@define-color card_fg_color {{colors.on_surface.dark.hex}};
@define-color sidebar_bg_color @window_bg_color;
@define-color sidebar_fg_color @window_fg_color;
@define-color sidebar_border_color @window_bg_color;
@define-color sidebar_backdrop_color @window_bg_color;
@define-color sidebar_bg_color {{colors.background.dark.hex}};
@define-color sidebar_fg_color {{colors.on_surface.dark.hex}};
@define-color sidebar_row_active_bg_color {{colors.secondary_container.dark.hex}};
@define-color sidebar_row_active_fg_color {{colors.on_secondary_container.dark.hex}};
@define-color secondary_sidebar_bg_color {{colors.surface_container_low.dark.hex}};
@define-color secondary_sidebar_backdrop_color {{colors.surface_container_low.dark.hex}};
@define-color secondary_sidebar_fg_color {{colors.on_surface_variant.dark.hex}};
@define-color sidebar_border_color @sidebar_bg_color;
@define-color sidebar_backdrop_color @sidebar_bg_color;
@define-color view_bg_color {{colors.surface_container_lowest.dark.hex}};
@define-color view_fg_color {{colors.on_surface.dark.hex}};
@define-color overview_bg_color {{colors.surface_container_lowest.dark.hex}};
@define-color overview_fg_color {{colors.on_surface.dark.hex}};
/* Popups */
@define-color popover_bg_color {{colors.surface_container_highest.dark.hex}};
@define-color popover_fg_color {{colors.on_surface.dark.hex}};
@define-color popover_fg_hover_color rgba({{colors.on_surface.dark.red}}, {{colors.on_surface.dark.green}}, {{colors.on_surface.dark.blue}}, 0.08);
@define-color dialog_bg_color {{colors.surface_container_high.dark.hex}};
@define-color dialog_fg_color {{colors.on_surface.dark.hex}};
@define-color thumbnail_bg_color {{colors.surface_container_high.dark.hex}};
@define-color thumbnail_fg_color {{colors.on_surface.dark.hex}};
/* Material */
@define-color inverse_on_surface {{colors.inverse_on_surface.dark.hex}};
@define-color inverse_primary {{colors.inverse_primary.dark.hex}};
@define-color inverse_surface {{colors.inverse_surface.dark.hex}};
@define-color surface_container_highest {{colors.surface_container_highest.dark.hex}};
@define-color surface_container_high {{colors.surface_container_high.dark.hex}};
@define-color on_surface_variant {{colors.on_surface_variant.dark.hex}};
@define-color surface_variant {{colors.surface_variant.dark.hex}};
@define-color outline {{colors.outline.dark.hex}};
/* Material state layers */
@define-color inverse_on_surface_hover rgba({{colors.inverse_on_surface.dark.red}}, {{colors.inverse_on_surface.dark.green}}, {{colors.inverse_on_surface.dark.blue}}, 0.08);
@define-color inverse_on_surface_active rgba({{colors.inverse_on_surface.dark.red}}, {{colors.inverse_on_surface.dark.green}}, {{colors.inverse_on_surface.dark.blue}}, 0.18);
@define-color inverse_primary_hover rgba({{colors.inverse_primary.dark.red}}, {{colors.inverse_primary.dark.green}}, {{colors.inverse_primary.dark.blue}}, 0.08);
@define-color inverse_primary_active rgba({{colors.inverse_primary.dark.red}}, {{colors.inverse_primary.dark.green}}, {{colors.inverse_primary.dark.blue}}, 0.18);
}
* {
caret-color: @accent_color;
}
window {
background: @window_bg_color;
}
.text-button {
border-radius: 999px;
}
.text-button,
.text-button * {
font-weight: 500;
}
splitbutton {
background-color: transparent;
}
splitbutton button {
border-top-left-radius: 999px;
border-bottom-left-radius: 999px;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
}
splitbutton separator {
color: transparent;
}
splitbutton menubutton {
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
border-top-right-radius: 999px;
border-bottom-right-radius: 999px;
}
.popup-menu-item {
background-color: transparent;
border-radius: 999px;
}
#NautilusPathBar #NautilusPathButton *,
.nautilus-pathbar .nautilus-path-button * {
color: @sidebar_row_active_fg_color;
font-weight: 400;
}
#NautilusPathBar #NautilusPathButton,
.nautilus-pathbar .nautilus-path-button {
background: @accent_active_color;
border-radius: 4px;
margin: 0;
margin-right: 2px;
}
#NautilusPathBar #NautilusPathButton:hover,
.nautilus-pathbar .nautilus-path-button:hover {
background: @accent_vibrant_hover_color;
}
#NautilusPathBar #NautilusPathButton:active,
.nautilus-pathbar .nautilus-path-button:active {
background: @accent_vibrant_active_color;
}
#NautilusPathButton,
.nautilus-pathbar {
background: transparent;
}
#NautilusPathBar box box:first-child #NautilusPathButton,
.nautilus-pathbar box box:first-child .nautilus-path-button {
border-radius: 24px 4px 4px 24px;
}
#NautilusPathBar box box:last-child #NautilusPathButton,
.nautilus-pathbar box box:last-child .nautilus-path-button {
border-radius: 4px 24px 24px 4px;
}
#NautilusPathBar #NautilusPathButton.current-dir.current-dir,
.nautilus-pathbar .nautilus-path-button.current-dir.current-dir {
border-radius: 999px;
}
#NautilusPathBar .dim-label,
.nautilus-pathbar .dim-label {
font-size: 0;
}
#NautilusPathBar button .dim-label,
.nautilus-pathbar button .dim-label {
font-size: 14px;
opacity: 100%;
}
#NautilusPathBar button,
.nautilus-pathbar button {
border-radius: 8px;
}
#NautilusPathBar button:checked,
.nautilus-pathbar button:checked {
background: @accent_vibrant_hover_color;
}
headerbar button {
border-radius: 999px;
}
headerbar >windowhandle box stack > box:nth-child(2) {
background: @accent_active_color;
border-radius: 8px;
}
.nautilus-list-view,
.nautilus-grid-view {
background: @secondary_sidebar_bg_color;
border-radius: 16px;
}
.navigation-sidebar row * {
color: @sidebar_fg_color;
font-weight: 500;
font-size: 13px;
}
.navigation-sidebar row {
border-radius: 999px;
padding: 2px;
}
.navigation-sidebar row:hover {
background: @accent_hover_color;
}
.navigation-sidebar row:active {
background: @accent_active_color;
}
.navigation-sidebar row:selected {
background: @sidebar_row_active_bg_color;
}
.navigation-sidebar row:selected * {
color: @sidebar_row_active_fg_color;
}
banner widget {
border-radius: 16px 0 0 16px;
margin-bottom: 8px;
background-color: @secondary_sidebar_bg_color;
}
.boxed-list {
box-shadow: none;
background-color: @window_bg_color;
}
.boxed-list row {
background: @card_bg_color;
border-radius: 4px;
border: none;
margin-bottom: 2px;
}
.boxed-list row.activatable:hover {
background-color: @thumbnail_bg_color;
}
.boxed-list row.activatable:active {
background-color: @popover_bg_color;
}
.horizontal>listview>row {
background-color: transparent;
}
.boxed-list row:insensitive {
background-color: @card_bg_color;
}
.text-button.toggle {
border-radius: 4px;
background-color: @surface_container_highest;
margin-left: 2px;
}
.text-button.toggle:hover {
background-color: @surface_variant;
}
.text-button.toggle:active {
background-color: @surface_container_highest;
}
.text-button.toggle * {
color: @on_surface_variant;
font-weight: 400;
}
.boxed-list row:first-child {
border-radius: 16px 16px 4px 4px;
}
.boxed-list row:last-child {
border-radius: 4px 4px 16px 16px;
margin-bottom: 0;
}
.text-button.toggle:first-child {
border-radius: 16px 4px 4px 16px;
}
.text-button.toggle:last-child {
border-radius: 4px 16px 16px 4px;
}
.boxed-list row:first-child:last-child,
.text-button.toggle:first-child:last-child {
border-radius: 16px;
}
.text-button.toggle:checked {
background-color: @accent_bg_color;
border-radius: 999px;
}
.text-button.toggle:checked * {
color: @accent_fg_color;
font-weight: 500;
}
button.back {
border-radius: 999px;
background-color: @accent_hover_color;
padding-left: 4px;
padding-right: 6px;
}
button.back * {
font-size: 12px;
}
button.back:hover {
background-color: @accent_hover_color;
}
button.back:active {
background-color: @accent_active_color;
}
/* switch */
switch {
background: @secondary_sidebar_bg_color;
border: @outline 2px solid;
padding: 0;
}
switch:checked {
background: @accent_color;
border-color: @accent_color;
}
switch slider {
background: @outline;
margin: 3px;
min-width: 0;
min-height: 0;
}
switch:checked slider {
background: @accent_fg_color;
outline: transparent 2px solid;
margin: 0px;
}
/* toast */
toast {
border-radius: 999px;
padding: 6px 6px 6px 10px;
background-color: @inverse_surface;
color: @inverse_on_surface;
}
toast .heading {
font-weight: 400;
}
toast button {
background-color: transparent;
color: @inverse_primary;
}
toast button:hover {
background-color: @inverse_primary_hover;
}
toast button:active {
background-color: @inverse_primary_active;
}
toast button:last-child {
color: @inverse_on_surface;
}
toast button:last-child:hover {
background-color: @inverse_on_surface_hover;
}
toast button:last-child:active {
background-color: @inverse_on_surface_active;
}
.collapse-spacing.vertical {
padding-bottom: 0;
}
tabbox {
padding: 0;
}
tabbox tabboxchild tab,
tabbox tabboxchild {
background: transparent;
padding: 0 8px 3px;
border-radius: 999px;
}
tabbox tabboxchild tab {
padding: 3px 8px;
}
tab:hover {
background: @accent_hover_color;
}
tab:active,
tab:selected {
background: @accent_active_color;
}
tab .tab-title {
padding: 0 12px;
color: @secondary_sidebar_fg_color;
}
tab .tab-title label {
border: none;
font-weight: 500;
}
tab:selected .tab-title label {
padding: 6px 0;
color: @accent_color;
}
/* popup menu */
popover listview.view row,
popover listview.view row:first-child,
popover listview.view row:last-child {
background: transparent;
border-radius: 8px;
}
popover contents,
popover arrow {
background: @secondary_sidebar_bg_color;
}
popover listview.view row:hover {
background: @popover_fg_hover_color;
}
popover listview.view row:active {
background: @popover_fg_active_color;
}
modelbutton {
padding: 2px 10px;
}
modelbutton * {
color: @popover_fg_color;
}
modelbutton:hover {
background-color: @popover_fg_hover_color;
}
tooltip {
background-color: @inverse_surface;
color: @inverse_on_surface;
font-size: 11px;
padding: 5px 9px;
}
/* search */
.entry-completion.entry-completion.entry-completion contents {
padding: 0;
}
.image-button.flat arrow {
background: transparent;
}
@@ -1,32 +0,0 @@
general {
col.active_border = rgba({{colors.outline.default.hex_stripped}}AA)
col.inactive_border = rgba({{colors.outline_variant.default.hex_stripped}}AA)
}
misc {
background_color = rgba({{colors.surface.dark.hex_stripped}}FF)
}
plugin {
hyprbars {
# Honestly idk if it works like css, but well, why not
bar_text_font = Rubik, Geist, AR One Sans, Reddit Sans, Inter, Roboto, Ubuntu, Noto Sans, sans-serif
bar_height = 30
bar_padding = 10
bar_button_padding = 5
bar_precedence_over_border = true
bar_part_of_window = true
bar_color = rgba({{colors.background.default.hex_stripped}}FF)
col.text = rgba({{colors.on_background.default.hex_stripped}}FF)
# example buttons (R -> L)
# hyprbars-button = color, size, on-click
hyprbars-button = rgb({{colors.on_background.default.hex_stripped}}), 13, 󰖭, hyprctl dispatch killactive
hyprbars-button = rgb({{colors.on_background.default.hex_stripped}}), 13, 󰖯, hyprctl dispatch fullscreen 1
hyprbars-button = rgb({{colors.on_background.default.hex_stripped}}), 13, 󰖰, hyprctl dispatch movetoworkspacesilent special
}
}
windowrulev2 = bordercolor rgba({{colors.primary.default.hex_stripped}}AA) rgba({{colors.primary.default.hex_stripped}}77),pinned:1
@@ -0,0 +1,16 @@
hl.config({
general = {
col = {
active_border = "rgba({{colors.outline_variant.default.hex_stripped}}77)",
inactive_border = "rgba({{colors.surface_container_low.default.hex_stripped}}33)",
},
},
misc = {
background_color = "rgba({{colors.surface.dark.hex_stripped}}FF)",
},
})
hl.window_rule({
match = { pin = 1 },
border_color = "rgba({{colors.primary.default.hex_stripped}}AA) rgba({{colors.primary.default.hex_stripped}}77)",
})
@@ -5,8 +5,8 @@ $text_color = rgba({{colors.primary_fixed.default.hex_stripped}}FF)
$entry_background_color = rgba({{colors.on_primary_fixed.default.hex_stripped}}11)
$entry_border_color = rgba({{colors.outline.default.hex_stripped}}55)
$entry_color = rgba({{colors.primary_fixed.default.hex_stripped}}FF)
$font_family = Rubik
$font_family_clock = Space Grotesk DemiBold
$font_family = Google Sans Flex Medium
$font_family_clock = Google Sans Flex Medium
$font_material_symbols = Material Symbols Rounded
$background_image = {{image}}
-32
View File
@@ -1,32 +0,0 @@
[Appearance]
color_scheme_path=/usr/share/qt5ct/colors/darker.conf
custom_palette=true
icon_theme=OneUI-dark
standard_dialogs=default
style=kvantum-dark
[Fonts]
fixed="JetBrainsMono Nerd Font,11,-1,5,50,0,0,0,0,0,Regular"
general="Rubik,11,-1,5,50,0,0,0,0,0"
[Interface]
activate_item_on_single_click=1
buttonbox_layout=0
cursor_flash_time=1000
dialog_buttons_have_icons=1
double_click_interval=400
gui_effects=General
keyboard_scheme=2
menus_have_icons=true
show_shortcuts_in_context_menus=true
stylesheets=@Invalid()
toolbutton_style=4
underline_shortcut=1
wheel_scroll_lines=3
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x4\x98\0\0\x3\x99\0\0\0\0\0\0\0\0\0\0\x2\xde\0\0\x3\x1\0\0\0\0\x2\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\x4\x98\0\0\x3\x99)
[Troubleshooting]
force_raster_widgets=1
ignored_applications=@Invalid()
-32
View File
@@ -1,32 +0,0 @@
[Appearance]
color_scheme_path=~/.config/qt6ct/style-colors.conf
custom_palette=true
icon_theme=OneUI
standard_dialogs=default
style=kvantum
[Fonts]
fixed="JetBrainsMono Nerd Font,11,-1,5,400,0,0,0,0,0,0,0,0,0,0,1,Regular"
general="Rubik,11,-1,5,400,0,0,0,0,0,0,0,0,0,0,1,Regular"
[Interface]
activate_item_on_single_click=1
buttonbox_layout=0
cursor_flash_time=1000
dialog_buttons_have_icons=1
double_click_interval=400
gui_effects=@Invalid()
keyboard_scheme=2
menus_have_icons=true
show_shortcuts_in_context_menus=true
stylesheets=@Invalid()
toolbutton_style=4
underline_shortcut=1
wheel_scroll_lines=3
[SettingsWindow]
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\as\0\0\x4\x3\0\0\0\0\0\0\0\0\0\0\as\0\0\x4\x3\0\0\0\0\x2\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\as\0\0\x4\x3)
[Troubleshooting]
force_raster_widgets=1
ignored_applications=@Invalid()
+2 -20
View File
@@ -20,9 +20,11 @@ Singleton {
property bool overlayOpen: false
property bool overviewOpen: false
property bool regionSelectorOpen: false
property bool searchOpen: false
property bool screenLocked: false
property bool screenLockContainsCharacters: false
property bool screenUnlockFailed: false
property bool screenTranslatorOpen: false
property bool sessionOpen: false
property bool superDown: false
property bool superReleaseMightTrigger: true
@@ -36,14 +38,6 @@ Singleton {
}
}
property real screenZoom: 1
onScreenZoomChanged: {
Quickshell.execDetached(["hyprctl", "keyword", "cursor:zoom_factor", root.screenZoom.toString()]);
}
Behavior on screenZoom {
animation: Appearance.animation.elementMoveFast.numberAnimation.createObject(this)
}
GlobalShortcut {
name: "workspaceNumber"
description: "Hold to show workspace numbers, release to show icons"
@@ -55,16 +49,4 @@ Singleton {
root.superDown = false
}
}
IpcHandler {
target: "zoom"
function zoomIn() {
screenZoom = Math.min(screenZoom + 0.4, 3.0)
}
function zoomOut() {
screenZoom = Math.max(screenZoom - 0.4, 1)
}
}
}
+5 -2
View File
@@ -1,7 +1,8 @@
import QtQuick
import QtQuick.Layouts
import Quickshell
import Qt5Compat.GraphicalEffects
import Quickshell
import Quickshell.Wayland
Scope {
id: root
@@ -41,6 +42,8 @@ Scope {
implicitWidth: rect.width + shadow.radius * 2
implicitHeight: rect.height + shadow.radius * 2
WlrLayershell.namespace: "quickshell:reloadPopup"
// color blending is a bit odd as detailed in the type reference.
color: "transparent"
@@ -78,7 +81,7 @@ Scope {
Text {
renderType: Text.NativeRendering
font.family: "Rubik"
font.family: "Google Sans Flex"
font.pointSize: 14
text: root.failed ? "Quickshell: Reload failed" : "Quickshell reloaded"
color: failed ? "#ff93000A" : "#ff0C1F13"
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="24"
height="24"
fill="none"
viewBox="0 0 24 24"
version="1.1"
id="svg1"
sodipodi:docname=".svg"
inkscape:version="1.4.2 (ebf0e940d0, 2025-05-08)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1" />
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="7.75"
inkscape:cx="12"
inkscape:cy="12"
inkscape:window-width="1173"
inkscape:window-height="790"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg1" />
</svg>

After

Width:  |  Height:  |  Size: 1007 B

@@ -1,5 +1,5 @@
The "search" and "task view" icons are from here, with modifications
The "start-here", "search" and "task view" icons are from here, with modifications
https://www.figma.com/community/file/1123040825921884189/windows-11
[Windows 11 by Joshua Oghenekaro Okwe - Figma](https://www.figma.com/community/file/1123040825921884189/windows-11)
License: CC BY 4.0
License: [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/deed.en)
@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M11.883 3.007 12 3a1 1 0 0 1 .993.883L13 4v7h7a1 1 0 0 1 .993.883L21 12a1 1 0 0 1-.883.993L20 13h-7v7a1 1 0 0 1-.883.993L12 21a1 1 0 0 1-.993-.883L11 20v-7H4a1 1 0 0 1-.993-.883L3 12a1 1 0 0 1 .883-.993L4 11h7V4a1 1 0 0 1 .883-.993L12 3l-.117.007Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 375 B

@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M11.75 3a.75.75 0 0 1 .743.648l.007.102.001 7.25h7.253a.75.75 0 0 1 .102 1.493l-.102.007h-7.253l.002 7.25a.75.75 0 0 1-1.493.101l-.007-.102-.002-7.249H3.752a.75.75 0 0 1-.102-1.493L3.752 11h7.25L11 3.75a.75.75 0 0 1 .75-.75Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 352 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M9.04173 19.003H14.9583C14.7196 20.4211 13.486 21.5015 12 21.5015C10.514 21.5015 9.28037 20.4211 9.04173 19.003ZM12 2.00391C16.1421 2.00391 19.5 5.36177 19.5 9.50391V13.5024L20.9183 16.6625C20.9732 16.7848 21.0016 16.9174 21.0016 17.0515C21.0016 17.5762 20.5763 18.0015 20.0516 18.0015H3.95219C3.8184 18.0015 3.68613 17.9733 3.56402 17.9186C3.08515 17.7042 2.87073 17.1422 3.08511 16.6633L4.50001 13.5028L4.50011 9.49099L4.50453 9.24107C4.6436 5.21035 7.95588 2.00391 12 2.00391Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 651 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M3.28034 2.21968C2.98745 1.92678 2.51257 1.92677 2.21968 2.21966C1.92678 2.51255 1.92677 2.98743 2.21966 3.28032L5.22385 6.28457C4.7954 7.18486 4.54098 8.18466 4.50453 9.24108L4.50011 9.491L4.50001 13.5028L3.08511 16.6633C2.87073 17.1422 3.08515 17.7042 3.56402 17.9186C3.68613 17.9733 3.8184 18.0015 3.95219 18.0015H16.9406L20.7194 21.7805C21.0123 22.0734 21.4872 22.0734 21.7801 21.7805C22.073 21.4876 22.073 21.0127 21.7801 20.7198L3.28034 2.21968ZM21.0016 17.0515C21.0016 17.2676 20.9295 17.4668 20.808 17.6264L7.05071 3.86876C8.37284 2.70708 10.1062 2.00392 12 2.00392C16.1421 2.00392 19.5 5.36178 19.5 9.50392V13.5024L20.9183 16.6625C20.9732 16.7849 21.0016 16.9174 21.0016 17.0515ZM14.9583 19.003C14.7196 20.4211 13.486 21.5015 12 21.5015C10.514 21.5015 9.28037 20.4211 9.04173 19.003H14.9583Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 972 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M5.21938 6.27997L2.21966 3.28019C1.92677 2.9873 1.92678 2.51242 2.21968 2.21953C2.51257 1.92664 2.98745 1.92665 3.28034 2.21954L21.7801 20.7197C22.073 21.0126 22.073 21.4875 21.7801 21.7804C21.4872 22.0732 21.0123 22.0732 20.7194 21.7803L17.4398 18.5006L15.0001 18.5014C15.0001 20.1582 13.657 21.5014 12.0001 21.5014C10.4024 21.5014 9.09645 20.2524 9.0052 18.6776L8.99966 18.4991L4.27498 18.4999C4.10364 18.4999 3.93413 18.4646 3.77697 18.3964C3.14377 18.1213 2.85342 17.3851 3.12846 16.7519L4.50011 13.594V9.49599C4.50028 8.34367 4.7582 7.25363 5.21938 6.27997ZM15.9391 16.9999L6.36473 7.42534C6.1289 8.07014 6.00022 8.76748 6.00011 9.49609V13.9057L4.65613 16.9999H15.9391ZM13.4997 18.4991L10.5001 18.5014C10.5001 19.3298 11.1717 20.0014 12.0001 20.0014C12.7798 20.0014 13.4206 19.4065 13.4932 18.6458L13.4997 18.4991ZM18.0001 13.9067L18.7084 15.5266L20.8958 17.714C20.9532 17.5705 20.9848 17.4139 20.9848 17.2499C20.9848 17.0775 20.9492 16.907 20.8801 16.7491L19.5001 13.5931V9.49609L19.4959 9.24515C19.3568 5.19084 16.05 1.99609 12.0001 1.99609C10.0984 1.99609 8.36403 2.69926 7.0433 3.86123L8.10667 4.92462C9.15366 4.03291 10.5126 3.49609 12.0001 3.49609C15.2417 3.49609 17.8854 6.05027 17.9965 9.28375L18.0002 9.50895L18.0001 13.9067Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M15.2503 7H12.7503L12.6486 7.00685C12.2825 7.05651 12.0003 7.3703 12.0003 7.75C12.0003 8.16421 12.3361 8.5 12.7503 8.5H13.793L12.14 10.8141L12.0847 10.9035C11.8281 11.3892 12.1762 12 12.7503 12H15.2503L15.3521 11.9932C15.7182 11.9435 16.0003 11.6297 16.0003 11.25C16.0003 10.8358 15.6646 10.5 15.2503 10.5H14.2077L15.8606 8.18593L15.9159 8.0965C16.1726 7.61079 15.8245 7 15.2503 7ZM21.2503 2H17.7503L17.6486 2.00685C17.2825 2.05651 17.0003 2.3703 17.0003 2.75C17.0003 3.16421 17.3361 3.5 17.7503 3.5H19.8841L17.1176 7.84734L17.0685 7.93689C16.8429 8.42124 17.1933 9 17.7503 9H21.2503L21.3521 8.99315C21.7182 8.94349 22.0003 8.6297 22.0003 8.25C22.0003 7.83579 21.6646 7.5 21.2503 7.5H19.1166L21.8831 3.15266L21.9322 3.06311C22.1578 2.57876 21.8074 2 21.2503 2ZM12.6992 5.5H15.2496C15.7577 5.5 16.2059 5.65842 16.5659 5.91925L17.1948 4.93106C16.2579 4.69344 15.5554 3.86808 15.5028 2.87044C14.4573 2.3172 13.2652 2.00391 12 2.00391C7.95588 2.00391 4.6436 5.21035 4.50453 9.24107L4.50011 9.49099L4.50001 13.5028L3.08511 16.6633C2.87073 17.1422 3.08515 17.7042 3.56402 17.9186C3.68613 17.9733 3.8184 18.0015 3.95219 18.0015H20.0516C20.5763 18.0015 21.0016 17.5762 21.0016 17.0515C21.0016 16.9174 20.9732 16.7848 20.9183 16.6625L19.5 13.5024V10.5H17.7496C17.6155 10.5 17.4854 10.4889 17.3599 10.4677C17.4503 10.7113 17.4996 10.9749 17.4996 11.25C17.4996 12.3903 16.6528 13.3304 15.5531 13.4795L15.5028 13.4864L15.3 13.5H12.7496C11.0204 13.5 9.98519 11.6649 10.7578 10.2027L10.7815 10.1578L10.8898 9.98276L11.2724 9.44714C10.7989 9.03466 10.4996 8.42727 10.4996 7.75C10.4996 6.60969 11.3465 5.66965 12.4462 5.52046L12.4965 5.51364L12.6992 5.5ZM14.9583 19.003C14.7196 20.4211 13.486 21.5015 12 21.5015C10.514 21.5015 9.28037 20.4211 9.04173 19.003H14.9583Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M11.9994 3.5C8.89563 3.5 5.99929 5.93202 5.99929 9.75V13.9028L4.68294 17H19.3525L17.9993 13.9069V11.75C17.9993 11.3358 18.3351 11 18.7493 11C19.1635 11 19.4993 11.3358 19.4993 11.75V13.5931L20.88 16.749C21.2413 17.5748 20.6362 18.5 19.7348 18.5H15.0012C15.0004 20.157 13.6568 21.5 11.9996 21.5C10.3424 21.5 8.9989 20.157 8.99805 18.5H4.30504C3.40926 18.5 2.80425 17.5855 3.15463 16.7611L4.49929 13.5972V9.75C4.49929 5.06798 8.10327 2 11.9994 2C12.8589 2 13.7043 2.14907 14.4999 2.43197C14.8902 2.57074 15.094 2.99962 14.9553 3.38989C14.8165 3.78017 14.3876 3.98405 13.9973 3.84528C13.3609 3.61898 12.6854 3.5 11.9994 3.5ZM11.9996 20C12.8284 20 13.5004 19.3286 13.5012 18.5H10.498C10.4989 19.3286 11.1709 20 11.9996 20ZM15.2503 7H12.7503L12.6486 7.00685C12.2825 7.05651 12.0003 7.3703 12.0003 7.75C12.0003 8.16421 12.3361 8.5 12.7503 8.5H13.793L12.14 10.8141L12.0847 10.9035C11.8281 11.3892 12.1762 12 12.7503 12H15.2503L15.3521 11.9932C15.7182 11.9435 16.0003 11.6297 16.0003 11.25C16.0003 10.8358 15.6646 10.5 15.2503 10.5H14.2077L15.8606 8.18593L15.9159 8.0965C16.1726 7.61079 15.8245 7 15.2503 7ZM21.2503 2H17.7503L17.6486 2.00685C17.2825 2.05651 17.0003 2.3703 17.0003 2.75C17.0003 3.16421 17.3361 3.5 17.7503 3.5H19.8841L17.1176 7.84734L17.0685 7.93689C16.8429 8.42124 17.1933 9 17.7503 9H21.2503L21.3521 8.99315C21.7182 8.94349 22.0003 8.6297 22.0003 8.25C22.0003 7.83579 21.6646 7.5 21.2503 7.5H19.1166L21.8831 3.15266L21.9322 3.06311C22.1578 2.57876 21.8074 2 21.2503 2Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M12.0001 1.99609C16.05 1.99609 19.3568 5.19084 19.4959 9.24515L19.5001 9.49609V13.5931L20.8801 16.7491C20.9492 16.907 20.9848 17.0775 20.9848 17.2499C20.9848 17.9402 20.4252 18.4999 19.7348 18.4999L15.0001 18.5014C15.0001 20.1582 13.657 21.5014 12.0001 21.5014C10.4024 21.5014 9.09645 20.2524 9.0052 18.6776L8.99966 18.4991L4.27498 18.4999C4.10364 18.4999 3.93413 18.4646 3.77697 18.3964C3.14377 18.1213 2.85342 17.3851 3.12846 16.7519L4.50011 13.594V9.49599C4.50071 5.3412 7.8522 1.99609 12.0001 1.99609ZM13.4997 18.4991L10.5001 18.5014C10.5001 19.3298 11.1717 20.0014 12.0001 20.0014C12.7798 20.0014 13.4206 19.4065 13.4932 18.6458L13.4997 18.4991ZM12.0001 3.49609C8.67995 3.49609 6.00059 6.17035 6.00011 9.49609V13.9057L4.65613 16.9999H19.3526L18.0001 13.9067L18.0002 9.50895L17.9965 9.28375C17.8854 6.05027 15.2417 3.49609 12.0001 3.49609Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1015 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M6.25 3C4.45507 3 3 4.45507 3 6.25V17.75C3 19.5449 4.45507 21 6.25 21H17.75C19.5449 21 21 19.5449 21 17.75V6.25C21 4.45507 19.5449 3 17.75 3H6.25ZM4.5 8H19.5V17.75C19.5 18.7165 18.7165 19.5 17.75 19.5H6.25C5.2835 19.5 4.5 18.7165 4.5 17.75V8ZM6 10.35C6 9.88056 6.38056 9.5 6.85 9.5H10.15C10.6194 9.5 11 9.88056 11 10.35V17.15C11 17.6194 10.6194 18 10.15 18H6.85C6.38056 18 6 17.6194 6 17.15V10.35ZM7.5 11V16.5H9.5V11H7.5ZM12.75 9.5H17.25C17.6642 9.5 18 9.83579 18 10.25C18 10.6642 17.6642 11 17.25 11H12.75C12.3358 11 12 10.6642 12 10.25C12 9.83579 12.3358 9.5 12.75 9.5ZM12 13.25C12 12.8358 12.3358 12.5 12.75 12.5H16.25C16.6642 12.5 17 12.8358 17 13.25C17 13.6642 16.6642 14 16.25 14H12.75C12.3358 14 12 13.6642 12 13.25Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 895 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M3 6.25C3 4.45507 4.45507 3 6.25 3H17.75C19.5449 3 21 4.45507 21 6.25V17.75C21 19.5449 19.5449 21 17.75 21H6.25C4.45507 21 3 19.5449 3 17.75V6.25ZM6.25 4.5C5.2835 4.5 4.5 5.2835 4.5 6.25V6.5H19.5V6.25C19.5 5.2835 18.7165 4.5 17.75 4.5H6.25ZM4.5 17.75C4.5 18.7165 5.2835 19.5 6.25 19.5H17.75C18.7165 19.5 19.5 18.7165 19.5 17.75V8H4.5V17.75ZM6.85 9.5H10.15C10.6194 9.5 11 9.88056 11 10.35V17.15C11 17.6194 10.6194 18 10.15 18H6.85C6.38056 18 6 17.6194 6 17.15V10.35C6 9.88056 6.38056 9.5 6.85 9.5ZM7.5 16.5H9.5V11H7.5V16.5ZM12 10.25C12 9.83579 12.3358 9.5 12.75 9.5H17.25C17.6642 9.5 18 9.83579 18 10.25C18 10.6642 17.6642 11 17.25 11H12.75C12.3358 11 12 10.6642 12 10.25ZM12.75 12.5C12.3358 12.5 12 12.8358 12 13.25C12 13.6642 12.3358 14 12.75 14H16.25C16.6642 14 17 13.6642 17 13.25C17 12.8358 16.6642 12.5 16.25 12.5H12.75Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 997 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M18.4923 2.33034L21.671 5.50911C22.5497 6.38779 22.5497 7.81241 21.671 8.69109L19.0866 11.275C20.1696 11.4375 21 12.3718 21 13.5V18.75C21 19.9926 19.9926 21 18.75 21H5.25C4.00736 21 3 19.9926 3 18.75V5.25001C3 4.00736 4.00736 3.00001 5.25 3.00001H10.5C11.6289 3.00001 12.5637 3.83146 12.7253 4.91541L15.3103 2.33034C16.189 1.45166 17.6136 1.45166 18.4923 2.33034ZM4.5 18.75C4.5 19.1642 4.83579 19.5 5.25 19.5L11.249 19.4993L11.25 12.75L4.5 12.7493V18.75ZM12.749 19.4993L18.75 19.5C19.1642 19.5 19.5 19.1642 19.5 18.75V13.5C19.5 13.0858 19.1642 12.75 18.75 12.75L12.749 12.7493V19.4993ZM10.5 4.50001H5.25C4.83579 4.50001 4.5 4.83579 4.5 5.25001V11.2493H11.25V5.25001C11.25 4.83579 10.9142 4.50001 10.5 4.50001ZM12.75 9.30933V11.25L14.69 11.2493L12.75 9.30933Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 930 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M18.4923 2.33088L21.671 5.50966C22.5497 6.38834 22.5497 7.81296 21.671 8.69164L19.0866 11.2756C20.1696 11.438 21 12.3723 21 13.5006V18.7506C21 19.9932 19.9926 21.0006 18.75 21.0006H5.25C4.00736 21.0006 3 19.9932 3 18.7506V5.25055C3 4.00791 4.00736 3.00055 5.25 3.00055H10.5C11.6289 3.00055 12.5637 3.83201 12.7253 4.91596L15.3103 2.33088C16.189 1.45221 17.6136 1.45221 18.4923 2.33088ZM4.5 18.7506C4.5 19.1648 4.83579 19.5006 5.25 19.5006L11.249 19.4999L11.25 12.7506L4.5 12.7499V18.7506ZM12.749 19.4999L18.75 19.5006C19.1642 19.5006 19.5 19.1648 19.5 18.7506V13.5006C19.5 13.0863 19.1642 12.7506 18.75 12.7506L12.749 12.7499V19.4999ZM10.5 4.50055H5.25C4.83579 4.50055 4.5 4.83634 4.5 5.25055V11.2499H11.25V5.25055C11.25 4.83634 10.9142 4.50055 10.5 4.50055ZM12.75 9.30988V11.2506L14.69 11.2499L12.75 9.30988ZM16.3709 3.39154L13.1922 6.57032C12.8993 6.86321 12.8993 7.33808 13.1922 7.63098L16.3709 10.8097C16.6638 11.1026 17.1387 11.1026 17.4316 10.8097L20.6104 7.63098C20.9033 7.33808 20.9033 6.86321 20.6104 6.57032L17.4316 3.39154C17.1387 3.09865 16.6638 3.09865 16.3709 3.39154Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 4.75a7.25 7.25 0 1 0 7.201 6.406c-.068-.588.358-1.156.95-1.156.515 0 .968.358 1.03.87a9.25 9.25 0 1 1-3.432-6.116V4.25a1 1 0 1 1 2.001 0v2.698l.034.052h-.034v.25a1 1 0 0 1-1 1h-3a1 1 0 1 1 0-2h.666A7.219 7.219 0 0 0 12 4.75Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 356 B

@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 4.5a7.5 7.5 0 1 0 7.419 6.392c-.067-.454.265-.892.724-.892.37 0 .696.256.752.623A9 9 0 1 1 18 5.292V4.25a.75.75 0 0 1 1.5 0v3a.75.75 0 0 1-.75.75h-3a.75.75 0 0 1 0-1.5h1.35a7.474 7.474 0 0 0-5.1-2Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 329 B

@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 4.75a7.25 7.25 0 1 1-7.201 6.406C4.867 10.568 4.44 10 3.849 10c-.515 0-.968.358-1.03.87A9.25 9.25 0 1 0 6.25 4.754V4.25a1 1 0 0 0-2.001 0v2.698A9.322 9.322 0 0 0 4.216 7h.034v.25a1 1 0 0 0 1 1h3a1 1 0 0 0 0-2h-.666A7.219 7.219 0 0 1 12 4.75Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 373 B

@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M12 4.5a7.5 7.5 0 1 1-7.419 6.392c.067-.454-.265-.892-.724-.892a.749.749 0 0 0-.752.623A9 9 0 1 0 6 5.292V4.25a.75.75 0 0 0-1.5 0v3c0 .414.336.75.75.75h3a.75.75 0 0 0 0-1.5H6.9a7.473 7.473 0 0 1 5.1-2Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 329 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M21 4C21.5128 4 21.9355 4.38604 21.9933 4.88338L22 5V11.5C22 13.3686 20.5357 14.8951 18.692 14.9948L18.5 15H5.415L8.70711 18.2929C9.06759 18.6534 9.09532 19.2206 8.7903 19.6129L8.70711 19.7071C8.34662 20.0676 7.77939 20.0953 7.3871 19.7903L7.29289 19.7071L2.29289 14.7071C2.2575 14.6717 2.22531 14.6343 2.19633 14.5953L2.12467 14.4841L2.07123 14.3713L2.03585 14.266L2.01102 14.1485L2.00398 14.0898L2 14L2.00279 13.9248L2.02024 13.7993L2.04974 13.6879L2.09367 13.5768L2.146 13.4793L2.2097 13.3871L2.29289 13.2929L7.29289 8.29289C7.68342 7.90237 8.31658 7.90237 8.70711 8.29289C9.06759 8.65338 9.09532 9.22061 8.7903 9.6129L8.70711 9.70711L5.415 13H18.5C19.2797 13 19.9204 12.4051 19.9931 11.6445L20 11.5V5C20 4.44772 20.4477 4 21 4Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 903 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M21.2506 4C21.6648 4 22.0006 4.33579 22.0006 4.75V11.25C22.0006 13.3211 20.3216 15 18.2506 15H4.58639L8.30572 18.7197C8.57199 18.9859 8.59619 19.4026 8.37834 19.6962L8.30572 19.7803C8.03945 20.0466 7.62279 20.0708 7.32918 19.8529L7.24506 19.7803L2.24506 14.7803C1.97879 14.5141 1.95459 14.0974 2.17244 13.8038L2.24506 13.7197L7.24506 8.71967C7.53795 8.42678 8.01283 8.42678 8.30572 8.71967C8.57199 8.98594 8.59619 9.4026 8.37834 9.69621L8.30572 9.78033L4.58639 13.5H18.2506C19.4414 13.5 20.4162 12.5748 20.4954 11.404L20.5006 11.25V4.75C20.5006 4.33579 20.8363 4 21.2506 4Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 745 B

@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10.295 19.716a1 1 0 0 0 1.404-1.425l-5.37-5.29h13.67a1 1 0 1 0 0-2H6.336L11.7 5.714a1 1 0 0 0-1.404-1.424l-6.924 6.822a1.25 1.25 0 0 0 0 1.78l6.924 6.823Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 283 B

@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10.733 19.79a.75.75 0 0 0 1.034-1.086L5.516 12.75H20.25a.75.75 0 0 0 0-1.5H5.516l6.251-5.955a.75.75 0 0 0-1.034-1.086l-7.42 7.067a.995.995 0 0 0-.3.58.754.754 0 0 0 .001.289.995.995 0 0 0 .3.579l7.419 7.067Z" fill="#212121"/></svg>

After

Width:  |  Height:  |  Size: 336 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M13.7045 4.28377C13.3111 3.89615 12.678 3.90084 12.2904 4.29424C11.9027 4.68765 11.9074 5.3208 12.3008 5.70842L17.6712 10.9998H4C3.44771 10.9998 3 11.4475 3 11.9998C3 12.5521 3.44772 12.9998 4 12.9998H17.6646L12.3008 18.2847C11.9074 18.6723 11.9027 19.3055 12.2904 19.6989C12.678 20.0923 13.3111 20.097 13.7045 19.7094L20.6287 12.887C21.1256 12.3974 21.1256 11.5958 20.6287 11.1062L13.7045 4.28377Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 570 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M13.2673 4.20889C12.9674 3.9232 12.4926 3.93475 12.2069 4.23467C11.9212 4.5346 11.9328 5.00933 12.2327 5.29502L18.4841 11.2496H3.75C3.33579 11.2496 3 11.5854 3 11.9996C3 12.4138 3.33579 12.7496 3.75 12.7496H18.4842L12.2327 18.7043C11.9328 18.99 11.9212 19.4648 12.2069 19.7647C12.4926 20.0646 12.9674 20.0762 13.2673 19.7905L20.6862 12.7238C20.8551 12.5629 20.9551 12.3576 20.9861 12.1443C20.9952 12.0975 21 12.0491 21 11.9996C21 11.9501 20.9952 11.9016 20.986 11.8547C20.955 11.6415 20.855 11.4364 20.6862 11.2756L13.2673 4.20889Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 703 B

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="24"
height="24"
fill="none"
viewBox="0 0 24 24"
version="1.1"
id="svg1"
sodipodi:docname="arrow-sync.svg"
inkscape:version="1.4.2 (ebf0e940d0, 2025-05-08)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1" />
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="25.868323"
inkscape:cx="14.245222"
inkscape:cy="12.447657"
inkscape:window-width="1498"
inkscape:window-height="1020"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg1" />
<path
d="m 19.947024,13.17933 a 0.75,0.75 0 0 0 -0.907212,0.549312 7.251,7.251 0 0 1 -13.334866,1.873667 l 0.8908023,0.350894 a 0.75,0.75 0 0 0 0.6494514,-1.347747 l -0.100442,-0.04793 -2.6316174,-1.036623 a 0.75,0.75 0 0 0 -0.9241627,0.322228 l -0.047921,0.100457 -1.0366214,2.631619 a 0.75,0.75 0 0 0 1.3468323,0.649854 l 0.048321,-0.09951 0.3887326,-0.986859 A 8.75,8.75 0 0 0 20.494492,14.087329 0.75,0.75 0 0 0 19.946102,13.179722 Z M 21.068469,6.4543893 A 0.75,0.75 0 0 0 20.096388,6.8770607 L 19.707652,7.863919 A 8.75,8.75 0 0 0 3.5868012,9.5848274 0.75043107,0.75043107 0 1 0 5.0290446,10.000183 7.251,7.251 0 0 1 18.290631,8.3993655 l -0.8904,-0.3499798 a 0.75,0.75 0 1 0 -0.549014,1.3956769 l 2.631617,1.0366214 a 0.75,0.75 0 0 0 0.972088,-0.422667 L 21.491544,7.4273949 A 0.75,0.75 0 0 0 21.068874,6.455308 Z"
fill="#212121"
id="path1" />
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M13 3C13.5523 3 14 3.44772 14 4C14 4.55228 13.5523 5 13 5H6.41435L20.7071 19.2928C21.0976 19.6833 21.0976 20.3164 20.7071 20.707C20.3166 21.0975 19.6834 21.0975 19.2929 20.707L5 6.41408V13C5 13.5523 4.55228 14 4 14C3.44772 14 3 13.5523 3 13V4C3 3.44772 3.44772 3 4 3H13Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 442 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M13.2461 3C13.6603 3 13.9961 3.33579 13.9961 3.75C13.9961 4.16421 13.6603 4.5 13.2461 4.5H5.57699L20.7768 19.6998C21.0753 19.9983 21.0753 20.4824 20.7768 20.781C20.4782 21.0796 19.9941 21.0796 19.6955 20.781L4.49609 5.58158V13.25C4.49609 13.6642 4.16031 14 3.74609 14C3.33188 14 2.99609 13.6642 2.99609 13.25V3.75C2.99609 3.33579 3.33188 3 3.74609 3H13.2461Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 530 B

@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="24"
height="24"
fill="none"
viewBox="0 0 24 24"
version="1.1"
id="svg1"
sodipodi:docname="local-language-filled.svg"
inkscape:version="1.4.2 (ebf0e940d0, 2025-05-08)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1" />
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="10.960155"
inkscape:cx="14.187755"
inkscape:cy="14.005276"
inkscape:window-width="1732"
inkscape:window-height="785"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg1" />
<path
d="m 13.32921,3.2052869 0.07034,0.146958 6.665865,16.3349501 c 0.597934,1.463734 -1.501548,2.465708 -2.263405,1.080204 l -0.0628,-0.131886 -1.734607,-4.247966 H 8.1090597 L 6.237543,20.666915 c -0.2557499,0.58358 -0.907936,0.883219 -1.5173101,0.697108 L 4.5820672,21.313781 C 3.9979955,21.058486 3.6977604,20.406177 3.8837026,19.796471 L 3.9339447,19.658305 11.087158,3.3246118 C 11.509191,2.3574521 12.838094,2.3260509 13.330466,3.2065429 Z M 12.194996,7.0513164 9.2081047,13.875444 h 5.7715573 z"
fill="#212121"
id="path1"
sodipodi:nodetypes="ccccccccccccccccccc"
style="stroke-width:1.25605" />
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="24"
height="24"
fill="none"
viewBox="0 0 24 24"
version="1.1"
id="svg1"
sodipodi:docname="local-language.svg"
inkscape:version="1.4.2 (ebf0e940d0, 2025-05-08)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1" />
<sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="10.960155"
inkscape:cx="10.811891"
inkscape:cy="17.791719"
inkscape:window-width="1472"
inkscape:window-height="618"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg1" />
<path
d="m 13.03806,2.5424973 0.06199,0.1301862 6.893673,17.9781035 c 0.18389,0.475477 -0.0465,1.01068 -0.518262,1.203913 -0.426384,0.16782 -0.910921,-0.0095 -1.128281,-0.412876 l -0.05331,-0.114068 -1.776733,-4.633392 H 7.7314203 l -0.1165477,-0.0074 -1.9168378,4.661908 C 5.509706,21.819931 4.9710435,22.044234 4.5040408,21.84606 4.0807398,21.661297 3.8558061,21.1951 3.9746166,20.748776 L 4.0155326,20.629748 11.410113,2.6516447 C 11.691767,1.9454102 12.665957,1.8801443 13.0393,2.5424973 Z M 12.38093,5.4884265 8.4629432,14.834561 H 16.038544 L 12.38093,5.4871866 Z"
fill="#212121"
id="path1"
style="stroke-width:1.23987"
sodipodi:nodetypes="ccccccccccccccccccccc" />
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M11.6174 2.07615C11.991 1.92137 12.4211 2.00692 12.7071 2.29292L17.7071 7.29292C17.9083 7.49405 18.0142 7.77132 17.9985 8.05533C17.9828 8.33934 17.8468 8.60321 17.6247 8.7809L13.6008 12L17.6247 15.2192C17.8468 15.3969 17.9828 15.6607 17.9985 15.9447C18.0142 16.2287 17.9083 16.506 17.7071 16.7071L12.7071 21.7071C12.4211 21.9931 11.991 22.0787 11.6174 21.9239C11.2437 21.7691 11 21.4045 11 21V14.0807L7.62473 16.7809C7.19347 17.1259 6.56418 17.056 6.21917 16.6247C5.87416 16.1935 5.94408 15.5642 6.37534 15.2192L10.3993 12L6.37534 8.7809C5.94408 8.43589 5.87416 7.8066 6.21917 7.37533C6.56418 6.94407 7.19347 6.87415 7.62473 7.21916L11 9.9194V3.00003C11 2.59557 11.2437 2.23093 11.6174 2.07615ZM13 14.0807V18.5858L15.5029 16.083L13 14.0807ZM13 9.91941L15.5029 7.91711L13 5.41424V9.91941ZM20 12C20 12.5523 19.5523 13 19 13C18.4477 13 18 12.5523 18 12C18 11.4477 18.4477 11 19 11C19.5523 11 20 11.4477 20 12ZM5 13C5.55228 13 6 12.5523 6 12C6 11.4477 5.55228 11 5 11C4.44772 11 4 11.4477 4 12C4 12.5523 4.44772 13 5 13Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M16.6766 17.7376L20.7194 21.7805C21.0123 22.0734 21.4872 22.0734 21.7801 21.7805C22.073 21.4876 22.073 21.0127 21.7801 20.7198L3.28034 2.21968C2.98745 1.92678 2.51257 1.92677 2.21968 2.21966C1.92678 2.51255 1.92677 2.98743 2.21966 3.28032L10.6992 11.76L6.37528 15.2192C5.94402 15.5642 5.8741 16.1935 6.21911 16.6247C6.56412 17.056 7.19341 17.1259 7.62467 16.7809L11 14.0807V21C11 21.4045 11.2436 21.7691 11.6173 21.9239C11.991 22.0787 12.4211 21.9931 12.7071 21.7071L16.6766 17.7376ZM13.099 14.1599L15.2624 16.3234L13 18.5858V14.0807L13.099 14.1599ZM17.6247 8.7809L14.4791 11.2974L13.0562 9.87442L15.5028 7.91711L13 5.41424V9.8182L11 7.81816V3.00003C11 2.59557 11.2436 2.23093 11.6173 2.07615C11.991 1.92137 12.4211 2.00692 12.7071 2.29292L17.7071 7.29292C17.9082 7.49405 18.0142 7.77132 17.9984 8.05533C17.9827 8.33934 17.8468 8.60321 17.6247 8.7809Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1023 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M16.4999 17.5608L20.7194 21.7805C21.0123 22.0734 21.4872 22.0734 21.7801 21.7805C22.073 21.4876 22.073 21.0127 21.7801 20.7198L3.28034 2.21968C2.98745 1.92678 2.51257 1.92677 2.21968 2.21966C1.92678 2.51255 1.92677 2.98743 2.21966 3.28032L10.7797 11.8405L6.26428 15.6786C5.94867 15.9468 5.9103 16.4202 6.17856 16.7358C6.44683 17.0514 6.92015 17.0897 7.23575 16.8215L11 13.6219V21.25C11 21.5534 11.1827 21.8268 11.463 21.9429C11.7433 22.059 12.0658 21.9949 12.2803 21.7804L16.4999 17.5608ZM12.9064 13.9673L15.4392 16.5002L12.5 19.4394V13.6219L12.9064 13.9673ZM17.2358 8.32148L14.1371 10.9553L13.073 9.89116L15.6446 7.70528L12.5 4.56068V9.31818L11 7.81815V2.75002C11 2.44668 11.1827 2.1732 11.463 2.05711C11.7433 1.94103 12.0658 2.00519 12.2803 2.21969L17.2803 7.21969C17.4284 7.36779 17.5079 7.57108 17.4994 7.78035C17.4909 7.98963 17.3953 8.18583 17.2358 8.32148Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M11.6174 2.07612C11.991 1.92134 12.4211 2.00689 12.7071 2.29289L17.7071 7.29289C17.9083 7.49402 18.0142 7.77129 17.9985 8.0553C17.9828 8.33931 17.8468 8.60318 17.6247 8.78087L13.6008 12L17.6247 15.2191C17.8468 15.3968 17.9828 15.6607 17.9985 15.9447C18.0142 16.2287 17.9083 16.506 17.7071 16.7071L12.7071 21.7071C12.4211 21.9931 11.991 22.0787 11.6174 21.9239C11.2437 21.7691 11 21.4045 11 21V14.0806L7.62473 16.7809C7.19347 17.1259 6.56418 17.056 6.21917 16.6247C5.87416 16.1934 5.94408 15.5641 6.37534 15.2191L10.3993 12L6.37534 8.78087C5.94408 8.43586 5.87416 7.80657 6.21917 7.3753C6.56418 6.94404 7.19347 6.87412 7.62473 7.21913L11 9.91937V3C11 2.59554 11.2437 2.2309 11.6174 2.07612ZM13 14.0806V18.5858L15.5029 16.0829L13 14.0806ZM13 9.91937L15.5029 7.91708L13 5.41421V9.91937Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 955 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M11.463 2.05709C11.7433 1.941 12.0658 2.00517 12.2803 2.21967L17.2803 7.21967C17.4284 7.36777 17.5079 7.57105 17.4994 7.78033C17.4909 7.9896 17.3953 8.1858 17.2358 8.32145L12.9081 12L17.2358 15.6785C17.3953 15.8142 17.4909 16.0104 17.4994 16.2197C17.5079 16.4289 17.4284 16.6322 17.2803 16.7803L12.2803 21.7803C12.0658 21.9948 11.7433 22.059 11.463 21.9429C11.1827 21.8268 11 21.5533 11 21.25V13.6218L7.23575 16.8215C6.92015 17.0897 6.44683 17.0513 6.17856 16.7357C5.9103 16.4201 5.94867 15.9468 6.26428 15.6785L10.592 12L6.26428 8.32145C5.94867 8.05319 5.9103 7.57987 6.17856 7.26426C6.44683 6.94866 6.92015 6.91028 7.23575 7.17854L11 10.3782V2.75C11 2.44665 11.1827 2.17318 11.463 2.05709ZM12.5 13.6218V19.4393L15.6446 16.2947L12.5 13.6218ZM12.5 10.3782L15.6446 7.70526L12.5 4.56066V10.3782Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 965 B

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M4 5.25C4 3.45507 5.45507 2 7.25 2H16.75C18.5449 2 20 3.45507 20 5.25V18.75C20 20.5449 18.5449 22 16.75 22H7.25C5.45507 22 4 20.5449 4 18.75V5.25ZM9 5C7.89543 5 7 5.89543 7 7V8C7 9.10457 7.89543 10 9 10H15C16.1046 10 17 9.10457 17 8V7C17 5.89543 16.1046 5 15 5H9ZM9.5 13.25C9.5 12.5596 8.94036 12 8.25 12C7.55964 12 7 12.5596 7 13.25C7 13.9404 7.55964 14.5 8.25 14.5C8.94036 14.5 9.5 13.9404 9.5 13.25ZM8.25 18.5C8.94036 18.5 9.5 17.9404 9.5 17.25C9.5 16.5596 8.94036 16 8.25 16C7.55964 16 7 16.5596 7 17.25C7 17.9404 7.55964 18.5 8.25 18.5ZM17 13.25C17 12.5596 16.4404 12 15.75 12C15.0596 12 14.5 12.5596 14.5 13.25C14.5 13.9404 15.0596 14.5 15.75 14.5C16.4404 14.5 17 13.9404 17 13.25ZM15.75 18.5C16.4404 18.5 17 17.9404 17 17.25C17 16.5596 16.4404 16 15.75 16C15.0596 16 14.5 16.5596 14.5 17.25C14.5 17.9404 15.0596 18.5 15.75 18.5ZM13.25 13.25C13.25 12.5596 12.6904 12 12 12C11.3096 12 10.75 12.5596 10.75 13.25C10.75 13.9404 11.3096 14.5 12 14.5C12.6904 14.5 13.25 13.9404 13.25 13.25ZM12 18.5C12.6904 18.5 13.25 17.9404 13.25 17.25C13.25 16.5596 12.6904 16 12 16C11.3096 16 10.75 16.5596 10.75 17.25C10.75 17.9404 11.3096 18.5 12 18.5Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

@@ -0,0 +1,4 @@
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#000000">
<path d="M7 7C7 5.89543 7.89543 5 9 5H15C16.1046 5 17 5.89543 17 7V8C17 9.10457 16.1046 10 15 10H9C7.89543 10 7 9.10457 7 8V7ZM9 6.5C8.72386 6.5 8.5 6.72386 8.5 7V8C8.5 8.27614 8.72386 8.5 9 8.5H15C15.2761 8.5 15.5 8.27614 15.5 8V7C15.5 6.72386 15.2761 6.5 15 6.5H9ZM8.25 14.5C8.94036 14.5 9.5 13.9404 9.5 13.25C9.5 12.5596 8.94036 12 8.25 12C7.55964 12 7 12.5596 7 13.25C7 13.9404 7.55964 14.5 8.25 14.5ZM9.5 17.25C9.5 17.9404 8.94036 18.5 8.25 18.5C7.55964 18.5 7 17.9404 7 17.25C7 16.5596 7.55964 16 8.25 16C8.94036 16 9.5 16.5596 9.5 17.25ZM15.75 14.5C16.4404 14.5 17 13.9404 17 13.25C17 12.5596 16.4404 12 15.75 12C15.0596 12 14.5 12.5596 14.5 13.25C14.5 13.9404 15.0596 14.5 15.75 14.5ZM17 17.25C17 17.9404 16.4404 18.5 15.75 18.5C15.0596 18.5 14.5 17.9404 14.5 17.25C14.5 16.5596 15.0596 16 15.75 16C16.4404 16 17 16.5596 17 17.25ZM12 14.5C12.6904 14.5 13.25 13.9404 13.25 13.25C13.25 12.5596 12.6904 12 12 12C11.3096 12 10.75 12.5596 10.75 13.25C10.75 13.9404 11.3096 14.5 12 14.5ZM13.25 17.25C13.25 17.9404 12.6904 18.5 12 18.5C11.3096 18.5 10.75 17.9404 10.75 17.25C10.75 16.5596 11.3096 16 12 16C12.6904 16 13.25 16.5596 13.25 17.25ZM7.25 2C5.45507 2 4 3.45507 4 5.25V18.75C4 20.5449 5.45507 22 7.25 22H16.75C18.5449 22 20 20.5449 20 18.75V5.25C20 3.45507 18.5449 2 16.75 2H7.25ZM5.5 5.25C5.5 4.2835 6.2835 3.5 7.25 3.5H16.75C17.7165 3.5 18.5 4.2835 18.5 5.25V18.75C18.5 19.7165 17.7165 20.5 16.75 20.5H7.25C6.2835 20.5 5.5 19.7165 5.5 18.75V5.25Z" fill="#000000"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

Some files were not shown because too many files have changed in this diff Show More