Procurando uma maneira de mostrar uma saída de script no painel do Gnome Shell (barra superior), me deparei com Argos. Esta extensão Gnome Shell faz apenas uma coisa: adiciona um novo item com um menu suspenso ao painel, mostrando a saída de um script e expondo a funcionalidade.
A extensão é inspirada no BitBar, um programa popular para colocar a saída de qualquer script na barra de menus do macOS, e é até compatível com a maioria dos scripts BitBar.
Usando-o, você pode essencialmente escrever sua própria extensão Gnome Shell usando uma linguagem com a qual você já está familiarizado, como Bash, Python e muitos outros. Uma vez que um plugin Argos é apenas um script executável que grava em stdout, qualquer linguagem pode ser usada para criar plugins para ele.
Não conhece Bash, Python, etc.? Não tem problema, você encontrará plug-ins Argos/BitBar já existentes compatíveis com Argos para uma ampla gama de tarefas.
Recursos do Argos:
Além de instalar o Argos e alguns usos básicos, este artigo também inclui alguns plug-ins/scripts extras do Argos e alguns lugares para encontrar plug-ins para o Argos. Continue lendo!
Você tem várias maneiras de instalar o Argos:
Argos pode ser instalado em extensions.gnome.org. Certifique-se de ter o plugin do navegador e pacote do sistema instalado para poder instalar as extensões do Gnome Shell, visite extensions.gnome.org e instale a extensão clicando no botão de alternância.
Você também pode instalar o Argos pesquisando a extensão no aplicativo Gnome Software.
Instalar o Argos da fonte também é bastante fácil
Noções básicas de uso do plugin Argos para você começar:
Argos monitora a pasta ~/.config/argos/
em busca de novos scripts. Qualquer script executável colocado nesta pasta é considerado um plugin e sua saída é exibida no painel Gnome Shell (barra superior) assim que é colocado nesta pasta. Nomes que começam com um ponto (.
) são ignorados
O nome do arquivo do plugin tem um formato especial: NAME.POSITION.INTERVAL[+].EXTENSION
:
POSITION
: é opcional e você pode usá-lo para especificar a posição do botão no painel. A posição é um número inteiro + l
(esquerda), c
(centro) ou r
(direita)
INTERVAL
: é opcional e você pode usá-lo para informar ao plugin após quanto tempo ele deve ser atualizado. O intervalo é um número inteiro + s
(segundos), m
(minutos), h
(horas) ou d
(dias)
+
: se +
seguir INTERVAL
, ele informa ao script para atualizar também toda vez que o menu suspenso for aberto.
Exemplo de nome de arquivo do plugin Argos (script): plugin.1r.10m+.sh
. Este plugin será posicionado exatamente à direita do relógio do Gnome Shell (se você não o moveu do centro do painel), ele executará o script para atualizar as informações a cada 10 minutos, e também será executado sempre que o menu suspenso for aberto.
Os botões mostrados por Argos no painel são organizados da esquerda para a direita em ordem alfabética, a menos que POSITION
seja especificado no nome do arquivo, conforme mencionado acima
É hora de "instalar" seu primeiro plugin Argos. Comece baixando um exemplo simples, digamos plug-in Ping (para baixar o script, clique no link View source
e pressione Ctrl + s
para salvá-lo), copie o script para ~/.config/argos/
e torne-o executável (você pode torná-lo executável do aplicativo Arquivos: clique com o botão direito do mouse no script, selecione Properties
, vá para a guia Permissions
e ative Allow executing file as program
) .
Assim que Argos encontrar seu novo script executável em ~/.config/argos/
, ele mostrará sua saída no painel e no menu suspenso:
Você pode excluir o script argos.sh
que já existe no ~/.config/argos/
, pois é apenas um marcador para a pasta de configuração do Argos e para a página do projeto Argos GitHub.
Se você deseja escrever seu próprio plugin Argos, recomendo começar com um exemplo já existente e verificar a documentação de renderização e atributos de linha do Argos.
Argos já tem alguns [exemplos de plug-ins] funcionais (https://github.com/p-e-w/argos#examples) em sua página do GitHub, como um iniciador de aplicativo ou visualizador superior. Você também encontrará alguns exemplos de plug-ins BitBar que funcionam com Argos, como um plug-in Ping, Stock Ticker ou World Clock.
Além desses, encontrei alguns exemplos de plug-ins extras para Argos que gostaria de compartilhar com vocês.
1. argosWeather plugin
Este é um plugin complexo do Argos que mostra o tempo atual e uma previsão do tempo para 7 dias, com ícones e várias informações extras como a velocidade do vento, umidade e muito mais. Ele suporta a detecção automática de sua localização atual, bem como a especificação manual de um local.
Para usá-lo, você terá que abrir o script com um editor de texto e modificar:
api_key
: altere o valor api_key
para sua chave de API darksky.net. Você pode obter sua chave de API DarkSky gratuita em https://darksky.net/dev
opcional:
altere o valor man_loc
para as coordenadas de latitude e longitude de sua localização. Você pode encontrar isso usando o Google Maps. Por exemplo, pesquisando Berlim no Google Maps, você obtém este URL: https://www.google.com/maps/place/Berlin,+Germany/@52.5175012,13.1539869,10.25z...
. Copie a parte de latitude e longitude (52.5175012,13.1539869
) do URL e cole-a como o valor man_loc
(. Por exemplo: man_loc = '52.5065116,13.1438652'
)
altere o valor man_name
para o nome do seu local. Por exemplo man_name = 'Berlin, Germany'
2. Plugin VPN Checker para BitBar (compatível com Argos)
Este é um plugin muito simples, mas útil, que verifica se você está usando uma VPN (verifica a disponibilidade de tun0 ou ipsec0). Também permite matar um programa quando você está desconectado da VPN.
Se você deseja que o plug-in elimine um programa quando desconectado da VPN, remova o comentário da linha #killall Firefox...
e substitua Firefox
pelo programa que deseja eliminar quando desconectado da VPN.
3. Plug-in de taxas de criptomoeda BitBar compatível com Argos
Este é um plugin que mostra as taxas de criptomoeda no painel. Por padrão, ele mostra as taxas em GBP (Libra Esterlina), mas você pode alterá-lo para dizer USD, alterando o URL de https://cryptomate.co.uk/api/all/GBP/
para https://cryptomate.co.uk/api/all/USD/
e uma simples pesquisa e substituição de £
por $
para mostrar o símbolo de moeda correto. Como você pode ver, mudei para USD na captura de tela.
Isso também funciona com EUR e outras moedas.
4. GetNews for Argos (baixe o script getnews.py)
GetNews é um plugin Python3 simples para Argos que obtém as últimas histórias (apenas manchetes) de um feed RSS configurável, mostrando-as em um menu. Por padrão, ele usa o feed RSS do Google Notícias, mas eu mudei para Linux Uprising para a captura de tela.
Você pode atualizar o feed diretamente do menu de plug-ins mostrado no painel Gnome Shell. Clicar em qualquer notícia abre o artigo em seu navegador padrão.
Altere o valor feed_url
para um feed RSS válido de onde extrair as notícias. Pode ser um único feed RSS de um site ou um agregador de feed. Você também pode usar algum feed RSS do subreddit (por exemplo, https://old.reddit.com/r/linux/.rss
). Altere o valor stories
para o número de histórias a serem mostradas no menu de plug-ins.
SimpleWattage-Argos é um plugin Argos para mostrar informações de energia e bateria, como voltagem e ampere usados, % de carga da bateria, capacidade da bateria e muito mais.
Não tenho acesso a um laptop no momento, é por isso que não experimentei este plugin Argos, e a captura de tela é da página do projeto.
6. Airly.sh air quality for Argos (link para download do script)
Airly.sh lê o Índice de Qualidade do Ar dos sensores airly.eu, mostrando-o no painel. Isso só funciona se airly.eu tiver sensores de qualidade do ar para sua cidade.
Para usá-lo, certifique-se de que jq
e curl
estejam instalados em seu sistema. Você também precisará obter sua chave de API airly.eu.
Depois de obter sua chave API, use-a como o valor API_KEY no script. Você também precisa obter um ID de sensor - isso pode ser obtido visitando https://airapi.airly.eu/v2/installations/nearest?lat=YOUR_LAT&lng=YOUR_LNG&maxDistanceKM=5&maxResults=3&apikey=YOUR_API_KEY
, substituindo YOUR_LAT
pela latitude de sua localização e YOUR_LNG
pela longitude de sua localização. Já expliquei como obter sua latitude e longitude usando o Google Maps nas instruções do plugin de clima Argos. Depois de visitar o URL com esses parâmetros, você deve obter algo que começa com id
seguido por alguns números. Copie esses números no script, substituindo o valor SENSOR_ID
.
Onde encontrar mais plug-ins Argos:
Site de plug-ins BitBar (plug-ins com código específico do macOS não funcionam com o Argos)
The Argos wiki (ele tem apenas 4 plug-ins no momento)
Este relatório de bug do Argos contém alguns plug-ins. Alguns são adicionados a uma lista no relatório de bug inicial, mas alguns outros também são mencionados nos comentários.
Esse post foi traduzido do site LinuxUprising.com pela rtland.team.
Confira a versão original desse post em inglês:
Argos Is Like BitBar For Gnome Shell: It Shows Scripts Output On The Panel (Top Bar)