2025/9/20

新酷音 : Chewing, ibus 和 fcitx5

ubuntu 24.04 default 的輸入管理器是 iBus.
但是iBus在新酷音有點問題,就是不能記住目前的 input mode (Eng/Chinese),以 Excel 來說,換 cell 輸入法就被 reset 成中文。

fctix5 就沒這個問題。
選 fctix5 然後 apt install fcitix5-chewing 之後,在應用城市會出現企鵝的程式 fctix5-config,右邊那邊選 Chewing 按兩下就可以了。


25/10/10 update:

結果每次開機gnome-termial 都要等 5 min 之後才開得起來,但是 Xtermin 沒有問題。
claude-code 找問題,果然是...

2025/9/14

claude code router

claude-code 的 api 不是和其他人一樣的 openai (?) 的方式,所以就有人做了一個 gateway,把 anthropic 呼叫轉為openai 呼叫,同時把回應也改成 anthropic api 回應。
當然,這是用 reverse engineering 做的。
claude code router 也是用 npm 安裝。
安裝完後就是setup,他有提供一個 ui 界面,方便設定。
安裝完用:
ccr ui
就會開啟 browser,顯示設定頁面。
openrouter 為例,就選新增 provider - openrouter,然後到openrouter 選一些 (free) 或是 $0/M token 的 model。
在 model 的 democode 中會有 model 的名子。
舉例來說: 他的code 就有:
model="z-ai/glm-4.5-air:free"
就是他的model name,填入 provider的 add model.
一個 provider 可以add 一堆 model.

oprouter 需要一個 api_key,所以去settings--API keys 產生一個 key,把 key copy 到剛剛 claude code router 的 UI 的 openrouter 項目。
UI 設定好像這樣就可以了。
之後 'save'
就會在home 之下create ./claude-code-router/config.json

然後就可以用
ccr code
啟動 claude-code
用 stats 看,可以看到 model 還是 anthropic sonnet,
所以要用 command 來改:
/model openrouter, a-ai/glm-4.5-air:free
就可以改成 openrouter 的 glm-4.5-air model


This is my config.json (API_KEY marked)
$ cat .claude-code-router/config.json 
{
  "LOG": true,
  "LOG_LEVEL": "debug",
  "CLAUDE_PATH": "",
  "HOST": "127.0.0.1",
  "PORT": 3456,
  "APIKEY": "123",
  "API_TIMEOUT_MS": "600000",
  "PROXY_URL": "",
  "transformers": [],
  "Providers": [
    {
      "name": "openrouter",
      "api_base_url": "https://openrouter.ai/api/v1/chat/completions",
      "api_key": "sk-or-v1",
      "models": [
        "nvidia/nemotron-nano-9b-v2:free",
        "openrouter/sonoma-sky-alpha",
        "deepseek/deepseek-chat-v3.1:free",
        "z-ai/glm-4.5-air:free",
        "qwen/qwen3-coder:free",
        "moonshotai/kimi-k2:free"
      ],
      "transformer": {
        "use": [
          "openrouter"
        ]
      }
    }
  ],
  "StatusLine": {
    "enabled": false,
    "currentStyle": "default",
    "default": {
      "modules": []
    },
    "powerline": {
      "modules": []
    }
  },
  "Router": {
    "default": "openrouter,openrouter/sonoma-sky-alpha",
    "background": "",
    "think": "",
    "longContext": "",
    "longContextThreshold": 60000,
    "webSearch": "",
    "image": ""
  },
  "CUSTOM_ROUTER_PATH": ""
}



有關openrouter的 model,不是所有model 都 support claude-code-router,需要support tool 的才行: 所以可以follow 說明,在list model 時加上 filter: tool
另外光support tool 好像也不能完全 support claude code router,像mistral 的 model,雖然 support,但是一對tool command 他不認識。


要注意的是,ccr server 啟動之後,修改 config.json 不會生效。
要restart ccr server 才會重新 load config.json

2025/9/2

mediawiki 升級

到 special page (特殊頁面) 去,然後把網址的 : 後面改 "Version" 就會出現版本頁面,例如
  • http://192.168.145.166:9090/index.php/Special:Version
所以知道版本是 安裝的套件有 Tag Extension 有:
galleryimagemapindicatornowikipre

把原 server 的文章,user account 倒出來
mysqldump -u wikiusername -p wikipassword > wikidb.sql
把upload 的 image 倒出來
tar -zcvf wikiimage.tar.gz /path/to/mediawiki/imagepath
這個path 在 LocalSetting.php 中的變數定義
$wgUploadDirectory=/var/lib/www/mediawiki/


clone 下面的 github project.

設定新 MediaWiki 的簡單步驟

以下是設定新 MediaWiki 的簡單步驟,使用這個專案的說明。請先確認你的電腦已經安裝 DockerDocker Compose

準備工作

  • 複製環境設定檔案:cp .env.example .env
  • 編輯 .env 檔案,設定必要的參數:
    • MW_ADMIN_PASS:管理員密碼(預設 changeme123!,請改掉!)
    • MW_SITE_SERVER:網站伺服器地址(如果不是 http://localhost:9090,請修改)
    • 其他設定如 MW_SITE_NAMEMW_LANG 等,可視需要調整

啟動步驟

  1. 建置並啟動容器:
    docker compose up -d --build

    這會自動下載並安裝 MediaWiki 1.41,包含常用擴充套件(如語意媒體wiki、視覺編輯器等)。

  2. 開啟瀏覽器,前往 http://localhost:9090 查看你的 wiki 網站。
  3. 使用管理員帳號登入:
    • 帳號:Admin
    • 密碼:你在 .env 中設定的 MW_ADMIN_PASS

從現有的 MediaWiki 恢復資料

如果你有一個現有的 MediaWiki 網站,想要將其資料庫和圖片檔案恢復到這個 Docker 環境中,可以按照以下步驟操作:

1. 匯出現有資料

  • 匯出資料庫:
    mysqldump -u [使用者名稱] -p[密碼] [資料庫名稱] > wikidb.sql
  • 打包圖片檔案:
    cd /path/to/old/mediawiki
    tar -czf images.tar.gz images/

    或者使用 zip:

    zip -r images.zip images/

2. 放置檔案

  • 將匯出的 wikidb.sql 檔案放到此專案的 ./data 資料夾中
  • 將打包的圖片檔案(images.tar.gzimages.zip)也放到 ./data 資料夾中

3. 設定環境變數

  • 編輯 .env 檔案,新增或修改以下設定:
    MW_RESTORE_ON_INIT=1
    MW_RESTORE_DB_DUMP=/data/wikidb.sql
    MW_RESTORE_UPLOADS_ARCHIVE=/data/images.zip

    如果資料庫已經有資料表且需要覆蓋,請額外添加:

    MW_FORCE_DB_RESTORE=1

4. 啟動容器

docker compose up -d --build

容器啟動時會自動執行恢復程序,將資料庫和圖片檔案匯入到新的環境中。

注意事項

  • 第一次啟動時,系統會自動安裝 MediaWiki,即使有舊的 LocalSettings.php 但資料庫是空的,也會重新安裝並啟用擴充套件。
  • 如果需要語意媒體wiki(SMW)的設定,請在登入後檢查並執行維護指令(參見 README 的 Maintenance 部分)。
  • 所有資料(資料庫、圖片上傳)會儲存在 Docker 磁碟區中,網站設定檔案會存放在 ./data/LocalSettings.php
  • 如果圖片檔案是使用非 UTF-8 編碼(如繁體中文的 cp950),請在 .env 中設定:MW_ZIP_ENCODING=cp950

如果遇到問題,請檢查 Docker 記錄:docker compose logs -f mediawiki



version 1.44

恭喜!

您已經成功安裝MediaWiki。
安裝程式已自動產生LocalSettings.php檔案, 該檔案中包含了您所有的設定項目。
您需要下載該檔案,並將其放置在您 wiki 的根目錄(index.php 所在的目錄)中,下載應已自動開始。