Hyprforge

What's in it/hyprforge-settings

Settings for Hyprland, in plain Lua.

Displays, keyboard and mouse, keybinds, window rules, animations, Wi-Fi, Bluetooth, the way it all looks. Change something here and it's written to a Lua file your config loads, so you can always open it and see exactly what happened.

The Settings app
Fig. 1Settings, on the Appearance page.
§1Every page

There are nineteen pages in five groups. Click through them below. In the app, Ctrl+K searches all of them at once, down to Hyprland's own option names, so typing gaps_in or just "gaps" lands you in the same place.

hyprforge-settingsa sketch, not a screenshot

Set up

Finishes an install one checked item at a time, and remembers what it did so each item can be undone. It opens here the first time you launch Settings.

  • Turn on the suite's background services
  • Bind the clipboard, emoji picker and other popups to keys
  • Point hypridle at the Hyprforge lock screen
  • Make Files and Media your default apps
  • Set up the open and save dialog
§2Your config

It never rewrites what you wrote.

Settings writes its own files and adds a short, marked block of require() lines to your hyprland.lua. Your own config loads after it, so anything you wrote by hand still wins. It never touches a .conf.

When you first open it, it reads the keybinds and rules you already have, using a sandboxed Lua evaluator rather than guessing with a regex. If a file won't parse, you're told, and nothing gets written over it.

-- Hyprforge-managed requires (evaluated first) — do not edit by hand.
require("hyprforge/window-rules")
require("hyprforge/monitors")
-- end Hyprforge-managed requires

-- and then yours, untouched
require("my-binds")
§3More of it
The Settings search palette
Fig. 2Searching every page and option at once.
The Keybinds page
Fig. 3Keybinds, including the ones you wrote by hand.
The Displays page in Settings
Fig. 4Arranging two monitors. Keep the change or it reverts by itself.
§4Worth knowing

Settings is the one piece that isn't small. It brings most of the suite's libraries with it, because it's the place all of them are configured. Every other piece installs and runs without it.