Como corrigir o teclado gamer Kodi no Linux com GNOME e manter a configuração após atualizações

abnt2 estável no Ubuntu 24.04, com acentos, ç e interrogação funcionando como no seu uso diário!

Escrito por
Emanuel Negromonte
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre...
  • Se o seu teclado digita ; no lugar de ç, a solução mais estável para teclado abnt2 ubuntu 24.04 é forçar br+abnt2 no GNOME e reiniciar o IBus.
  • Para restaurar ? no padrão do usuário, use lv3:ralt_switch, que mantém Alt direito + W no fluxo de teclado abnt2 ubuntu 24.04.
  • O erro comum em teclado abnt2 ubuntu 24.04 é conflito entre fonte de entrada do GNOME e engine do IBus, mesmo quando localectl parece correto.
  • Para evitar regressão após update, bloqueie sources e xkb-options no dconf, etapa crítica para estabilidade de teclado abnt2 ubuntu 24.04.
  • A validação final de teclado abnt2 ubuntu 24.04 deve incluir teste real de ç, á, ã e Alt direito + W = ?, além de checar chaves travadas no gsettings writable.

Se você usa um teclado gamer Kodi com layout físico híbrido (ANSI com tecla Ç) e o Ubuntu 24.04 passa a se comportar como US, este guia corrige o problema de forma estável. O procedimento foi validado em Ubuntu 24.04 com GNOME + Wayland + IBus, e tende a funcionar em Ubuntu 22.04 ou superior com o mesmo stack. Mas estes comandos funcionam em qualquer distribuição Linux rodando o GNOME. No exemplo, estamos usando o Ubuntu.

Cenário deste tutorial

Sintomas do caso real:

  • tecla ç digitando ;
  • acentos não funcionando corretamente
  • necessidade de manter Alt direito + W gerando ?
  • configuração voltando ao estado errado após reiniciar ou atualizar

Objetivo final

Ao terminar, você terá:

  • ç, á, ã funcionando
  • Alt direito + W gerando ?
  • layout persistente em br com lv3:ralt_switch
  • proteção para atualizações não sobrescreverem as opções críticas de input source

Antes de começar

Importante para não dar erro:

  1. comandos gsettings devem ser executados no usuário logado na sessão gráfica
  2. comandos em /etc/dconf/... usam sudo
  3. sempre faça logout/login após dconf update

Passo 1: limpar estado quebrado anterior

Este passo remove arquivos que costumam causar “A chave não é gravável” ou valor inválido de dconf.

Bash
sudo rm -f /etc/dconf/db/local.d/00-input-sources
sudo rm -f /etc/dconf/db/local.d/locks/00-input-sources
sudo rm -f /etc/dconf/db/local.d/locks/input-sources
sudo dconf update

Opcional: verificar se ainda existe lock ativo em outro lugar

Bash
sudo grep -RnsE '/org/gnome/desktop/input-sources/(sources|mru-sources|xkb-options)' /etc/dconf/db/*/locks 2>/dev/null || true

Passo 2: definir configuração persistente correta no dconf de sistema

Crie o profile do dconf e grave os valores que funcionaram no seu caso.

Bash
sudo mkdir -p /etc/dconf/profile /etc/dconf/db/local.d/locks
printf "user-db:user\nsystem-db:local\n" | sudo tee /etc/dconf/profile/user >/dev/null

Agora grave os defaults corretos:

Bash
cat <<'EOF' | sudo tee /etc/dconf/db/local.d/00-input-sources >/dev/null
[org/gnome/desktop/input-sources]
sources=[('xkb', 'br')]
mru-sources=[('xkb', 'br')]
xkb-options=['lv3:ralt_switch']

[org/freedesktop/ibus/general]
use-system-keyboard-layout=false
preload-engines=['xkb:br::por']
engines-order=['xkb:br::por']
EOF

Compile o banco:

Bash
sudo dconf update

Faça logout/login.

Passo 3: validar funcionamento antes de travar

No usuário da sessão gráfica, rode:

Bash
gsettings get org.gnome.desktop.input-sources sources
gsettings get org.gnome.desktop.input-sources xkb-options
gsettings get org.freedesktop.ibus.general use-system-keyboard-layout
gsettings get org.freedesktop.ibus.general preload-engines
gsettings get org.freedesktop.ibus.general engines-order

Esperado:

  • sources = [('xkb', 'br')]
  • xkb-options = ['lv3:ralt_switch']
  • use-system-keyboard-layout = false
  • preload-engines = ['xkb:br::por']
  • engines-order = ['xkb:br::por']

Teste no editor de texto:

  • ç -> ç
  • Shift + ç -> Ç
  • acento agudo + a -> á
  • til + a -> ã
  • Alt direito + W -> ?

Se tudo estiver correto, siga para o bloqueio.

Passo 4: travar as chaves para impedir regressão

Agora sim, aplique o lock nas chaves críticas.

Bash
cat <<'EOF' | sudo tee /etc/dconf/db/local.d/locks/00-input-sources >/dev/null
/org/gnome/desktop/input-sources/sources
/org/gnome/desktop/input-sources/mru-sources
/org/gnome/desktop/input-sources/xkb-options
EOF

sudo dconf update

Faça logout/login novamente.

Passo 5: confirmar que ficou bloqueado e estável

Bash
gsettings get org.gnome.desktop.input-sources sources
gsettings get org.gnome.desktop.input-sources xkb-options
gsettings writable org.gnome.desktop.input-sources sources
gsettings writable org.gnome.desktop.input-sources xkb-options

Esperado:

  • sources = [('xkb', 'br')]
  • xkb-options = ['lv3:ralt_switch']
  • writable = false para ambas as chaves

false aqui é o comportamento correto após o lock.

Passo 6: garantir uma única fonte de entrada na interface

Abra Configurações > Teclado > Fontes de entrada e mantenha apenas:

  • Português (Brasil)

Remova qualquer fonte extra (US/English/etc.).

Backup rápido da configuração

Depois de estável, salve backup para recuperação rápida:

Bash
dconf dump /org/gnome/desktop/input-sources/ > ~/.backup-input-sources.txt
dconf dump /org/freedesktop/ibus/ > ~/.backup-ibus.txt

Para restaurar:

Bash
dconf load /org/gnome/desktop/input-sources/ < ~/.backup-input-sources.txt
dconf load /org/freedesktop/ibus/ < ~/.backup-ibus.txt
ibus restart

Como desfazer o bloqueio

Se quiser voltar a editar pela interface:

Bash
sudo rm -f /etc/dconf/db/local.d/locks/00-input-sources && sudo dconf update

Script único para copiar e colar

Este script aplica a correção completa e trava no final.

Bash
Se você usa um teclado gamer Kodi com layout físico híbrido (ANSI com tecla Ç) e o Ubuntu 24.04 passa a se comportar como US, este guia corrige o problema de forma estável.
O procedimento foi validado em Ubuntu 24.04 com GNOME + Wayland + IBus, e tende a funcionar em Ubuntu 22.04 ou superior com o mesmo stack.

## Cenário deste tutorial

Sintomas do caso real:

* tecla `ç` digitando `;`
* acentos não funcionando corretamente
* necessidade de manter `Alt direito + W` gerando `?`
* configuração voltando ao estado errado após reiniciar ou atualizar

## Objetivo final

Ao terminar, você terá:

* `ç`, `á`, `ã` funcionando
* `Alt direito + W` gerando `?`
* layout persistente em `br` com `lv3:ralt_switch`
* proteção para atualizações não sobrescreverem as opções críticas de input source

## Antes de começar

Importante para não dar erro:

1. comandos `gsettings` devem ser executados no usuário logado na sessão gráfica
2. comandos em `/etc/dconf/...` usam `sudo`
3. sempre faça logout/login após `dconf update`

---

## Passo 1: limpar estado quebrado anterior

Este passo remove arquivos que costumam causar “A chave não é gravável” ou valor inválido de dconf.

```bash
sudo rm -f /etc/dconf/db/local.d/00-input-sources
sudo rm -f /etc/dconf/db/local.d/locks/00-input-sources
sudo rm -f /etc/dconf/db/local.d/locks/input-sources
sudo dconf update
```

Opcional: verificar se ainda existe lock ativo em outro lugar

```bash
sudo grep -RnsE '/org/gnome/desktop/input-sources/(sources|mru-sources|xkb-options)' /etc/dconf/db/*/locks 2>/dev/null || true
```

---

## Passo 2: definir configuração persistente correta no dconf de sistema

Crie o profile do dconf e grave os valores que funcionaram no seu caso.

```bash
sudo mkdir -p /etc/dconf/profile /etc/dconf/db/local.d/locks
printf "user-db:user\nsystem-db:local\n" | sudo tee /etc/dconf/profile/user >/dev/null
```

Agora grave os defaults corretos:

```bash
cat <<'EOF' | sudo tee /etc/dconf/db/local.d/00-input-sources >/dev/null
[org/gnome/desktop/input-sources]
sources=[('xkb', 'br')]
mru-sources=[('xkb', 'br')]
xkb-options=['lv3:ralt_switch']

[org/freedesktop/ibus/general]
use-system-keyboard-layout=false
preload-engines=['xkb:br::por']
engines-order=['xkb:br::por']
EOF
```

Compile o banco:

```bash
sudo dconf update
```

Faça logout/login.

---

## Passo 3: validar funcionamento antes de travar

No usuário da sessão gráfica, rode:

```bash
gsettings get org.gnome.desktop.input-sources sources
gsettings get org.gnome.desktop.input-sources xkb-options
gsettings get org.freedesktop.ibus.general use-system-keyboard-layout
gsettings get org.freedesktop.ibus.general preload-engines
gsettings get org.freedesktop.ibus.general engines-order
```

Esperado:

* `sources` = `[('xkb', 'br')]`
* `xkb-options` = `['lv3:ralt_switch']`
* `use-system-keyboard-layout` = `false`
* `preload-engines` = `['xkb:br::por']`
* `engines-order` = `['xkb:br::por']`

Teste no editor de texto:

* `ç` -> `ç`
* `Shift + ç` -> `Ç`
* acento agudo + `a` -> `á`
* til + `a` -> `ã`
* `Alt direito + W` -> `?`

Se tudo estiver correto, siga para o bloqueio.

---

## Passo 4: travar as chaves para impedir regressão

Agora sim, aplique o lock nas chaves críticas.

```bash
cat <<'EOF' | sudo tee /etc/dconf/db/local.d/locks/00-input-sources >/dev/null
/org/gnome/desktop/input-sources/sources
/org/gnome/desktop/input-sources/mru-sources
/org/gnome/desktop/input-sources/xkb-options
EOF

sudo dconf update
```

Faça logout/login novamente.

---

## Passo 5: confirmar que ficou bloqueado e estável

```bash
gsettings get org.gnome.desktop.input-sources sources
gsettings get org.gnome.desktop.input-sources xkb-options
gsettings writable org.gnome.desktop.input-sources sources
gsettings writable org.gnome.desktop.input-sources xkb-options
```

Esperado:

* `sources` = `[('xkb', 'br')]`
* `xkb-options` = `['lv3:ralt_switch']`
* `writable` = `false` para ambas as chaves

`false` aqui é o comportamento correto após o lock.

---

## Passo 6: garantir uma única fonte de entrada na interface

Abra **Configurações > Teclado > Fontes de entrada** e mantenha apenas:

* **Português (Brasil)**

Remova qualquer fonte extra (US/English/etc.).

---

## Backup rápido da configuração

Depois de estável, salve backup para recuperação rápida:

```bash
dconf dump /org/gnome/desktop/input-sources/ > ~/.backup-input-sources.txt
dconf dump /org/freedesktop/ibus/ > ~/.backup-ibus.txt
```

Para restaurar:

```bash
dconf load /org/gnome/desktop/input-sources/ < ~/.backup-input-sources.txt
dconf load /org/freedesktop/ibus/ < ~/.backup-ibus.txt
ibus restart
```

---

## Como desfazer o bloqueio

Se quiser voltar a editar pela interface:

```bash
sudo rm -f /etc/dconf/db/local.d/locks/00-input-sources
sudo dconf update
```

---

## Script único para copiar e colar

Este script aplica a correção completa e trava no final.

```bash
#!/usr/bin/env bash
set -euo pipefail

echo "[1/6] Limpando estado anterior"
sudo rm -f /etc/dconf/db/local.d/00-input-sources
sudo rm -f /etc/dconf/db/local.d/locks/00-input-sources
sudo rm -f /etc/dconf/db/local.d/locks/input-sources
sudo dconf update

echo "[2/6] Criando profile do dconf"
sudo mkdir -p /etc/dconf/profile /etc/dconf/db/local.d/locks
printf "user-db:user\nsystem-db:local\n" | sudo tee /etc/dconf/profile/user >/dev/null

echo "[3/6] Gravando defaults persistentes"
cat <<'EOF' | sudo tee /etc/dconf/db/local.d/00-input-sources >/dev/null
[org/gnome/desktop/input-sources]
sources=[('xkb', 'br')]
mru-sources=[('xkb', 'br')]
xkb-options=['lv3:ralt_switch']

[org/freedesktop/ibus/general]
use-system-keyboard-layout=false
preload-engines=['xkb:br::por']
engines-order=['xkb:br::por']
EOF

sudo dconf update

echo "[4/6] Aplicando locks"
cat <<'EOF' | sudo tee /etc/dconf/db/local.d/locks/00-input-sources >/dev/null
/org/gnome/desktop/input-sources/sources
/org/gnome/desktop/input-sources/mru-sources
/org/gnome/desktop/input-sources/xkb-options
EOF

sudo dconf update

echo "[5/6] Estado atual"
gsettings get org.gnome.desktop.input-sources sources
gsettings get org.gnome.desktop.input-sources xkb-options
gsettings writable org.gnome.desktop.input-sources sources
gsettings writable org.gnome.desktop.input-sources xkb-options

echo "[6/6] Concluído. Faça logout/login e teste: ç, á, ã e Alt direito + W = ?"
```

Como executar:

```bash
nano ~/fix-teclado-kodi.sh
chmod +x ~/fix-teclado-kodi.sh
~/fix-teclado-kodi.sh
```

---

## Conclusão

Para este teclado Kodi híbrido no Ubuntu 24.04, o ponto decisivo foi:

1. definir `sources=[('xkb', 'br')]`
2. usar `xkb-options=['lv3:ralt_switch']` para manter `Alt direito + W` como `?`
3. alinhar IBus (`xkb:br::por`)
4. travar `sources`, `mru-sources` e `xkb-options` no dconf para evitar regressão após updates

Se quiser, no próximo passo eu também posso transformar este conteúdo na versão final  formatada para Gutenberg, com blocos de “atenção”, “diagnóstico” e “copiar comando”.

Como executar:

Bash
nano ~/fix-teclado-kodi.sh && chmod +x ~/fix-teclado-kodi.sh && ~/fix-teclado-kodi.sh

Conclusão

Para este teclado Kodi híbrido no Ubuntu 24.04, o ponto decisivo foi:

  1. definir sources=[('xkb', 'br')]
  2. usar xkb-options=['lv3:ralt_switch'] para manter Alt direito + W como ?
  3. alinhar IBus (xkb:br::por)
  4. travar sources, mru-sources e xkb-options no dconf para evitar regressão após updates
Compartilhe este artigo
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre GNU/Linux, Software Livre e Código Aberto, dedica-se a descomplicar o universo tecnológico para entusiastas e profissionais. Seu foco é em notícias, tutoriais e análises aprofundadas, promovendo o conhecimento e a liberdade digital no Brasil.