開發工作環境

開發工作環境
Photo by Christopher Gower / Unsplash

記載了目前打造的工作環境,定時更新

  • 2023.4 初稿
  • 2023.5 更新 Synergy
  • 2024.2 年度更新
  • 2025.2 年度更新

桌面

  • 主力為 macOS
    • mac mini m4 pro 48GB + 10Gbps (跑 32b LLM 加一些有的沒有的應用很有餘裕)
    • MacBook Air M1 8GB (外出行動用,開太多東西略卡,主要為遠端工作,續航力真的很高)
  • 桌面硬體配置:
    • 升降桌 + 人體工學椅 + 螢幕直立支架,照顧身體健康
    • 雙螢幕,32' 4K 主螢幕 + 27' 4K 副螢幕 (270度翻轉直立),同時連接 Win PC + mac mini
    • USB KVM,在桌機及 mac mini 間切換,同時為 mac mini 提供 USB 擴充及 USB Type A 轉接
    • SSD 外接硬碟盒: 拆換下來的 NVMe SSD,擴充 mac mini 空間
    • 家人折舊下來的 Sony 立體音響組,但其實很少用,畢竟有空打電動的時候都在晚上怕吵人安寧

macOS 環境

  • 系統
    • AeroSpace: Windows TIling Manager,跟 yabai 相比優點是不用修改系統檔案,且聰明的避開 macOS Mission Control 的 Space 管理而建立虛擬工作區,切換顯示很方便。
      • yabai: Windows Tiling Manager, 自動分配並平鋪視窗,skhd 原 repo 貌似已不更新
    • BetterDisplay: 付費軟體, 調整內建螢幕及外接螢幕亮度,透過 DDC/CI, 支援熱鍵直接調整,比 MonitorControl 多了切換外接螢幕開關及其他實用功能,對常切換外接螢幕輸入源的環境很有幫助。
    • SetApp: App Store 以外的訂閱制 App 來源,有不少好用的工具
    • Surge: 強大網路代理工具,拿來建立出門在外,並用公用網路與區域網路私有自架服務。
    • Windows App (原名 Microsoft Remote Desktop): 遠端桌面操控 Windows
    • Vaultwarden: 自架密碼庫,並僅限內網存取,替換掉先前訂閱的 1Password。
    • Synergy: 建立 macOS 與其他作業系統的多重桌面
      • 上游專案部分基於 Deskflow
  • 效率
    • Raycast: 多功能快速啟動器,可搜尋、操控視窗、快速操控或搜尋特定應用程式內容、或執行自訂 Script
    • Obsidian:主力筆記庫管理軟體
    • Notion: 與人協作專案的軟體,目前以教育帳號先撐著
    • ToDoist: 2025 年初從 Things 轉移,因為想串接 n8n API 再以 LLM 處理
      • Things: 待辦事項,可建立定期重複事項,有多重層級分類。
    • Mimestream: 桌面 Gmail Client, 簡潔快速, 已取消訂閱
    • TexSnipper: 常駐在選單列的小巧 OCR 光學字元辨識工具,支援中英文
    • Bob: 可選取字詞後快速呼叫 LLM 翻譯,可設定串接到 Ollama
  • 文獻
    • PDF Expert: 比內建「預覽」好用的地方多了 Night, Sepia theme,以及垂直水平分割模式
    • Zotero: 跟 Firefox 同樣 Gecko 核心的文獻管理軟體,簡單強大,可以直接在 Microsoft Word 內整理文獻,有 Dark Mode 外掛
    • MacGPT: 目前習慣使用的 OpenAI ChatGPT 桌面客戶端。
    • memos (自架服務): 收藏剪貼短篇筆記文章,可以快速與人分享。 以 Apple Notes 替代
    • MindNode: 心智圖繪製,簡單好用。
    • Typora: 簡單好用的 Markdown Editor
    • Apple Notes: 存放日常雜事快速筆記,蘋果裝置同步最無礙。
    • Mathpix: 最近在學習使用 Latex, 可以截圖自動辨識對應的 Latex 語法。 已取消訂閱
    • Microsoft Office and Apple iWork: 同時使用
      • 簡報目前習慣先開 Keynote 做個快速初稿,有需要才轉到 Powerpoint
  • 開發
    • Homebrew: macOS 上必備套件管理軟體
    • Visual Studio Code: 裝一堆外掛,包含連接到遠端主機 (remote ssh) 進行開發
    • Sublime Text: 快速簡單好用,把他當成類 Windows 內建記事本來用了
    • Warp Terminal: 內建呼叫 LLM Model 的輔助功能,直接呼叫 Claude Model 解析伺服器狀態與建議指令 (免費版有 Credit 限制),以及預測下一步指令
      • Ghostty: 新興 Terminal 軟體,在 Linux, macOS, Windows 都有不錯的支援
      • Alacritty: 用 Rust 寫的終端機,畫面渲染很快
      • iTerm2: 老牌終端機
    • Orbstack: mac mini 上比官方 Docke Desktop 還好用的的 container 及 VM 管理員
    • Zsh + zimfw: 增強型 Shell, 可以減少繁複的指令切換
      • Powerlevel10k: 已進入純維護狀態,作者說不開發新功能
      • Starship: 設定簡單,運作起來比 Powerlevel10k 略慢
    • Forklift: 老牌雙欄分割檔案管理員,支援多種遠端傳輸協定
    • Hugo: 撰寫部落格以及部分網站的靜態網站框架
    • Proxmox VE:管理軟路由以及家中所有 Self-hosted 服務,偶爾部署資料爬蟲
    • Ollama: Local LLM 部署測試管理工具
    • xinference: Local LLM 及其他 Inference Model 部署測試管理工具
  • 影音圖片
    • IINA: 包 mpv 的小巧播放器
    • Infuse: 可連接 NAS 並支援多重影音格式播放,定位是影音庫管理員。近期更新可自動 Upscale
    • PixelImator Pro: 簡潔但兼顧專業的修圖軟體
    • Noir: Safari 外掛,將所有網頁轉換至黑底白字,可以自訂白名單。
    • Arc Browser: 與 Safari 合併使用,在多分頁切換及群組管理很方便
      • 官方停止開發,正在考慮推新的瀏覽器
      • 喜歡他的介面,可以考慮 Zen browser
    • 偶爾使用其他瀏覽器,單純區隔瀏覽紀錄與書籤用

桌機

  • Windows 與 Linux 同一 SSD 雙重開機
    • 坑超多,主要是 EFI 磁區引導很容易出問題
    • 如果要避開地雷還是建議分兩顆獨立硬碟
  • 網卡以及 BIOS 設定 Wake-On-LAN,可遠端直接喚醒開機
  • systemd-boot 控制開機順序

Windows

  • Steam 及 PC Game Pass
  • 報稅使用
  • Bluestacks 模擬器
  • 不使用 WSL 因為一些有的沒有的坑

Linux

  • Arch Linux (CachyOS) + Gnome-shell
    • Gnome-shell 與 KDE 曾經左右橫跳
    • 近期出的 Cosmic Desktop 覺得也不錯
    • 不過 Linux 桌面用一用還是習慣 macOS 桌面