mirror of
https://github.com/hyprwm/hyprland-wiki.git
synced 2024-11-22 20:55:59 +01:00
Update FAQ
Co-authored-by: NotAShelf <itsashelf@gmail.com> Co-authored-by: Antonino Scordino <a.scordino.07@gmail.com> Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
This commit is contained in:
parent
e33199fe54
commit
35c5576242
1 changed files with 75 additions and 90 deletions
|
@ -1,7 +1,8 @@
|
||||||
|
# Table of Contents
|
||||||
|
|
||||||
{{< toc format=html >}}
|
{{< toc format=html >}}
|
||||||
|
|
||||||
### Nothing renders / screen is empty / crash on opening first app
|
# Nothing renders / screen is empty / crash on opening first app
|
||||||
|
|
||||||
Possible causes:
|
Possible causes:
|
||||||
|
|
||||||
|
@ -10,121 +11,109 @@ Possible causes:
|
||||||
Use something like `qt5ct` (QT) and `lxappearance` (GTK) (\*for GTK you can also
|
Use something like `qt5ct` (QT) and `lxappearance` (GTK) (\*for GTK you can also
|
||||||
set up themes with envvars) to set up your themes.
|
set up themes with envvars) to set up your themes.
|
||||||
|
|
||||||
> Your PC is very, very old.
|
> Your PC is very, _very_ old.
|
||||||
|
|
||||||
In that case, see the
|
In that case, see the
|
||||||
[Installation Page](../../Getting-Started/Installation) and
|
[Installation Page](../../Getting-Started/Installation) and
|
||||||
try compiling with LEGACY_RENDERER
|
try compiling with LEGACY_RENDERER
|
||||||
|
|
||||||
*For more info about bugs and crashes, see this*
|
_For more info about bugs and crashes, see this_
|
||||||
*[wiki page](../../Crashes-and-Bugs)*
|
_[wiki page](../../Crashes-and-Bugs)_
|
||||||
|
|
||||||
### Me cursor no render?
|
# Me cursor no render?
|
||||||
|
|
||||||
Are you on NVIDIA? If so, then you have been a naughty boy and haven't listened
|
Are you on NVIDIA? If so, then you have been a naughty boy and haven't listened
|
||||||
to my tips on other pages. Use the `WLR_NO_HARDWARE_CURSORS=1` environment
|
to my tips on other pages. Use the `WLR_NO_HARDWARE_CURSORS=1` environment
|
||||||
variable.
|
variable.
|
||||||
|
|
||||||
### My external monitor is blank / doesn't render / receives no signal (laptop)
|
# My external monitor is blank / doesn't render / receives no signal (laptop)
|
||||||
|
|
||||||
For Radeon graphics - unfortunately, it's a bug in wlroots, and I can't
|
For Radeon graphics - unfortunately, it's a bug in wlroots, and not much
|
||||||
do much about it other than wait for the wlroots devs to fix it:
|
can be done other than waiting for the wlroots devs to fix it:
|
||||||
[https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3451](https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3451)
|
[https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3451](https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3451)
|
||||||
|
|
||||||
For Nvidia graphics - unfortunately, it's a wlroots issue as well, most likely due to Nvidia's
|
For Nvidia graphics - unfortunately, it's a wlroots issue as well, most likely due to Nvidia's
|
||||||
lack of support and proprietary drivers.
|
lack of support and proprietary drivers.
|
||||||
|
|
||||||
There is a way to fix it that *might* work for you though:
|
There is a way to fix it that _might_ work for you though:
|
||||||
|
|
||||||
**Option 1:** Use *only* the external monitor
|
**Option 1:** Use _only_ the external monitor
|
||||||
|
|
||||||
By using `WLR_DRM_DEVICES=/dev/dri/card1` (or `card0`) you can force Hyprland to use only your dGPU,
|
By using `WLR_DRM_DEVICES=/dev/dri/card1` (or `card0`) you can force Hyprland to use only your dGPU,
|
||||||
meaning your laptop's screen will be gone but your external one will work.
|
meaning your laptop's screen will be gone but your external one will work.
|
||||||
|
|
||||||
**Option 2:** Use all outputs, at the cost of battery life.
|
**Option 2:** Use all outputs, at the cost of battery life.
|
||||||
|
|
||||||
By switching your laptop to only use the dGPU in the BIOS, you *might* be able to get everything to work,
|
By switching your laptop to only use the dGPU in the BIOS, you _might_ be able to get everything to work,
|
||||||
at the cost of high battery usage.
|
at the cost of high battery usage.
|
||||||
|
|
||||||
*Please note these are highly model-specific and might or might not work. If they don't, you're unfortunately out of luck.*
|
_Please note these are highly model-specific and might or might not work. If they don't, you're unfortunately out of luck._
|
||||||
|
|
||||||
You might try a USB-C to hdmi adapter though, maybe that could route the external monitor through the iGPU.
|
You might try a USB-C to hdmi adapter though, maybe that could route the external monitor through the iGPU.
|
||||||
|
|
||||||
### How do I screenshot?
|
# How do I screenshot?
|
||||||
|
|
||||||
Install `grim-git` and `slurp`
|
Install `grim` and `slurp`
|
||||||
|
|
||||||
Use a keybind (or execute) `grim -g $(slurp)`, select a region. A screenshot
|
Use a keybind (or execute) `grim -g "$(slurp)"`, select a region. A screenshot
|
||||||
will pop into your `~/Pictures/` (You can configure grim and slurp, see their
|
will pop into your `~/Pictures/` (You can configure grim and slurp, see their
|
||||||
GitHub pages).
|
GitHub pages).
|
||||||
|
|
||||||
For a more complete utility, try our own
|
For a more complete utility, try our own screenshotting utility:
|
||||||
[Grimblast](https://github.com/hyprwm/contrib).
|
[Grimblast](https://github.com/hyprwm/contrib).
|
||||||
|
|
||||||
### Screenshare / OBS no worky!
|
For recording videos, wf-recorder or OBS Studio could be used.
|
||||||
|
|
||||||
|
# Screenshare / OBS no worky
|
||||||
|
|
||||||
Check [Screensharing](../Useful-Utilities/Screen-Sharing).
|
Check [Screensharing](../Useful-Utilities/Screen-Sharing).
|
||||||
|
|
||||||
### How do I change my wallpaper?
|
# How do I change my wallpaper?
|
||||||
|
|
||||||
See [Wallpapers](../Useful-Utilities/Wallpapers).
|
See [Wallpapers](../Useful-Utilities/Wallpapers).
|
||||||
|
|
||||||
### My workspace (2, 3, or any other) is like... bugged?
|
# My games work poorly, especially proton ones
|
||||||
|
|
||||||
You did the below, unknowingly.
|
|
||||||
|
|
||||||
### My games work poorly, especially proton ones!
|
|
||||||
|
|
||||||
Use `gamescope`, tends to fix any and all issues with wayland/Hyprland.
|
Use `gamescope`, tends to fix any and all issues with wayland/Hyprland.
|
||||||
|
|
||||||
### How heavy is this?
|
# How heavy is this?
|
||||||
|
|
||||||
Not that much heavier than Xorg. If you want maximum performance, consider
|
Not that much heavier than Xorg. If you want maximum performance, consider
|
||||||
turning off the blur and animations.
|
turning off the blur and animations.
|
||||||
|
|
||||||
### Blur makes my GPU cry :(
|
# My monitor no worky
|
||||||
|
|
||||||
You probably forgot to turn on `decoration:blur_new_optimizations`. Thank me
|
|
||||||
later.
|
|
||||||
|
|
||||||
### My monitor no worky!
|
|
||||||
|
|
||||||
Try changing the mode in your config. If your preferred one doesn't work, try a
|
Try changing the mode in your config. If your preferred one doesn't work, try a
|
||||||
lower one. A good way to list all modes is to get `wlr-randr` and do a
|
lower one. A good way to list all modes is to get `wlr-randr` and do a
|
||||||
`wlr-randr --dryrun`
|
`wlr-randr --dryrun`
|
||||||
|
|
||||||
### How do I get a coredump?
|
# How do I update?
|
||||||
|
|
||||||
*These instructions are ONLY for systemd. If you use anything else, you should
|
Open a terminal where you cloned the repo.
|
||||||
know what you're doing.*
|
```bash
|
||||||
|
git pull
|
||||||
|
sudo make clear
|
||||||
|
sudo make cleaninstall
|
||||||
|
```
|
||||||
|
|
||||||
Launch `coredumpctl` in a terminal. Press <key>END</key> on the keyboard to go
|
If you are using the AUR (hyprland-git) package, you
|
||||||
to the end. Note the **last** (the one furthest to the bottom) crash that has
|
will need to cleanbuild to update the package. Paru
|
||||||
`/usr/bin/Hyprland` as an executable. Remember the PID of it (the first number
|
has been problematic with updating before, use Yay.
|
||||||
after the date in a given line) exit (<key>Ctrl</key>+<key>C</key>) type
|
|
||||||
`coredumpctl info PID` where `PID` is the remembered PID. Send the entire thing
|
|
||||||
as a file.
|
|
||||||
|
|
||||||
### How do I update?
|
# How do I screen lock?
|
||||||
|
|
||||||
open a terminal where you cloned the repo.
|
|
||||||
`git pull && sudo make clear && sudo make install`
|
|
||||||
|
|
||||||
### Waybar popups render behind the windows??
|
|
||||||
|
|
||||||
You have misconfigured Waybar. Make sure the `layer` in the waybar config is set to `top`, and not `bottom`.
|
|
||||||
|
|
||||||
### How do I screen lock?
|
|
||||||
|
|
||||||
Use a wayland-compatible locking utility using WLR protocols, e.g. `swaylock`.
|
Use a wayland-compatible locking utility using WLR protocols, e.g. `swaylock`.
|
||||||
|
|
||||||
### How do I change me mouse cursor?
|
# How do I change me mouse cursor?
|
||||||
|
|
||||||
Use a tool like for example `lxappearance` to change the GTK cursor.
|
Use a tool like for example `lxappearance` to change the GTK cursor.
|
||||||
|
|
||||||
After that, add `exec-once=hyprctl setcursor [THEME] [SIZE]` to your config and
|
After that, add `exec-once=hyprctl setcursor [THEME] [SIZE]` to your config and
|
||||||
restart Hyprland.
|
restart Hyprland.
|
||||||
|
|
||||||
|
For QT applications, Hyprland exports XCURSOR_SIZE as 24, which is the default.
|
||||||
|
You can overwrite this by exporting XCURSOR_SIZE to a different value in your wrapper.
|
||||||
|
|
||||||
Alternatively, change the config files manually according to the
|
Alternatively, change the config files manually according to the
|
||||||
[XDG specification (Arch Wiki link)](https://wiki.archlinux.org/title/Cursor_themes#Configuration).
|
[XDG specification (Arch Wiki link)](https://wiki.archlinux.org/title/Cursor_themes#Configuration).
|
||||||
|
|
||||||
|
@ -136,24 +125,21 @@ all good!
|
||||||
|
|
||||||
If it still doesn't work...
|
If it still doesn't work...
|
||||||
|
|
||||||
### GTK Settings no work / whatever!
|
# GTK Settings no work / whatever
|
||||||
|
|
||||||
[https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland](https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland)
|
[https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland](https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland)
|
||||||
|
|
||||||
### My \[program name\] is freezing!
|
# My \[program name\] is freezing
|
||||||
|
|
||||||
Make sure you have a notification daemon running, for example `dunst`. Autostart
|
Make sure you have a notification daemon running, for example `dunst`. Autostart
|
||||||
it with the `exec-once` keyword.
|
it with the `exec-once` keyword.
|
||||||
|
|
||||||
### I want to use Waybar, but the workspaces don't work!
|
# Waybar workspaces no worky???
|
||||||
|
|
||||||
Check [Status bars](../Useful-Utilities/Status-Bars).
|
Waybar has a set of caveats or settings that you need to be aware of. See
|
||||||
|
[Status bars](../Useful-Utilities/Status-Bars) for solutions.
|
||||||
|
|
||||||
### Waybar doesn't show the active workspace!
|
# How do I autostart my favorite apps?
|
||||||
|
|
||||||
Use the style for `#workspaces button.active`
|
|
||||||
|
|
||||||
### How do I autostart my favorite apps?
|
|
||||||
|
|
||||||
Using the window rules to assign apps to workspace you can setup a session start
|
Using the window rules to assign apps to workspace you can setup a session start
|
||||||
script to open a bunch of applications on various workspaces. The following
|
script to open a bunch of applications on various workspaces. The following
|
||||||
|
@ -181,7 +167,7 @@ exec-once=cleanup_after_start.sh
|
||||||
|
|
||||||
where `cleanup_after_start.sh` script contains:
|
where `cleanup_after_start.sh` script contains:
|
||||||
|
|
||||||
```sh
|
```bash
|
||||||
sleep 10
|
sleep 10
|
||||||
hyprctl keyword windowrule "workspace unset,kitty"
|
hyprctl keyword windowrule "workspace unset,kitty"
|
||||||
hyprctl keyword windowrule "workspace unset,Subl"
|
hyprctl keyword windowrule "workspace unset,Subl"
|
||||||
|
@ -191,7 +177,7 @@ hyprctl keyword windowrule "workspace unset,firefox"
|
||||||
|
|
||||||
in `sleep 10`, the 10 seconds is of course only a suggestion.
|
in `sleep 10`, the 10 seconds is of course only a suggestion.
|
||||||
|
|
||||||
### How do I move my favorite workspaces to a new monitor when I plug it in?
|
# How do I move my favorite workspaces to a new monitor when I plug it in?
|
||||||
|
|
||||||
if you want workspaces to automatically go to a monitor upon connection, use the
|
if you want workspaces to automatically go to a monitor upon connection, use the
|
||||||
following:
|
following:
|
||||||
|
@ -204,7 +190,7 @@ exec-once=handle_monitor_connect.sh
|
||||||
|
|
||||||
where `handle_monitor_connect.sh` is: (example)
|
where `handle_monitor_connect.sh` is: (example)
|
||||||
|
|
||||||
```sh
|
```bash
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
function handle {
|
function handle {
|
||||||
|
@ -223,29 +209,32 @@ if you want workspaces 1 2 4 5 to go to monitor 1 when connecting it.
|
||||||
|
|
||||||
Please note this requires `socat` to be installed.
|
Please note this requires `socat` to be installed.
|
||||||
|
|
||||||
### My tablet no worky??
|
# My tablet no worky??
|
||||||
|
|
||||||
Use [Open Tablet Driver](https://github.com/OpenTabletDriver/OpenTabletDriver)
|
Use [Open Tablet Driver](https://github.com/OpenTabletDriver/OpenTabletDriver)
|
||||||
to configure your tablet. In the future it will be supported in the config.
|
to configure your tablet. In the future it will be supported in the config.
|
||||||
Until then, OTD.
|
Until then, OTD is the way to go.
|
||||||
|
|
||||||
### Some of my apps take a really long time to open...?
|
# Some of my apps take a really long time to open...?
|
||||||
|
|
||||||
*~/.config/hypr/hyprland.conf*
|
_~/.config/hypr/hyprland.conf_
|
||||||
|
|
||||||
```ini
|
```ini
|
||||||
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||||
```
|
```
|
||||||
|
|
||||||
and
|
and
|
||||||
|
|
||||||
```ini
|
```ini
|
||||||
exec-once=systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
exec-once=systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||||
```
|
```
|
||||||
|
|
||||||
Make sure that your portals launch *after* this gets executed. For some people,
|
Make sure that your portals launch _after_ this gets executed. For some people,
|
||||||
they might launch before that has happened.
|
they might launch before that has happened.
|
||||||
|
|
||||||
In such cases, a script like this:
|
In such cases, a script like this:
|
||||||
```sh
|
|
||||||
|
```bash
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
sleep 4
|
sleep 4
|
||||||
killall xdg-desktop-portal-wlr
|
killall xdg-desktop-portal-wlr
|
||||||
|
@ -254,19 +243,15 @@ killall xdg-desktop-portal
|
||||||
sleep 4
|
sleep 4
|
||||||
/usr/lib/xdg-desktop-portal &
|
/usr/lib/xdg-desktop-portal &
|
||||||
```
|
```
|
||||||
|
|
||||||
launched with `exec-once` should fix all issues. Adjust the sleep durations to taste.
|
launched with `exec-once` should fix all issues. Adjust the sleep durations to taste.
|
||||||
|
|
||||||
### My cursor in QT apps is too big!
|
# How do I export envvars for Hyprland?
|
||||||
|
|
||||||
The QT cursor size can be fixed by setting the envvar `XCURSOR_SIZE=24`. You
|
|
||||||
should probably add it to your exported envvars.
|
|
||||||
|
|
||||||
### How do I export envvars for Hyprland?
|
|
||||||
|
|
||||||
As with any Display Server, Xorg included, you should probably make a script to
|
As with any Display Server, Xorg included, you should probably make a script to
|
||||||
launch it, for example:
|
launch it, for example:
|
||||||
|
|
||||||
```ini
|
```bash
|
||||||
export AMONG_US=1
|
export AMONG_US=1
|
||||||
exec Hyprland
|
exec Hyprland
|
||||||
```
|
```
|
||||||
|
@ -274,31 +259,31 @@ exec Hyprland
|
||||||
and launch that.
|
and launch that.
|
||||||
|
|
||||||
For Display Manager users, you can replace the `exec` entry in
|
For Display Manager users, you can replace the `exec` entry in
|
||||||
the `.desktop` file to point to your script.
|
the `.desktop` file to point to your script. You are recommended
|
||||||
|
to use absolute paths, such as `/home/username/Script` instead of `~/Script`
|
||||||
|
|
||||||
### I get random white flashes!
|
# I get random white flashes
|
||||||
|
|
||||||
Try disabling VFR with `misc:no_vfr=1`.
|
Try disabling VFR with `misc:no_vfr=1`.
|
||||||
|
|
||||||
### How do I make Hyprland draw as little power as possible on my laptop?
|
# How do I make Hyprland draw as little power as possible on my laptop?
|
||||||
|
|
||||||
I assume you already have `damage_tracking` on full. If you don't, do it. It's
|
I assume you already have `damage_tracking` on full. If you don't, change it. It's
|
||||||
heavily advised to use `full` regardless of anything.
|
heavily advised to use `full` regardless of anything.
|
||||||
|
|
||||||
Optimization options:
|
**_Useful Optimizations_**:
|
||||||
|
|
||||||
*feel free to ignore any that you find causing issues*
|
* `decoration:blur_new_optimizations = true`, to use new optimizations for
|
||||||
|
blurring.
|
||||||
|
|
||||||
`decoration:blur_new_optimizations = true`
|
* `decoration:blur = false` and `decoration:drop_shadow = false` to disable
|
||||||
|
fancy but battery hungry effects.
|
||||||
|
|
||||||
`decoration:blur = false`
|
* `misc:no_vfr = false`, since it'll lower the refresh rate when nothing is happening on-screen.
|
||||||
|
|
||||||
`decoration:drop_shadow = false`
|
* `misc:disable_autoreload = true` to stop Hyprland from reloading configuration
|
||||||
|
file each time that it changes.
|
||||||
|
|
||||||
`misc:no_vfr = false`
|
# How to fix games with window dancing?
|
||||||
|
|
||||||
*possibly* `misc:disable_autoreload = true`
|
|
||||||
|
|
||||||
### How to fix games with window dancing?
|
|
||||||
|
|
||||||
Read [this trick](../Configuring/Uncommon-tips--tricks/#window-dancing).
|
Read [this trick](../Configuring/Uncommon-tips--tricks/#window-dancing).
|
||||||
|
|
Loading…
Reference in a new issue