xseticon permite que você faça exatamente isso.
Existe uma maneira de alterar o ícone da janela de um aplicativo na linha de comando?
Por exemplo, eu gostaria de ter ícones separados para as janelas do Firefox em diferentes perfis (processos diferentes), alterar o ícone do terminal se ele for executado em tmux
, etc.
Por "ícone" refiro-me à pequena figura mostrada pelo alternador de janelas, tipicamente chamada com Alt + Tab . Em particular, estou interessado em que isso funcione com xfwm4
, mas uma solução mais geral seria bem-vinda.
Aparentemente, nem xdotool
nem wmctrl
são capazes disso.
xseticon permite que você faça exatamente isso.
Se você executar xprop
e clicar em uma janela, verá que o ícone está entre os "metadados" atribuídos à estrutura da janela em seu servidor X, sob o nome e o tipo _NET_WM_ICON(CARDINAL)
. Esses parâmetros podem ser alterados por outros aplicativos X, por exemplo, os gerenciadores de janelas escrevem e alteram um monte de coisas lá. A função principal será XChangeProperty
.
Não estou ciente de nenhuma ferramenta que faça isso facilmente na linha de comando, mas isso não significa que elas não existam.
De qualquer forma, pode ser escrito do zero, não é difícil (mesmo que escrever em xlib
bruto faça com que o seu peito fique em pé e provavelmente lhe dê PTSD).
Pode ser diferente para diferentes sistemas operacionais. Principalmente editando o arquivo da área de trabalho diretamente em / usr / share / applications ou copiando ou criando o arquivo da área de trabalho em /home/username/.local/share/applications/, isso pode ser feito.
Ícone = / usr / share / ícones / HighContrast / 48x48 / apps / firefox.png
Consulte o link