Compare commits
1 Commits
07024b469b
...
07674293a4
Author | SHA1 | Date |
---|---|---|
|
07674293a4 |
|
@ -118,7 +118,7 @@ set.
|
||||||
|
|
||||||
## Workspaces
|
## Workspaces
|
||||||
|
|
||||||
You have nine choices:
|
You have eight choices:
|
||||||
|
|
||||||
- ID: e.g. `1`, `2`, or `3`
|
- ID: e.g. `1`, `2`, or `3`
|
||||||
|
|
||||||
|
@ -132,7 +132,7 @@ You have nine choices:
|
||||||
|
|
||||||
- Name: e.g. `name:Web`, `name:Anime` or `name:Better anime`
|
- Name: e.g. `name:Web`, `name:Anime` or `name:Better anime`
|
||||||
|
|
||||||
- Previous workspace: `previous`, or `previous_per_monitor`
|
- Previous workspace: `previous`
|
||||||
|
|
||||||
- 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. `emptynm`
|
- 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. `emptynm`
|
||||||
|
|
||||||
|
|
|
@ -1,53 +0,0 @@
|
||||||
---
|
|
||||||
title: Contributing and Debugging
|
|
||||||
---
|
|
||||||
|
|
||||||
Everything needed to build and debug Hyprland is included inside the provided
|
|
||||||
`devShell`.
|
|
||||||
|
|
||||||
To use it in the cloned repo, simply run `nix develop`.
|
|
||||||
|
|
||||||
## Build in debug mode
|
|
||||||
|
|
||||||
A debug build is already provided through
|
|
||||||
`hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland-debug`.
|
|
||||||
|
|
||||||
## Bisecting an issue
|
|
||||||
|
|
||||||
Follow the
|
|
||||||
[Bisecting an issue](https://wiki.hyprland.org/Crashes-and-Bugs/#bisecting-an-issue)
|
|
||||||
guide. To build, run `nix build '.?submodules=1'`.
|
|
||||||
|
|
||||||
To view logs, pass the `--print-build-logs` (`-L`) flag.
|
|
||||||
|
|
||||||
To keep a failed build directory, pass the `--keep-failed` flag.
|
|
||||||
|
|
||||||
## Building the Wayland stack with ASan
|
|
||||||
|
|
||||||
Run `nix develop` first, then follow the
|
|
||||||
[Building with ASan](https://wiki.hyprland.org/Crashes-and-Bugs/#bisecting-an-issue)
|
|
||||||
guide.
|
|
||||||
|
|
||||||
## Manual building
|
|
||||||
|
|
||||||
Nix works differently than other build systems, so it has its own abstractions
|
|
||||||
over popular build systems such as Meson, CMake and Ninja.
|
|
||||||
|
|
||||||
In order to manually build Hyprland, you can run the following commands, while
|
|
||||||
in the `nix develop` shell.
|
|
||||||
|
|
||||||
For CMake:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ cmakeConfigurePhase # to run the CMake configure phase
|
|
||||||
$ ninjaBuildPhase # to run the Ninja build phase
|
|
||||||
$ ninjaInstallPhase # to run the Ninja install phase
|
|
||||||
```
|
|
||||||
|
|
||||||
For Meson:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
$ mesonConfigurePhase # to run the Meson configure phase
|
|
||||||
$ ninjaBuildPhase # to run the Ninja build phase
|
|
||||||
$ mesonInstallPhase # to run the Meson install phase
|
|
||||||
```
|
|
|
@ -8,11 +8,9 @@ For a list of available options, check the
|
||||||
{{< callout >}}
|
{{< callout >}}
|
||||||
|
|
||||||
- _(Required) NixOS Module_: enables critical components needed to run Hyprland
|
- _(Required) NixOS Module_: enables critical components needed to run Hyprland
|
||||||
properly. Without this, you may have issues with XDG Portals, or missing
|
properly
|
||||||
session files in your Display Manager.
|
- _(Optional) Home-manager module_: lets you declaratively configure Hyprland
|
||||||
- _(Optional) Home Manager module_: lets you declaratively configure Hyprland
|
{{< /callout >}}
|
||||||
|
|
||||||
{{< /callout >}}
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
@ -20,6 +18,9 @@ For a list of available options, check the
|
||||||
|
|
||||||
{{< tab "Home Manager" >}}
|
{{< tab "Home Manager" >}}
|
||||||
|
|
||||||
|
Home Manager has options for Hyprland without needing to import the Flake
|
||||||
|
module.
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
{
|
||||||
wayland.windowManager.hyprland.enable = true;
|
wayland.windowManager.hyprland.enable = true;
|
||||||
|
@ -65,9 +66,7 @@ Don't forget to replace `user@hostname` with your username and hostname!
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
hyprland.homeManagerModules.default
|
hyprland.homeManagerModules.default
|
||||||
{
|
{wayland.windowManager.hyprland.enable = true;}
|
||||||
wayland.windowManager.hyprland.enable = true;
|
|
||||||
}
|
|
||||||
# ...
|
# ...
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
@ -108,7 +107,7 @@ in {
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
package = hyprland-flake.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
package = hyprland-flake.packages.${pkgs.system}.hyprland;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
@ -120,11 +119,11 @@ in {
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
Once the module is enabled, you can use it to declaratively configure Hyprland.
|
Once the module is enabled, you can use it to declaratively configure Hyprland.
|
||||||
Here is an example config:
|
Here is an example config, made to work with either the upstream Home Manager
|
||||||
|
module, or the flake-based Home Manager module.
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
# home.nix
|
# home.nix
|
||||||
|
|
||||||
{
|
{
|
||||||
wayland.windowManager.hyprland.settings = {
|
wayland.windowManager.hyprland.settings = {
|
||||||
"$mod" = "SUPER";
|
"$mod" = "SUPER";
|
||||||
|
@ -158,20 +157,16 @@ Here is an example config:
|
||||||
Hyprland plugins can be added through the `plugins` option:
|
Hyprland plugins can be added through the `plugins` option:
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
wayland.windowManager.hyprland.plugins = [
|
||||||
wayland.windowManager.hyprland.plugins = [
|
inputs.hyprland-plugins.packages.${pkgs.system}.hyprbars
|
||||||
inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprbars
|
"/absolute/path/to/plugin.so"
|
||||||
"/absolute/path/to/plugin.so"
|
];
|
||||||
];
|
|
||||||
}
|
|
||||||
```
|
```
|
||||||
|
|
||||||
For examples on how to build Hyprland plugins using Nix, see the
|
For examples on how to build Hyprland plugins using Nix, see the
|
||||||
[Nix/Plugins](../Plugins) page.
|
[official plugins](https://github.com/hyprwm/hyprland-plugins).
|
||||||
|
|
||||||
## FAQ
|
## Fixing problems with themes
|
||||||
|
|
||||||
### Fixing problems with themes
|
|
||||||
|
|
||||||
If your themes for mouse cursors, icons or windows don't load correctly, try
|
If your themes for mouse cursors, icons or windows don't load correctly, try
|
||||||
setting them with `home.pointerCursor` and `gtk.theme`, which enable a bunch of
|
setting them with `home.pointerCursor` and `gtk.theme`, which enable a bunch of
|
||||||
|
@ -180,37 +175,34 @@ compatibility options that should make the themes load in all situations.
|
||||||
Example configuration:
|
Example configuration:
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
home.pointerCursor = {
|
||||||
home.pointerCursor = {
|
gtk.enable = true;
|
||||||
gtk.enable = true;
|
# x11.enable = true;
|
||||||
# x11.enable = true;
|
package = pkgs.bibata-cursors;
|
||||||
package = pkgs.bibata-cursors;
|
name = "Bibata-Modern-Classic";
|
||||||
name = "Bibata-Modern-Classic";
|
size = 16;
|
||||||
size = 16;
|
};
|
||||||
|
|
||||||
|
gtk = {
|
||||||
|
enable = true;
|
||||||
|
theme = {
|
||||||
|
package = pkgs.flat-remix-gtk;
|
||||||
|
name = "Flat-Remix-GTK-Grey-Darkest";
|
||||||
};
|
};
|
||||||
|
|
||||||
gtk = {
|
iconTheme = {
|
||||||
enable = true;
|
package = pkgs.gnome.adwaita-icon-theme;
|
||||||
|
name = "Adwaita";
|
||||||
theme = {
|
|
||||||
package = pkgs.flat-remix-gtk;
|
|
||||||
name = "Flat-Remix-GTK-Grey-Darkest";
|
|
||||||
};
|
|
||||||
|
|
||||||
iconTheme = {
|
|
||||||
package = pkgs.gnome.adwaita-icon-theme;
|
|
||||||
name = "Adwaita";
|
|
||||||
};
|
|
||||||
|
|
||||||
font = {
|
|
||||||
name = "Sans";
|
|
||||||
size = 11;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
|
||||||
|
font = {
|
||||||
|
name = "Sans";
|
||||||
|
size = 11;
|
||||||
|
};
|
||||||
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
### Programs don't work in systemd services, but do on the terminal
|
## Programs don't work in systemd services, but do on the terminal
|
||||||
|
|
||||||
This problem is related to systemd not importing the environment by default. It
|
This problem is related to systemd not importing the environment by default. It
|
||||||
will not have knowledge of `PATH`, so it cannot run the commands in the
|
will not have knowledge of `PATH`, so it cannot run the commands in the
|
||||||
|
|
|
@ -3,7 +3,7 @@ title: Hyprland on NixOS
|
||||||
---
|
---
|
||||||
|
|
||||||
The NixOS module enables critical components needed to run Hyprland properly,
|
The NixOS module enables critical components needed to run Hyprland properly,
|
||||||
such as polkit,
|
such as: polkit,
|
||||||
[xdg-desktop-portal-hyprland](https://github.com/hyprwm/xdg-desktop-portal-hyprland),
|
[xdg-desktop-portal-hyprland](https://github.com/hyprwm/xdg-desktop-portal-hyprland),
|
||||||
graphics drivers, fonts, dconf, xwayland, and adding a proper Desktop Entry to
|
graphics drivers, fonts, dconf, xwayland, and adding a proper Desktop Entry to
|
||||||
your Display Manager.
|
your Display Manager.
|
||||||
|
@ -14,9 +14,8 @@ Make sure to check out the options of the
|
||||||
{{< callout >}}
|
{{< callout >}}
|
||||||
|
|
||||||
- _(Required) NixOS Module_: enables critical components needed to run Hyprland
|
- _(Required) NixOS Module_: enables critical components needed to run Hyprland
|
||||||
properly. Without this, you may have issues with XDG Portals, or missing
|
properly
|
||||||
session files in your Display Manager.
|
- _(Optional) Home-manager module_: lets you declaratively configure Hyprland
|
||||||
- _(Optional) Home Manager Module_: lets you declaratively configure Hyprland
|
|
||||||
|
|
||||||
{{< /callout >}}
|
{{< /callout >}}
|
||||||
|
|
||||||
|
@ -27,12 +26,12 @@ Make sure to check out the options of the
|
||||||
```nix
|
```nix
|
||||||
# configuration.nix
|
# configuration.nix
|
||||||
|
|
||||||
{
|
{pkgs, ...}: {
|
||||||
programs.hyprland.enable = true;
|
programs.hyprland.enable = true;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
This will use the Hyprland version included in the Nixpkgs release you're using.
|
This will use the Hyprland version that Nixpkgs has.
|
||||||
|
|
||||||
{{< /tab >}}
|
{{< /tab >}}
|
||||||
|
|
||||||
|
@ -70,7 +69,7 @@ this:
|
||||||
{inputs, pkgs, ...}: {
|
{inputs, pkgs, ...}: {
|
||||||
programs.hyprland = {
|
programs.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
@ -78,7 +77,7 @@ this:
|
||||||
Don't forget to change the `HOSTNAME` to your actual hostname!
|
Don't forget to change the `HOSTNAME` to your actual hostname!
|
||||||
|
|
||||||
If you start experiencing lag and FPS drops in games or programs like Blender on
|
If you start experiencing lag and FPS drops in games or programs like Blender on
|
||||||
**stable** NixOS when using the Hyprland flake, it is most likely a `mesa`
|
**stable** NixOS when using the Hyprland flake, it most likely is a `mesa`
|
||||||
version mismatch between your system and Hyprland.
|
version mismatch between your system and Hyprland.
|
||||||
|
|
||||||
You can fix this issue by using `mesa` from Hyprland's `nixpkgs` input:
|
You can fix this issue by using `mesa` from Hyprland's `nixpkgs` input:
|
||||||
|
@ -127,7 +126,7 @@ have to compile Hyprland yourself.
|
||||||
in {
|
in {
|
||||||
programs.hyprland = {
|
programs.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
package = hyprland.packages.${pkgs.system}.hyprland;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
|
@ -6,8 +6,7 @@ If you use Nix on distros other than NixOS, you can still use Hyprland.
|
||||||
|
|
||||||
The best option would be through [Home Manager](../Hyprland-on-Home-Manager).
|
The best option would be through [Home Manager](../Hyprland-on-Home-Manager).
|
||||||
|
|
||||||
However, if Home Manager is not for you, Hyprland can be installed as a normal
|
However, if Home Manager is not for you, you can use it as a normal package.
|
||||||
package.
|
|
||||||
|
|
||||||
First, [enable flakes](https://nixos.wiki/wiki/Flakes#Enable_flakes). Once you
|
First, [enable flakes](https://nixos.wiki/wiki/Flakes#Enable_flakes). Once you
|
||||||
have flakes working, install Hyprland through `nix profile`:
|
have flakes working, install Hyprland through `nix profile`:
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
title: Options & Overrides
|
title: Options & Overrides
|
||||||
---
|
---
|
||||||
|
|
||||||
You can override the package through the `.override` or `.overrideAttrs`
|
You can override the package through `.override` or `.overrideAttrs`. This is
|
||||||
mechanisms. This is easily achievable on [NixOS](../Hyprland-on-NixOS) or
|
easily achievable on [NixOS](../Hyprland-on-NixOS) or
|
||||||
[Home Manager](../Hyprland-on-Home-Manager).
|
[Home Manager](../Hyprland-on-Home-Manager).
|
||||||
|
|
||||||
## Package options
|
## Package options
|
||||||
|
@ -14,7 +14,7 @@ be changed by setting the appropriate option to `true`/`false`.
|
||||||
### Package
|
### Package
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
(pkgs.hyprland.override { # or inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland
|
(pkgs.hyprland.override { # or inputs.hyprland.packages.${pkgs.system}.hyprland
|
||||||
enableXWayland = true; # whether to enable XWayland
|
enableXWayland = true; # whether to enable XWayland
|
||||||
legacyRenderer = false; # whether to use the legacy renderer (for old GPUs)
|
legacyRenderer = false; # whether to use the legacy renderer (for old GPUs)
|
||||||
withSystemd = true; # whether to build with systemd support
|
withSystemd = true; # whether to build with systemd support
|
||||||
|
@ -24,12 +24,10 @@ be changed by setting the appropriate option to `true`/`false`.
|
||||||
### NixOS & HM modules
|
### NixOS & HM modules
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
programs.hyprland = { # or wayland.windowManager.hyprland
|
||||||
programs.hyprland = { # or wayland.windowManager.hyprland
|
enable = true;
|
||||||
enable = true;
|
xwayland.enable = true;
|
||||||
xwayland.enable = true;
|
};
|
||||||
};
|
|
||||||
}
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Options descriptions
|
## Options descriptions
|
||||||
|
@ -39,6 +37,10 @@ be changed by setting the appropriate option to `true`/`false`.
|
||||||
XWayland is enabled by default in the Nix package. You can disable it either in
|
XWayland is enabled by default in the Nix package. You can disable it either in
|
||||||
the package itself, or through the module options.
|
the package itself, or through the module options.
|
||||||
|
|
||||||
|
### XWayland HiDPI
|
||||||
|
|
||||||
|
See [XWayland](../../Configuring/XWayland).
|
||||||
|
|
||||||
## Using Nix repl
|
## Using Nix repl
|
||||||
|
|
||||||
If you're using Nix (and not NixOS or Home Manager) and you want to override,
|
If you're using Nix (and not NixOS or Home Manager) and you want to override,
|
||||||
|
|
|
@ -1,121 +0,0 @@
|
||||||
---
|
|
||||||
title: Plugins
|
|
||||||
---
|
|
||||||
|
|
||||||
Hyprland plugins are managed differently on Nix than on other distros. The most
|
|
||||||
notable change is that `hyprpm` is unsupported, but we have our own way of
|
|
||||||
building plugins.
|
|
||||||
|
|
||||||
## Using plugins from Nixpkgs
|
|
||||||
|
|
||||||
In Nixpkgs, there are Hyprland plugins packaged for the Hyprland version in
|
|
||||||
Nixpkgs. You can use them like this:
|
|
||||||
|
|
||||||
```nix
|
|
||||||
{pkgs, ...}: {
|
|
||||||
wayland.windowManager.hyprland.plugins = [
|
|
||||||
pkgs.hyprlandPlugins.<plugin>
|
|
||||||
];
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
You can find which plugins are included using
|
|
||||||
`nix search nixpkgs#hyprlandPlugins`.
|
|
||||||
|
|
||||||
## hyprland-plugins
|
|
||||||
|
|
||||||
Official plugins made/maintained by vaxry.
|
|
||||||
|
|
||||||
To use these plugins, it is recommended that you are already using the Hyprland
|
|
||||||
flake, and **not** the Nixpkgs version.
|
|
||||||
|
|
||||||
First, add the flake to your flake inputs:
|
|
||||||
|
|
||||||
```nix
|
|
||||||
{
|
|
||||||
inputs = {
|
|
||||||
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
|
||||||
|
|
||||||
hyprland-plugins = {
|
|
||||||
url = "github:hyprwm/hyprland-plugins";
|
|
||||||
inputs.hyprland.follows = "hyprland";
|
|
||||||
};
|
|
||||||
|
|
||||||
# ...
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
The `inputs.hyprland.follows` line makes hyprland-plugins use the exact Hyprland
|
|
||||||
revision you have locked. This means there aren't any version mismatches, as
|
|
||||||
long as you update both inputs at once.
|
|
||||||
|
|
||||||
The next step is adding the plugins to Hyprland:
|
|
||||||
|
|
||||||
```nix
|
|
||||||
{inputs, pkgs, ...}: {
|
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
plugins = [
|
|
||||||
inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.<plugin>
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Building plugins with Nix
|
|
||||||
|
|
||||||
The plugins inside Nixpkgs, as well as the ones in `hyprland-plugins`, are built
|
|
||||||
using a general function, `mkHyprlandPlugin`. Any plugin can be made to work
|
|
||||||
with it. The general usage is presented below, exemplified through hy3's
|
|
||||||
derivation:
|
|
||||||
|
|
||||||
```nix
|
|
||||||
{pkgs, ...}: {
|
|
||||||
hy3 = pkgs.callPackage ({
|
|
||||||
lib,
|
|
||||||
fetchFromGitHub,
|
|
||||||
cmake,
|
|
||||||
hyprland,
|
|
||||||
hyprlandPlugins,
|
|
||||||
}:
|
|
||||||
hyprlandPlugins.mkHyprlandPlugin pkgs.hyprland {
|
|
||||||
pluginName = "hy3";
|
|
||||||
version = "0.39.1";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "outfoxxed";
|
|
||||||
repo = "hy3";
|
|
||||||
rev = "hl0.39.1";
|
|
||||||
hash = "sha256-PqVld+oFziSt7VZTNBomPyboaMEAIkerPQFwNJL/Wjw=";
|
|
||||||
};
|
|
||||||
|
|
||||||
# any nativeBuildInputs required for the plugin
|
|
||||||
nativeBuildInputs = [cmake];
|
|
||||||
|
|
||||||
# set any buildInputs that are not already included in Hyprland
|
|
||||||
# by default, Hyprland and its dependencies are included
|
|
||||||
buildInputs = [];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = "https://github.com/outfoxxed/hy3";
|
|
||||||
description = "Hyprland plugin for an i3 / sway like manual tiling layout";
|
|
||||||
license = lib.licenses.gpl3;
|
|
||||||
platforms = lib.platforms.linux;
|
|
||||||
maintainers = with lib.maintainers; [aacebedo];
|
|
||||||
};
|
|
||||||
});
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
In a similar manner to `stdenv.mkDerivation`, `mkHyprlandPlugin` takes an
|
|
||||||
attrset with mostly the same options as `mkDerivation`, as it is essentially a
|
|
||||||
wrapper around it.
|
|
||||||
|
|
||||||
The exception is that it also takes a `hyprland` package before the attrset, in
|
|
||||||
case you want to build with a different package than the one in Nixpkgs.
|
|
||||||
|
|
||||||
This is not always the best way to build for a different version, and it is
|
|
||||||
recommended that you use an overlay to apply your desired Hyprland package in
|
|
||||||
Nixpkgs instead.
|
|
|
@ -8,22 +8,27 @@ To install Hyprland on NixOS, we provide a NixOS and a Home Manager module.
|
||||||
{{< callout title=Note >}}
|
{{< callout title=Note >}}
|
||||||
|
|
||||||
- _(Required) NixOS Module_: enables critical components needed to run Hyprland
|
- _(Required) NixOS Module_: enables critical components needed to run Hyprland
|
||||||
properly. Without this, you may have issues with XDG Portals, or missing
|
properly
|
||||||
session files in your Display Manager.
|
- _(Optional) Home-manager module_: lets you declaratively configure Hyprland
|
||||||
- _(Optional) Home Manager Module_: lets you declaratively configure Hyprland
|
|
||||||
|
|
||||||
{{< /callout >}}
|
{{< /callout >}}
|
||||||
|
|
||||||
## NixOS module
|
## NixOS module
|
||||||
|
|
||||||
|
The module is now upstreamed into Nixpkgs, which means all you need in your
|
||||||
|
configuration is:
|
||||||
|
|
||||||
```nix
|
```nix
|
||||||
{
|
{config, pkgs, ...}: {
|
||||||
programs.hyprland.enable = true;
|
programs.hyprland.enable = true;
|
||||||
# Optional, hint electron apps to use wayland:
|
# Optional, hint electron apps to use wayland:
|
||||||
# environment.sessionVariables.NIXOS_OZONE_WL = "1";
|
# environment.sessionVariables.NIXOS_OZONE_WL = "1";
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Note that the command to run hyprland is `Hyprland` (with a capital `H`) and not
|
||||||
|
`hyprland`.
|
||||||
|
|
||||||
For more options, see
|
For more options, see
|
||||||
[module options](https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=hyprland).
|
[module options](https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=hyprland).
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,7 @@ For the config you can check out [DistroTube's Configuring Emacs](https://gitlab
|
||||||
|
|
||||||
Anyrun is a Wayland-native krunner-like runner, made with customizability in
|
Anyrun is a Wayland-native krunner-like runner, made with customizability in
|
||||||
mind. It is modular and extensible through plugins. It can be used as an app launcher with its Applications Plugin.
|
mind. It is modular and extensible through plugins. It can be used as an app launcher with its Applications Plugin.
|
||||||
[GitHub](https://github.com/anyrun-org/anyrun)
|
[GitHub](https://github.com/Kirottu/anyrun)
|
||||||
|
|
||||||
## Walker
|
## Walker
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue