聚會時間公告: 因應COSCUP 2011, Kalug 8月份休會一次

八月 26, 2016
» calibre 2.65.1 釋出

自由的跨平臺電子書管理軟體,calibre 2.65.1 正式版釋出,此版本新增了幾個功能以及修正了 7 個 bug。
calibre 2.X 版本支援 Windows Vista~ 10 (皆含 32 位元及 64 位元版本)、Mac OS X 10.7 或更新、各種 Linux 發行版。若您的作業系統是 Windows XP 或是 Mac OS X 10.5、10.6,請繼續使用 1.48 版。

來源:http://calibre-ebook.com/whats-new

八月 24, 2016
» COSCUP 2016 ── 幕後小啄

去年當過一年的行銷組工作人員之後,今年也繼續在歡樂的 COSCUP 行銷組中當個小啄的幕後推手,只不過今年的工作比較吃重一點,在大會尚未開始時負責 Plurk、Twitter 與 Google+,大會開始後則多了 Facebook 的權限,以我們內部輪班的方式進行。
另外,個人覺得今年的議程實在不怎麼吸引我,多數議程的技術需求都太高,對我來說大部份可能都是有聽沒有懂,因此幾乎都沒有進議程場地。
不過今年的社群攤位我倒是覺得都不錯,比較意外的是今年竟然有 VideoLAN 的攤位!還要讓人家大老遠從國外跑來呢。
然後真的不得不說今年的其中一個贊助商 Automatic 送的紀念品真多XD,不僅有大量的 Wordpress 貼紙,還有 Wordpress 的太陽眼鏡,雖然我只拿了一副,不過其實有點想三種配色的都拿XD。

最後,每年人數都會越變越多的工作人員辛苦了(雖然我也是其中一員XD)。

八月 22, 2016
» Applications 16.08.0、Frameworks 5.25.0 已經可用 (Chakra GNU/Linux)

KDE Applications、Frameworks 的最新更新現在都已提供給所有的 Chakra 使用者,並也包含了其他的軟體包更新。

作為新版本系列的初始版本,Applications 16.08.0 也帶來了許多變動,其中較重要的是:

  • KolourpaintCervisiaKDiskFree 現在已移植至 Frameworks 5 函式庫。
  • kdepimlibs 現在已被拆分為 akonadi-contactsakonadi-mimeakonadi-notes
  • kdegraphics-strigi-analyzerkdenetwork-strigi-analyzerskdesdk-strigi-analyzerskdeedu-libkdeedukdemultimedia-mplayerthumbs 已不再更新。
  • Kontact 套裝軟體marblearkkonsolekate 收到了許多強化、新功能與錯誤修復。


Frameworks 5.25.0 包含了錯誤修復以及對 breeze 圖示、kactivities、plasma 框架、kio 以及其他東西的改進。

其他值得注意的套件更新:
core
  • vim 7.4.2207
  • ruby 2.3.1

desktop
  • virtualbox 5.1.4

lib32
  • wine 1.9.17
請在 Pacman 詢問您是否要取代套件時一律回答 yes。若您有任何的疑問或是遇到關於此更新的任何問題,請在對應的論壇貼文詢問或回報。

我們大多數的鏡像可能需要12至24小時同步,同步完後,更新應該是相當安全的。我們也提供了一個簡單的鏡像狀態頁面來檢查您的鏡像在什麼時候與主伺服器同步。

新聞來源:Applications 16.08.0 and Frameworks 5.25.0 available in Chakra

八月 21, 2016

小惡魔AppleBOY
AppleBOY
小惡魔 – 電腦技術 – 工作筆記 – AppleBOY is about »

tag cloud

» 2016 COSCUP 用 Golang 寫 Microservices

Go-brown-side.sh 今年在 COSCUP 投稿『用 Golang 寫 Microservice』,這場議程最主要是介紹 Golang 入門篇,以及用了哪些 Golang Library 在 Microservices 上,目的希望能多推廣 Golang 語言在 Server 開發上,將來能更多公司導入使用。底下是今年的簡報及大綱:

議程簡介

  • Microservices 介紹
  • 為什麼用 Microservices
  • Golang 簡介及應用
  • Golang 測試相關工具
  • Docker 整合部署 Golang
Write microservice in golang from Bo-Yi Wu
影片: 請點我開起影片

問與答

議程最後有人問到 Golang 怎麼處理 Package 版本管理,其實 Golang 有整理一份 Package Management Tools Wiki。最後謝謝 Evan Lin 大大幫忙主持會議。

八月 15, 2016
» Plasma 5.7.3 與其他重要套件已經可用 (Chakra GNU/Linux)

Plasma 5.7.3 包含了新翻譯與錯誤修復,其變動主要是關於 plasma 桌面與工作空間、kwin 與 networkmanager。

其他值得注意的套件更新:

[core]

  • nvidia 367.27
  • sqlite3 3.13.0
  • texlive 群組
  • laptop-mode-tools 1.69.2

[desktop]
  • virtualbox 5.1.2
  • libreoffice 5.1.5

[gtk]
  • firefox 48.0
  • gtk3 3.20.6

[lib32]
  • wine 1.9.16
請在 Pacman 詢問您是否要取代套件時一律回答 yes。若您有任何的疑問或是遇到關於此更新的任何問題,請在對應的論壇貼文詢問或回報。

我們大多數的鏡像可能需要12至24小時同步,同步完後,更新應該是相當安全的。我們也提供了一個簡單的鏡像狀態頁面來檢查您的鏡像在什麼時候與主伺服器同步。

新聞來源:Plasma 5.7.3 and other important package updates available in Chakra

八月 12, 2016
» calibre 2.64 釋出

自由的跨平臺電子書管理軟體,calibre 2.64 正式版釋出,此版本新增了幾個功能以及修正了 5 個 bug。
calibre 2.X 版本支援 Windows Vista~ 10 (皆含 32 位元及 64 位元版本)、Mac OS X 10.7 或更新、各種 Linux 發行版。若您的作業系統是 Windows XP 或是 Mac OS X 10.5、10.6,請繼續使用 1.48 版。

來源:http://calibre-ebook.com/whats-new

八月 3, 2016
» LibreOffice 5.2.0 與 5.1.5 釋出

LibreOffice 5.2.0 已經釋出,這是 5.2 系列的的首個穩定版本。另外也釋出了 5.1.5,這是 5.1 系列的第五個錯誤修正版本。
對於企業使用者,文件基金會建議在有認證專家做為後盾的情形下部署 5.1 系列到大型企業及組織,以提供額外的加值服務。

新聞來源:LibreOffice 5.2 “fresh” released, for Windows, Mac OS and GNU/Linux

八月 2, 2016

小惡魔AppleBOY
AppleBOY
小惡魔 – 電腦技術 – 工作筆記 – AppleBOY is about »

tag cloud

» 在 Jenkins 跑 Golang 測試

Go-brown-side.sh 本篇會紀錄如何在 Jenkins 測試 Golang 專案,直接拿 go-hello 當作本篇範例。

安裝 Jenkins

請直接參考官網 Wiki 安裝方式,完成後可以發現預設跑在 8080 port,搭配 Nginx 設定就可以跑在 80 port。
server {

  listen 80;
  server_name your_host_name;

  location / {

    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header        X-Forwarded-Proto $scheme;

    # Fix the "It appears that your reverse proxy set up is broken" error.
    proxy_pass          http://127.0.0.1:8081;
    proxy_read_timeout  90;
  }
}

安裝 Golang Plugin

請先到 Manage Jenkins > Manage Plugins > Available 找到 Go Plugin,安裝後,請到 Global Tool Configuration 內把要測試的版本安裝到 Jenkins 內 golang

設定 Jenkins 專案

要跑 golang 測試非常簡單,只需要兩個指令就可以測試
$ go get -t -d -v ./...
$ go test -v -cover ./...
設定完成後,跑測試,會出現底下錯誤訊息
package github.com/gin-gonic/gin: cannot download, $GOPATH not set. For more details see: go help gopath
可以發現 jenkins 預設不會將 $GOPATH 設定好,所以必須手動將 $GOPATH 相關目錄設定完成,請不要將 $WORKSPACE 設定成 $GOPATH,因為 $WORKSPACE 目錄底下包含 src, pkg, bin 三大目錄,請將底下 Script 設定到專案內
export GOPATH=$WORKSPACE/gopath
export PATH=$GOPATH/bin:$PATH
mkdir -p $GOPATH/bin
mkdir -p $GOPATH/src/github.com/appleboy/go-hello
rsync -az --exclude="gopath" ${WORKSPACE}/ $GOPATH/src/github.com/appleboy/go-hello
cd $GOPATH/src/github.com/appleboy/go-hello
附上設定圖檔 Screen Shot 2016-08-03 at 3.27.50 PM 從上面可以發現,我們手動建立了 gopath 目錄來指定為 $GOPATH,並且將專案的目錄都設定好後,把 $WORKSPACE 內所有檔案透過 rsync 方式丟到 $GOPATH 內,這樣就可以進行測試了。export 可以用 EnvInject Plugin 取代。

結論

很多人會問為什麼 $GOPATH 是指定在 $WORKSPACE/gopath 而不是 $GOROOT/gopath,如果採用後者的話,這樣多個專案使用不同版本的第三方套件就會出問題,而且共用目錄會造成蠻多額外問題,也無法在測試後完整刪除相關目錄。將 $GOPATH 設定在專案內就可以透過 Workspace Cleanup Plugin 直接清除,讓每次測試環境都是非常乾淨。

七月 26, 2016
» Plasma 5.7.2、Qt 5.7.0、Applications 16.04.3、Frameworks 5.24.0 已經可用 (Chakra GNU/Linux)

KDE Plasma、Applications、Frameworks 的最新更新現在都已提供給所有的 Chakra 使用者,其全部都是以全新的 Qt 5.7.0 進行構建。

Plasma 5.7.2 提供了錯誤修復與許多在 Plasma 5.7.0 中引入的新功能。

Applications 16.04.3 包含了超過 20 個已知的錯誤修復,以及對 ark、cantor、kate、kdepim、umbrello 以及其他東西的改進。

Frameworks 5.24.0 包含了錯誤修復以及對 breeze 圖示、plasma 框架、kio、ktexteditor 以及其他東西的改進。

其他值得注意的套件更新:
core

  • sdl2 2.0.4
  • libinput 1.3.1
  • rust 1.10.0
  • samba 4.3.11
  • mono 4.4.1.0

desktop
  • ccr 4.0.4
  • calibre 2.63.0
  • qmmp 1.1.1
  • qtcreator 4.0.3

lib32
  • wine 1.9.15
請在 Pacman 詢問您是否要取代套件時一律回答 yes。若您有任何的疑問或是遇到關於此更新的任何問題,請在對應的論壇貼文詢問或回報。

我們大多數的鏡像可能需要12至24小時同步,同步完後,更新應該是相當安全的。我們也提供了一個簡單的鏡像狀態頁面來檢查您的鏡像在什麼時候與主伺服器同步。

新聞來源:Plasma 5.7.2, Qt 5.7.0, Applications 16.04.3 and Frameworks 5.24.0 available in Chakra

七月 25, 2016

小惡魔AppleBOY
AppleBOY
小惡魔 – 電腦技術 – 工作筆記 – AppleBOY is about »

tag cloud

» 在 Travis 升級 Docker 和 docker-compose 版本

docker Travis 是在 Github 上常用的整合測試服務,支援了各種程式語言 Golang, PHP, Node.js ..等測試及部署,也同時支援了一些常用 Service,像是 Docker, Redis 或 Database。這次來聊聊在 Travis 如何使用 Docker,在 Travis 內建的 Docker 跟 docker-compose 版本都是非常舊,所以使用預設的 docker-compose 指令常常會出現 (詳細 build log 可以參考這裡)

Error log

會有兩種錯誤訊息,第一種是
docker-compose -f docker/docker-compose.yml run golang-build Creating network “docker_default” with the default driver ERROR: 404 page not found make: *** [test] Error 1
第二種是
docker-compose -f docker/docker-compose.yml run golang-build Unsupported config option for services service: ‘golang-build’ make: *** [test] Error 1

解法

雖然官方網站有教如何升級 docker-compose,但是光是升級 docker-compose 是沒用的,如果 docker-engine 沒有升級,還是會出現此錯誤訊息,正確解法就是將 docker 也順便升級,打開 .travis.yml 檔案,在 before_install 內補上底下 script。
services:
  - docker

env:
  DOCKER_COMPOSE_VERSION: 1.7.1

before_install:
  - sudo apt-get -y update
  - sudo apt-get -y purge docker-engine
  - sudo apt-get -y install docker-engine
  - sudo rm /usr/local/bin/docker-compose
  - curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` > docker-compose
  - chmod +x docker-compose
  - sudo mv docker-compose /usr/local/bin
請參考完整的 .travis.yml 設定檔

七月 22, 2016
» calibre 2.63 釋出

自由的跨平臺電子書管理軟體,calibre 2.63 正式版釋出,此版本新增了幾個功能以及修正了 10 個 bug。
calibre 2.X 版本支援 Windows Vista~ 10 (皆含 32 位元及 64 位元版本)、Mac OS X 10.7 或更新、各種 Linux 發行版。若您的作業系統是 Windows XP 或是 Mac OS X 10.5、10.6,請繼續使用 1.48 版。

來源:http://calibre-ebook.com/whats-new

七月 16, 2016

小惡魔AppleBOY
AppleBOY
小惡魔 – 電腦技術 – 工作筆記 – AppleBOY is about »

tag cloud

» 新的 code coverage 線上服務 codecov.io

Screen Shot 2016-07-16 at 3.04.50 PM 代碼覆蓋率 (code coverage) 是開發流程蠻重要的一環,用來評估專案內測試的覆蓋率,也代表了自己寫的程式,至少要測試過一次。在 Github 上面最常用的一套就是 Coveralls 相信大家對於此服務並不陌生,一個好的 Open Source 專案一定會在 Readme 上附上 Coveralls badge,證明自己寫的專案都有經過測試,請安心使用。在導入 Coveralls 服務到專案內時,安裝步驟有點小複雜,雖然不難,但是還是需要安裝一些 Tool 才能完成,底下用 Golang 為例。

Coveralls.io

Coveralls 會先給一把 Token,你要將 Token 加密到 Travis 設定檔,或者是直接將明碼寫到 .travis.yml 檔案內,如果我們要的是前者,就必須在個人電腦裝上 travis 指令
$ gem install travis
使用 gem 指令之前,請先把 Ruby 環境安裝好,看到這裡是不是覺得很麻煩了。完成後,透過底下指令將 Token 加密到 config 內
$ travis encrypt COVERALLS_TOKEN=xxxxx--add env.global
就可以到 .travis.yml 看到
env:
  global:
    secure: jeSgPztK8ytfBEBlZiswBIjXd1dafxxxx
還沒結束,你要將 golang coverage report file 送到 Coveralls Server 前,還要安裝 goveralls 工具來完成此任務
install:
  - export GO15VENDOREXPERIMENT=1
  - glide install
  - go get golang.org/x/tools/cmd/cover
  - go get github.com/mattn/goveralls
上面的最後一行是必須的喔。最後執行測試後才將結果傳到 server
script:
  - make test
  - go test -v -covermode=count -coverprofile=coverage.out
  - $(go env GOPATH | awk 'BEGIN{FS=":"} {print $1}')/bin/goveralls -coverprofile=coverage.out -service=travis-ci -repotoken=$COVERALLS_TOKEN

Codecov.io

這是最近在 Github 其他專案看到的新的服務,Codecov 服務優於 Coveralls 的地方在安裝容易,加上 code coverage 介面比較漂亮,所以目前將新的 open source 專案都換到 Codecov 了,底下先來講安裝方式,安裝方式真的太無腦了,只要先透過 Github 登入到 Codecov,並且將自己的專案加入,就可以看到底下畫面 Screen Shot 2016-07-16 at 3.07.35 PM 有看到安裝方式嗎?就只有一行
script:
  - go test -v -covermode=count -coverprofile=coverage.out

after_success:
  - bash <(curl -s https://codecov.io/bash)
只要你是 open source 專案,根本不需要 token,Codecov 會自動分析 golang 編譯出來的 report。在 Dashboard 你會發現這句話
Not required on Travis-CI, CircleCI or AppVeyor for public repositories.
只要你是用 Travis 就可以無腦安裝啦。當然也可以自訂選擇 CI Provider。另外如果是 Pull Request,可以發現 Codecov 給的 Report 比 Coveralls 好多了,請直接看此 PR Screen Shot 2016-07-16 at 3.15.44 PM 最後請裝上 Codecov 提供的瀏覽器外掛,這樣可以直接在 Github 專案原始碼內直接看到 code coverage 數據,請直接看範例 Screen Shot 2016-07-16 at 3.43.35 PM 更多 Extension 介紹可以直接看官網影片 就介紹到這邊,大家快去註冊使用吧

七月 15, 2016

小惡魔AppleBOY
AppleBOY
小惡魔 – 電腦技術 – 工作筆記 – AppleBOY is about »

tag cloud

» 用 Docker 改善團隊合作模式

docker 今年第一次參加 iThome 舉辦的 DevOps Summit 研討會,這次舉辦在台北文創大樓,就是在大巨蛋隔壁,很高興今年第一次投稿就錄取,題目是『用 Dokcer 改善團隊合作模式』,主題偏向如何用 Docker 改善個人或團隊的開發狀況,尤其是在 IC 或系統廠如何導入 Docker。研討會上沒有提到很深入的 Docker 應用,在投影片內強調的是,如何將 GitDocker 帶入團隊內不同角色,包含 QA 及 PM,讓大家在團隊合作上能夠各自獨立,不會互相影響。底下就是我今年的投影片:

用 Docker 改善團隊合作模式 from Bo-Yi Wu
最後補上會場圖片 P_20160705_152721_HDR.jpg 另外大巨蛋真的是沒在動工 XDD P_20160705_152705_HDR.jpg

七月 11, 2016

小惡魔AppleBOY
AppleBOY
小惡魔 – 電腦技術 – 工作筆記 – AppleBOY is about »

tag cloud

» 感謝老婆 Yisin 這一年來的辛苦

CIMG8763 去年 8 月底,老婆辛苦生下可愛的兒子,在這一年內老婆很辛苦的把兒子養的白白胖胖,原本只需要照顧我這個大小孩,現在多一個小皓需要照顧,真的非常辛苦,今天是老婆的生日,在這裡祝老婆生日快樂,希望您可以天天都開心,也可以身體健康。最後要跟老婆說聲謝謝這一年來的辛苦,當媽媽真的很偉大,什麼事情都是一肩扛下,對小孩也是非常有耐心,希望未來我可以帶給你更多的快樂。

小皓學爬箱子

小皓非常有毅力的爬上箱子影片,看到那可口的美腿,感覺就是非常好吃。

七月 10, 2016

小惡魔AppleBOY
AppleBOY
小惡魔 – 電腦技術 – 工作筆記 – AppleBOY is about »

tag cloud

» 用一行指令加速 npm install

Npm-logo.svg 不久之前寫過一篇 提升 npm install 安裝速度,但是發現速度還是沒有變快,在 DevOps 的流程花在 npm install 的時間非常冗長,造成每次測試或 Deploy 都要花大量時間等待,且吃掉很多機器的資源,本篇要提供一個小技巧改善 npm install 安裝時間,其實簡單來說就是 cache 第一次安裝好的 node_modules 目錄,之後每次安裝就拿 cache 目錄來新增或減少 packages 即可。

一行指令

底下一行指令請加入測試流程內,讓 CI Server 專注在測試
$ tar xf ../nm_cache.tar && \
  npm prune && \
  npm install && \
  tar cf ../nm_cache.tar node_modules
步驟很簡單,先拿上一次備份的 node_modules,再透過 npm prune 移除不必要的 package,再透過 npm install 安裝新的 package,最後一樣打包給下一次測試使用。這指令非常好用,不管你是不是用 npm@3 都很需要這指令加速 npm install。底下是我隨意拿一個 open source 專案來測試,先假設沒有 cache 機制。
$ rm -rf ~/.npm && rm -rf node_modules && time npm install

real    2m7.751s
user    1m8.704s
sys 0m19.272s
如果導入 cache 機制
$ time (tar xf ../nm_cache.tar && npm prune && rm -rf ~/.npm && npm install && tar cf ../nm_cache.tar node_modules)

> labs-web@0.0.1 postinstall /Users/mtk10671/git/labs-web
> node node_modules/fbjs-scripts/node/check-dev-engines.js package.json

real    0m32.370s
user    0m19.884s
sys 0m13.582s
從 2 分 7 秒變成 32 秒,大約提升了 4 倍,大家可以嘗試看看,這招在 Deploy 跟測試非常有感覺。

七月 8, 2016
» calibre 2.62 釋出

自由的跨平臺電子書管理軟體,calibre 2.62 正式版釋出,此版本新增了幾個功能以及修正了 7 個 bug。
calibre 2.X 版本支援 Windows Vista~ 10 (皆含 32 位元及 64 位元版本)、Mac OS X 10.7 或更新、各種 Linux 發行版。若您的作業系統是 Windows XP 或是 Mac OS X 10.5、10.6,請繼續使用 1.48 版。

來源:http://calibre-ebook.com/whats-new

六月 24, 2016
» calibre 2.60 釋出

自由的跨平臺電子書管理軟體,calibre 2.60 正式版釋出,此版本新增了幾個功能以及修正了 8 個 bug。
calibre 2.X 版本支援 Windows Vista~ 10 (皆含 32 位元及 64 位元版本)、Mac OS X 10.7 或更新、各種 Linux 發行版。若您的作業系統是 Windows XP 或是 Mac OS X 10.5、10.6,請繼續使用 1.48 版。

來源:http://calibre-ebook.com/whats-new

» LibreOffice 5.1.4 釋出

LibreOffice 5.1.4 已經釋出,這是 5.1 系列的的第四個錯誤修正版本。
對於企業使用者,文件基金會建議在有認證專家做為後盾的情形下開始慢慢更新部署 5.1 系列到大型企業及組織,以提供額外的加值服務。

新聞來源:LibreOffice 5.1.4 available for download

六月 21, 2016
» LInux 核心 4.5.7、Plasma 5.6.5、Applications 16.04.2、Frameworks 5.23.0 已經可用 (Chakra GNU/Linux)

KDE Plasma、Applications、Frameworks 的最新更新現在都已提供給所有的 Chakra 使用者,同時也包含了其他的套件更新。

Plasma 5.6.5 包含了新翻譯與錯誤修復,其變動主要是關於 plasma 桌面與工作空間、kwin。

Applications 16.04.2 包含了超過 25 個已知的錯誤修復,以及對 akonadi、ark、artikulate、dolphin、kdenlive、kdepim 以及其他東西的改進。

Frameworks 5.23.0 包含了錯誤修復以及對 breeze 圖示、plasma 框架、kio、ktexteditor 以及其他東西的改進。

其他值得注意的套件更新:
core

  • linux 4.5.7
  • qt 5.6.1
  • 包含 wget、tar、p7zip 與 imagemagick 等多個套件的安全性修復
  • vlc 2.2.4
  • mariadb 10.1.13
  • php 5.6.22
  • ghc 7.10.3

desktop
  • cantata 2.0.1
  • trojita 0.7
  • calibre 2.59.0

lib32
  • wine 1.9.12
請在 Pacman 詢問您是否要取代套件時一律回答 yes。若您有任何的疑問或是遇到關於此更新的任何問題,請在對應的論壇貼文詢問或回報。

我們大多數的鏡像可能需要12至24小時同步,同步完後,更新應該是相當安全的。我們也提供了一個簡單的鏡像狀態頁面來檢查您的鏡像在什麼時候與主伺服器同步。

新聞來源:Linux kernel 4.5.7, Plasma 5.6.5, Applications 16.04.2 and Frameworks 5.23.0 available in Chakra

六月 18, 2016
» calibre 2.59 釋出

自由的跨平臺電子書管理軟體,calibre 2.59 正式版釋出,此版本新增了幾個功能以及修正了 11 個 bug。
calibre 2.X 版本支援 Windows Vista~ 10 (皆含 32 位元及 64 位元版本)、Mac OS X 10.7 或更新、各種 Linux 發行版。若您的作業系統是 Windows XP 或是 Mac OS X 10.5、10.6,請繼續使用 1.48 版。

來源:http://calibre-ebook.com/whats-new

support:

biggo.com.tw

A Django site.