Existe um substituto para python-appindicator?

Sep 08 2020

AppIndicator permitiu que seu aplicativo criasse menus no GNOME, como este:

Especificamente, com python-appindicator, você poderia fazer isso em Python. No entanto, parece que python-appindicatoracabou nas últimas distribuições do Linux, incluindo Ubuntu 20.04.

Existe um substituto para ele? Não consegui encontrar muito.

A propósito, eu gostaria que a mesma biblioteca funcionasse com desktops diferentes, como KDE e GNOME, mas AppIndicatorfosse apenas GNOME, eu acredito.

Respostas

1 sagarchalise Nov 05 2020 at 12:02

Acho que o python-appindicatorpacote está obsoleto e as ligações GObject são recomendadas. Existem ligações GObject para appindicators e elas devem ser usadas AFAIK.

Existem dois pacotes no Ubuntu para ligações python para appindicator. Um é baseado em libappindicatore o outro é baseado em libayatana-appindicator Não sei a diferença principal entre os dois, mas acho que ayatana-appindicatorsão os mais recentes para maior clareza de nomes e também estão disponíveis em outras distros.

Os nomes dos pacotes são:

  • gir1.2-appindicator
  • gir1.2-appindicator3.
  • gir1.2-ayatanaappindicator
  • gir1.2-ayatanaappindicator3.

O 3sufixo um é para gtk3e pode ser usado para aplicativos relacionados ao gtk3.

Aqui está meu próprio caso de uso, que mostra meu calendário nativo no painel. Abaixo, é mostrado o uso no gnome-shell com a extensão kappindicator junto com a caixa de depósito.

Basicamente, para obter a documentação, consulte https://lazka.github.io/pgi-docs/AyatanaAppIndicator3-0.1/index.html

PS: A imagem é do fedora, pois estou atualmente na área de trabalho do fedora com gnome-shell 3.38. Eu acho que o ubuntu vem com https://packages.ubuntu.com/focal/gnome-shell-extension-appindicator que pode ser usado para mostrar a bandeja de status e appindicators para os já existentes. Eu atualmente uso para zoom, dropboxetc.

N0rbert Sep 09 2020 at 03:18

Existe uma versão de introspecção do GObject libappindicatorno repositório Ubuntu 20.04 LTS. Você tem que encontrar exemplos de seu uso.

Você deve tentar desenvolver coisas em cima de libayatana-appindicatorpacotes com vínculos python / gir.

Também existe um ambiente de desktop MATE que tem suporte para muitos indicadores e indicadores tradicionais no painel MATE.