你需要一個基本的 mail server 來處理一些系統上的通知信件,但是又不想裝上複雜的 postfix 或 sendmail. 這時可以用 nullmailer,它的功能十分簡單陽春,不聽 port 25, 連基本的 newaliases 都沒有。
設定檔就 10 個,每個設定檔只有一行。

control file used by
adminaddr nullmailer-queue
defaultdomain nullmailer-inject
defaulthost nullmailer-inject
helohost nullmailer-send
idhost nullmailer-inject
me nullmailer-inject
pausetime nullmailer-send
remotes nullmailer-send
sendtimeout nullmailer-send

基本上,最重要的是 remotes,讓你設定 smarthost 位址。支援的 smarthost protocols 有 smtp, qmqp。常見的 smtp 也支援 SSL,以 gmail 為例子,你可以這樣設定

cat > /etc/nullmailer/remotes
smtp.gmail.com smtp --port=587 --starttls --[email protected] --pass=password

你也可以透過 dpkg-reconfigure nullmailer 來設定。其他的 smtp 參數有

/usr/lib/nullmailer/smtp -h
usage: smtp [flags] remote-address < mail-file
Send an email message via SMTP
-p, --port=INT Set the port number on the remote host to connect to
--user=VALUE Set the user name for authentication
--pass=VALUE Set the password for authentication
-d, --daemon use syslog exclusively
-s, --syslog use syslog additionally
--auth-login Use AUTH LOGIN instead of auto-detecting in SMTP
--ssl Connect using SSL (on an alternate port by default)
--starttls Use STARTTLS command
--x509certfile=VALUE Client certificate file
--x509cafile=VALUE Certificate authority trust file
(Defaults to /etc/ssl/certs/ca-certificates.crt)
--x509crlfile=VALUE Certificate revocation list file
--x509fmtder X.509 files are in DER format
(Defaults to PEM format)
--insecure Don't abort if server certificate fails validation

-h, --help Display this help and exit

(以上指令測試於 Ubuntu 13.04, raring)

2012 年的時候,開始爬百岳,到 2013 年初已經登過二十座,這段時間也一直研究登山的技術與知識。百岳的海拔均在 3000 公尺以上,在登超過 2400 公尺高山時,最擔心的事故之一就是急性高山症 (Acute Mountain Sickness aka 簡稱 AMS),若是演變成肺水腫腦水腫。

根據《登山前一定要知道的事情》,在高山氣壓低、缺氧時,動脈血氧濃度 (SpO2) 會降低,造成活動能力降低。夜間也會因為週期性呼吸異常 (Cheyne-Stokes repiration) 、頭痛導致睡眠障礙。長時間登山過三千五高度,最糟會降至 84% 左右。即使日常訓練提高最大攝氧量 (VO2 Max),也沒有太大幫助。除了慢速上升做高度適應,可以透過呼吸技術來提高 SpO2,常見服用 Acetazolamide 等藥物刺激呼吸換氣使睡眠時動脈血氧上升,有治療、預防作用。

以玉山登山口與平地血氧飽和度差異預測急性高山病》的研究中,指出在平地與登山口所量測的 SpO2 值相差越大,越有高山症的風險。日本登山醫學會也指出同樣的研究結果。但 2012 年有兩項研究,包含王士豪醫師等在玉山山區所作的調查,認為以 SpO2 預測高山症並未能達到顯著的統計意義,也有人指出可能是因為測量誤差與測試方法中的可控變數變異所造成,有待學界釐清

 

玉山血氧濃度調查

總之我一直對可以量測 SpO2 的血氧儀很感興趣,血氧儀的基本原理是利用透過 LED 發出 660nm 與 940nm 的近紅外光 (Near Infra-red, NIR),以 Beer–Lambert law 計算穿透血紅素(Hb)和帶氧血紅素(HbO2   )的強度,估算出 SpO2 的數值。

康泰(CONTEC)CMS 50D Plus Fingertip Pulse Oximeter

這樣的產品技術門檻不高,已經相當廉價,市價不到 2000 元台幣。因此購入一台康泰(CONTEC)CMS 50D Plus Fingertip Pulse Oximeter,它可以用來量測 35~99% 的血氧值、也可以測量 30~250 的脈搏率。重點是他內建 Flash memroy, 所以可以紀錄血氧和脈率數值。可以透過 USB 匯入,或即時觀測。這組設備是 FDA & CE Approved。

康泰(CONTEC)CMS 50D Plus Fingertip Pulse Oximeter

 

它附有主機、攜帶套、USB Serial cable、脖繩、光碟等。在 Linux 上可以搭配 SleepyHead 解讀資料。(SleepyHead 也可以用來銜接 CPAP 儀器分析睡眠品質)

sleepyhead

 

警告: 血氧分析儀容易因為周圍光線影響判讀,另外若測量對象貧血,缺乏血紅素(Hb),也會造成誤判。

2016/12 編輯: 新增 2012 年兩項研究認為以 SpO2 預測高山症並未能達到顯著的統計意義,這可能是因為測量誤差與可控變數變異所造成,有待學界釐清

 

Ubuntu 12.10 還勉強堅持使用 Nautilus 3.4, 但是到了 Ubuntu 13.04 中升級了 Nautilus 到 3.6. Nautilus 3.6 基本上是為了 Touch devices 設計的界面,但是移到了 Desktop 上,這種設計是一種大災難,以下這些功能都被移除了!

相較之下 Mint forked nautilus 出來的 nemo,比較符合過去的操作習慣。只要裝好之後,透過 xdg-mime 更換預設的 inode/directory 開啟軟體為 nemo 即可。

# apt-get install nemo
$ xdg-mime query default inode/directory
$ xdg-mime default nemo.desktop inode/directory

除了 nemo 可以考慮外,也可以考慮使用 SolusOS patched Nautilus.

References

既前一次 blog 發文,分享 2011 十一月參加 UDS-P 心得,轉眼間已經一年,中間也舉辦過 UDS-Q, UDS-R (我只到 Oakland 出席 UDS-Q)。

2013 年開始,Ubuntu Developer Summit 轉為線上形式,只用 Google Hangout 在線上開會,大幅縮減舟車勞頓的辛勞。無論你在世界什麼地方,都可以方便的以 IRC、Youtube 直播、EtherPad、Hangout 加入討論。2013 年已經舉行過兩場 UDS,分別是 UDS-1303UDS-1305

這兩次的會議,主要是聚焦預定在十月十七日發行的 Ubuntu 13.10 (Saucy Salamander) 開發計畫。

稍微整理一下這兩場會議中,我個人較為關心的開發計畫。

Foundations

Clients

Server/Cloud

QA

Community

更多細節請參考以下網址

十一月初的時候,到 Orlando, FL 的 Caribe Royale 出席參加 12.04 的 UDS-P – Ubuntu Developer Summit. Ubuntu 開發者大會。

UDS 是每半年一次的研討會,每次都會邀請各「上游」社群與 Ubuntu 開發團隊聚集在一起,討論下一版的主要開發目標並制定里程。而 UDS-P 的主要議題,自然是下一版 12.04 的 Precise Pangolin (嚴謹的穿山甲),12.04 也是 LTS 版本,支援期間長達五年。也因此 Mark Shuttleworth 也在開場 Keynote 的時候鼓勵與會者,在場的一言一行都會受到世界許多關注,在長達一週的會議中,所做的決定都會影響到許多使用者 (目前 Ubuntu 有超過兩百萬使用者),特別是偏好穩定系統的企業。

UDS 的形式有別於一般「研討會」,會場總共有 24 間會議室 (本次跟 Linaro Connect Q4.11 合辦),除了少數幾個全場演講是以簡報演講方式進行,剩餘大部分的議程是由註冊人帶領,幾位主要的開發者以圓桌方式坐在會議室中央,其他人可以隨意進入旁聽,並隨時插入相關議題或提問。像是 Multi-monitor Support 等熱門議題,太晚進會議室只好待在後面站著囉。

議題內容多元,從社群經營硬體核心基礎軟體雲端系統中國版本,甚至是發想性質的議題,像是讓 Ubuntu 支援手機、平板電腦與智慧電視裝置 等等。每個議題時間大約一個小時,各個來自世界各地的開發者,在大量咖啡因的作用下,進行節奏迅速的爭辯討論。由於並非每位開發者都可以現場出席會議,遠端開發者也可以透過即時語音廣播 (icecast) 與 IRC 加入討論。

costume party_831

一個小時的會議後,所有的討論會整理成藍圖 (blueprints),這些藍圖就是本次發行階段所需要開發的目標項目與負責人。在 UDS-P 中,有超過三百份藍圖。這些藍圖完全透明開放給所有人參考,也歡迎任何人介入制定。

許多開發者,即便是 Canonical 員工,有超過 70% 都是在家中工作,UDS 是難得的難得可以相互見面的機會。各個上游軟體專案的開發者,也會出席這次的會議,像是 Debian Project Leader Stefano ZacchiroliFreeRDP Marc-André Moreau 等等。他們增強了 Ubuntu 與上游專案進一步的合作關係。

令人印象深刻的是,整場會議中許多強者對於其他人的開放信任態度,記得在週四晚上的 Keysigning Party,我身旁一位 “神級” Debian Developer,誠懇對每一位交換簽章的人,說「沒問題,我相信你」,也許是因為大部份的人都抱持一樣的態度,使會議進行相當順暢而且充滿生產力的歡樂氣氛。

costume party_981

接下來還有力氣的話,我會再分享一些議程資訊。

照片: http://www.flickr.com/photos/37955218@N08/sets/72157627962230661/
訪問: http://akgraner.com/?p=1124
錄影: http://www.youtube.com/user/ubuntudevelopers#p/u

Ubuntu UDS P Orlando – Interview with Mark Shuttleworth

利益揭露: 筆者為 Canonical 員工。

參與開源社群活動時,常常在不同的場合聽到有人鼓吹,應當要回饋自己的時間與精力給軟體計畫,講者要求大家去參與翻譯、籌辦活動、或參與開發。每每聽到這種要求,總是感到納悶,常常他們似乎都未能夠分享實際參與社群的動機,二來總是有種道德勒索的錯覺。他們暗示你,這麼好用的軟體不收你錢,你該回饋些什麼吧?

雖然我相當崇尚自由軟體精神,但是實質上,無法接受不談動機,反以道德訴求要求使用者社群貢獻來回饋免費軟體。人們參加開放原碼社群的動機很多樣,無論是功利主義還是榮譽制度,負面的道德勒索往往不該是其中的一項。對我而言,這個動機實際一點就是讓自由軟體更便利好用,足以完成手上的工作項目。長遠一點的期望則是鼓吹開放精神,避免電腦軟體受到少數企業集團、政治組織的宰制,讓社會更自由且多元化。

週末 (7/15-7/18) 時,h4 的朋友參加 OSSACCOSSF 籌備的 Hacking Camp,講者小蟲在他的演講中分享了幾個基本概念

  • Hacking for yourself
  • Hacking without boundary
  • Hacking with community
  • Hacking with for fun

我個人十分認同,h4 日常的聚會討論,時常是針對每日所使用的軟體改進、臭蟲回報修正,進而整合或重新設計新的軟體。Hacking 首重解決自身需求以及享受其中的樂趣。

我在 Hacking Camp 也分享了一場小演講,想要探討的是,如何考慮自身軟體需求的前提下,參與自由軟體計畫的方法。雖然目前自由軟體的成熟度與日俱增,但仍有許多時候會碰到使用上的問題,這份演講簡報,試圖說明該如何詢問問題,該如何回報臭蟲,以及如何與上游開放原始計畫互動,以便解決個人的使用障礙或達成開發目標,針對對象是大學資工系一、二年級的朋友。