GitHunt
PI

PiercingXX/furi-phone-colemak-keyboard

Colemak OSK for Phosh: Squeekboard layout tuned for Furi phone screens.

furi-phone-colemak-keyboard

Colemak on-screen keyboard tuned for Furi phone screens (Squeekboard on Phosh/GNOME).

What this is

  • Touch-friendly Colemak layout sized for the Furi phone.
  • Works with Phosh/GNOME via Squeekboard; layout name is us-colemak-furi.
  • Drop-in YAML only—no extra daemons or services.

Files

Install (Furios/Debian)

  1. Install Squeekboard if missing:
sudo apt update && sudo apt install -y squeekboard
  1. Symlink the layout into Squeekboard’s keyboards directory (keeps updates easy):
sudo mkdir -p /usr/share/squeekboard/keyboards
sudo ln -sf "$(pwd)/squeekboard/us-colemak-furi.yaml" /usr/share/squeekboard/keyboards/us-colemak.yaml
  1. Set GNOME/Phosh input source to Colemak so the OSK picks the right layout:
gsettings set org.gnome.desktop.input-sources sources "[(\"xkb\", \"us+colemak\")]"
gsettings set org.gnome.desktop.input-sources show-all-sources true
  1. Restart Squeekboard (or reboot):
pkill squeekboard

Use

  • When the system input source is us+colemak, the OSK loads this layout automatically.
  • Bottom row toggles numbers and symbols; Shift can be held, tapped, or locked (handled by Squeekboard).
  • To test without changing system sources (launch a one-off instance):
pkill squeekboard   # stop the running instance first
SQUEEKBOARD_KEYBOARD=us-colemak-furi squeekboard

Troubleshooting

  • Confirm the file exists at /usr/share/squeekboard/keyboards/us-colemak.yaml, then restart Squeekboard.
  • Re-run gsettings get org.gnome.desktop.input-sources sources and ensure it includes ('xkb', 'us+colemak').
  • If you still get QWERTY, long-press the globe/input switcher and pick the Colemak source.
  • If Colemak is missing from the input picker, add it explicitly:
gsettings set org.gnome.desktop.input-sources sources "[(\"xkb\", \"us+colemak\")]"
pkill squeekboard
  • If the FuriOS Settings app (On-Screen Keyboard tab) doesn’t list Colemak, add both US and Colemak in one shot so the selector sees it, then restart Squeekboard:
gsettings set org.gnome.desktop.input-sources sources "[(\"xkb\", \"us\"), (\"xkb\", \"us+colemak\")]"
pkill squeekboard
  • If it still doesn’t appear:
    • Verify the file exists: ls -l /usr/share/squeekboard/keyboards/us-colemak.yaml (for Flatpak installs, check /var/lib/flatpak/app/org.gnome.Squeekboard/current/active/files/share/squeekboard/keyboards/).

    • Force-load the layout to confirm Squeekboard sees it: SQUEEKBOARD_KEYBOARD=us-colemak-furi squeekboard (run from a terminal and tap the OSK trigger).

    • Refresh the session: log out/in or sudo systemctl restart phoc.service (phoc backs Phosh). Reboot if unsure.

    • If you see “DBus unavailable,” run from the Phosh session (not SSH), or export the bus: export DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$UID/bus then retry the one-off launch.

Contributors

MIT License
Created January 5, 2026
Updated January 5, 2026