From 0f307aaaf5a74108bb319c1aaa5efabc60ed6978 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Mon, 19 Feb 2024 16:52:58 +0000 Subject: [PATCH] Add hypr ecosystem pages --- pages/Hypr Ecosystem/_index.md | 13 ++++ pages/Hypr Ecosystem/hypridle.md | 39 ++++++++++ pages/Hypr Ecosystem/hyprlock.md | 72 +++++++++++++++++++ pages/Hypr Ecosystem/hyprpaper.md | 49 +++++++++++++ .../xdg-desktop-portal-hyprland.md | 12 ++++ 5 files changed, 185 insertions(+) create mode 100644 pages/Hypr Ecosystem/_index.md create mode 100644 pages/Hypr Ecosystem/hypridle.md create mode 100644 pages/Hypr Ecosystem/hyprlock.md create mode 100644 pages/Hypr Ecosystem/hyprpaper.md create mode 100644 pages/Hypr Ecosystem/xdg-desktop-portal-hyprland.md diff --git a/pages/Hypr Ecosystem/_index.md b/pages/Hypr Ecosystem/_index.md new file mode 100644 index 0000000..9b8c8b3 --- /dev/null +++ b/pages/Hypr Ecosystem/_index.md @@ -0,0 +1,13 @@ +This wiki section hosts docs for various hypr* projects. See a list bere: + +{{< hint type=info >}} + +These docs always target latest -git branch of respective apps. + +{{< /hint >}} + +## Wiki pages + - **[hyprpaper](./hyprpaper)** + - **[hyprpicker](./hyprpicker)** + - **[hypridle](./hypridle)** + - **[xdg-desktop-portal-hyprland](./xdg-desktop-portal-hyprland)** \ No newline at end of file diff --git a/pages/Hypr Ecosystem/hypridle.md b/pages/Hypr Ecosystem/hypridle.md new file mode 100644 index 0000000..4625105 --- /dev/null +++ b/pages/Hypr Ecosystem/hypridle.md @@ -0,0 +1,39 @@ +hypridle is hyprland's idle management daemon. + +{{ < toc >}} + +## Configuration + +Configuration is done via the config file at `~/.config/hypridle.conf`. +A config file is required; hypridle won't run without one. + +### General + +Variables in the `general` category: + +| variable | description | type | default | +| -- | -- | -- | -- | +| lock_cmd | command to run when receiving a dbus lock event (e.g. `loginctl lock-session`) | string | empty | +| unlock_cmd | command to run when receiving a dbus unlock event (e.g. `loginctl unlock-session`) | string | empty | +| before_sleep_cmd | command to run when receiving a dbus prepare_sleep event | string | empty | +| after_sleep_cmd | command to run when receiving a dbus post prepare_sleep event | string | empty | +| ignore_dbus_inhibit | whether to ignore dbus-sent idle inhibit events (e.g. from firefox) | bool | false | + +### Listeners + +Hypridle uses listeners to define actions on idleness. + +Every listener has a _timeout_ (in seconds). After idling for _timeout_ seconds, `on-timeout` will fire. +When action is resumed after idle, `on-resume` will fire. + +Example listener: + +```ini +listener { + timeout = 500 # in seconds + on-timeout = notify-send "You are idle!" # command to run when timeout has passed + on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired. +} +``` + +You can define as many listeners as you want. \ No newline at end of file diff --git a/pages/Hypr Ecosystem/hyprlock.md b/pages/Hypr Ecosystem/hyprlock.md new file mode 100644 index 0000000..ba05e3c --- /dev/null +++ b/pages/Hypr Ecosystem/hyprlock.md @@ -0,0 +1,72 @@ +hyprlock is a simple, yet fast, multi-threaded and GPU-accelerated screen +lock for hyprland. + +{{ < toc >}} + +## Configuration + +### 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 | + +## Widgets + +The entire configuration of how hyprlock looks is done via widgets. + +```ini +widget_name { + monitor = + # further options +} +``` + +`monitor` can be left empty for "all monitors" + +## Widget List + +### Background + +Draws a background image. + +```ini +background { + monitor = + path = /home/me/someImage.png # only png supported for now +} +``` + +### Input Field + +Draws a password input field. + +```ini +input-field { + monitor = + size = 200, 50 + outline_thickness = 3 + outer_color = rgb(151515) + inner_color = rgb(200, 200, 200) + fade_on_empty = true +} +``` + +### Label + +Draws a label. + +```ini +label { + monitor = + text = Hi there, $USER # Supported variables: $USER + color = rgba(200, 200, 200, 1.0) + position = 0, 80 # position is added to the halign and valign props. For absolute, use "none" in either. + font_size = 25 + font_family = Noto Sans + + halign = center # left, center, right, none + valign = center # top, center, bottom, none +} +``` \ No newline at end of file diff --git a/pages/Hypr Ecosystem/hyprpaper.md b/pages/Hypr Ecosystem/hyprpaper.md new file mode 100644 index 0000000..e9efd2b --- /dev/null +++ b/pages/Hypr Ecosystem/hyprpaper.md @@ -0,0 +1,49 @@ +hyprpaper is a fast, IPC-controlled wallpaper utility for hyprland. + +{{ < toc >}} + +## Configuration + +The config file is located at `~/.config/hypridle.conf`. It is not required. + +Configuration is done via `preload`s, which _load_ an image into memory. +Then, you use `wallpaper` keywords to apply the preloaded image to your +monitor(s): + +```ini +preload = /home/me/amongus.png +wallpaper = DP-1,/home/me/amongus.png +``` + +For wallpaper keywords: + - all paths have to be absolute (or start with `~`) + - leaving the first parameter (monitor) empty will act as a wildcard + - adding `contain:` before the path (e.g. `contain:/home/me/amongus.png`) will adjust the fitting algorithm to contain. + +You can also `unload` preloaded images to free up memory. `unloadAll` is also a thing, does what it says. + +### Misc options +| variable | description | type | default | +| -- | -- | -- | -- | +| splash | enable rendering of the hyprland splash over the wallpaper | bool | false | +| splash_offset | how far (in % of height) up should the splash be displayed | float | 2.0 | +| ipc | whether to enable IPC | bool | true | + +## IPC + +hyprpaper supports IPC via `hyprctl`. Every dispatcher mentioned in [Configuration](#Configuration) +can be called with `hyprctl hyprpaper `. + +Additionally, you can get some info about the current state of hyprpaper with `listloaded` and `listactive`. + +Examples: +```sh +hyprctl hyprpaper preload "~/Pictures/myepicpng.png" +hyprctl hyprpaper wallpaper "DP-1,~/Pictures/myepicpng.png" +``` + +```sh +hyprctl hyprpaper listloaded +``` + +Please note all paths have to be absolute (or start with `~`). diff --git a/pages/Hypr Ecosystem/xdg-desktop-portal-hyprland.md b/pages/Hypr Ecosystem/xdg-desktop-portal-hyprland.md new file mode 100644 index 0000000..93cc3bc --- /dev/null +++ b/pages/Hypr Ecosystem/xdg-desktop-portal-hyprland.md @@ -0,0 +1,12 @@ +xdg-desktop-portal-hyprland is Hyprland's xdg-desktop-portal implementation. +It allows for screensharing, global shortcuts, etc. + +{{ < toc >}} + +## Configuration + +No configuration. + +## Troubleshooting + +See the [XDG Desktop Portal wiki page](../../Useful Utilities/Hyprland-desktop-portal). \ No newline at end of file