Élie Bouttier 475912da59 default config: disable anglemod (#36) 10 mēneši atpakaļ
..
README.md 29d19d4e11 fix details in readme (#34) 10 mēneši atpakaļ
defalias_azerty_pc.kbd 07e16f6ef8 fix(azerty): Added NNBS to numrow layer (#32) 10 mēneši atpakaļ
defalias_bepo_pc.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
defalias_ergol_pc.kbd 5626468e10 fix(ergol): Comma & full stop in numrow layer (#31) 10 mēneši atpakaļ
defalias_optimot_pc.kbd 858a7c4c48 feat: Optimot symbols layer (#25) 11 mēneši atpakaļ
defalias_qwerty-lafayette_pc.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
defalias_qwerty_mac.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
defalias_qwerty_pc.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
defalias_qwertz_pc.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
deflayer_base.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
deflayer_base_lt.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
deflayer_base_lt_hrm.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
deflayer_navigation.kbd 19ed5fcc56 docs: readme and images matching actual Arsenik (#26) 10 mēneši atpakaļ
deflayer_navigation_vim.kbd 19ed5fcc56 docs: readme and images matching actual Arsenik (#26) 10 mēneši atpakaļ
deflayer_symbols_lafayette.kbd 19ed5fcc56 docs: readme and images matching actual Arsenik (#26) 10 mēneši atpakaļ
deflayer_symbols_lafayette_num.kbd 19ed5fcc56 docs: readme and images matching actual Arsenik (#26) 10 mēneši atpakaļ
deflayer_symbols_noop.kbd 1e46d36e2b fix: complete noop symbols layer with AG-< (#35) 10 mēneši atpakaļ
deflayer_symbols_noop_num.kbd 1e46d36e2b fix: complete noop symbols layer with AG-< (#35) 10 mēneši atpakaļ
defsrc_mac.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
defsrc_mac_anglemod.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
defsrc_pc.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
defsrc_pc_anglemod.kbd 948bfea3d8 Modular version by default, fixes multiple layouts bugs (#20) 11 mēneši atpakaļ
kanata.kbd 475912da59 default config: disable anglemod (#36) 10 mēneši atpakaļ

README.md

Arsenik Kanata

Installation

  • To get Arsenik, check out this repository with Git or download it.
  • Launch kanata.kbd with Kanata.
    • You can install Kanata by downloading a pre-built executable.
    • Follow the installation details of your operating system.

Windows

Windows users might prefer to download the kanata_winIOv2.exe version as it fixes some weird bugs like C and V inversion.

Note: This tip has been tested for version 1.6.1 of Kanata. In later versions the winIOv2 version might be the default.

Put the kanata_winIOv2.exe in the Kanata Arsenik folder, run it and you’re good to go!

Linux

Run Kanata without sudo

kanata needs to intercept uinput signals, which it cannot do without the proper authorisations.

If you don’t want to run kanata with sudo, you’ll need to allow Kanata to read from uinput. This requires the users to be part of both input and uinput groups.

For that, you first need to create a uinput group if it doesn’t exist yet:

sudo groupadd -U $USERNAME uinput

where $USERNAME is the target user (or users in a comma-separated list). Then add the target user (or users) to the group input:

sudo usermod -aG input $USERNAME

You can check after re-logging that both groups appear in the result of the groups command launched as the target user.

Finally, you need to add a udev rule in /etc/udev/rules.d/50-kanata.rules:

KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput"

Making a user-side systemd service for Kanata

Note: This only works if kanata is able to run without sudo (and is using systemd).

Using a systemd service allows running kanata as a daemon, possibly right after logging in. Here is a template for a service file:

[Unit]
Description=Kanata keyboard remapper
Documentation=https://github.com/jtroo/kanata

[Service]
Environment=PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin
Environment=DISPLAY=:0
Environment=HOME=/path/to/home/folder
Type=simple
ExecStart=/usr/local/bin/kanata --cfg /path/to/kanata/config/file
Restart=no

[Install]
WantedBy=default.target

Copy-paste it into ~/.config/systemd/user/kanata.service, fill in the placeholders, then run one of the following commands:

  • systemctl --user start kanata.service to manually start kanata
  • systemctl --user enable kanata.service so kanata may autostart whenever the current user logs in
  • systemctl --user status kanata.service to check if kanata is running