From 95697479fd6e99d94a242f91161bbdd434cbfd51 Mon Sep 17 00:00:00 2001 From: Mihai Fufezan Date: Wed, 6 Nov 2024 20:34:37 +0200 Subject: [PATCH] treewide: run linter --- pages/Configuring/Binds.md | 6 +-- pages/Configuring/Dispatchers.md | 3 +- pages/Configuring/Example-configurations.md | 16 +++--- pages/Configuring/Keywords.md | 5 +- pages/Configuring/Monitors.md | 22 ++++---- pages/Configuring/Multi-GPU.md | 6 +-- pages/Configuring/Uncommon-tips-&-tricks.md | 13 +++-- pages/Configuring/Using-hyprctl.md | 1 + pages/Configuring/Variables.md | 8 +-- pages/Configuring/Window-Rules.md | 2 +- pages/Configuring/Workspace-Rules.md | 27 +++++----- pages/Connect/_index.md | 2 - pages/Contributing and Debugging/_index.md | 4 +- pages/Crashes and Bugs/_index.md | 12 +++-- pages/FAQ/_index.md | 18 +++---- pages/Getting Started/Installation.md | 1 + pages/Getting Started/Master-Tutorial.md | 14 ++++-- pages/Hypr Ecosystem/_index.md | 29 +++++------ pages/Hypr Ecosystem/aquamarine.md | 1 - pages/Hypr Ecosystem/hyprcursor.md | 6 ++- pages/Hypr Ecosystem/hyprlang.md | 7 ++- pages/Hypr Ecosystem/hyprlock.md | 50 +++++++++++-------- pages/Hypr Ecosystem/hyprpaper.md | 15 +++--- pages/Hypr Ecosystem/hyprwayland-scanner.md | 1 - .../xdg-desktop-portal-hyprland.md | 2 +- pages/Nix/Contributing and Debugging.md | 12 ++--- pages/Nvidia/_index.md | 35 ++++++------- pages/Useful Utilities/Clipboard-Managers.md | 18 +++---- pages/Useful Utilities/File-Managers.md | 12 ++--- pages/Useful Utilities/Hypr-Ecosystem.md | 4 ++ pages/Useful Utilities/Other.md | 5 +- pages/Useful Utilities/Status-Bars.md | 26 +++++----- 32 files changed, 212 insertions(+), 171 deletions(-) diff --git a/pages/Configuring/Binds.md b/pages/Configuring/Binds.md index 3e34e1f..f5ff489 100644 --- a/pages/Configuring/Binds.md +++ b/pages/Configuring/Binds.md @@ -53,7 +53,7 @@ can also use `xev` or `wev` to find keycodes. ## Misc -### Workspace bindings on non-qwerty layouts +### Workspace bindings on non-qwerty layouts Keys used for keybinds need to be accessible without any modifiers in your layout. For instance, the `French Azerty` layout uses `SHIFT+unmodified_key` to write `0-9` numbers. As such, the workspace keybinds for this layout need to use the names of the `unmodified_key`s, and will not work when using the `0-9` numbers. @@ -200,7 +200,7 @@ bindrl = MOD, KEY, exec, amongus Flags: -``` +```plain l -> locked, will also work when an input inhibitor (e.g. a lockscreen) is active. r -> release, will trigger on release of a key. e -> repeat, will repeat when held. @@ -359,7 +359,7 @@ Please note that this function will _only_ work with ## Submaps Keybind submaps, also known as _modes_ or _groups_, allow you to activate a -separate set of keybinds. For example, if you want to enter a "resize" mode +separate set of keybinds. For example, if you want to enter a "resize" mode which allows you to resize windows with the arrow keys, you can do it like this: ```ini diff --git a/pages/Configuring/Dispatchers.md b/pages/Configuring/Dispatchers.md index 4faf46e..4b56f85 100644 --- a/pages/Configuring/Dispatchers.md +++ b/pages/Configuring/Dispatchers.md @@ -138,7 +138,7 @@ You have nine choices: - Previous workspace: `previous`, or `previous_per_monitor` - First available empty workspace: `empty`, suffix with `m` to only search - on monitor. and/or `n` to make it the *next* available empty workspace. e.g. + on monitor. and/or `n` to make it the _next_ available empty workspace. e.g. `emptynm` - Special Workspace: `special` or `special:name` for named special workspaces. @@ -227,4 +227,3 @@ address:0x13371337 nomaxsize 0 address:0x13371337 opaque toggle address:0x13371337 immediate unset ``` - diff --git a/pages/Configuring/Example-configurations.md b/pages/Configuring/Example-configurations.md index de49fc5..7ff8186 100644 --- a/pages/Configuring/Example-configurations.md +++ b/pages/Configuring/Example-configurations.md @@ -9,48 +9,48 @@ from a more tangible example. ### end_4 -![](https://github.com/end-4/dots-hyprland/assets/97237370/5e081770-0f1e-45c4-ad9c-3d19f488cd85) +![end-4/dots-hyprland screenshot](https://github.com/end-4/dots-hyprland/assets/97237370/5e081770-0f1e-45c4-ad9c-3d19f488cd85) [https://github.com/end-4/dots-hyprland](https://github.com/end-4/dots-hyprland) ### Stephan Raabe (ML4W) -![](https://i.ibb.co/6ydHNt9/screenshot-29-1.png) +![mylinuxforwork/dotfiles screenshot](https://i.ibb.co/6ydHNt9/screenshot-29-1.png) [https://github.com/mylinuxforwork/dotfiles](https://github.com/mylinuxforwork/dotfiles) ### fufexan -![](https://user-images.githubusercontent.com/36706276/192147190-cf9cf4df-94cb-4a3b-b9d8-137ed0c2538f.png) +![fufexan/dotfiles screenshot](https://user-images.githubusercontent.com/36706276/192147190-cf9cf4df-94cb-4a3b-b9d8-137ed0c2538f.png) [https://github.com/fufexan/dotfiles](https://github.com/fufexan/dotfiles) ### linuxmobile -![](https://i.ibb.co/kGrhpKd/68747470733a2f2f692e696d6775722e636f6d2f553173336a69372e706e67.png) +![linuxmobile/hyprland-dots screenshot](https://i.ibb.co/kGrhpKd/68747470733a2f2f692e696d6775722e636f6d2f553173336a69372e706e67.png) [https://github.com/linuxmobile/hyprland-dots](https://github.com/linuxmobile/hyprland-dots) ### flick0 -![](https://raw.githubusercontent.com/flick0/dotfiles/aurora/assets/fetch.png) +![flick0/dotfiles screenshot](https://raw.githubusercontent.com/flick0/dotfiles/aurora/assets/fetch.png) [https://github.com/flick0/dotfiles](https://github.com/flick0/dotfiles) ### iamverysimp1e -![](https://github.com/iamverysimp1e/dots/raw/main/ScreenShots/HyprLand/Rice1.png) +![iamverysimp1e/dots screenshot](https://github.com/iamverysimp1e/dots/raw/main/ScreenShots/HyprLand/Rice1.png) [https://github.com/iamverysimp1e/dots](https://github.com/iamverysimp1e/dots) ### notusknot -![](https://github.com/notusknot/dotfiles-nix/raw/main/pics/screenshot.png) +![notusknot/dotfiles-nix screenshot](https://github.com/notusknot/dotfiles-nix/raw/main/pics/screenshot.png) [https://github.com/notusknot/dotfiles-nix](https://github.com/notusknot/dotfiles-nix) ### coffebar -![](https://github.com/coffebar/dotfiles/raw/6a5d595c594f108cd10219df08d338e98e1d2d7d/screenshot.png) +![coffebar/dotfiles screenshot](https://github.com/coffebar/dotfiles/raw/6a5d595c594f108cd10219df08d338e98e1d2d7d/screenshot.png) [https://github.com/coffebar/dotfiles](https://github.com/coffebar/dotfiles) diff --git a/pages/Configuring/Keywords.md b/pages/Configuring/Keywords.md index d997bd7..b08bbd9 100644 --- a/pages/Configuring/Keywords.md +++ b/pages/Configuring/Keywords.md @@ -27,6 +27,7 @@ three_param_keyword = A, B, # OK ## Executing You can execute a shell script on: + - startup of the compositor - every time the config is reloaded. - shutdown of the compositor @@ -96,8 +97,8 @@ Remember to use the name of the `Tablet` and not `Tablet Pad` or `Tablet tool`. Additional properties only present in per-device configs: - `enabled` -> (only for mice / touchpads / touchdevices / keyboards) - - enables / disables the device (connects / disconnects from the on-screen cursor) - - default: Enabled + - enables / disables the device (connects / disconnects from the on-screen cursor) + - default: Enabled Example config section: diff --git a/pages/Configuring/Monitors.md b/pages/Configuring/Monitors.md index aeb9677..4e43bc1 100644 --- a/pages/Configuring/Monitors.md +++ b/pages/Configuring/Monitors.md @@ -85,15 +85,17 @@ Leaving the name empty will define a fallback rule to use when no other rules match. There are a few special values for the resolutions: + - `preferred` - use the display's preferred size and refresh rate. - `highres` - use the highest supported resolution. - `highrr` - use the highest supported refresh rate. Position also has a few special values: + - `auto` - let Hyprland decide on a position. By default, it places each new monitor to the right of existing ones. - `auto-right/left/up/down` - place the monitor to the right/left, above or below other monitors. -***Please Note:*** While specifying a monitor direction for your first monitor is allowed, this does nothing and it will +_**Please Note:**_ While specifying a monitor direction for your first monitor is allowed, this does nothing and it will be positioned at (0,0). Also the direction is always from the center out, so you can specify `auto-up` then `auto-left`, but the left monitors will just be left of the origin and above the origin. You can also specify duplicate directions and monitors will continue to go in that direction. @@ -231,15 +233,15 @@ monitor = eDP-1, 2880x1800@90, 0x0, 1, transform, 1 Transform list: -``` -0 -> normal (no transforms) -1 -> 90 degrees -2 -> 180 degrees -3 -> 270 degrees -4 -> flipped -5 -> flipped + 90 degrees -6 -> flipped + 180 degrees -7 -> flipped + 270 degrees +```plain +0 -> normal (no transforms) +1 -> 90 degrees +2 -> 180 degrees +3 -> 270 degrees +4 -> flipped +5 -> flipped + 90 degrees +6 -> flipped + 180 degrees +7 -> flipped + 270 degrees ``` ## Default workspace diff --git a/pages/Configuring/Multi-GPU.md b/pages/Configuring/Multi-GPU.md index ec1b89d..bb11198 100644 --- a/pages/Configuring/Multi-GPU.md +++ b/pages/Configuring/Multi-GPU.md @@ -19,7 +19,7 @@ For this case, the writer is taking the example of their laptop. Upon running `lspci | grep -E 'VGA|3D'`, One can list all the video devices available. -``` +```plain 01:00.0 VGA compatible controller: NVIDIA Corporation TU117M [GeForce GTX 1650 Mobile / Max-Q] (rev a1) 06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] (rev c6) ``` @@ -29,7 +29,7 @@ Here it is clear that 2 GPUs are available, the dedicated NVIDIA GTX 1650 Mobile Now, run `ls -l /dev/dri/by-path` -``` +```plain total 0 lrwxrwxrwx 1 root root 8 Jul 14 15:45 pci-0000:01:00.0-card -> ../card0 lrwxrwxrwx 1 root root 13 Jul 14 15:45 pci-0000:01:00.0-render -> ../renderD128 @@ -64,7 +64,7 @@ required. If instead you would like to use another GPU, or the wrong GPU is picked by default, set `AQ_DRM_DEVICES` to a `:`-separated list of card paths, e.g. -``` +```plain env = AQ_DRM_DEVICES,/dev/dri/card0:/dev/dri/card1 ``` diff --git a/pages/Configuring/Uncommon-tips-&-tricks.md b/pages/Configuring/Uncommon-tips-&-tricks.md index 0b2a5bb..b6d9c38 100644 --- a/pages/Configuring/Uncommon-tips-&-tricks.md +++ b/pages/Configuring/Uncommon-tips-&-tricks.md @@ -8,7 +8,7 @@ title: Uncommon tips & tricks The easiest way to accomplish this is to set this using XKB settings, for example: -``` +```ini input { kb_layout = us,cz kb_variant = ,qwerty @@ -69,7 +69,7 @@ submap = reset ## Remap Caps-Lock to Ctrl -``` +```ini input { kb_options = ctrl:nocaps } @@ -77,13 +77,14 @@ input { ## Swap Caps-Lock and Escape -``` +```ini input { kb_options = caps:swapescape } ``` ## Set F13-F24 as usual function keys + By default, F13-F24 are mapped by xkb as various "XF86" keysyms. These cause binding issues in many programs. One example is OBS Studio, which does not detect the XF86 keysyms as usable keybindings, making you unable to use them for binds. This option @@ -94,15 +95,17 @@ This option was only added recently to `xkeyboard-config`. Please ensure you are 2.43 or greater for this option to do anything. {{< /callout >}} -``` +```ini input { kb_options = fkeys:basic_13-24 } ``` -## Minimize windows using special workspaces +## Minimize windows using special workspaces + This approach uses special workspaces to mimic the "minimize window" function, by using a single keybind to toggle the minimized state. Note that one keybind can only handle one window. + ```ini bind = $mod, S, togglespecialworkspace, magic bind = $mod, S, movetoworkspace, +0 diff --git a/pages/Configuring/Using-hyprctl.md b/pages/Configuring/Using-hyprctl.md index a17b004..ee86c46 100644 --- a/pages/Configuring/Using-hyprctl.md +++ b/pages/Configuring/Using-hyprctl.md @@ -194,6 +194,7 @@ To disable: ```sh hyprctl seterror disable ``` + ### notify Sends a notification using the built-in Hyprland notification system. diff --git a/pages/Configuring/Variables.md b/pages/Configuring/Variables.md index ede3276..22b676d 100644 --- a/pages/Configuring/Variables.md +++ b/pages/Configuring/Variables.md @@ -347,7 +347,7 @@ _Subcategory `group:groupbar:`_ | name | description | type | default | | --- | --- | --- | --- | | enabled | enables groupbars | bool | true | -| font_family | font used to display groupbar titles, use `misc:font_family` if not specified | string | [[Empty]] | +| font_family | font used to display groupbar titles, use `misc:font_family` if not specified | string | [\[Empty]] | | font_size | font size of groupbar title | int | 8 | | gradients | enables gradients | bool | true | | height | height of the groupbar | int | 14 | @@ -369,7 +369,7 @@ _Subcategory `group:groupbar:`_ | disable_splash_rendering | disables the Hyprland splash rendering. (requires a monitor reload to take effect) | bool | false | | col.splash | Changes the color of the splash text (requires a monitor reload to take effect). | color | 0xffffffff | | font_family | Set the global default font to render the text including debug fps/notification, config error messages and etc., selected from system fonts. | string | Sans | -| splash_font_family | Changes the font used to render the splash text, selected from system fonts (requires a monitor reload to take effect). | string | [[Empty]] | +| splash_font_family | Changes the font used to render the splash text, selected from system fonts (requires a monitor reload to take effect). | string | [\[Empty]] | | force_default_wallpaper | Enforce any of the 3 default wallpapers. Setting this to `0` or `1` disables the anime background. `-1` means "random". [-1/0/1/2] | int | -1 | | vfr | controls the VFR status of Hyprland. Heavily recommended to leave enabled to conserve resources. | bool | true | | vrr | controls the VRR (Adaptive Sync) of your monitors. 0 - off, 1 - on, 2 - fullscreen only [0/1/2] | int | 0 | @@ -381,8 +381,8 @@ _Subcategory `group:groupbar:`_ | animate_mouse_windowdragging | If true, will animate windows being dragged by mouse, note that this can cause weird behavior on some curves | bool | false | | disable_autoreload | If true, the config will not reload automatically on save, and instead needs to be reloaded with `hyprctl reload`. Might save on battery. | bool | false | | enable_swallow | Enable window swallowing | bool | false | -| swallow_regex | The *class* regex to be used for windows that should be swallowed (usually, a terminal). To know more about the list of regex which can be used [use this cheatsheet](https://github.com/ziishaned/learn-regex/blob/master/README.md). | str | \[\[Empty\]\] | -| swallow_exception_regex | The *title* regex to be used for windows that should *not* be swallowed by the windows specified in swallow_regex (e.g. wev). The regex is matched against the parent (e.g. Kitty) window's title on the assumption that it changes to whatever process it's running. | str | \[\[Empty\]\] | +| swallow_regex | The _class_ regex to be used for windows that should be swallowed (usually, a terminal). To know more about the list of regex which can be used [use this cheatsheet](https://github.com/ziishaned/learn-regex/blob/master/README.md). | str | \[\[Empty\]\] | +| swallow_exception_regex | The _title_ regex to be used for windows that should _not_ be swallowed by the windows specified in swallow_regex (e.g. wev). The regex is matched against the parent (e.g. Kitty) window's title on the assumption that it changes to whatever process it's running. | str | \[\[Empty\]\] | | focus_on_activate | Whether Hyprland should focus an app that requests to be focused (an `activate` request) | bool | false | | mouse_move_focuses_monitor | Whether mouse moving into a different monitor should focus it | bool | true | | render_ahead_of_time | [Warning: buggy] starts rendering _before_ your monitor displays a frame in order to lower latency | bool | false | diff --git a/pages/Configuring/Window-Rules.md b/pages/Configuring/Window-Rules.md index 0c050cb..b428dce 100644 --- a/pages/Configuring/Window-Rules.md +++ b/pages/Configuring/Window-Rules.md @@ -118,7 +118,7 @@ It is not possible to `float` (or any other of the static rules) a window based | monitor \[id\] | sets the monitor on which a window should open. `id` can be either id or name (either e.g. `1` or e.g. `DP-1`) | | workspace \[w\] | sets the workspace on which a window should open (for workspace syntax, see [dispatchers->workspaces](../Dispatchers#workspaces)). You can also make \[w\] to `unset`, will unset all previous workspace rules applied to this window. You can also add `silent` after the workspace to make the window open silently. | | noinitialfocus | disables the initial focus to the window | -| pin | pins the window (i.e. show it on all workspaces) *note: floating only* | +| pin | pins the window (i.e. show it on all workspaces) _note: floating only_ | | unset | removes all previously set rules for the given parameters. Please note it has to match EXACTLY. | | nomaxsize | removes max size limitations. Especially useful with windows that report invalid max sizes (e.g. winecfg) | | stayfocused | forces focus on the window as long as it's visible | diff --git a/pages/Configuring/Workspace-Rules.md b/pages/Configuring/Workspace-Rules.md index f234074..ab00256 100644 --- a/pages/Configuring/Workspace-Rules.md +++ b/pages/Configuring/Workspace-Rules.md @@ -19,19 +19,20 @@ Selectors have props separated by a space. No spaces are allowed inside props themselves. Props: - - `r[A-B]` - ID range from A to B inclusive - - `s[bool]` - Whether the workspace is special or not - - `n[bool]`, `n[s:string]`, `n[e:string]` - named actions. `n[bool]` -> - whether a workspace is a named workspace, `s` and `e` are starts and ends - with respectively - - `m[monitor]` - Monitor selector - - `w[(flags)A-B]`, `w[(flags)X]` - Prop for window counts on the workspace. - A-B is an inclusive range, X is a specific number. Flags can be omitted. - It can be `t` for tiled-only, `f` for floating-only, `g` to count groups - instead of windows, and `v` to count only visible windows. - - `f[-1]`, `f[0]`, `f[1]`, `f[2]` - fullscreen state of the workspace. `-1`: no - fullscreen, `0`: fullscreen, `1`: maximized, `2`, fullscreen without - fullscreen state sent to the window. + +- `r[A-B]` - ID range from A to B inclusive +- `s[bool]` - Whether the workspace is special or not +- `n[bool]`, `n[s:string]`, `n[e:string]` - named actions. `n[bool]` -> + whether a workspace is a named workspace, `s` and `e` are starts and ends + with respectively +- `m[monitor]` - Monitor selector +- `w[(flags)A-B]`, `w[(flags)X]` - Prop for window counts on the workspace. + A-B is an inclusive range, X is a specific number. Flags can be omitted. + It can be `t` for tiled-only, `f` for floating-only, `g` to count groups + instead of windows, and `v` to count only visible windows. +- `f[-1]`, `f[0]`, `f[1]`, `f[2]` - fullscreen state of the workspace. `-1`: no + fullscreen, `0`: fullscreen, `1`: maximized, `2`, fullscreen without + fullscreen state sent to the window. ### Syntax diff --git a/pages/Connect/_index.md b/pages/Connect/_index.md index 3ac256d..cfa5883 100644 --- a/pages/Connect/_index.md +++ b/pages/Connect/_index.md @@ -9,13 +9,11 @@ These are the links to official Hyprland-related spaces or profiles: Twitter: [twitter.com/hyprwm](https://twitter.com/hyprwm) - ## Spaces Discord: [discord.gg/hQ9XvMUjjr](https://discord.gg/hQ9XvMUjjr)
Matrix: `#hyprland:matrix.vaxry.net` - ## Other hyprland.org git instance: [code.hyprland.org](https://code.hyprland.org/)
diff --git a/pages/Contributing and Debugging/_index.md b/pages/Contributing and Debugging/_index.md index a340ef9..ca9e096 100644 --- a/pages/Contributing and Debugging/_index.md +++ b/pages/Contributing and Debugging/_index.md @@ -27,7 +27,7 @@ that you can copy to your .vscode/ folder in the repo root. With that, you can build in debug, go to the debugging tab and hit `(gdb) Launch`. -*note:* You probably want to set `watchdog_timeout = 0` in the debug {} section +_note:_ You probably want to set `watchdog_timeout = 0` in the debug {} section of your config. Otherwise Hyprland will notice its hanging when you hit a breakpoint and it will crash after you continue out of it. @@ -78,7 +78,7 @@ If you want proper LSP support in an editor that doesn't automatically set it up, use clangd. You'll probably notice there will be a bunch of warnings because we haven't generated compile commands, to do this run: -``` +```sh cmake -S . -B build/ -G Ninja -DCMAKE_EXPORT_COMPILE_COMMANDS=ON ``` diff --git a/pages/Crashes and Bugs/_index.md b/pages/Crashes and Bugs/_index.md index 4aad1b3..7539c43 100644 --- a/pages/Crashes and Bugs/_index.md +++ b/pages/Crashes and Bugs/_index.md @@ -53,10 +53,10 @@ Report an issue on GitHub or on the Discord server. 1. Build Hyprland in debug (`make debug`). 2. Start Hyprland and get it to crash. 3. In a tty or terminal, do `coredumpctl debug Hyprland`. - - If gdb asks you for symbols, say `y`. - - If it asks about paging, say `c`. + - If gdb asks you for symbols, say `y`. + - If it asks about paging, say `c`. 4. Once you get to `(gdb)`, start file logging with `set logging on`. - - For a specific file, use `set logging file output.log`. + - For a specific file, use `set logging file output.log`. 5. Run `bt -full`, then `exit` once finished, and attach the output. ## Obtaining a trace log @@ -152,7 +152,11 @@ we can render to) and put it on your screen (via the gpu) instead of a window. Freezes, glitches, and others, can be caused by issues with Hyprland's communication with DRM, the driver or kernel. In those cases, a DRM log is helpful. -_Please note, these logs are EXTREMELY verbose. Please reproduce your bug(s) ASAP to avoid getting a 1GB log_ +{{< callout >}} + +Please note, these logs are EXTREMELY verbose. Please reproduce your bug(s) ASAP to avoid getting a 1GB log. + +{{< /callout >}} ```sh echo 0x19F | sudo tee /sys/module/drm/parameters/debug # cnables verbose drm logging diff --git a/pages/FAQ/_index.md b/pages/FAQ/_index.md index 6d2bfa6..eab2f10 100644 --- a/pages/FAQ/_index.md +++ b/pages/FAQ/_index.md @@ -35,10 +35,10 @@ _[wiki page](../Crashes-and-Bugs)_ For Nvidia graphics - This issue appears to be resolved when using Nvidia Drivers 525.60.11 or later, but it may persist with older drivers. -For systems with limited hardware (Ex. iGPU, USB-C, USB Hubs) - Set `env = AQ_NO_MODIFIERS,1` in your config \ +For systems with limited hardware (Ex. iGPU, USB-C, USB Hubs) - Set `env = AQ_NO_MODIFIERS,1` in your config. To diagnose if you have the exact problem above you can get a [DRM log](https://wiki.hyprland.org/Crashes-and-Bugs/#debugging-drm-issues) and look for -``` +```plain Requested display configuration exceeds system DDB limitations ``` @@ -78,7 +78,6 @@ utility, try our own screenshotting utility: **Option 2:** You can also use hyprshot, more info [here](https://github.com/Gustash/Hyprshot). - **Option 3:** Install `flameshot`. Flameshot has many built-in features like allowing you to draw with a paintbrush, @@ -90,7 +89,7 @@ The options above are smoother and more native to Wayland. If you still want to use Flameshot, here are some configuration recommendations by users who've found workarounds. -``` +```ini # noanim isn't necessary but animations with these rules might look bad. use at your own discretion. windowrulev2 = noanim, class:^(flameshot)$ windowrulev2 = float, class:^(flameshot)$ @@ -158,6 +157,7 @@ Be aware that they will not prevent tty-changing using Ctrl-Alt-F1...F7. ### How do I change me mouse cursor? See [hyprcursor](../Hypr-Ecosystem/hyprcursor) + 1. Set the GTK cursor using [nwg-look](https://github.com/nwg-piotr/nwg-look). 2. Add `exec-once=hyprctl setcursor [THEME] [SIZE]` to your config and restart Hyprland. @@ -351,10 +351,10 @@ pop-up. It should look something like this: ```bash Window 55d794495400 -> : - ... - class: [CLASS here] - title: [TITLE here] - ... + ... + class: [CLASS here] + title: [TITLE here] + ... ``` If the pop-up disappears as you hover over it, you can add to your config: @@ -414,7 +414,7 @@ monitor = Unknown-1,disabled If you are using a -git package, this is a common occurrence when ABI-breaking updates are done. -***Do not*** symlink different .so versions, this will cause crashes!!! +_**Do not**_ symlink different .so versions, this will cause crashes!!! Instead, find all hypr* packages with `-git` you have installed, remove them (possibly remove dependencies of them, too) and simply install them again. diff --git a/pages/Getting Started/Installation.md b/pages/Getting Started/Installation.md index 31043c3..e816d96 100644 --- a/pages/Getting Started/Installation.md +++ b/pages/Getting Started/Installation.md @@ -341,6 +341,7 @@ epmi hypridle epmi hyprpaper epmi hyprpicker ``` + {{% /details %}} {{% details title="Solus*" closed="true" %}} diff --git a/pages/Getting Started/Master-Tutorial.md b/pages/Getting Started/Master-Tutorial.md index b51ed42..a27bcb9 100644 --- a/pages/Getting Started/Master-Tutorial.md +++ b/pages/Getting Started/Master-Tutorial.md @@ -19,14 +19,22 @@ repositories. ## Nvidia? -_If not using an Nvidia card, skip this step_ +{{< callout type=info >}} + +If not using an Nvidia card, skip this step. + +{{< /callout >}} Please take a look at [The Nvidia page](../../Nvidia) before launching. It has information regarding the needed environment and tweaks. ## VM? -_If not using a VM, skip this step_ +{{< callout type=info >}} + +If not using a VM, skip this step. + +{{< /callout >}} In a VM, make sure you have 3D acceleration enabled in your `virtio` config (or `virt-manager`) otherwise Hyprland _**will not work**_. @@ -37,7 +45,7 @@ Please bear in mind 3D acceleration in VMs may be pretty slow. ## Launching Hyprland -Hyprland can be executed by typing `Hyprland` in your tty. +Hyprland can be executed by typing `Hyprland` in your tty. Systemd users can also start Hyprland, by typing `systemctl --user start hyprland-session.service` in tty. This method provides additional features, such as [xdg-autostart](https://www.freedesktop.org/software/systemd/man/latest/systemd-xdg-autostart-generator.html) support and ability to enable services for programs that rely on a graphical session and provide such services (e.g waybar). diff --git a/pages/Hypr Ecosystem/_index.md b/pages/Hypr Ecosystem/_index.md index 4c6cb63..59b6309 100644 --- a/pages/Hypr Ecosystem/_index.md +++ b/pages/Hypr Ecosystem/_index.md @@ -14,19 +14,20 @@ These docs always target latest -git branch of respective apps. ## Wiki pages ### Apps/utilities for the user - - **[hyprpaper](./hyprpaper)** - - **[hyprpicker](./hyprpicker)** - - **[hypridle](./hypridle)** - - **[hyprlock](./hyprlock)** - - **[xdg-desktop-portal-hyprland](./xdg-desktop-portal-hyprland)** - - **[hyprsysteminfo](./hyprsysteminfo)** - - **[hyprsunset](./hyprsunset)** - - **[hyprpolkitagent](./hyprpolkitagent)** + +- **[hyprpaper](./hyprpaper)** +- **[hyprpicker](./hyprpicker)** +- **[hypridle](./hypridle)** +- **[hyprlock](./hyprlock)** +- **[xdg-desktop-portal-hyprland](./xdg-desktop-portal-hyprland)** +- **[hyprsysteminfo](./hyprsysteminfo)** +- **[hyprsunset](./hyprsunset)** +- **[hyprpolkitagent](./hyprpolkitagent)** ### Libraries and other utilities - - **[hyprcursor](./hyprcursor)** - - **[hyprutils](./hyprutils)** - - **[hyprlang](./hyprlang)** - - **[hyprwayland-scanner](./hyprwayland-scanner)** - - **[aquamarine](./aquamarine)** - + +- **[hyprcursor](./hyprcursor)** +- **[hyprutils](./hyprutils)** +- **[hyprlang](./hyprlang)** +- **[hyprwayland-scanner](./hyprwayland-scanner)** +- **[aquamarine](./aquamarine)** diff --git a/pages/Hypr Ecosystem/aquamarine.md b/pages/Hypr Ecosystem/aquamarine.md index 5c892c1..602175b 100644 --- a/pages/Hypr Ecosystem/aquamarine.md +++ b/pages/Hypr Ecosystem/aquamarine.md @@ -24,4 +24,3 @@ Configuration options are passed via environment variables starting with `AQ_` t ## Documentation Documentation will come soon. - diff --git a/pages/Hypr Ecosystem/hyprcursor.md b/pages/Hypr Ecosystem/hyprcursor.md index d7024a6..e22f4e9 100644 --- a/pages/Hypr Ecosystem/hyprcursor.md +++ b/pages/Hypr Ecosystem/hyprcursor.md @@ -2,6 +2,7 @@ weight: 101 title: hyprcursor --- + hyprcursor is a new cursor theme format that has many advantages over the widely used xcursor. @@ -22,8 +23,9 @@ to potential permission issues. You can set your theme with envvars, or with `hyprctl setcursor`. Env: - - `HYPRCURSOR_THEME` controls the theme. - - `HYPRCURSOR_SIZE` controls the cursor size. + +- `HYPRCURSOR_THEME` controls the theme. +- `HYPRCURSOR_SIZE` controls the cursor size. example snippet of `hyprland.conf`: diff --git a/pages/Hypr Ecosystem/hyprlang.md b/pages/Hypr Ecosystem/hyprlang.md index 7c670ae..b7f6276 100644 --- a/pages/Hypr Ecosystem/hyprlang.md +++ b/pages/Hypr Ecosystem/hyprlang.md @@ -30,6 +30,7 @@ there only for legibility. Categories can be regular, and "special". Both are specified the same: + ```ini category { variable = value @@ -37,6 +38,7 @@ category { ``` Special categories can have other properties, like for example containing a key: + ```ini special { key = A @@ -54,11 +56,13 @@ example uses those for per-device configs. ### Defining variables Variables can be defined like so: + ```ini $VAR = myData ``` Later on, you can use them like so: + ```ini $SUFFIX = -san $NAME = Jeremy @@ -91,11 +95,13 @@ someoption = blah ### Inline options If you want to specify an option inline, without opening and closing a category, the separator is `:`: + ```ini category:variable = value ``` If the category is special and requires a key, you can do: + ```ini category[keyvalue]:variable = value ``` @@ -105,4 +111,3 @@ This is the syntax used by `hyprctl keyword`, for example. ## Developer documentation See the documentation at [hyprland.org/hyprlang](https://hyprland.org/hyprlang/). - diff --git a/pages/Hypr Ecosystem/hyprlock.md b/pages/Hypr Ecosystem/hyprlock.md index c34ed39..f179c47 100644 --- a/pages/Hypr Ecosystem/hyprlock.md +++ b/pages/Hypr Ecosystem/hyprlock.md @@ -14,6 +14,7 @@ is not required, but recommended. Without it, locking shows the current screen. ### General Variables in the `general` category: + | variable | description | type | default | | -- | -- | -- | -- | | disable_loading_bar | disables the loading bar on the bottom of the screen while hyprlock is booting up. | bool | false | @@ -32,13 +33,14 @@ Variables in the `general` category: {{< callout type=warning >}} -If you are not on hyprland, or your `XDG_CURRENT_DESKTOP` is not Hyprland, the fade out will be disabled and the value of your `no_fade_out` variable will be ignored. +If you are not on hyprland, or your `XDG_CURRENT_DESKTOP` is not Hyprland, the fade out will be disabled and the value of your `no_fade_out` variable will be ignored. {{< /callout >}} ## Keyboard Shortcuts and Actions The following keys and key-combinations describe hyprlock's default behaviour: + | input | description | | -- | -- | | ESC | Clear password buffer | @@ -80,6 +82,7 @@ widget_name { ### Shadowable Some widgets are shadowable, meaning they can have a shadow. For those widgets, you get: + | variable | description | type | default | | -- | -- | -- | -- | | shadow_passes | passes for shadow, 0 to disable | int | 0 | @@ -212,17 +215,20 @@ input-field { When `outline_thickness` set to `0`, the color of the inner box will be changed instead of the outer. Behaviour of `swap_font_color` is as follows: - - `outline_thickness` is `0`: if set, font color will be swapped with inner one on color change events (e.g. Caps-lock on or password check). - - `outline_thickness` is not `0`: if set, font and inner colors will be swapped on password check and authentication failure. + +- `outline_thickness` is `0`: if set, font color will be swapped with inner one on color change events (e.g. Caps-lock on or password check). +- `outline_thickness` is not `0`: if set, font and inner colors will be swapped on password check and authentication failure. {{< /callout >}} Available variables for `placeholder_text`: - - `$PROMPT` - prompt text provided by pam. Usually this will be "Password: ", but it depends on your pam configuration. + +- `$PROMPT` - prompt text provided by pam. Usually this will be "Password: ", but it depends on your pam configuration. Available variables for `fail_text`: - - `$FAIL` - pam fail reason - - `$ATTEMPTS` - number of failed authentication attempts + +- `$FAIL` - pam fail reason +- `$ATTEMPTS` - number of failed authentication attempts ### Label @@ -247,15 +253,16 @@ label { ``` Available variables for `text`: - - `$USER` - username (e.g. linux-user) - - `$DESC` - user description (e.g. Linux User) - - `$TIME` - current time in 24-hour format (e.g. `13:37`) - - `$TIME12` - current time in 12-hour format (e.g. `1:37 PM`) - - `$PROMPT` - last pam prompt - - `$FAIL` - last pam fail reason - - `$ATTEMPTS` - failed attempts - - `$LAYOUT` - current keyboard layout - - `$FPRINTMESSAGE` - last message from fingerprint matching + +- `$USER` - username (e.g. linux-user) +- `$DESC` - user description (e.g. Linux User) +- `$TIME` - current time in 24-hour format (e.g. `13:37`) +- `$TIME12` - current time in 12-hour format (e.g. `1:37 PM`) +- `$PROMPT` - last pam prompt +- `$FAIL` - last pam fail reason +- `$ATTEMPTS` - failed attempts +- `$LAYOUT` - current keyboard layout +- `$FPRINTMESSAGE` - last message from fingerprint matching `text` also supports launching commands, for example: @@ -264,12 +271,13 @@ text = cmd[update:1000] echo "$(date)" ``` Worth noting: - - `update:` - time is in ms. - - label can be forcefully updated by specifying `update: