1

Modules/Hyprland: Update keyboard layout options

This commit is contained in:
2025-07-21 14:09:15 +02:00
parent c8cd4cc8b6
commit 5ccd110efd
4 changed files with 31 additions and 19 deletions

View File

@ -21,8 +21,11 @@
fcitx.enable = true;
hyprland = {
kb-layout = "us";
kb-variant = "altgr-intl";
keyboard = {
layout = "us";
variant = "altgr-intl";
option = "nodeadkeys";
};
monitors = {
"HDMI-A-1" = {

View File

@ -7,10 +7,11 @@
config = {
modules = {
hyprland = {
# kb-layout = "de";
# kb-variant = "nodeadkeys";
kb-layout = "us";
kb-variant = "altgr-intl";
keyboard = {
layout = "us";
variant = "altgr-intl";
option = "nodeadkeys";
};
monitors = {
"eDP-1" = {

View File

@ -102,7 +102,7 @@
"hyprsunset --identity"
# HACK: Hyprland doesn't set the xwayland/x11 keymap correctly
"setxkbmap -layout ${hyprland.kb-layout} -variant ${hyprland.kb-variant} -model pc104"
"setxkbmap -layout ${hyprland.keyboard.layout} -variant ${hyprland.keyboard.variant} -option ${hyprland.keyboard.option} -model pc104"
# HACK: Flatpak doesn't find applications in the system PATH
"systemctl --user import-environment PATH && systemctl --user restart xdg-desktop-portal.service"
@ -419,10 +419,10 @@ in {
};
input = {
kb_layout = "${hyprland.kb-layout}";
kb_variant = "${hyprland.kb-variant}";
kb_layout = hyprland.keyboard.layout;
kb_variant = hyprland.keyboard.variant;
kb_options = hyprland.keyboard.option;
kb_model = "pc104";
kb_options = "";
kb_rules = "";
follow_mouse = true;

View File

@ -5,16 +5,24 @@
}: rec {
enable = lib.mkEnableOption "Hyprland Window Manager + Compositor";
kb-layout = lib.mkOption {
type = lib.types.str;
example = "us";
description = "Keyboard layout to use";
};
keyboard = {
layout = lib.mkOption {
type = lib.types.str;
example = "us";
description = "Keyboard layout to use";
};
kb-variant = lib.mkOption {
type = lib.types.str;
example = "altgr-intl";
description = "Keyboard layout variant";
variant = lib.mkOption {
type = lib.types.str;
example = "altgr-intl";
description = "Keyboard layout variant";
};
option = lib.mkOption {
type = lib.types.str;
example = "nodeadkeys";
description = "Keyboard layout options";
};
};
dunst.enable = lib.mkEnableOption "Enable dunst notification daemon";