<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
	<title>linux</title>
	<link>http://blog.roodo.com/rss20/topic/topic_article_7918.xml</link>
	<description>open&amp;shaare</description>
	<language>zh-tw</language>
	<generator>Roodo Blog System</generator>
	<copyright>All Rights Reserved</copyright>
	<item>
		<title>gwibber 的 spell 問題 / Thinking more...</title>
		<description>如果你用 gwibber 時，碰到下面錯誤的話，這是因為沒有中文的 aspell 資料檔的關係： File &quot;/usr/lib/python2.6/dist-packages/gwibber/gwui.py&quot;, line 455, in __init__
    self.spell = gtkspell.Spell(self, None)
glib.GError: enchant error for language: zh_TW.UTF-8
 

解法很簡單，修改 /usr/lib/python2.6/dist-packages/gwibber/gwui.py 把 455 行的前後加上 exception handling 即可： 
try:
  self.spell = gtkspell.Spell( self, None )
except:
  pass
 

修改時要注意縮排問題，python 對這點可是很講究的!
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/10573467.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Thu, 05 Nov 2009 10:22:16 +0800</pubDate>
					</item>
	<item>
		<title>解決 opera 10 不能用 ibus 問題 / Thinking more...</title>
		<description>環境：
Ubuntu 9.10
Opera 10
輸入法：ibus

解決方法：
編輯 /usr/bin/opera，在 OPERA_BINARYDIR 之下加上 export QT_IM_MODULE=XIM ，然後重新啟動就行了。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/10327945.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Thu, 15 Oct 2009 10:59:29 +0800</pubDate>
					</item>
	<item>
		<title>grub 從不是第1個硬碟開機 / Thinking more...</title>
		<description>我承認，這標題下的很爛，但一時也想不到更好的。 
 
情況是這樣的，我第一個硬碟已經裝了 Linux，這時候我卻想裝 Windows，是故，我只能裝在第二個硬碟上。Windows 非常機車，如果第一個硬碟沒有 NTFS 的 partition 是不給你裝的。這時候只能先拔第一個硬碟的電源，把 Windows 裝到第二個硬碟上之後，再重新把第一個硬碟的電源裝回去。 
 
接下來，因為不想老是在 BIOS 裡切換開機順序，所以把腦筋動到 grub 上。根據 grub 的 manual，只要利用 map 就行了，但我還是試了好一陣子，後來才發現是順序的問題，我試的時候把 map 放到最前面去了。正確的順序是這樣的： 
title		Windows XP
root		(hd1,0)
makeactive
map (hd0) (hd1)
map (hd1) (hd0)
chainloader	+1
 
 
這樣就可以不用在 BIOS 裡切換開機順序了。如果你不是用第二個硬碟，而是第3個或第四個硬碟，只要類推為 hd2、hd3 即可。 
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/10313523.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 14 Oct 2009 00:05:25 +0800</pubDate>
					</item>
	<item>
		<title>quilt / Thinking more...</title>
		<description>今天終於試用了 quilt，這是一個可以管理 patch 的工具，最早由 Andrew Morton 的一些 script 而來。

專案本來就有寫一些 script 來作 apply 的工作，只是，在想要倒回去或向前的時候，會變得非常麻煩!用 quilt 的話，可以方便的向前或向後。

因為已經有 patch 了，所以施作的方法很簡單，先 import，再 push。

 
quilt import patch01
quilt push
quilt import patch02
quilt push
 

之後就可以用 pop 往回推，或用 push 繼續往前了。

小記：坦白說，本來想放棄直接用 git 來作的...因為剛好在看 ProGit，覺得 git 或許會更適用也不一定，不過只是想簡單地往前或往後測試 patch，用 quilt 應該就夠了。

參考資料：   Jserv&#039;s blog: quilt - 強大的 patch 管理工具    quilt: An Introduction    
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/9920263.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 08 Sep 2009 16:47:19 +0800</pubDate>
					</item>
	<item>
		<title>buildbot / Thinking more...</title>
		<description>在 Ubuntu 上安裝 Buildbot 是很簡單的事情：sudo apt-get install buildbot。 
 
比較麻煩的是設定，大致瀏覽了一下  Manual ，還是不知道怎麼設定，轉而找 Google 大神， Mousebender  的這篇 Installing buildbot ，就很簡單易懂。但由於這篇提供的設定是 2006 年的，現在的設定稍稍有改變，c[&#039;bots&#039;] 必須修正為 c[&#039;slaves&#039;]，後面會提到。 
 
依據  Architecture ， Buildbot 必須要有 master 跟 slave，master 負責提供 web 介面跟叫 slave 做事，而 slave 就只聽命令做事，所以設定的時候就要分別設定 master 跟 slave。 
 
master 的設定，得先使用 buildbot create-master [目錄名] 來建立，這會幫你建立一個目錄，並提供你設定檔的範本(master.cfg.sample)。第一步就是要把 master.cfg.sample 改為 master.cfg，然後修改 master.cfg。要調整的基本上有這幾個：  c[&#039;schedulers&#039;]，要排程的時間。  f1.addStep()，這決定怎麼編譯。  c[&#039;slaves&#039;]、c[&#039;slavePortnum&#039;]，slave的名稱、密碼以及要 listen 的 port，待會建立 slave 時會用到。  c[&#039;projectName&#039;]，你專案的名稱。  c[&#039;projectURL&#039;]，你專案的網址。  
 
接著要建立 slave，這邊用 master.cfg.sample 來舉例，也就是假設你剛剛沒改 c[&#039;slaves&#039;]、c[&#039;slavePortnum&#039;] 的內容，所以這邊用 buildbot create-slave [目錄名] localhost:9989 bot1name bot1passwd 來建立 slave，接著把 slave 目錄下的 Makefile.sample 改為 Makefile 即可。 
 
啟動的時候，要先啟動 slave 再啟動 master，啟動的指令都是 buildbot start [目錄名]，例如 buildbot start myproject-master、buildbot start myproject-slave。 
 
這樣就大功告成，你可以打開 http://localhost:8010 來看 build 的進度了。 
 
下面是我的設定檔： 
# -*- python -*-
c = BuildmasterConfig = {}

####### BUILDSLAVES
from buildbot.buildslave import BuildSlave
c[&#039;slaves&#039;] = [BuildSlave(&quot;myproject-slave&quot;, &quot;password&quot;, max_builds=1)]
c[&#039;slavePortnum&#039;] = 9989

####### CHANGESOURCES
from buildbot.changes.pb import PBChangeSource
c[&#039;change_source&#039;] = PBChangeSource()

####### SCHEDULERS
from buildbot.scheduler import Scheduler, Periodic
c[&#039;schedulers&#039;] = [
        Periodic(&quot;every_12_hours&quot;, [&quot;buildbot-full&quot;], 12*60*60 )
]

####### BUILDERS
from buildbot.process import factory
from buildbot.steps.source import CVS
from buildbot.steps.shell import Compile, ShellCommand
from buildbot.steps.python_twisted import Trial
f1 = factory.BuildFactory()
f1.addStep(ShellCommand(command=[&quot;/home/user1/build/build.sh&quot;]))
f1.addStep(Compile())

b1 = {&#039;name&#039;: &quot;buildbot-full&quot;,
      &#039;slavename&#039;: &#039;myproject-slave&#039;,
      &#039;builddir&#039;: &quot;full&quot;,
      &#039;factory&#039;: f1,
      }
c[&#039;builders&#039;] = [b1]


####### STATUS TARGETS
c[&#039;status&#039;] = []

from buildbot.status import html
c[&#039;status&#039;].append(html.WebStatus(http_port=8010))

####### PROJECT IDENTITY
c[&#039;projectName&#039;] = &quot;myproject&quot;
c[&#039;projectURL&#039;] = &quot;http://myproject-server&quot;
c[&#039;buildbotURL&#039;] = &quot;http://localhost:8010/&quot;
 
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/9519357.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 24 Jul 2009 15:58:52 +0800</pubDate>
					</item>
	<item>
		<title>kernel 怎麼執行 hotplug? / Thinking more...</title>
		<description>因為只知道 hotplug 這關鍵字，直接以 hotplug 找，從 lib/kobject_uevent.c 裡可以看到放 &quot;/sbin/hotplug&quot; 的變數：uevent_helper。再往後找，可以看到 call_usermodehelper 使用了此變數。

call_usermodehelper 定義在 kmod.h 裡，是一個 static inline function。裡面則呼叫了 call_usermodehelper_setup 去設置環境，末了再呼叫 call_usermodehelper_exec 去執行。

p.s. 似乎不能在 IRQ 中斷處理常式裡去呼叫，會造成 kernel crash 掉，仔細想想，這樣有合理，因為 IRQ 中斷處理常式應該要盡早處理結束。如果是這樣，處理就比較麻煩了，可能就要利用 thread 跟 queue 來作。現階段，先不要作這個好了，雖然主動通知的功能很酷...
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8954335.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 15 May 2009 17:13:34 +0800</pubDate>
					</item>
	<item>
		<title>ecryptfsd / Thinking more...</title>
		<description>ecryptfs-utils 裡的 ecryptfsd 可以透過 netlink 或 misc 方式與 kernel 的 ecryptfs module 溝通，Ubuntu 有修改過 kernel 的 ecryptfs ，讓 ecryptfsd 以 misc 的方式溝通。

而我，就卡在這裡搞了好久，因為我始終用 kernel 的預設值，也就是 netlink 的方式。
照理來說，netlink 應該也是可以才對，只是在 ecryptfsd 裡有段 code(嚴格來說應該是 libecryptfs.so)，在以 sendto 送出封包以後，檢查回傳值，如果大於 0 ，就當作錯誤。你可以查一下 sendto 函式的說明，裡面清楚地寫了，當傳送成功，會回傳 sendto() 所送出的 byte 數。ecryptfsd 以 sendto 送出了 16 bytes，收也收到了 16 bytes，這樣應該是要當作成功，但程式裡卻視為失敗。
我不知道修正這裡以後還會遇到什麼問題，所以我決定很鴕鳥地去改用 ubuntu 的 kernel ...
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8769661.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 21 Apr 2009 20:34:04 +0800</pubDate>
					</item>
	<item>
		<title>TPM 與 ecryptfs / Thinking more...</title>
		<description>基本都是參考：   [Ecryptfs-users] Ecryptfs with TPM via Trousers on Centos 5.2    Encrypting file systems using eCryptfs    Create an Encrypted Private Directory with eCryptfs | Tombuntu    How to use a TPM with Linux - GrouNation   

另外遇到問題可以參考 IBM 的 troubleshooting，最近 IBM 不知道是網站改版還怎樣，之前留的網址都失聯了，你可以用 ibm ecryptfs troubleshooting 去 google 找。

下面的步驟最好全部以 root 或 sudo 來執行：  進 BIOS 把 TPM clear 掉  我的環境正好是用 infineon 的，所以用 modprobe tpm_infineon，一般好像是用 tpm_tis 就行了。  啟動 trousers：tcsd -f，不用 -f 的話，會掛...這個 daemon 提供 tspi 服務並且與 TPM device 溝通。  取得 ownership：tpm_takeownership ，這個步驟裡，SRK password 跟其後的 Confirm password 不要輸入！！否則要回到步驟 0 重設。SRK 是 Storage Root Key 的縮寫，不使用密碼保護的原因是為了 ecryptfs 取用方便。  掛載 ecryptfs：modprobe ecryptfs  啟動 ecryptfsd  產生 UUID：ecryptfs-generate-tpm-key -p 1 ，這個 UUID 是提領 key 用的，實際的 key 會透過 PCR 1 的 key 來取得(如果我沒理解錯的話)。  

至此，準備工作已經完成，接下來就是操作，這裡我假設 private 是放置要加密的資料的地方：  先建立：mkdir private  進行掛載：mount -t ecryptfs private private  依序回答問題，第一個先選 tspi，第二個問題(cipher)選 aes，第三個問題(key bytes)選 16 bytes，第四個問題(passthrough)選 n，最後問題照預設值。第一個問題是加密方式，你也可以使用其他方式，但這樣就用不到 TPM 了；cipher 跟 key bytes 可以視需要自行調整。這樣就能 mount 上，mount 以後，ecryptfs 會把 UUID 存到 keyring (用 keyctl show 可以看 keyring 內容)裡。  

在 private 資料夾裡的操作，基本上不能複寫，只能複製、貼上，但 vim 可編輯。

umount 之前，最好先輸入 mount，把參數記下。
umount 之後，可以直接以參數來掛載，這樣就不用再次回答問題：mount -t ecryptfs -o sig=UUID,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=n private private
參數裡，有個 sig，這個 sig 就是填 UUID，不過你輸入 mount 時，看到的卻不是 UUID，而是一個較短的字串。這字串其實是一個提領 UUID 的鑰匙，ecryptfs 會用這個鑰匙去 keyring 裡(用 keyctl show 可以看到)，取出 UUID，再以 UUID 去掛載。keyring 主要存放在 kernel 的某個地方，所以重開機以後就會消失，我還不知道怎麼把 keyring 內容存起來。

好吧，以上就是我這幾天跟 TPM 奮戰的紀錄...
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8721955.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 15 Apr 2009 11:24:24 +0800</pubDate>
					</item>
	<item>
		<title>amr 轉 mp3 / Thinking more...</title>
		<description>環境：Ubuntu 8.10

  安裝必要的套件： sudo apt-get install amrnb sox lame   輸入以下指令： amrnb-decoder file.amr file.raw # 先轉成 raw 檔
sox -r 8000 -w -c 1 -s file.raw -r 16000 -w -c 1 file.wav # 再轉為 wav
lame babycry.wav babycry.mp3 # 最後轉為 mp3
   

整理一下，把它作成 script： #!/bin/bash
# amr2mp3.sh
FILE=`basename $1 .amr`  # remove .amr
amrnb-decoder $1 $FILE.raw
sox -r 8000 -w -c 1 -s $FILE.raw -r 16000 -w -c 1 $FILE.wav
lame $FILE.wav $FILE.mp3
rm -f $FILE.raw $FILE.wav
exit 0
 收工。  參考自 Aquarionics 的 blog：How to convert AMR files to MP3 
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8432797.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 06 Mar 2009 14:39:34 +0800</pubDate>
					</item>
	<item>
		<title>pam_smbpass.so / Thinking more...</title>
		<description>安裝 samba 以後，讓 samba 密碼跟 linux 密碼一致的好方法，先安裝 libpam-smbpass，然後執行 sudo pam-auth-update，把 SMB password synchronization 選起來即可。以後改密碼時，samba 密碼也會自動被更改。

對了，我的 linux 是 ubuntu 8.10，samba security level 是 user，安裝以後有先利用 smbpasswd -a 把必要的使用者加進去。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8427503.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Thu, 05 Mar 2009 15:34:54 +0800</pubDate>
					</item>
	<item>
		<title>Seed(1) / Thinking more...</title>
		<description>在 Ubuntu 裡安裝 Seed 很簡單，參考 PPA for Orange Owners 裡，把 deb http://ppa.launchpad.net/orange-owners/ppa/ubuntu intrepid main
deb-src http://ppa.launchpad.net/orange-owners/ppa/ubuntu intrepid main 放到 /etc/sources.list 裡，然後用 sudo apt-get update 更新，sudo apt-get install seed 來安裝即可。 
 
執行 script 也很簡單，有兩種方法：  直接以 seed 執行：seed your_script.js  把 js 檔的第一行改為 #!/usr/bin/env seed，再以 chmod +x 為 js 檔加上執行權限，就可以用 ./your_script.js 執行。  
目前官方沒有文件說明  Seed  內部有哪些類別與方法，這很讓人困擾，這兩天看了 source code 跟 example code 之後，大致上有點了解。 
 
 Seed  主要的類別是 Seed，提供了如下方法：  include：用來含括其他 js，讓你可以為程式作適當的切割，不至於讓檔案變得太大而難以維護。 Seed.include(&quot;other.js&quot;);   print：印字串。 Seed.print(&quot;Hello world!&quot;);   check_syntax：檢查語法，你可以傳 javascript 程式進去檢查，如果有錯，會丟出 exception。 try { 
	Seed.check_syntax(&quot;Seed.print(;&quot;);
	Seed.print(&quot;syntax ok!&quot;);
}
catch( e ) {
	Seed.print( e.message );
}   spawn：執行外部程式，執行以後會回傳一個 object，這個 object 有兩個屬性：stdout 與 stderr。 var result = Seed.spawn(&quot;ls&quot;);
Seed.print( &quot;=== spawn result(stdout) ===&quot; );
Seed.print( result.stdout );
Seed.print( &quot;=== spawn result(stderr) ===&quot; );
Seed.print( result.stderr );
   fork：這跟 C 的 fork() 一樣，回傳值是 0，表示是子行程，-1 表示失敗，大於 0 的值，表示是父行程。 var pid = Seed.fork();
if( pid == 0 ) { // child process
	var result = Seed.spawn( &quot;ls&quot; );
	Seed.print( result.stdout );
	Seed.quit();
}
else if( pid == -1 ) {
	Seed.print( &quot;cannot create child process.&quot; );
}
else { // parent process.
	Seed.print( &quot;I am parent process.&quot; );
}
   quit：離開。  introspect：這個函數可以用來探知類別成員函數如何使用，安裝  Seed  以後，/usr/share/doc/seed/examples 下有個 introspect.js，就是一個很好的範例。不過我還不是很懂怎麼去用～  import_namespace：含括其他 library 進來使用，不要跟 include 搞混了，include 是含括其他 js 檔。  
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8334873.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 18 Feb 2009 14:00:31 +0800</pubDate>
					</item>
	<item>
		<title>javascript + gtk = seed / Thinking more...</title>
		<description>昨天在這兒： Building desktop Linux applications with JavaScript 看到的，現在可以用 JavaScript 來寫 GTK Application 了，如果以後再支援 DOM、selector與類似 XUL 語法(GLADE?)的話，應該會吸引一堆會 javascript + html 的人來用吧～
不過話說回來， XUL  好像也沒非常風行啊～

該專案的官方網站在： Seed 

Anyway, 如果你想試試的話，已經有人打包了 for Ubuntu 的 package 了，位置在這裡： PPA for Orange Owners 
詳細安裝方法，文章裡都寫的很清楚，這裡就不再贅述了。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8141597.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 21 Jan 2009 17:20:39 +0800</pubDate>
					</item>
	<item>
		<title>less + source-highlight / Thinking more...</title>
		<description>參考這篇： 借我一双写轮眼──Less 语法高亮 — LinuxTOY  
 
但  Ubuntu  下，需要作點修改： 
# .bashrc
PAGER=&#039;less -X -M&#039;
export LESSOPEN=&quot;| /usr/share/source-highlight/src-hilite-lesspipe.sh %s&quot;
export LESS=&#039; -R &#039;
 
 
主要差異在 src-hilite-lesspipe.sh 的位置。

</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8055577.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 09 Jan 2009 18:12:40 +0800</pubDate>
					</item>
	<item>
		<title>registry-tools / Thinking more...</title>
		<description>由於太座的大意，使得 NB 中了 USB 病毒，而小紅傘解不掉。我知道進 Linux 以後就能把 USB 病毒埋的檔案砍掉，但砍了再砍，重開機進 Windows 以後，病毒還是繼續作怪，看來，病毒還是有埋我不知道的暗樁。
Registry 裡面有兩個機碼 Run 跟 RunOnce，在每次開機、登入時，都會去執行這裡有指定的程式。

本來不奢求 Linux 有工具可以存取 Windows Registry 的，沒想到用 apt-cache 一找，還真的有，這個套件叫做 registry-tools。
套件提供了 regshell、regpatch、regdiff、regtree 這幾個工具，可以讓你存取 Windows Registry。
但 Windows Registry 檔案在哪裡呢？Windows 2000 以後，HKEY_CURRENT_USER 改放到使用者的 Home 目錄下，也就是 c:\documents and settings\your_name\ntuser.dat
所以只要進 Linux，把 Windows 分割區掛載起來，用 regshell -f ntuser.dat 開啟以後就可以對 Registry 操作了。
regshell 的命令列介面也不難，基本上就是 cd、ls、rm 這幾個，用 help 可以看詳細的指令列表，這裡不多說了。
總之切到 Software\Microsoft\Windows\CurrentVersion\Run 跟 Software\Microsoft\Windows\CurrentVersion\RunOnce 下把一些奇怪的項目刪掉以後，就大功告成了。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/8027565.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 06 Jan 2009 17:10:28 +0800</pubDate>
					</item>
	<item>
		<title>envyng / Thinking more...</title>
		<description>如果你用 nVidia 或 ATi 的顯示卡的話，用 envyng 可以很快的搞定一切設定。 
早知道有這麼好用的 script ，當初設定 ATi 顯卡時，就不用那麼累了。 
我唯一踩到的地雷是把 LANG 設為 C，導致 envyng 執行時，出現錯誤，要記得使用 utf-8，例如：export LANG=en_US.utf-8 
 
 
sudo /etc/init.d/gdm stop
sudo apt-get install envyng-core
sudo envyng -t
sudo nvidia-xconfig
sudo /etc/init.d/gdm start
 
 
參考來源： [ubuntu] [SOLVED] Intrepid Nvidia driver issue. Boots to text - Ubuntu Forums 
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/7862733.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Mon, 15 Dec 2008 16:26:06 +0800</pubDate>
					</item>
	<item>
		<title>幾個 launchpad 上的 apt repository / Thinking more...</title>
		<description>要衝  banshee  1.0 版的話，可以試試這個：
deb http://ppa.launchpad.net/banshee-team/ubuntu hardy main multiverse restricted universe

上星期(2008/6/5)已經釋出了 1.0.0 版，跟 0.13 比起來，速度可說是兔子與烏龜，主要原因是 1.0 在資料庫上做了適當的索引與調整。

目前 ubuntu 上的  mono  是 1.2.6，要試最新版，除了下載官方網站的 installer 來安裝與  Mono for Debian ( Mono - General - Mono 1.9.1 and MonoDevelop 1.0 Packages for Debian Etch ) 之外，只能試這個了：
deb http://ppa.launchpad.net/mono-edge/ubuntu hardy main multiverse restricted universe

 http://ppa.launchpad.net  上還蠻多 repository 可以試試看的，有遇到沒打包的軟體，就進去找找，或許已經有人在實驗了。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/6152751.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Mon, 09 Jun 2008 16:33:57 +0800</pubDate>
					</item>
	<item>
		<title>LXPanel Plugin in Managed code? / Thinking more...</title>
		<description>看到 Fred 寫的 Fred&#039;s blog: 讓我們輕鬆自在設計自己的 LXPanel Plugin ，心想，應該也可以用 mono c#、boo 等來寫吧～
於是想到 gimp-sharp ，這個 library 讓你可以使用 c#、vb.net、boo 寫給 gimp 使用的 plugin，下載來看以後，真是令人驚訝～
原來  gimp  是使用外部執行的方式去呼叫這些 plugin，而這些 plugin 以收取參數與呼叫 gimp library 的方式來與 gimp 主體進行溝通。
那麼這樣，似乎就行不通了。一般 C/C++ plugin 的處理方式，都是以 dl_xxxx 系列函數來開啟 plugin(.so) 進行操作，對於 managed code 來說，assembly(.dll)並沒有開放這些介面。
從 C/C++ 呼叫 Managed code 是可行的，目前只適用於 Mono，請參閱這裡： Embedding Mono 
 這裡 有幾個範例，應該是夠用了。
看起來如果要作 Plugin 給 lxpanel 用的話，還是得用 C 寫一個 Plugin，然後這個 Plugin 負責載入 mono 的 assembly，再把必要的資訊傳進去給 managed code。
有可能作成 chain-loader 的形式，由這個 Plugin 再去把其他用 Managed code 做的 Plugin 載入嗎??
恐怕還是得再看 lxpanel 內部如何用 plugin 才能決定。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/6099535.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 28 May 2008 09:40:22 +0800</pubDate>
					</item>
	<item>
		<title>LXDE in Ubuntu / Thinking more...</title>
		<description>如果你想在  Ubuntu  裡試試  LXDE  的話，加入這個軟體來源： deb http://ppa.launchpad.net/lxde/ubuntu/ hardy main universe multiverse restricted ，然後安裝 lxde、lxsession 即可 (sudo apt-get install lxde lxsession)。接下來登出，將作業階段選為  LXDE ，再登入即可。

 LXDE  的確速度蠻快的，不過，不能瀏覽網路上的芳鄰，這實在是讓我無法下定決心跳槽啊...

補充：啊， LXDE 的下載網頁 也有提到一個來源： deb http://people.linux.org.tw/~pcman/ubuntu/ ./  
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/6096979.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 27 May 2008 17:40:41 +0800</pubDate>
					</item>
	<item>
		<title>Show your bootchart / Thinking more...</title>
		<description>之前安裝 bootchart 以後，就一直沒管他，沒有認真去研究該怎麼去把圖弄出來。
前幾天把圖弄出來了，這裡把步驟紀錄一下，我的環境是 Ubuntu 7.10(Gusty)：

  安裝 bootchart，安裝完成以後，得重開機，讓 bootchart 能獲取必要的資訊。 $sudo apt-get -y install bootchart   重開機之後，bootchart 會把必要的資訊紀錄在 /var/log/bootchart.tgz。由於 bootchart 所提供的工具是用  Java  程式(/usr/share/bootchart/bootchart.jar)寫的，所以你還得確定有安裝  Java  或是  IKVM ，我這邊是使用 ikvm。ikvm 是一個可以利用 Mono (Linux 下的 .Net 執行環境)來執行  Java  程式的工具，一般來說，如果你有使用 Tomboy 或是 Beagle 的話， Mono 就已經安裝了。 $sudo apt-get -y install ikvm   執行 bootchart.jar，這會解析 /var/log/bootchart.tgz，然後產生 bootchart.svgz 在當前目錄下。 $ikvm -jar /usr/share/bootchart/bootchart.jar   有了 bootchart.svgz，該怎麼去看這個圖呢？這邊提供兩種方法：  利用  Firefox ：把 bootchart.svgz 以 zcat 解開，再用  Firefox  打開即可。 $zcat bootchart.svgz &amp;gt; bootchart.svg   用 Inkscape 開啟檔案。 $sudo apt-get -y install inkscape     
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/4510863.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 20 Nov 2007 12:25:48 +0800</pubDate>
					</item>
	<item>
		<title>How to purge at once in Debian/Ubuntu? / Thinking more...</title>
		<description>經常性地安裝、移除套件，可是卻發現有些套件還留了一些設定沒刪掉？
試試這個指令，一次搞定：
 sudo aptitude purge `dpkg -l | grep ^r | awk &#039;{print $2}&#039;` 
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/4370065.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 26 Oct 2007 17:08:46 +0800</pubDate>
					</item>
	<item>
		<title>如何在 CentOS 安裝 mod_proxy_html / Thinking more...</title>
		<description>  先到 官方網站 下載源碼，或是利用  subversion  直接 checkout 最新的 code。這裡直接 checkout 最新的 3.0： #svn co http://apache.webthing.com/svn/apache/filters/proxy_html/ mod_proxy_html   安裝必要的開發套件： #yum install httpd-devel libxml2-devel   進行安裝： #apxs -I /usr/include/libxml2 -c -i mod_proxy_html.c   在 httpd.conf 裡面加上  LoadFile /usr/lib/libxml2.so LoadModule proxy_html_module modules/mod_proxy_html.so   重新啟動 httpd 之後，就大功告成。(當然還是要參考 官方文件 ，自己加上必要的設定啦。)  

參考資料：   Tses Weblog: ntop και mod_proxy_html στο CentOS   

備註：曾幾何時，我居然也看懂希臘文了～ =_=&amp;quot;
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/3570269.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 03 Jul 2007 11:22:45 +0800</pubDate>
					</item>
	<item>
		<title>Wubuntu / Thinking more...</title>
		<description>WebOS 因為 Javascript 越來越 powerful 的緣故，功能也越來越強大。
這一兩年也出了 不少有名的專案 ，今天則是在 Digg 看到這個 Wubuntu ，畫面幾乎跟  Ubuntu  一樣啊～
只是目前裡面沒有什麼應用程式，也只有  FireFox  可用而已～
以後慢慢增加更多應用程式之後，或許就可以直接拿來當作  Ubuntu  的展示程式，不用 LiveCD 也可以馬上體驗  Ubuntu  的桌面。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/3450957.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Mon, 11 Jun 2007 17:17:28 +0800</pubDate>
					</item>
	<item>
		<title>OpenSuSE 的套件管理 / Thinking more...</title>
		<description>最近同事玩起 Linux，試完了許多套之後，他選擇了  OpenSUSE ，介面看來不錯。
但我實在是對  OpenSUSE  的更新與介面不熟，所以就利用 VMware 建了個 Virtual Machine，裝上  OpenSUSE  試試看。

安裝並不順利，最後 Virtual machine 的 type 是改成了 Other Linux，而非預設提供的 SuSE Linux。
完成安裝以後，也開不起來，boot option 參考 Fail safe，修改為 apm=off acpi=off noresume nosmp noapic maxcpus=0 edd=off 才順利開機成功。

 OpenSUSE  使用 Yast2 在管理套件，從網路上諸多文章看來，可以改用 smart / yum / zypper ...等等。
但我最後還是用 Yast2。

官方提供了 Additional YaST Package Repositories ，從這兒你可以找到許多其他的來源。
 黑眼珠 這兒也提供了他自己維護的來源： 黑眼珠的套件庫 - http://software.opensuse.org/download/home:/swyear/openSUSE_10.2/ 
那麼該怎麼加入這些來源呢？答案是用 installation_sources 指令，舉例來說，如果要加入 黑眼珠的套件庫 的話：
#installation_sources -a http://software.opensuse.org/download/home:/swyear/openSUSE_10.2/
這樣就行了。

最後，就利用 YaST 來進行線上更新即可。
如果你跟我一樣還是偏愛指令列的話，改用 zypper 吧～
#zypper search package_name
#zypper install package_name
#zypper update
以 zypper 替代 installation_sources 的話，可用
#zypper service-add repository_url
更多的用法可以看
#zypper --help

參考資料：   黑眼珠 » 套件庫    黑眼珠 » Blog Archive » 安裝軟體(3)RPM的整合工具    Additional YaST Package Repositories - openSUSE   SuSE Linux 論壇  

</description>
		<link>http://blog.roodo.com/thinkingmore/archives/2989535.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 11 Apr 2007 14:48:07 +0800</pubDate>
					</item>
	<item>
		<title>在 Ubuntu Linux 下製作 DVD / Thinking more...</title>
		<description>首要之務，當然是先作功課，運氣很好，在 Digg 看到了 不錯的文章：Making DVD in Linux 。
文章裏面主要是介紹 DVD styler 這套軟體。

看到以後，當然是馬上來試試囉。很遺憾，在我的 Ubuntu (Edgy) 上裝不起來，官方也沒有對 Ubuntu(Edgy) 正式提供支援，他只支援到 Dapper 而已。

怎麼辦？就此打退堂鼓？

再次請 Google 大神出來幫忙，這時才發現，原來 Ubuntu(Edgy) 裏面已經有打包類似的軟體了，那就是 DeVeDe 。

安裝方法： sudo apt-get install devede vcdimager mencoder mplayer w32codecs dvdauthor gnomebaker 

使用方法：  點取選單：應用程式 &amp;gt; 影音 ，執行 DeVeDe。  選取 Video DVD  右邊清單下有&quot;新增&quot;，會跳出另外一個對話盒，你可以從這邊去選取你要加入的影片，設置影片尺寸、縮放、輸出訊號(NTSC、PAL)等等。  加入以後，畫面下方會顯示你使用了多少空間。不過據我的經驗，整個放滿以後製作出來的 DVD ISO 檔才約 2.1G。點取右下角的&quot;下一頁&quot;之後， DeVeDe 就會開始進行轉檔與製作 DVD ISO 。  最後再執行 GnomeBaker 來燒錄產生出來的 ISO檔案即可。  

根據今天早上燒製出來的結果，確實可以拿到 DVD Player 上播放。實驗結果成功！

畫面：
      
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/2639580.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 12 Jan 2007 09:20:28 +0800</pubDate>
					</item>
	<item>
		<title>How to install Kyocera Mita KM-3035 in your Ubuntu Linux / Thinking more...</title>
		<description>公司用的印表機是Kyocera Mita KM-3035的四合一事務機，花了一點時間找到方法，讓它可以在 Linux 下使用。

  請找到並下載 Kyocera_Mita_KM-3035_en.ppd. ( 用 Google 找！ )  執行 系統 &amp;gt; 管理 &amp;gt; 列印   選擇 &quot;新增印表機&quot;，選取&quot;網路印表機&quot;，然後再選取 HP JetDirect，填入 IP 位址，進入下一步  選擇&quot;安裝驅動程式&quot;，然後選到剛剛步驟一所下載的Kyocera_Mita_KM-3035_en.ppd，下一步  指定名稱、說明以後，選擇&quot;套用&quot;即可  

接下來的操作其實很像 Windows，你可以用滑鼠右鍵選擇印表機，再選&quot;屬性&quot;去看印表機的各項設定，也可以列印測試頁。
如果覺得怪怪的，可以在終端機下執行 /etc/init.d/cupsys restart，讓 cups 重新載入設定。

我想其他類似 HP 的印表機應該也通用才對。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/2616927.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 03 Jan 2007 10:32:44 +0800</pubDate>
					</item>
	<item>
		<title>聊 Linux 的安裝 / Thinking more...</title>
		<description>以前最熟悉的是 Fedora Core/Red Hat，這套不用說了，算是很簡單的了。

最近呢，則有幸裝了 Debian 3.x，發現跟以前 2.x 比起來，真的是方便很多。
不僅僅是安裝過程有中文，選擇上也很直覺簡單，下載也只要小小的 109M 就可搞定，其他東西大可等到 Base 安裝完成以後，再用 apt-get 來安裝。
基本上跟 Ubuntu 不遑多讓。

裝完以後，突然又興起裝 Linux 熱，於是又下載了 Gentoo 與 OpenSUSE 來玩。
Gentoo 本身網路安裝的話，只要下載 5xM 就搞定，可是安裝與設定上，肯定是讓你頭痛。我以前有裝起來過一次，這次是試到一半就放棄繼續了。不過裝完以後據說效能很好，因為所有套件幾乎都重新在你機器上編譯過。記得官方網站也有提供比較肥大的光碟可以讓你下載，對初學者來說，這應該會比較省事。
OpenSUSE 有提供網路安裝的版本，昨晚試了一下，真是很遜，也無法選擇安裝 Base system 就好，基本上是要下載完所有光碟，會比較好裝。

如果你是初學者，個人是推薦 Debian / Ubuntu / Fedora Core / OpenSUSE 這幾套。</description>
		<link>http://blog.roodo.com/thinkingmore/archives/2115321.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Thu, 07 Sep 2006 12:39:41 +0800</pubDate>
					</item>
	<item>
		<title>Ubuntu 的 Flash Video 沒聲音？ / Thinking more...</title>
		<description>這幾天迷上 Youtube ，可是在我 Ubuntu 上的 Firefox 播放影片時，卻像啞巴一樣。

於是我丟 &quot;ubuntu flash sound&quot; 這幾個關鍵字給 Google，於是第一個結果就是我要的答案：
* macewan » Howto fix Firefox Flash Video Sound on Ubuntu Linux Dapper 

方法很簡單，先安裝 alsa-oss，然後修改 /etc/firefox/firefoxrc，加上 FIREFOX_DSP=&quot;aoss&quot;。
 $sudo install alsa-oss
$sudo vim /etc/firefox/firefoxrc
 
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/2109011.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 05 Sep 2006 20:23:30 +0800</pubDate>
					</item>
	<item>
		<title>.PHONY in Makefile / Thinking more...</title>
		<description>Make 主要的工作目標都是針對檔案，所以萬一你定義的工作目標並不是檔案，或是正好與檔案重複的時候，其實是會讓人丈二金剛摸不著頭的。
所以，.PHONY 被用來定義假工作目標，這樣 Make 就知道這不是針對檔案。

Make 預設的假工作目標有：  all  install  clean  distclean  TAGS  info  check  

用了 Make 也用了三四年了吧，現在看了&quot;GNU Make 專案開發工具&quot;這本書才知道...
慚愧...
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/2074826.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Mon, 28 Aug 2006 12:35:28 +0800</pubDate>
					</item>
	<item>
		<title>改變 bash 的按鍵行為 / Thinking more...</title>
		<description>詳情可以參考 /etc/inputrc 內的註解，如果改 /etc/inputrc，影響的是所有人。
如果只想改自己的，那就複製 /etc/inputrc 到 ~/.inputrc，然後編輯 ~/.inputrc 即可。

改完之後，記得要重新登入。

參考資料：
   鳥哥的 Linux 私房菜 -- 學習 bash shell    Learning Linux-第五章﹕Shell 和 Shell Script   
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/1958200.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 01 Aug 2006 12:22:28 +0800</pubDate>
					</item>
	<item>
		<title>VFPWiki升級之路(1) - VMWare server on Fedora Core 5 / Thinking more...</title>
		<description>因為太久沒更新wiki版本，又為了避免站主過於操煩，所以我決定架設一個跟他環境一樣的 server，來先行實驗升級看看。

首先，到 VMWare官方網站 下載官方提供的 rpm，並且索取 serial-number。
接著就是安裝：
 #rpm -ivh VMware-server-1.0.0-28343.i386.rpm 

畢竟以前也裝過幾次，接著就是設定 VMWare ：
 #vmware-config.pl 

這部份應該沒問題，依照問題回答即可，大部分都只要按下 Enter 選擇預設值即可。
這個問題是比較詭異的，他說 gcc-4.1.1 可能會有問題；不過我不管他，還是輸入了 yes，等有問題的時候再說吧。
 Your kernel was built with &quot;gcc&quot; version &quot;4.1.0&quot;, while you are trying to use
&quot;/usr/bin/gcc&quot; version &quot;4.1.1&quot;. This configuration is not recommended and
VMware Server may crash if you&#039;ll continue. Please try to use exactly same
compiler as one used for building your kernel. Do you want to go with compiler
&quot;/usr/bin/gcc&quot; version &quot;4.1.1&quot; anyway? [no] yes 

安裝完成以後，可以在Gnome環境下的 應用程式&amp;gt;系統工具 下找到 VMWare server console，執行他。
這可以幫助我們建立一個virtual machine。

下載 debian 的網路安裝光碟映像檔：debian-31r2-i386-netinst.iso，大約只有一百多MB，算是很小。
之後我們將利用 apt-get 直接從網路下載並安裝。

所以就直接把 virtual macine 的光碟機對應到這個映像檔上，進行 Power On，接下來就跟安裝 Debian Linux 一樣啦(不知道怎麼作的話，去買書吧)。
安裝完成之後，記得先暫時關閉 virtual machine，將光碟機對應到實體磁碟機上，免得又要再安裝一次。

開機之後，Debian 會很貼心的進行首次使用前的設定，也是照步驟進行即可。
這樣就大功告成啦，下次來安裝 apache + mysql + php。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/1928062.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 25 Jul 2006 12:34:04 +0800</pubDate>
					</item>
	<item>
		<title>Ubuntu Linux 安裝 VMware Tools / CL</title>
		<description>
參考：  http://apt.nc.hcc.edu.tw/docs/debian_X/09_VMwareTools/VMwareTools.htm   環境: Ubuntu Linux 6.06-386 VMware 5.5.1 build-19175  - 安裝基本套件:     # su -    # uname -r    2.6.15-25-386    # apt-get install gcc make linux-headers-2.6.15-25-386   - 調整光碟機設定:     在VMware 的選單    VM &amp;gt; Settings &amp;gt; Hardware &amp;gt; CD-ROM &amp;gt; Connection    Use physical drive: Auto detect     如果設定不是如上，請把ubuntu linux 關機後，做設定    沒做此設定安裝VMware Tools的虛擬光碟不會正常出現 </description>
		<link>http://blog.roodo.com/opensystem/archives/1890486.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Sat, 15 Jul 2006 17:25:37 +0800</pubDate>
					</item>
	<item>
		<title>Ubuntu Linux 6.06 使用藍芽耳機 / CL</title>
		<description>小弟是ubuntu的初學者，在古狗大神的協助下，花了三四天藍芽耳機才終於有聲音了 （可惜立體聲藍芽耳機居然傳來的是斷斷續續的聲音，單音就超大聲XD）  主要參考： http://bluetooth-alsa.sourceforge.net/ http://www.52cg.com/Training/system/Linux/200601/47428.html 次要參考： http://cha.homeip.net/blog/archives/2005/08/gnome_bluetooth.html http://www.chinaunix.net/jh/4/232267.html  藍芽耳機主要的兩種Profiles，單音：Headset Profile；立體音：Advanced Audio Distribution Profile 目前Linux下Bluetooth Stack主要為Affix 和 Bluez，以下使用Bluez  </description>
		<link>http://blog.roodo.com/opensystem/archives/1886167.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 14 Jul 2006 13:41:07 +0800</pubDate>
					</item>
	<item>
		<title>Ubuntu安裝完成後心得 / Han1019的異想世界</title>
		<description>剛開始接觸Linux , 安裝的版本是Ubuntu 6.06這一版 , 本來想玩Fedora這一款的 , 但是正逢Ubuntu正在台灣如火如荼的受到歡迎 , 其實國外也正熱著Ubuntu這套 , 所以我就先安裝了這套玩玩看</description>
		<link>http://blog.roodo.com/han1019/archives/1876071.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 11 Jul 2006 20:47:23 +0800</pubDate>
					</item>
	<item>
		<title>以 script 產生 5000 首 mp3 / Thinking more...</title>
		<description>5000 首 mp3 ?!
去哪裡生啊，靈機一動，不如使用 script 來產生，快又有效。
最早的一個版本是拿一個樣板的 mp3 來複製，可是又怕內容有版權問題，所以後來改用 Text to Speech 的軟體來將文字轉成聲音...

我的環境：Fecora Core 5
會用到的套件：Festival (text2wave)、lame (轉 wave 為 mp3)、id3tag (為轉好的 mp3 上 id3 tag)。

程式碼如下：
 #!/bin/sh
#
# run2.sh
# This script is used to generate short songs.
# You can decide how many songs should be generated by modify LIMITSONGS variable.
#
# Dependency:
#   festival (Text to speech by text2wave)
#   lame (convert wave to mp3)
#   id3tag (tag the generated mp3) 
#
# Tested environment:
#   Fedora Core 5
#
ITER=1
LIMITSONGS=5002
((TOTAL=LIMITEDSONGS - 1))

while (($ITER   text.txt
    text2wave -F 19200 -o $WAVEFILE text.txt
    lame $WAVEFILE $NEWFILENAME
    id3tag --artist=$ARTIST --album=$ALBUM --song=$TITLE --genre=classic --track=$ITER --desc=&quot;generated by script.&quot; --total=$TOTAL $NEWFILENAME
    ((ITER = ITER + 1 ))

    rm -f $WAVEFILE
done

rm -f text.txt
echo &quot;done.&quot;
 

LIMITESONGS 用來控制要產生的數量。
TEXT 則是要說的文字，目前 festival 還不支援中文，所以只能放一些英文字串。
托福，也因此我學到 bash script 裡面可以運算變數內容，作加減乘除，以前我以為只能運算文字內容而已，真的是不經一事不長一智。
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/1749819.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 13 Jun 2006 15:58:09 +0800</pubDate>
					</item>
	<item>
		<title>Can&#039;t setup my Media in Ubuntu Breezy / 蒲公英的草地</title>
		<description>從阿駕零零壹的網站中(後方網址http://ajer001.blog.twntwn.info/post/1/511)
找到如果音效有問題時，可以安裝多媒體測試的程式，用Apt安裝好之後，測試音效時就卡在那邊沒有動作了。
我的硬體: AMD Athlon 850Mhz
               328MB Sdram
               TerraTec 1723
               GigaByte- 7ZMM的主機板
               Nvidia GeForce (ELSA 518P)
系統: Ubuntu Breezy</description>
		<link>http://blog.roodo.com/sinsan/archives/1641602.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Sun, 21 May 2006 09:34:38 +0800</pubDate>
					</item>
	<item>
		<title>XGL的Linux立體桌面 / 蒲公英的草地</title>
		<description>http://en.wikipedia.org/wiki/Xgl

看到在這期的電腦王提到這個桌面視窗介面，於是就去上網找了一下，發現可以在目前常見的幾乎所有的Distribution下運作。這邊先貼上我的Ubuntu下的Howto </description>
		<link>http://blog.roodo.com/sinsan/archives/1600045.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Sat, 13 May 2006 11:41:47 +0800</pubDate>
					</item>
	<item>
		<title>Firewall: lokkit 的設定 / Thinking more...</title>
		<description>進入 console mode 之後，輸入 setup
選到 Firewall configuration (或直接輸入 lokkit)
再選 customize，至此即可設定允許哪些協定進入你 linux 防火牆。

到 Allow incoming 那邊，將協定勾選(按空白鍵勾選，Tab鍵切換)。
如果沒有列出來的，你可能要在 Other Ports 那欄自行輸入。
格式大致是這樣：
protocol_name:[tcp|udp]

拿我家裏的 server 來說，除了勾選 HTTP、SSH 之外，我還自行輸入了
pop3:tcp https:tcp netbios-ssn:tcp microsoft-ds:tcp netbios-ns:udp netbios-dgm:udp

不知道有哪些 protocol 的話，可以用 netstat -a 自己去看。
我也是嘗試之後，才發現 Other ports 那欄的輸入格式可以參考 netstat -a 的結果。

</description>
		<link>http://blog.roodo.com/thinkingmore/archives/1398286.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 11 Apr 2006 16:16:17 +0800</pubDate>
					</item>
	<item>
		<title>XWindows bootstrap / Thinking more...</title>
		<description>這是我的環境: Fedora Core 5, GNOME
簡單紀錄一下這幾天 Trace 的結果.

當你開機後預設模式是圖形(怎麼知道預設模式是甚麼??請參考 /etc/inittab.)的時候,順序大致是這樣子的:
1. Kernel
2. /etc/rc.d/rc.sysinit
3. /etc/rc.d/rc, /etc/rc5.d/ 下的 script
4. /etc/rc.local (其實是在 /etc/rc.d/rc.local)
5. prefdm, 這會把預設的 desktop manager 叫起來 (怎麼知道預設 desktop manager 是甚麼?請參考 /etc/sysconfig/desktop)
6. 登入以後,會執行 /etc/X11/xinit/Xsession
7. /etc/X11/xinit/xinitrc
8. /etc/X11/xinit/xinitrc-common
9. /etc/X11/xinit/xinitrc.d/* 下的 script, 這裡面的 xinput.sh 會把輸入法叫起來.
10. 完成.

為甚麼我沒事要去 Trace? 因為前一陣子我升級 Fedora Core 4 到 5 之後,GNOME 就爛掉了,無法登入.
搞了幾天,都不知道為甚麼,只能以克難的方式,先在 $HOME 佈置 .Xsession, .Xclients 來應急.
今天 Trace 之後,終於發現問題所在.
原因是 /etc/gdm/custom.conf 裡 BaseXsession 預設為 /etc/X11/xdm/Xsession.
gdm 登入後會去執行這個 script, 而 xdm/Xsession 只會跑 xdm 的一些東西,所以就只會登入到很簡陋的 xdm 畫面.
呼~~終於解決了.

參考資料:   GDM/Configuration/The Script Directories    GDM   
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/1344820.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Fri, 31 Mar 2006 16:14:49 +0800</pubDate>
					</item>
	<item>
		<title>Upgrade FC4 to FC5 / Thinking more...</title>
		<description>公司用的 distribution 是 Fedora Core 4, 最近 Fedora Core 5 release 了,就想來升級看看.
世界上真的有很多人想法跟我一樣,用 yum 來升級就好了.

這篇寫的很詳細: How to upgrade from FC4 to FC5 via yum? 

主要步驟:  下載 fedora-release-5-5.noarch.rpm,然後安裝  先更新 yum: yum update yum  接著 upgrade: yum upgrade  

比較麻煩的是步驟 2與步驟 3,這邊你可能會遇到蠻多麻煩,說有 dependency 問題,這時候就得參考 這篇 ,他有提供一個perl script來解決這種鳥問題.
我自己的方法是,紀錄這些套件,把他們移除掉,等升級完再安裝回去.

現在我已經升級完啦,接下來就是調校了~

參考資料:   YumUpgradeFaq    Upgrading Red Hat Linux/Fedora Core with yum    How to upgrade from FC4 to FC5 via yum?   
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/1330488.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 28 Mar 2006 16:38:43 +0800</pubDate>
					</item>
	<item>
		<title>Ubuntu on my laptop / Thinking more...</title>
		<description>星期天把  Ubuntu  裝到我的 Notebook 上.
前兩天稍稍調整一下桌面,讓他變得像 MacOS.
這就是所謂的虛榮嗎? :-p

   
</description>
		<link>http://blog.roodo.com/thinkingmore/archives/1295748.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Wed, 22 Mar 2006 09:09:46 +0800</pubDate>
					</item>
	<item>
		<title>Compiling VLC with VC-1 (WMV9) support under Ubuntu Breezy / It&#039;s a hard day&#039;s night...</title>
		<description>
This is a modification from  So sue me  Platfrom : ubuntu 5.10 i386  install dependencies available from the Ubuntu repositories (main and universe)
	   $ 
sudo apt-get install libwxgtk2.6-dev libdvbpsi3-dev libmpeg2-4-dev
libmad0-dev libasound2-dev libesd0-dev x11proto-video-dev libdvdnav-dev
liba52-0.7.4-dev libflac-dev libfreetype6-dev libid3tag0-dev libogg-dev
libpng12-dev libspeex-dev libtheora-dev libvorbis-dev libxml2-dev
zlib1g-dev gcc g++ automake1.9 autoconf libtool subversion cvs
libx11-dev
  
	 Install libdvdcss (DVD support) 
	   $  mkdir ~/videolan ; cd ~/videolan 
 $  wget http://downloads.videolan.org/pub/videolan/vlc/0.8.2/contrib/libdvdcss-1.2.8.tar.bz2 
 $  tar -jxvf libdvdcss-1.2.8.tar.bz2 ; cd libdvdcss-1.2.8 
 $  ./configure --prefix=/usr ; make ; sudo make install
  
	 Compile faad2 (AAC support) 
	   $  cd ~/videolan ; wget http://downloads.videolan.org/pub/videolan/vlc/0.8.2/contrib/faad2-20040923.tar.bz2 
 $  tar -jxvf faad2-20040923.tar.bz2 ; cd faad2-20040923 
 $  ./configure --prefix=/usr ; cd libfaad ; make
  
	 Compile ffmpeg (support for H264 and many other codecs) 
	   $  cd ~/videolan ; cvs -z9 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co ffmpeg 
 $  cd ffmpeg ; ./configure --enable-pp --enable-gpl ; make
  
	 Compile libvc1 (WMV9 support) 
	   $  cd ~/videolan ; wget http://nanocrew.net/sw/libvc1-1.0.tar.gz ; tar -zxvf libvc1-1.0.tar.gz 
 $  wget http://www.multimedia.cx/VC1_reference_decoder_release6.zip 
 $  unzip VC1_reference_decoder_release6.zip 
 $  cp VC1_reference_decoder_release6/decoder/*.[ch] libvc1-1.0/src/. 
 $  cp VC1_reference_decoder_release6/shared/*.[ch] libvc1-1.0/src/. 
 $  cd libvc1-1.0 ; ./bootstrap ; ./configure --prefix=/usr ; make
  
	 Install VLC 
	   $  cd ~/videolan ; svn co svn://svn.videolan.org/vlc/trunk vlc-trunk ( or you can get  source snapshot , by the way, I use  snapshot-20060227 ) 
 $  cd vlc-trunk ; wget -O - http://nanocrew.net/sw/vlc-libvc1.diff | patch -p0 (choose n, if it ask for your confirm)  $  ./bootstrap ; ./configure --with-ffmpeg-tree=../ffmpeg
--enable-faad --with-faad-tree=../faad2-20040923 --enable-esd
--enable-flac --enable-theora --enable-libvc1
--with-libvc1-tree=../libvc1-1.0 --disable-hal 
 $  make ; sudo make install      Enjoy It!!  </description>
		<link>http://blog.roodo.com/orbit/archives/1184474.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 28 Feb 2006 15:04:12 +0800</pubDate>
					</item>
	<item>
		<title>Make VLC play WMV9 (Fedora) without VC1 / It&#039;s a hard day&#039;s night...</title>
		<description>
1. download win32codec You can find  here .  Download &amp;quot;essential codecs package&amp;quot;, and then uncompress in /usr/lib/win32 or /usr/local/lib/win32  2. update your wxGTK to &amp;gt;2.6.2 (use freshrpms, suggested)  3. install dependencies yum install libdvbpsi-devel mpeg2dec-devel libmad-devel libdvdnav-devel libdvdcss-devel a52dec-devel flac-devel freetype-devel libid3tag-devel libogg-devel libtheora-devel libvorbis-devel zlib-devel faad2-devel  4. download ffmpeg $cvs -z9 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co ffmpeg  $  cd ffmpeg ; ./configure --enable-pp --enable-gpl ; make  5. download the newest vlc source  here  Uncompressed first, and then use the following command $ ./bootstrap ; ./configure --with-ffmpeg-tree={the dir you put ffmpeg} --enable-faad
--with-faad-tree=../faad2-20040923 --enable-esd --enable-flac
--enable-theora --disable-hal $ make  ENJOY IT!! </description>
		<link>http://blog.roodo.com/orbit/archives/1183946.html</link>
		<author>info@blog.roodo.com&lt;info@blog.roodo.com&gt;</author>
		<category>網路/3C</category>
		<pubDate>Tue, 28 Feb 2006 13:11:19 +0800</pubDate>
					</item>
</channel>
</rss>