Configuring Hyprland

Configuring Hyprland

The config is located in ~/.config/hypr/hyprland.conf.

You can tell Hyprland to use a specific configuration file by using the --config (or -c) argument.

Hyprland will automatically generate an example config for you if you don’t have one. You can find an example config here.

By removing the line autogenerated=1 you’ll remove the yellow warning.

The config is reloaded the moment you save it. However, you can use hyprctl reload to reload the config manually.

Start a section with name { and end in } in separate lines!

The default config is not complete and does not list all the options / features of Hyprland. Please refer to this wiki page and the pages linked further down here for full configuration instructions.

Make sure to read the Variables page as well. It covers all the toggleable / numerical options.

Line style

Every config line is a command followed by a value.


The command can be a variable, or a special keyword (described further in this page)

You are allowed to input trailing spaces at the beginning and end.



is valid.


Comments are started with the # character.

If you want to escape it (put an actual # and not start a comment) you can use ##. It will be turned into a single # that WILL be a part of your line.

Escaping errors

If you use plugins, you may want to ignore errors from missing options/keywords so that you don’t get an error bar before they are loaded. To do so, do this:

# hyprlang noerror true

bind = MOD, KEY, something, amogus
someoption = blah

# hyprlang noerror false

Basic configuring

To configure the “options” of Hyprland, animations, styling, etc. see Variables.

Advanced configuring

Some keywords (binds, curves, execs, monitors, etc.) are not variables but define special behavior.

See all of them in Keywords and the sidebar.