2022-11-15
交通部把 「公共運輸整合資訊流通服務平台 ptx」 改版升級成 「運輸資料流通服務 tdx」。 查詢公車站牌、 公車目前位置等等資訊變得更方便了! 請見 範例程式。 首先, 你需要註冊一個會員帳號, 然後就會自動取得一組 ID 跟 Secret。 把這組 ID 跟 Secret 填入範例程式的 tdx-credential.sh, 即可執行並取得一個 json 檔, 內含 access_token。 請把程式中的 $TDX_TOKEN_DIR/tdx-credential.json 改成你自己設定的路徑, 不要 放在 apache2 (或其他網頁伺服器) 讀得到的地方。 路徑必須是所有人可執行; 檔案本身必須是所有人可讀取。 (主要是需要讓網頁伺服器執行者 www-data 讀取。) 。 這個 tdx-credential.sh 可以設定成用 cron 每天半夜執行,
2022-10-07
開機管理員我一直偏好用 extlinux 因為它的設定比 grub 簡單, 錯誤訊息也很清楚, 採用 UEFI模式從硬碟或隨身碟開機 也沒有問題。 唯一的問題是: 想要用 extlinux 做 UEFI 版的 iso 開機映象檔, 卻一直失敗。 看了 這一頁比較表, 決定試試看 rEFInd。 成功的用它製作 g22B 版的貴哥實驗室 iso 檔, 趕快筆記大推一下。 第一個重點是: 不要用 debian 系列提供的套件。 不知道為什麼, 用 apt install refind 安裝的版本一直失敗。 到 官網 下載最新版 (我下載的是 refind-bin-0.13.3.1.zip ) 並解壓縮。 下載我打包的 refind-example.tgz 並且在隨身碟的根目錄解壓縮。 其中最重要的就是 EFI/BOOT/startup.nsh 跟 EFI/BOOT/
2022-09-27
虛擬機通常躲在 host 的後面, 區網的其他機器看不到虛擬機的 IP。 這樣比較安全但也比較不方便。 我在電腦教室要叫學生互相檢查或攻擊同學的虛擬機, 這時就需要用 bridge (橋接器) 把虛擬機提升到跟 host 位於相同的區網。 觀念上來說, 需要做的事包含: 建立一個虛擬 bridge, 比方說叫做 brext 好了。 停用 eth0。 把實體網卡 eth0 接在 brext 底下。 透過 brext 對外尋求 dhcp 服務。 (Host 的網路又恢復連線。) 以後虛擬機的網路也都接在 brext 上。 指令上來說先前我用 bridge-utils 套件的 brctl 指令 (教學); 但是在 ubuntu 系列的作業系統裡面, 就必須用把預設的網路管理員 從 network manager 改成 networkd。 最近發現 network-manager
2022-09-21
現在大部分的電腦都支援 UEFI 開機, 所以新版的貴哥實驗室開機光碟也跟著配合支援 UEFI。 拿它來製作開機隨身碟的過程可以全程在 Windows 底下完成。 感謝蘇浚緯助教製作以上教學影片。 (2021/9/20) 到 這裡 下載最新的ISO檔, 還有對應的 uefi 開機檔。 [2022/9/13] 以目前最新的版本來說, 就是要下載 22/g22B-lmde-elsie.iso 跟 22/g22B-1-uefi-boot-files.tgz 這兩個檔案。 從今年開始, 檔案名稱改成 「版本字串放在前面」, 比較容易一眼就找到最新版。 在 Windows 底下打開檔案總管、 確認你的隨身碟採用的是 fat32 而不是 exfat 格式、 確認隨身碟還有足夠的空間 (至少要有 6G) 安裝解壓縮工具 7-zip, 用它把ISO檔的
2022-09-18
查看所有網卡裝置的指令 ip a 印出來的資料令人眼花撩亂; 可是大部分我都看不懂也沒在看。 可以只印看得懂的欄位就好嗎? 如果你的網路知識跟我一樣弱, 想要略過大部分資訊, 可以先安裝 zq, 然後在 ~/.bashrc 裡面加上這一句: alias ipa="ip -j a | zq -f csv 'over this | {ifname,address,ip_addr:missing(addr_info[0].local)?\"\":addr_info[0].local} | fuse' - | column -s, -t" 那麼下次進入 bash, 就可以用 ipa 指令查看精簡版的資訊。 首先, ip -j a 可以採用 json 格式輸出 ip a 的結果。 再來請試試這個指令: ip -j a | zq -f csv 'over this | {ifname,
2022-09-18
在 hacker news 上面看到這篇 Introducing zq: an Easier (and Faster) Alternative to jq 。 玩懂了之後, 發現用它來轉檔 (json => csv 或 csv => json) 及篇輯/篩選 json 檔的內容超方便, 甚至比 jq 簡單很多! 只是他們把 zq 的太多功能與特色擠在一篇文章介紹, 所以步調太快, 有點難懂。 這裡我拿臺中市 151 公車停靠站 tcbus-151.json 來作範例, 展示最常用的 zq 基本語法。 這個檔案是從 ptx 公共運輸整合資訊流通服務平台 撈出來的。 一、 簡介 到 github 的 release 頁面 下載適合你的作業系統的版本。 以我下載的 linux-amd64 版本來說, 解壓縮之後把 zq 與 zed 兩個執行檔搬到 /usr/bin 底下就
2022-09-18
上個學期教資料視覺化, 其中一個主題是繪製客製地圖, 就做了這個例子: 台中公共腳踏車租賃地點。 像這種 marker 個數太多太密集的地圖, 需要用 cluster map 來做, 當訪客拉近 (zoom in) 時, 才把一個 cluster 拆成更多個小的 clusters。 這個無法用單純的 umap 來做。 [9/7 現在發現 umap 可以製作 cluster map 了, 更簡單! TGOS 批次地址查經緯度 + umap 私房地圖範例: 清冠一號中醫診所地圖] 請先下載 程式碼, 然後用瀏覽器打開其中的 index.html, 拉近拉遠測試一下。 如果是 firefox, 要先到 about:config 裡面把 security.fileuri.strict_origin_policy 設成 false; 如果是 chromium,
2022-09-13
是的, 暑假我在跌跌撞撞當中完成了這個壯舉。 如果再來一次, 有這篇事後心得文可以參考, 說不定半天就可以完成, 或許還能附贈 Windows。 一、 環境及前置作業 教室內網要順暢, 最好有 DHCP。 假設所有電腦的硬體配備都相同。 硬碟可以是空的完全沒有作業系統 除了想要安裝 Linux 之外, 如果還想要加裝 Windows, 那麼每部電腦最好有兩顆硬碟, 處理起來比較簡單。 準備4顆 貴哥版的 grml Linux 開機隨身碟。 以 UEFI 開機的電腦來說可以把 grml 的 iso 檔裡面的所有目錄與檔案複製到隨身碟的根目錄、 進到 live/grml64-small 把 *.squashfs 改名為 root.squashfs (當初我製作新版光碟時忘記改 *.squashfs 的名字了 orz) 、 把 uefi-boot-files*.tgz
2022-09-05
[本來想重寫 TGOS 的教學文, 做這張圖時才發現 umap 已中文化, 介面改了不少, 而且有提供 cluster map 的功能, 就乾脆連 umap 教學也一起重寫。] 接續前一篇 轉碼 big5 除錯記, 已經得到整理過的清冠一號中醫診所地址檔 3.csv。 (仍舊是 utf8 編碼, 但不會讓 iconv 消化不良。) 下一步要轉成 TGOS 規定的格式。 經過很多次實驗, 發現幾件事: 地址欄如果有郵遞區號, 很多時候反而會出錯。 最好刪掉。 很多筆資料裡面的「巿」跟平常打字出現的「市」其實並不一樣: echo '巿市' | xxd 會看到前者的編碼是 e5 b7 bf 而常用的「市」則是 e5 b8 82。 id 欄必須是整數, 中間跳號沒有關係, 也不需要按照順序。 但是為了等一下處理 (join 指令) 方便, 最好每一列的 id 位數相同 (例如都是
2022-09-05
雖然偶爾才遇到... utf8 轉碼 big5 很討厭, 因為 big5 的字集比較小, 會有很多字轉不過去。 今天拿 衛服部「清冠一號動態表」 的中醫診所地址清單做例子, 因為 地址轉經緯度的 TGOS 服務 要求輸入檔案必須採用 big5 編碼。 把網頁存成 cg1.html 。 轉檔: python3 html2csv.py cg1.html > cg1.csv。 手動編輯 cg1.csv, 去掉 "###" 以下所有多餘的列。 某些列的某些欄位因為內含逗點, 所以被雙引號包起來, 以免那些逗點被當成欄位分隔符號。 比較簡單的方式是: libreoffice cg1.csv、 手動刪掉許多欄位, 只保留代號+名稱+地址三欄、 另存新檔成為 2.csv、 再用 nano/geany/vim 手動編輯 2.csv, 找到所有含有雙引號的地址 (共五列)、 手動把
2022-09-05
有時候我會從某個網站一口氣抓下很多 html 檔, 方便離線閱讀。 在 linux 命令列上: lynx ~/放很多html檔的某個目錄/ 接下來就可以用左右方向鍵進入和退出每個檔案, 逐一閱讀。 從省著用手指的角度來看, 這比雙擊滑鼠和下指令都要省力很多。 txt 檔或是沒有副檔名的 README 等等當然也適用。 遇到 pdf 檔, 我的 linux mint 會把 gimp 叫出來。 可是我並沒有要編輯啊! 我習慣用 okular 讀 pdf 檔, 因為按 ctrl-i 就可以變成黑底白字。 這時可以編輯 /etc/mailcap 把裡面所有同時提到 pdf 跟 [gimp 或 inkscape] 的那幾句都註解掉。 離開 lynx、 再重新進入, 這次 lynx 就會用預設的 pdf 閱覽器 (以我而言就是 okular) 去開啟 pdf 檔了。 最近想要學寫

軟體自由運動 需要您的支持!

數位路平

軟體自由推動成果:數位路平

為向政府單位宣導開放文件格式,軟體自由協會在 2015 年主辦了「數位路平★台灣騎跡」縣市政府宣導活動,成員們以單車為交通工具,騎車到西部及離島的各縣市政府前,大聲的說出我們追求數位路平的心聲。

捐款給SLAT

若您肯定協會多年來的努力,敬請捐款支持軟體自由運動!

立即捐款
自由軟體納入檢定

軟體自由推動成果:自由軟體納入國家技能檢定

2016 年,軟體自由協會向國家技能檢定中心要求檢討考場預裝軟體的規定,並將自由軟體納入選項中。在經過數場會議之後,技檢中心終於在 2017 年 8 月底公佈修正草案,這對考生的選擇自由、技職體系的教育公平性來說,都是非常大的進步。

捐款給SLAT

若您肯定協會多年來的努力,敬請捐款支持軟體自由運動!

立即捐款
training of ODF

軟體自由推動成果:協助推廣開放格式文件

自從 2015 年國發會開始「推動ODF為政府文件標準格式」之計劃以來,台灣各縣市政府已逐步落實開放格式文件的使用,能有這麼亮眼的成果,軟體自由協會的夥伴們是不可或缺的幕後功臣

捐款給SLAT

若您肯定協會多年來的努力,敬請捐款支持軟體自由運動!

立即捐款
ezgo saminar

軟體自由推動成果:專屬教育現場的自由軟體體驗包

"ezgo" 是軟體自由協會以 Kubuntu 為基礎而打造的「自由軟體體驗包」,包含了各種適合日常工作使用的自由軟體,以及豐富的教育類軟體和自由教材,是一套專為教育現場打造的作業系統。

捐款給SLAT

若您肯定協會多年來的努力,敬請捐款支持軟體自由運動!

立即捐款