我在尋找一種在 Gnome Shell 面板(頂部欄)中顯示腳本輸出的方法時遇到了 Argos。這個 Gnome Shell 擴展只做一件事。它是在面板中添加一個帶有下拉菜單的新項目,查看腳本的輸出,並公開功能。

這個擴展的靈感來自 BitBar,這是一個在 macOS 菜單欄中顯示腳本輸出的流行程序,並且與大多數 BitBar 腳本兼容。

它讓你基本上可以用你已經熟悉的語言創建自己的自定義 Gnome Shell 擴展,例如 Bash、Python 和許多其他語言。 Argos 插件是寫入標準輸出的可執行腳本,因此插件可以用任何語言編寫。

不知道 Bash、Python 等?沒問題。現有的 Argos / BitBar 插件與 Argos 兼容,可用於各種任務。

阿爾戈斯的特點:

  • 100% API 與 BitBar 1.9.2 兼容。 所有不包含 macOS 特定代碼的插件都可以與 Argos 一起使用
  • 異步執行引擎:Argos 通過智能調度腳本防止阻塞
  • Unicode 支持
  • 優化以最小化資源消耗。開發人員聲稱 Argos 使用的 CPU 不到 1%,即使每秒更新多個腳本。

除了 Argos 的安裝和一些基本用法,本文還包括一些額外的 Argos 插件/腳本,以及一些尋找 Argos 插件的地方。繼續閱讀!

Argos 安裝和快速入門指南

你有不止一個
如何安裝 Argo:

  • Argos 可以從 extensions.gnome.org 安裝。 確保您已安裝瀏覽器插件和系統包,以便您可以安裝 Gnome Shell 擴展,然後轉到 extensions.gnome.org 並單擊切換按鈕以安裝擴展。
  • 您還可以在 Gnome Software 應用程序中搜索擴展並安裝 Argos。
  • 易於從源代碼安裝 Argos

開始使用 Argos 插件的基礎知識

  • 阿爾戈斯監測 ~/.config/argos/ 新腳本的文件夾。放置在此文件夾中的所有可執行腳本都被視為插件,它們的輸出顯示在 Gnome Shell 面板中。 (頂欄)放入此文件夾後。以點開頭的名稱 (.) 忽略
  • 插件文件名具有特殊格式。 NAME.POSITION.INTERVAL[+].EXTENSION
    • POSITION: 可選,可用於指定按鈕在面板上的位置。位置是一個整數 + l (遺跡), c (中心)或 r (正確的)
    • INTERVAL: 是可選的。您可以使用它來告訴插件何時需要更新。間隔是一個整數 + s (第二), m (分鐘), h (時間)或 d (天空)
    • +: 如果 + 跟隨 INTERVAL告訴腳本每次打開下拉菜單時更新。
    • Argos 插件(腳本)文件名示例: plugin.1r.10m+.sh該插件位於 Gnome Shell 時鐘的右側(如果您還沒有從面板中心移開),每 10 分鐘運行一次腳本以更新信息並每次運行。菜單將被下拉。
  • Argos 按字母順序從左到右在面板上顯示按鈕。 POSITION 如上所述由文件名指定

是時候“安裝”第一個 Argos 插件了
..首先下載一個簡單的例子。說這個 Ping 插件(點擊下載腳本)
Ctrl + s

保存),將腳本複製到
~/.config/argos/

使其可執行(可以從文件應用程序中使其可執行:右鍵單擊腳本並選擇
Properties

然後繼續
Permissions

使用選項卡啟用
Allow executing file as program

)。

當阿爾戈斯進入
~/.config/argos/

在面板和下拉列表中顯示輸出。

可以刪除
argos.sh

現有腳本
~/.config/argos/

這只是 Argos 配置文件夾和 ArgosGitHub 項目頁面的書籤。

如果您正在編寫自己的 Argos 插件,最好從現有示例開始並查看 Argos 渲染和線屬性文檔。

Argos 插件示例

Argos 已經在其 GitHub 頁面上提供了一些功能插件示例,例如應用程序啟動器和頂級查看器。還有一些與 Argos 配合使用的 BitBar 插件示例,例如 Ping 插件、股票報價和世界時鐘。

除此之外,我還發現了一些額外的 Argos 插件示例,我想與您分享。

1. Argos 天氣插件


Argos 天氣插件

這是一個複雜的 Argos 插件,可顯示當前天氣和 7 天天氣預報,帶有圖標和各種附加功能,如風速和濕度。它支持自動檢測您當前的位置和手動分配位置。

要使用它,您需要在文本編輯器中打開腳本並進行以下更改:

  • api_key: 改變 api_key darksky.net API 密鑰值。 您可以在 https://darksky.net/dev 獲得免費的 DarkSky API 密鑰
  • 可選擇的:
    • 使用自定義位置時:
      • 改變 man_loc 您所在位置的經緯度坐標值。你可以使用谷歌地圖找到這個。例如,如果您在 Google 地圖上搜索柏林,您將看到以下 URL: https://www.google.com/maps/place/Berlin,+Germany/@52.5175012,13.1539869,10.25z.....複製經緯度 (52.5175012,13.1539869) 粘貼為 URL 的一部分 man_loc 價值(例如) man_loc="52.5065116,13.1438652")。
      • 改變 man_name 為您所在位置的名稱定價。例如 man_name="Berlin, Germany"
    • 您還可以自定義顏色和字體的外觀。這在天氣預報腳本中有解釋。

2. BitBar VPN 檢查器插件
(與 Argos 兼容)

ArgosBitBar VPN 檢查器插件

這是一個非常簡單但有用的插件,用於檢查您當前是否使用 VPN(檢查 tun0 或 ipsec0 的可用性)。當您與 VPN 斷開連接時,您也可以退出程序。

如果插件在與 VPN 斷開連接時退出程序,請取消註釋
#killall Firefox...

線路和更換
Firefox

當您從 VPN 斷開連接時,使用會殺死您的程序。

3. Argos兼容加密貨幣匯率BitBar插件

ArgosBitBar加密貨幣插件

這是一個在面板上顯示加密貨幣匯率的插件。默認情況下,匯率以 GBP(英鎊)顯示,但您可以通過如下更改 URL 將其更改為 USD。
https://cryptomate.co.uk/api/all/GBP/

到達
https://cryptomate.co.uk/api/all/USD/

以及簡單的搜索和替換
£

什麼時候
$

因此,將顯示正確的貨幣符號。如您所見,我將屏幕截圖更改為美元。

這也適用於歐元和其他貨幣。

4. Argos 獲取新聞
(下載 getnews.py 腳本)

ArgosNews RSS 提要插件

GetNews 是一個用於 Argos 的簡單 Python3 插件,它從可配置的 RSS 提要中獲取最新文章(僅限標題)並在菜單中顯示它們。默認情況下,它使用 Google News RSS 提要,但我將其更改為 Linux Uprising 作為屏幕截圖。

您可以直接從 Gnome Shell 面板中顯示的插件菜單更新您的提要。單擊新聞項目將在您的默認 Web 瀏覽器中打開該文章。

改變
feed_url

引出新聞的有效 RSS 提要的值。它可以是單個網站的 RSS 提要,也可以是提要聚合器。您還可以使用一些 subreddit RSS 提要(例如)
https://old.reddit.com/r/linux/.rss

)。改變
stories

要在插件菜單中顯示的故事數的值。

5. 簡單的瓦數-Argos

SimpleWattage-Argos 是一個 Argos 插件,可顯示電源和電池信息,例如使用的電壓和安培數、電池百分比、電池容量等。

我目前沒有筆記本電腦。所以我沒有嘗試這個 Argos 插件。屏幕截圖來自項目頁面。

6. Argos Airly.sh 空氣質量
(腳本下載鏈接)

阿爾戈斯空氣質量檢查器

Airly.sh 從 airly.eu 傳感器讀取空氣質量指數並將其顯示在面板上。這僅適用於 airly.eu 為您的城市提供空氣質量傳感器的情況。

請務必使用
jq

什麼時候
curl

它安裝在您的系統上。您還需要獲取 airly.eu API 密鑰。

獲得 API 密鑰後,將其用作腳本中的 API_KEY 值。您還需要獲取傳感器 ID——這可以通過訪問
https://airapi.airly.eu/v2/installations/nearest?lat=YOUR_LAT&lng=YOUR_LNG&maxDistanceKM=5&maxResults=3&apikey=YOUR_API_KEY

, 交換
YOUR_LAT

根據您所在位置的緯度,以及
YOUR_LNG

在您所在位置的經度。 Weather Argos 插件描述解釋瞭如何使用谷歌地圖獲取緯度和經度。使用這些參數訪問 URL 時,如下所示:
id

後面跟著一些數字。從腳本中復制這些數字並替換它們
SENSOR_ID

值得。

其他 Argos 插件的位置:

  • BitBar 插件網站(帶有 macOS 特定代碼的插件不適用於 Argos)
  • Argos wiki(目前只有 4 個插件)
  • 這個 Argos 錯誤報告包含相當多的插件。一些已添加到早期錯誤報告列表中,但評論包括許多其他。
  • 在 GitHub 上搜索 Argos 插件