在今年的雙年展中,其中一個最另我感到趣味的是丹麥的藝術團體 Superflex (中文介紹) 所展出的 Free Beer (Vores Ø)

Superflex 的成員有 Jakob Fenger (傑寇‧芬格)、 Rasmus Nielsen (羅斯莫斯‧尼爾森)、Bjonstjerne Christiansen (伯瓊斯傑尼‧克利斯汀森) 等人,創作計畫主要包含了經濟力、民主生產條件以及自我組織等等。

而所謂 Free Beer 則是以自由軟體形式的授權,將配方以 Attribution-ShareAlike 授權分享開放使用。因此你有權可以使用或修改此配方,合法的自行產製啤酒。類似的計畫還有 OpenColaFlying Dog Brewery 的 Open Source Beer Project

Free Bear 的配方原料為 (摘錄自台灣自由啤酒)

  • 水:500公升
  • 大麥芽: 60kg (BRIESS Pilsen Malt)
  • 小麥芽:60kg (BRIESS Wheat Malt)
  • 苦味型啤酒花:160g (Domestic Chinook)
  • 香味型啤酒花:400g(Czech Saaz)
  • 酵母: (FERMENTIS s-33)
  • 瓜拿納:1kg

這次在台灣雙年展,展覽單位與北台灣麥酒溫先生合作生產了 Free Beer Taiwan (台灣自由啤酒) 八千瓶,於台北的幾處咖啡店與酒吧零售。

對於自由軟體陌生的人,可能不易理解 Free Beer 的梗是甚麼。這是由於字彙的異意問題 (Gratis versus Libre),自由軟體的英文為 “Free Software”,但 Free 這個字在英文中有多重意義,時常會造成錯誤的意義與解釋,Free 在英文中可以指免費,或者指隨心所欲的「自由」。於是自由軟體社群的人時常以 Free as in Beer 與 Free as in Speech 作為辨別 Free Software 軟體屬性之語彙。

Free as in Speech 的意思是指你有隨心所欲的「自由」。指稱自由軟體是自由言論 (Free as in Speech) 指的是你有權可以可以查看軟體的原始碼、修改原始碼、分享原始碼,並可以為了任何目的執行使用這套軟體。但是這並非指自由軟體費用是免費供應的。

Free as in Beer 意指軟體是免費的。但是 Free as in Beer 不代表你有任何權利可以取得原始碼、修改、或分享給其他人使用。你只是享用免費軟體而已。

因此 Free Beer 的意義是,這是 Free as in Speech 的 Beer,而不是 Free as in Beer 的 Beer 喔。

何不趁著 9/20 軟體自由日 (Software Freedom Day) 的節日氣氛,到北美館去參觀一下這次的展覽跟享用台灣自由啤酒呢 ? 🙂

根據財政部國庫署說明 菸酒管理法第31條第37條相關規定,特聲明*飲酒過量,有害健康*

若你時常在 IRC 聊天或尋求技術支援,便會知道一口氣在頻道內張貼大量內容是非常不禮貌的。因為這樣常會蓋掉其他朋友的正常談話訊息,且非常不便利閱讀。

但你又時常需要提供各種設定或程式碼給人參考、除錯,比較好的方法是使用 rafb.net, pastebin.com, paste.debian.netpaste.ubuntu.com 等網站張貼段落。

不過很多時候,你若要從系統整理出這些設定檔也不是一件頗為容易的事情,Stéphane Graber 為此寫了 pastebinit。pastebint 目前已經進到 Debian Sid.

pastebint 是一個指令列介面的軟體,你可以透過指令的方式將設定檔或軟體的輸出丟到上述眾多任一網站上。操作方式如下

$ pastebinit -i ./2201-openwrt-redboot-layout.txt -b http://openwrt.pastebin.com
http://openwrt.pastebin.com/f58502e41
$ cat /etc/X11/xorg.conf | pastebinit -i - -b http://paste.debian.net
http://paste.debian.net/16838/

執行後,你就可以將回傳的網址丟到 IRC 頻道上,讓其他人檢閱。此外,若你總使用固定的網站,你也可以寫好 ~/.pastebinit.xml 設定檔如下

<pastebinit>
<pastebin>http://openwrt.pastebin.com</pastebin>
<author>chihchun</author>
<jabberid>[email protected]</jabberid>
<format>text</format>
</pastebinit>

希望它也可以很快的支援 gist 等網站.

In order to access some embedded system, network equipments, wifi routers, I usually need to use serial communication programs like kermit, minicom.

However, I usually need to access to different devices with different baud rate. So, I wrote some scripts for helping me.

The first one is kermit.sh, which get the options from environment variable. It’s using /dev/ttyUSB0 by default, and 9600 as baud rate. If you want to use differnt device name, just type

$ kermit.sh # using default
$ DEVICE=/dev/ttyUSB1 SPEED=115200 kermit.sh

The script will also save a session log in /tmp, it will show you the filename after you exit from the terminal. However, since kermit is not free. (because it ask developers who make modifications send back the chages). I also wrote another script for minicom.

This is a tip for Debian GNU/Linux.

Many times, you would like to record every work and commands in the terminal session. In the situations like checking the server’s status, testing new softwares, changing the configurations, fighting with crackers.. things like that.

In that moment, you don’t have time to take notes on every commands, but trying to get the system running. However, you will also want to check the log of the commands and outputs.

There is a very useful command named script (1) in the bsdutils packages. The software will help you make typescript of everything printed in the terminal, including your input. So, you can use this software to record your works, and review it later.

No only the things printed in your terminal, you can also save the timing data with ‘-t‘ option. The timing data will be outputted to standard error, you can save it by redirect the standard error to a file. Then you can play back the typescripts by scriptreplay (1).

Therefore, you could show how you get thing down to your friends/colleague by playing the typescript. Just like watch a movie.

For a easier usage, I wrote a small script. The script will help me save the typescript in the filename I assigned or time stamp.

Usage is very simple

$ ./script.sh # save the typescript as time stamp filename
$ ./script.sh mission-critical.log # save the typescript as mission-critical.log

This is a tip for Debian GNU/Linux.

說真的 reportbug-ng 實在遠比 reportbug 的純 CLI 介面好用太多了啊。

特別是這些特色

  • BTS 查詢功能
  • 關鍵字過濾介面
  • 網頁瀏覽介面
  • 整合郵件軟體!

最後一個功能最方便,終於可以使用 Icedove/Thunderbird 方便的撰寫問題回報了,可超方便的使用 Enigmail 與拼字檢查功能了!

備註: reportbug 與 reportbug-ng 都是 Debian GNU/Linux 的軟體瑕疵回報工具。與 Ubuntu Launchpad 的簡易回報方式有相當大的差異,詳情請參閱 Debian bug tracking system

稍早曾經介紹過 Debian 無人值守安裝程式,也就是 pre-seeding

最近看到熱血的 Daniel Bo 做了數個針對不同的桌面環境所設定的幾個預先安裝檔,如果你注意到他的網站名稱叫做 I’Been to Ubuntu,大概就不會意外他為了 Debian 做了這些桌面安裝環境的用意了。這個計畫可以協助你先排除一些需要先調整、設定才能開始使用系統的難題,於是你可以先透過 preseeds 光碟安裝一個馬上可用的系統作入門,但也保有 Debian 原有的特色。

目前支援的桌面環境有 Gnome, KDE, XFCEFVWM 等,你可以從網站上直接下載安裝光碟。對了,Daniel BoGames That Work 網站也相當精彩。