From c3c72c8345ccb6b648b370fa6f261f612d44f42e Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Thu, 8 Feb 2024 04:29:48 +0100 Subject: [PATCH] Setup qwerty-fr keyboard layout --- .xinitrc | 2 +- home/default.nix | 5 +++++ system/default.nix | 16 ++++++++++++++-- system/qwerty-fr.nix | 16 ++++++++++++++++ 4 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 system/qwerty-fr.nix diff --git a/.xinitrc b/.xinitrc index f87019e..38b4445 100644 --- a/.xinitrc +++ b/.xinitrc @@ -46,7 +46,7 @@ fi # ↓ Wm startup picom -f & -setxkbmap fr & +#setxkbmap fr & flameshot & dunst & exec qtile start diff --git a/home/default.nix b/home/default.nix index 6562de5..d25be56 100644 --- a/home/default.nix +++ b/home/default.nix @@ -25,10 +25,15 @@ ./kitty.nix ]; + xdg.configFile."xkb/symbols/us_qwerty-fr".source = + "${pkgs.callPackage ./../system/qwerty-fr.nix {}}" + + "/usr/share/X11/xkb/symbols/us_qwerty-fr"; home = { inherit username; homeDirectory = "/home/${username}"; + keyboard = null; + stateVersion = "22.11"; sessionVariables = { EDITOR = pkgs.nano; diff --git a/system/default.nix b/system/default.nix index 13653a0..e9c615e 100644 --- a/system/default.nix +++ b/system/default.nix @@ -133,7 +133,7 @@ nix-ld = { enable = true; libraries = with pkgs; [ - glibc + glibc ]; }; }; @@ -174,12 +174,24 @@ xserver = { enable = true; displayManager.startx.enable = true; - layout = "fr"; + layout = "custom"; + + extraLayouts.custom = { + description = "oui oui baguette"; + languages = [ "eng" ]; + symbolsFile = + let + ouioui = (pkgs.callPackage ./qwerty-fr.nix { }); + in + "${ouioui}/usr/share/X11/xkb/symbols/us_qwerty-fr"; + }; + libinput = { enable = true; mouse.accelProfile = "flat"; touchpad.accelProfile = "flat"; }; + windowManager.qtile = { enable = true; backend = "x11"; diff --git a/system/qwerty-fr.nix b/system/qwerty-fr.nix new file mode 100644 index 0000000..0cfd794 --- /dev/null +++ b/system/qwerty-fr.nix @@ -0,0 +1,16 @@ +{ pkgs }: +pkgs.stdenv.mkDerivation rec { + pname = "qwerty-fr"; + version = "0.7.3"; + + src = pkgs.fetchzip { + url = "https://github.com/qwerty-fr/${pname}/releases/download/v${version}/${pname}_${version}_linux.zip"; + sha256 = "sha256-BZLp5Tw1BH/m1wHYAUbfP86uZ6poAjD2D/uvl2ajmi0="; + stripRoot = false; + }; + + installPhase = '' + mkdir -p $out + mv usr $out/usr + ''; +}