1 - create layout, cz hack for example: in /usr/share/X11/xkb/symbols create file for ex: czus default partial alphanumeric_keys xkb_symbols "basic" { include "us(basic)" name[Group1]= "Custom CZ - US"; key { [equal, plus, dead_acute, dead_caron ] }; key { [ w, W, ecaron, Ecaron ] }; key { [ e, E, eacute, Eacute ] }; key { [ a, A, aacute, Aacute ] }; key { [ i, I, iacute, Iacute ] }; key { [ o, O, oacute, Oacute ] }; key { [ y, Y, yacute, Yacute ] }; key { [ u, U, uacute, Uacute ] }; key { [ j, J, uring, Uring ] }; key { [ s, S, scaron, Scaron ] }; key { [ z, Z, zcaron, Zcaron ] }; key { [ c, C, ccaron, Ccaron ] }; key { [ r, R, rcaron, Rcaron ] }; key { [ t, T, tcaron, Tcaron ] }; key { [ d, D, dcaron, Dcaron ] }; key { [ n, N, ncaron, Ncaron ] }; key { [ space, space, nobreakspace, nobreakspace] }; include "level3(ralt_switch)" }; 2 - edit /usr/share/X11/xkb/rules/evdev under ! option = symbols add: czus:czhack = +czus(czhack) 3 - edit /usr/share/X11/xkb/rules/evdev.xml under add: czus Kuxa's czus czus cze czus CZUS base 4 - edit dconf open dconf-editor and under /org/gnome/desktop/input-sources edit xkb-options to: [('xkb','czus')] apply log out and log back in and you're done keyboard layout may be needed to change to czus