Katna · Linux 自由軟體

一款快速、現代的郵件應用程式為 Linux 桌面而做

Katna Mail、Katna Calendar,再加上一個小巧的背景服務,以 Rust 撰寫,在 KDE Plasma 和 GNOME 上都用得自在。它是 KDE PIM 之外的另一個選擇,以 GPL 授權免費提供。

仍在早期開發階段。Katna Mail 每天都在真實帳號上使用,每次變更之後都會有一個預先建置好的 Arch Linux 套件。

桌面尺寸視窗中的 Katna Mail,一半是淺色主題,一半是深色主題,列表旁邊開著一段對話

一個個人專案

靈感來自

GmailMailspringThunderbird

Katna Mail 並不打算標新立異,也不想顛覆什麼。它是一個很個人的專案:是作者想在自己的 Linux 桌面上使用的那款郵件客戶端。

它的功能和外觀坦然借鏡了作者喜愛的幾款郵件應用程式,主要是 Gmail、Mailspring 和 Thunderbird,再用 Rust 重新打造,配上 Katna 自己的名字和圖示。

Katna 之所以能夠誕生,要歸功於大型語言模型如今的長足進步。完整的郵件客戶端向來需要一整個團隊才做得出來,而它們讓一個人也能用心把它做出來。每一個畫面仍由作者親自設計、逐像素檢查,並在真實的桌面上、用真實的郵件每天使用。

它擅長什麼

Katna Mail 最在乎的四件事。

即時搜尋

能容忍拼字錯誤的全文搜尋,面對超大信箱也不在話下。在 Enron 語料庫的 517,000 封郵件上,一次查詢的中位數耗時為 2.4 ms,p99 為 9.7 ms。

關掉視窗也照常運作

一個小巧的背景服務負責同步、通知和寄出排程郵件,其執行檔不到 20 MB。

原生的手感

跟隨系統色彩與強調色,系統匣圖示帶未讀標記,支援 KDE 全域選單和可直接操作的桌面通知,還會把您的 KDE 使用者頭像當作您自己的頭像。

本機優先,保護隱私

您的郵件留在您自己的電腦上,遠端內容預設會被封鎖,密碼存放在您的金鑰圈中,TLS 則是純 Rust 實作。

一個應用程式,適合各種螢幕

桌面、平板和手機版面都在同一個應用程式裡,淺色深色皆有。下方的圖片會跟隨本站本身的淺色或深色主題。

平板版面,列表旁邊開著一段對話
平板:列表與對話並排顯示
手機版面,每封郵件旁邊有一張頭像,還有一個撰寫按鈕
手機:像手機 App 一樣排版
列表旁邊開著一封經過加密和簽署的郵件,標示為已驗證
加密與簽署的郵件
在 Katna Mail 內建檢視器中開啟的 PDF 附件
內建檢視器,可檢視 PDF、圖片、試算表和文件
KDE Plasma 上的 Katna Mail,全域選單位於底部,工作列和系統匣圖示上顯示未讀數量
KDE 全域選單、工作列計數和系統匣標記

Katna Mail 的現況

目前的版本在真實帳號上能做到的事。

  • 帳號

    IMAP(IDLE、QRESYNC、標籤)、POP3 和 SMTP,並支援伺服器自動探索。Gmail 的類別、重要郵件和重複副本都能妥善處理。

  • 列表與閱讀

    對話、類別分頁、星號、重要、釘選、附件標籤、滑鼠懸停操作、可復原的提示訊息,以及乾淨的閱讀窗格,能顯示 HTML 郵件,深色模式也不例外。

  • 撰寫

    格式化文字、簽名、內嵌回覆、彈出式視窗、排程傳送和復原傳送。

  • 加密郵件

    透過您自己的 GnuPG 支援 OpenPGP 和 S/MIME。

  • 附件

    卡片上直接預覽、內建檢視器、全部儲存,並可用任何已安裝的應用程式開啟,每種檔案類型都能設定預設應用程式。

  • 融入您的桌面

    系統匣圖示、未讀標記、全域選單,通知中可直接全部回覆、標為已讀和封存,淺色和深色主題,還有可選的自繪視窗邊框,支援模糊效果。

  • 任何螢幕尺寸

    桌面、平板和手機版面都在同一個應用程式裡。

  • 設定

    帳號、簽名、鍵盤快速鍵、預設應用程式等等,另有一段為新使用者準備的簡短導覽。

  • katnactl

    在終端機裡新增帳號、操控背景服務。

接下來

Katna Calendar(CalDAV,行程會顯示在 Plasma 時鐘裡)、聯絡人、待辦事項、筆記和訂閱來源都在規劃中。它們在應用程式裡已經有了位置,標示為即將推出。

Katna Calendar聯絡人待辦事項筆記訂閱來源

閱讀實作計畫 (在新分頁中開啟)

在 Arch Linux 上安裝

Katna 的每一次變更都會建置成 Arch Linux 套件,並以 arch-latest 預先發行版的形式發布,它同時也是一個 pacman 套件庫。

  1. 01

    新增套件庫

    把下面這幾行加入 /etc/pacman.conf。

    [katna]
    SigLevel = Optional TrustAll
    Server = https://github.com/QuakeString/katna/releases/download/arch-latest
  2. 02

    安裝並啟動

    安裝套件,然後啟動背景服務,並讓它在每次登入時自動啟動。

    sudo pacman -Syu katna-git
    systemctl --user enable --now katna-daemon
  3. 03

    日後更新

    隨系統其他部分一起更新,然後重新啟動服務。

    sudo pacman -Syu
    systemctl --user restart katna-daemon

此套件僅支援 x86_64,目前尚未簽署。密碼存放在 Secret Service 中,因此需要執行 GNOME Keyring、KWallet 或 KeePassXC。

其他發行版

Flatpak、.deb、.rpm 等都在規劃中。在那之前,可以用最新穩定版 Rust 從原始碼建置 Katna。

站在巨人的肩膀上

沒有這些專案和它們背後的人,就沒有 Katna。

GPUI 與 Zed (在新分頁中開啟)

Katna Mail 的整個介面都建立在 GPUI 之上,這是 Zed Industries 為 Zed 編輯器打造的快速、GPU 加速的 UI 框架。您看到的每一個像素、每一段動畫、每一個視窗都由它繪製。謝謝 Zed 團隊以開放的方式打造它。

Pimalaya (在新分頁中開啟)

底層的郵件協定。io-imap、io-smtp 和 io-sasl 負責與您的郵件伺服器溝通,其下是負責 IMAP 解析的 imap-codec。

KDE (在新分頁中開啟)

Plasma 是 Katna 用起來最自在的桌面,而 KDE 自己的 PIM 套件也給了它靈感。

Rust (在新分頁中開啟)

讓撰寫一個快速又安全的郵件客戶端成為一件樂事。Katna 沒有任何 unsafe 程式碼。

還有底層的這些函式庫

CREDITS.md 列出了 Katna 用到的每一個函式庫,附上作者、授權條款和連結。 閱讀 CREDITS.md (在新分頁中開啟)

謹以此獻給 Linux,以及打造它的自由軟體社群。

支持 KDE

KDE 打造了 Katna 用起來最自在的桌面,它由志工開發,靠像您這樣的人資助。如果您喜歡 Plasma 或 KDE 的應用程式,請考慮捐款給 KDE。

捐款給 KDE (在新分頁中開啟)

支持與追蹤

Katna 是自由軟體,以開放的方式打造。如果它對您有幫助,請我喝杯咖啡,就能讓它繼續走下去。

Katna 採用 GNU General Public License(GNU 通用公共授權條款)第 3 版或更新版本(GPL-3.0-or-later)授權。

在 Arch Linux 上安裝