星期六, 9月 23, 2017

升級到 Debian 9 (Stretch) 後,Touchpad 設定在滑鼠與觸控板中消失了

 Debian 9 改用 xserver-xorg-input-libinput 取代 xserver-xorg-input-synaptics 了。
移除 xserver-xorg-input-synaptics 後,登出再登入,設定頁面就出現了。

星期二, 9月 09, 2014

colormake cause menuconfig unusable

My .bashrc have a alias for colormake

alias make=colormake

But when I want to do make menuconfig for kernel, the config menu can not display correctly.

Then I found the colormake cause that. It's too bad.

星期五, 3月 28, 2014

Package's state in the package list

aptitude 列出來的 package 列表中,前面開頭三個字元表示該 package 的狀態。例如:

idA    libsmbclient          

字元一表示 state
字元二表示 action
字元三表示 automatic

state 可以是:
v - virtual
B - broken
u - unpacked
C - half-configured
H - half-installed
c - removed, but config-files still present (ie, not purged)
i - installed
E - internal error ( should not happen)

action 可以是:
h - hold
p - purge
d - delete (remove)
B - broken
i - install
r - reinstall
u - upgrade
F - the available upgrade has been forbidden via "F"

字元三若出現 A,表示該 package 是因其它 package 的安裝的相依性而自動被安裝。

星期三, 2月 19, 2014

perl warning for setting locale failed

Can't set locale; make sure $LC_* and $LANG are correct!
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en_US:en",
LC_ALL = (unset),
LC_TIME = "zh_TW.utf8",
LC_MONETARY = "zh_TW.utf8",
LC_MEASUREMENT = "zh_TW.utf8",
LC_NUMERIC = "zh_TW.utf8",
LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_ALL to default locale: No such file or directory
上面這情形發生在透過 ssh 連到遠端機器執行與 perl 相關的程式時所發生的。
古哥說下面這地方有解法
http://stackoverflow.com/questions/2499794/how-can-i-fix-a-locale-warning-from-perl

原因在於 /etc/ssh/sshd_config 中有一行設定
# Allow client to pass locale environment variables
AcceptEnv LANG LC_*
這表示 ssh client 可以把它的 locale 環境變數傳給 ssh server。
但若 ssh server 中沒有安裝該 locale,就會出現上面這樣的訊息。

所以解法有幾個:
從 server 端解:
1. 安裝該 locale
$ sudo dpkg-reconfigure locales

2. ssh server 不要接收從 ssh client 傳來的 locale 環境變數
 # Allow client to pass locale environment variables
 # AcceptEnv LANG LC_*
從 client 解:
執行 ssh 時,強制設定 LANG 的環境變數為 C
$ LANG=C ssh user@remote_server

星期四, 6月 21, 2012

CPU temperature gnome shell extension

To monitor CPU temperature in gnome-shell, we need to install lm-sensors and a gnome-shell-extension "cpu-temperature"

$ sudo aptitude install lm-sensors
$ cd
$ git clone https://github.com/xtranophilist/gnome-shell-extension-cpu-temperature.git
$ mkdir -p ~/.local/share/gnome-shell/extensions/temperature@xtranophilist 
$ cp gnome- shell-extension-cpu-temperature/* ~/.local/share/gnome-shell/extensions/temperature@xtranophilist

星期三, 6月 20, 2012

Poweroff or Shutdown button

Can not find the poweroff or shutdown button in Linuxmint ?

$ sudo aptitude install gnome-shell-extensions


星期一, 4月 09, 2012

將檔案庫中某子目錄抽出為獨立檔案庫

我們有下面這樣的檔案庫結構,Repo 下面有三個子目錄:DirA, DirB, DirC
Repo/DirA
Repo/DirB
Repo/DirC

現在我們想將 DirA 抽出來,獨自為一檔案庫。

製作目前檔案庫備份
$ git clone Repo temp
$ cd temp
將 remote 移除
temp/:$ git remote rm origin
抽出 DirA
temp/:$ git filter-branch --subdirectory-filter DirA HEAD
temp/:$ cd ..
重製檔案庫
$ git clone --bare temp DirA.git

參考來源:

http://progit.org/book/ch6-4.html

Making a Subdirectory the New Root

Suppose you’ve done an import from another source control system and have subdirectories that make no sense (trunk, tags, and so on). If you want to make the trunk subdirectory be the new project root for every commit, filter-branch can help you do that, too:
$ git filter-branch --subdirectory-filter trunk HEAD
Rewrite 856f0bf61e41a27326cdae8f09fe708d679f596f (12/12)
Ref 'refs/heads/master' was rewritten
Now your new project root is what was in the trunk subdirectory each time. Git will also automatically remove commits that did not affect the subdirectory.