{ mkDashDefault, pkgs, ... }: let layout = pkgs.writeText "dashie" '' xkb_symbols "dashie" { include "us(basic)" include "level3(ralt_switch)" key { [ a, A, adiaeresis, Adiaeresis ] }; key { [ o, O, odiaeresis, Odiaeresis ] }; key { [ u, U, udiaeresis, Udiaeresis ] }; }; ''; in { environment.systemPackages = mkDashDefault [pkgs.xorg.xkbcomp]; services.xserver.xkb.extraLayouts.dashie = { description = "US layout with 'umlaut'"; languages = ["eng"]; symbolsFile = "${layout}"; }; }