平衡点
2013/12/04
_ debian-goodies
これは ディストリビューション/パッケージマネージャー Advent Calendar 2013 の 12/03 になる予定でした. イロイロあって, 12/04 投稿分になります. 12/03 は @znz さんの Ubuntu - aptitude検索パターンの紹介 でした
Debian を使っている場合, apt-get, aptitude, dpkg といった ソフトウェアを使ってパッケージを操作することが多いと思います. 貴方の望むほとんどの事は, これらのソフトウェアを使うことで可能でしょう. ですが, ちょっと大仰か(さもなくば多少面倒か)もしれません. ここではほんのちょっとした目的を, 簡単に達成するためのスクリプト群である debian-goodies について紹介します.
とりあえず
% sudo apt-get install debian-goodies
しておきましょう.
dpigs
「どのパッケージがディスクを消費しているか知りたい」という 時があるかもしれません(システムを軽量化したい, とか?). dpkg を使って, 例えば
% dpkg-query -W -f='${Installed-Size}\t${Package}\n' |sort -n -r
とかでも可能です(これはこれで知っておいて損は無いです). 同じ事は dpigs でも可能です.
% dpigs -n 25
とかやってみて下さい. ちなみに, 私の環境では openclipart2-{svg,png} が一番ディスクを消費していました
dhomepage
「パッケージで提供されているソフトウェアの web が見たい」 という時があるかもしれません. Debian パッケージの情報ファイル(debian/control)には Homepage フィールドが存在しており, upstream の web ページを記述する欄があります.
この web を直接ブラウザで開くのが dhomepage コマンドです. 試しに
% dhomepage howm
とかやってみて下さい. /etc/alternatives/x-www-browser で指定されているブラウザで howm: note-taking tool on Emacs が開かれたと思います.
debget
インストールする前に, .deb ファイルそのものを調べたい, という事があるかもしれません. apt の取得先にいって, 実際にファイルを持ってくることでも可能ですが, こんな時には debget を使うのは如何でしょうか?
% debget rabbit
無事に rabbit_2.1.1-2_all.deb が取得できました.
debman
インストールせずに, 特定のパッケージの man を読みたい, という事があるかもしれません. debget でファイルを取得して, dpkg-deb -x で .deb を展開して...とやっても可能ですが, こういう時には debman は如何でしょうか?
% debman -p abiword abiword # 手元にパッケージが無い場合 or % debman -f rabbit_2.1.1-2_all.deb rabbit # 手元に.debがある場合
man が読めましたか? debman は, 実際には debget でファイルを ダウンロードしてきて... という一連の作業を行なっています.
まとめ
ちょっとしたことを気軽に調べるための小粋なツール群である debian-goodies について紹介しました. 実はここで紹介したコマンド以外にも, debian-goodies では .deb を扱うための grep コマンド群 なんかも提供されているのですが, 高機能すぎてなかなか使えておりません. この辺についてもそのうち触れられたら良いな, と思っています.
あ, あと
% popbugs
なんてすると, 次期リリースに向けた状況が一覧できて便利かもしれません.
明日(12/05)は @masami256 による「Fedoraで何か」の予定です.
2019/12/04
_ org-journal と elscreen の連携
試しにちょっと関数を書いてみたり
(defun my:org-journal-new-entry (prefix &optional time)
"Add new journal entry on new elscreen"
(interactive "P")
(elscreen-create)
(org-journal-new-entry prefix time))
(defun my:org-journal-entry-save-and-exit ()
"Save journal entry and close elscreen buffer"
(interactive)
(save-buffer)
(elscreen-kill))
- 新しいエントリを書く際に elscreen で新しい buffer を開いて,
- 適当に書いた後に elscreen buffer を close する.
という挙動にできたので, 良しとする.