2013年11月16日 星期六

淺談 debian packaging - 5

延續先前對於control檔的介紹,該正式地找一個control檔來動動手腳了。

目前 Debian 的發行版是 Wheezy(Debian 7),在 Wheezy 裡的 upower 版本是0.9.17,這版並不支援羅技的部份無線鍵鼠電量查詢。upower 自0.9.23版才開始對羅技有較完整的支援(感謝Julien Danjou,所以我們就來把 Wheezy 的 upower 更新到0.9.23吧。

Debian 套件列表 中可以查到,在 jessie 裡的 upower 是0.9.23版的,剛好符合需求。所以先確認你的sources.list 裡有 jessie 的 deb-src 項目,並準備一個暫存的目錄方便後續的處理,就假設是 /tmp/upower 好了。然後打開終端機,切換到暫存的目錄、下載原始碼:

cd /tmp/upower apt-get source upower=0.9.23-2

完成後,用文字編輯器打開 upower-0.9.23-2/debian/control,可以發現它以空行分隔成好幾段。第一段是 source package 的部份,寫的是這個套件的名稱、分類、重要性、負責維護及打包的人、編譯所需的額外套件、版本,以及其他相關訊息。其下的各段是做為範本使用,指出了 upower 經過編譯之後應該包成 upower, libupower-glib1, libupower-glib-dev, gir1.2-upowerglib-1.0 這四個 binary package。

2013年11月15日 星期五

Gjs Style Guide 中譯

譯註:這篇文章適合已經對 Gtk/GLib 程式設計及 JavaScript 語言有一定基礎的人閱讀。 原文在此


原始碼排版格式

本文的目標是讓所有 GNOME 專案中的 JavaScript 程式碼有一致的排版風格。在像 JavaScript 這樣的動態語言裡,嚴格地要求排版格式(及單元測試)是有其必要性的,否則你很快便會發現你的程式碼像攪成一團的義大利麵一樣難以理清頭緒。

分號(; Semicolons)

雖然 JavaScript 允許你省略行末的分號,但千萬不要這麼做。請務必在每個敘述結束時加上分號。

js2-mode

如果你習慣使用 Emacs,試看看 js2-mode。它有點像 "lint",會以不同的顏色為你強調漏寫的分號或其他語法單元。

引用模組

當你需要引用模組時,使用 CamelCase 來和普通的變數區別,如下所示: const Big = imports.big; const GLib = imports.gi.GLib;