日々のメモ書き
Debian Developerが綴るメモ
likeボタン
Facebookのlike buttonをつけてみた。
サイト全体のlikeボタンをつけてみた。左側のコラムの一番上にとりあえず…。だんだん建て増し旅館の感じがでてきたな。一度構成を整理したいのだが勉強中。
hibernate実験
動かなかった。
hibernateを入れてhibernateを動かしてみたら…。画面が真っ暗になって延々待たされて電源が切れることもなく元に戻った。何が必要なんだろうが…。めんどくさいのでそのまま放置。swapが足りない?
PerlのREPLいろいろ
PerlのREPLをちょっと調べる。
REPLとはRead Eval Print Loopの略。Pythonの対話モード・irb・Lispの対話モードなどである。ちょろっと探してみたら次のようなのがみつかった。
- Devel::REPL (re.pl)
- App::REPL (iperl)
- Shell::Perl (pirl)
- perlconsole (perlcosole)
括弧内が付属のコマンドである。iperlとpirlは評価の表示がちょっと詳しい。具体的にはクラスインスタントを評価したときにHASHとか愛想のない内容ではない。
Devel::REPL
$ use CGI
$ CGI->new
$CGI1 = CGI=HASH(0x3b2a0f0);
App::REPL
$ iperlApp::REPL _ use CGIApp::REPL _ CGI->new$VAR1 = bless( {'.parameters' => [],'use_tempfile' => 1,'.charset' => 'ISO-8859-1','.fieldnames' => {},'param' => {},'escape' => 1}, 'CGI' );App::REPL _
Shell::Perl
$ pirl
pirl @> use CGI @var = (); pirl @> CGI->new @var = ( bless( { '.parameters' => [], 'use_tempfile' => 1, '.charset' => 'ISO-8859-1', '.fieldnames' => {}, 'param' => {}, 'escape' => 1 }, 'CGI' ) ); pirl @>
perlconsole
Perl> use CGI Perl> CGI->new CGI=HASH(0x253d368)
追記
perl -de 0 という話も飛んできた。
python-debianでcontrol fileを読む
python-debianを使ってdebのcontrol fileを扱ってみた。
control fileは概ねRFC822なんだが便利なものもあるということで。
import debian.changelog
import debian.deb822
cl = debian.changelog.Changelog(file('debian/changelog'))
print cl.upstream_version
for i in debian.deb822.Deb822.iter_paragraphs(file('debian/control')):
if i.has_key('homepage'):
vars['homepage'] = i.get('homepage')
if i.keys()[0] == 'Package':
print i['Description']
みたいな感じで。
changelogファイルを読んでupstrem versionを表示。controlを読んでhomepage と description を表示。
Debian 6.0 / Squeeze
いまさらですか?
今さらですか? という感じである。家で作業状況を見ていたかったが残念ながら用事があったのでidenticaを出先でチェックしようとしていたらいつの間にやらリリースされていた。そのあと結局深夜になるまで家に帰れず帰ってきたら体調を崩してそれどころではなく…今さらリリースですよーということになった。
リリースされてからのsidの動きを見ると順調にexperimentalになっていたものがunstableに下りてきている。X.orgが中途半端でまだアップグレードできてないけど。NEW queueも順調に処理されているようだ。ま、それでも一杯あるんだけどさ。
lua でファイルを一行毎処理する
imapfilterでblacklistの処理をしようと思って調べた。
io.linesを使う。入出力はioを使うのか。
for line in io.lines("fuga.txt") do
print(line)
end
IPv4アドレス枯渇
なんやら式典やったらしい
随分と前になくなると言われてて、ほんとになくなってしまったなーという感じ。中央在庫がなくなってもまだ地域在庫が残っている状態だが、それも近いうちになくなるだろう。次はプロバイダー側の確保という話になる。
さて、この先どうなるのか。IPv6はちっとも普及してないと思うのだが、3年ぐらい前にプロバイダー大手の某社のNEは普及してますよねとか話の通じない人だった。使えるならぜひ使いたいがどうしたらいいんでしょ。トンネリングとかあるみたいだけど…。めんどくさいなあ…。
PythonでIMAP
PythonでIMAPに接続してみた。
基本はimaplibを使う。そのあとどうするかは付属ドキュメントとRFC3501を斜め読み。あるフォルダにあるメールのアドレスを抜き出すプログラムを書いてみた。ほんとはHaskellでやりたかったけどライブラリがなかったので妥協…。getpassを使ってパスワードは毎回入力する。
#!/usr/bin/pythonimport imaplibimport getpassimport email.parserimport rfc822HOST = 'imap.example.com'USER = 'example'M = imaplib.IMAP4_SSL(HOST)passwd = getpass.getpass()M.login(USER,passwd)status, data = M.select('INBOX.foo')if status != 'OK':raisetyp, data = M.search(None, 'ALL')fromtable = {}for num in data[0].split():typ, ret = M.fetch(num, '(RFC822.HEADER)')header = ret[0][1]p = email.parser.Parser()msg = p.parsestr(header)print rfc822.parseaddr(msg['from'])[1]M.close()M.logout()
中古パーツを売る
大須でパーツを売ってきた。
PC-NETに行ってみたらパーツの買取はやってないと言われた。
あまり期待しないでドスパラに行ったら買取をしてくれた。しかもPC100とかいつの時代だというメモリまで10円で買ってくれた。
ちなみに一部のカード等はじゃんぱらで買取を拒否されたものだったが、ドスパラで10円で買ってくれた。
PC100のメモリなんてまだ買う人いるんだろうかねえ…。
Intel6シリーズリコールと聞いて
大須に寄る機会があったのでPCショップに寄ってみた。
SandyBidgeのチップセットがリコールになったと聞いて、丁度大須に行く機会があったのでPCショップに寄ってみた。
ツクモ・ドスパラ・ツートップと見てきたが張り紙がしてあって販売中止になっていた。いろいろ商品入れ替えで大変そうだな。これから2ヶ月Intelマザーがないとは大変だな。AMD派なのでどうでもいいですが。この時期にBulldozerが出ていればすごかったのになあ…。