2011年1月24日月曜日

[Emacs拡張] auto-install

Emacsを使用してますが、どのように拡張してきたか忘れがちなので記録を残していきたいと思います。

まずauto-install.elを利用できるようにします。
EmacsはLispプログラムをインストールして拡張するので、なるべく楽にインストールできるようにします。

1. EmacsWikiからauto-install.elをダウンロード
mkdir -p ~/.emacs.d/auto-install
cd ~/.emacs.d/auto-install
wget http://www.emacswiki.org/emacs/download/auto-install.el
(MacOSXでは標準ではwgetが使用できないのでcurlを利用します。curl -O http://www.emacswiki.org/emacs/download/auto-install.el)
emacs --batch -Q -f batch-byte-compile auto-install.el
auto-install.elcというコンパイル済みファイルが作成される

2.MacOSXでは以下のパスにコンパイル済みファイルを配置する
/Applications/Emacs.app/Contents/Resources/site-lisp

3. .emacsに以下の設定を追加する
;; auto-install
(require 'auto-install)
;;
(add-to-list 'load-path auto-install-directory)
;; 起動時にEmacsWikiのページ名を補完候補に加える
(auto-install-update-emacswiki-package-name t)
(auto-install-compatibility-setup)
(setq ediff-window-setup-function 'ediff-setup-windows-plain)

4. M-x install-elisp-from-emacswikiが実行できればインストール成功です。


以上です。

2011年1月15日土曜日

[Linux][CentOS] yumの再インストール

yumの調子が悪くなったので、再インストールしました。
※具体的にはyum updateができなくなり、yum clean allも効果なしという状況でした。

まずは、環境情報を確認。

ホストネームを確認する
# uname -a
Linux localhost.localdomain 2.6.18-194.el5PAE #1 SMP Fri Apr 2 15:37:44 EDT 2010 i686 i686 i386 GNU/Linux

OSバージョンを確認する
# cat /etc/redhat-release
CentOS release 5.5 (Final)

rpmバージョンを確認する
# rpm -q rpm
rpm-4.4.2.3-18.el5

yum関連パッケージをアンインストール
# rpm -e --nodeps python-elementtree
# rpm -e --nodeps python-urlgrabber
# rpm -e --nodeps python-sqlite
# rpm -e --nodeps m2crypto
# rpm -e --nodeps rpm-python
# rpm -e --nodeps python-iniparse
# rpm -e --nodeps yum-metadata-parser
# rpm -e --nodeps yum yum-fastestmirror

再インストール用パッケージをダウンロード
# cd /usr/local/src
# mkdir yumrpm
# cd yumrpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/python-elementtree-1.2.6-5.i386.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/python-urlgrabber-3.1.0-5.el5.noarch.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/python-sqlite-1.1.7-1.2.1.i386.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/m2crypto-0.16-6.el5.6.i386.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/rpm-python-4.4.2.3-18.el5.i386.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/python-iniparse-0.2.3-4.el5.noarch.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm
# wget http://ftp.riken.jp/Linux/centos/5.5/os/i386/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm

yum関連パッケージを再インストール
# rpm -ivh python-elementtree-1.2.6-5.i386.rpm python-urlgrabber-3.1.0-5.el5.noarch.rpm python-sqlite-1.1.7-1.2.1.i386.rpm m2crypto-0.16-6.el5.6.i386.rpm rpm-python-4.4.2.3-18.el5.i386.rpm python-iniparse-0.2.3-4.el5.noarch.rpm yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm yum-3.2.22-26.el5.centos.noarch.rpm yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm
準備中...        ########################################### [100%]
1:yum-metadata-parser  ########################################### [ 11%]
2:rpm-python       ########################################### [ 22%]
3:m2crypto        ########################################### [ 33%]
4:python-sqlite     ########################################### [ 44%]
5:python-elementtree   ########################################### [ 56%]
6:python-urlgrabber   ########################################### [ 67%]
7:python-iniparse    ########################################### [ 78%]
8:yum-fastestmirror   ########################################### [ 89%]
9:yum          ########################################### [100%]

次のコマンドでエラーが出なければ完了
# yum list


以上です。