2012-04-01 :-)
_ [AnsBSD][エイプリルフール]AnsBSD 1.0 のアナウンス
プレイステーション 3 用ゲーム「リッジレーサー 7」で活動するチーム ANS は、AnsBSD オペレーティングシステムの 1 回目のメジャーリリースとなる AnsBSD 1.0 を 発表できることを喜ばしく思います。
AnsBSD はフリーで安全、かつ高い移植性を備えた Unix風のオープンソースオペレーティングシステムで、64 ビット Opteron マシンやデスクトップシステムから携帯端末や組み込みデバイスまで、多くの機種で利用可能です。AnsBSD のきれいな設計と進んだ特徴は、製品としても研究環境としても優秀であり、完全なソースが提供され、ユーザーによってサポートされています。多くのアプリケーションも、AnsBSD パッケージコレクション (pkgjork) を使って簡単に利用可能です。
Enjoy!
Using username "rin". Last login: Fri Mar 30 23:31:14 2012 AnsBSD 1.00.00 (MYKERNEL) #0: Sun Apr 1 00:00:00 JST 2012 Welcome to AnsBSD! __,gnnnOCCCCCOObaau,_ _._ __,gnnCCCCCCCCOPF"'' ~ (N\XCbngg,._____.,gnnndCCCCCCCCCCCCF"___,,,,___ \N\XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCOOOOPYvv. \N\XCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPF"'' \N\XCCCCCCCCCCCCCCCCCCCCCCCCCOF"' \N\XCCCCCCCCCCCCCCCCCCCCOF"' \N\XCCCCCCCCCCCCCCCPF"' \N\"PCOCCCOCCFP"" \N\ \N\ --- AA \N\ qgggaagge, ,spsqs, qgggaaagga,. | R | AAAA BBB "BBb ;SS "Ss DDD "VDDm --- A AAA BBB IBP SSk, " DDD "DDb A AAA nnnp ,sss, BBBgggdBP' "SSSSp, DDD YDD AAAAAAAAA NNy~ Yn "SS ss BBB""""GBm, "SSSSR DDD ADD A AAA N N "ss " BBB BBB "YSL DDD .DDP A AAA N NN s ~SS BBB _BBP s, ISF DDD ,DDD' AA AAAA NN NN ygdP' dBBBaaadBBF' YSgggdSP' dDDDaaadCDF" \NN\ \NN\ \NNA. \NNA, \NNN, \NNN\ \NNN\ \NNNA rin@mogu[~]%
_ 読書メーター
3月の読書メーター
読んだ本の数:0冊
読んだページ数:0ページ
ナイス数:9ナイス
2012年3月の読書メーターまとめ詳細
読書メーター
_ 元ネタ
NetBSD 4.0 のアナウンス よりリリースアナウンスを拝借。しかしヒネりが足りない。
NetBSD wallpapers, logos for your mobile phone, skins etc. より ASCII Art of the NetBSD Flag を拝借。ASCII Art を /etc/motd に書いて、login した。手で Ans を書いたんだがかなりしんどい。
_ [cygwin][node.js]cygwin で node.js (諦めた)
- Windows 7
- cygwin
Building and Installing Node.js · joyent/node Wiki
% git clone https://github.com/joyent/node.git % cd node % ./configure && make : make[1]: ディレクトリ `/home/public/node/out' に入ります CC(target) /home/public/node/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/des/enc_read.o ../deps/openssl/openssl/crypto/des/enc_read.c:66:1: error: static declaration of ‘_hide_DES_rw_mode’ follows non-static declaration ../deps/openssl/openssl/crypto/des/enc_read.c:66:1: note: previous declaration of ‘_hide_DES_rw_mode’ was here deps/openssl/openssl.target.mk:640: recipe for target `/home/public/node/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/des/enc_read.o' failed make[1]: *** [/home/public/node/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/des/enc_read.o] Error 1 make[1]: ディレクトリ `/home/public/node/out' から出ます Makefile:19: recipe for target `node' failed make: *** [node] Error 2
Install NodeJS on Windows using Cygwin · joyent/node Wiki
Big fat warning
Support for building on Cygwin was removed in 67b235735e80209c6f199d15faa87cd0e068f6b8. Please build using MSVC.
(´・ω・`)
素直に Windows 向けのビルドしようとしたら python がどうのこうのとかいろいろ面倒くさいので ubuntu でやったら素直にインストールできた。こんにゃろ
_ [NetBSD][node.js]NetBSD で node.js
がんばる
../deps/openssl/openssl/crypto/ui/ui_openssl.c:229:21: warning: termio.h: No such file or directory ../deps/openssl/openssl/crypto/ui/ui_openssl.c: In function 'open_console': ../deps/openssl/openssl/crypto/ui/ui_openssl.c:500: error: 'TCGETA' undeclared (first use in this function) ../deps/openssl/openssl/crypto/ui/ui_openssl.c:500: error: (Each undeclared identifier is reported only once ../deps/openssl/openssl/crypto/ui/ui_openssl.c:500: error: for each function it appears in.) ../deps/openssl/openssl/crypto/ui/ui_openssl.c: In function 'noecho_console': ../deps/openssl/openssl/crypto/ui/ui_openssl.c:531: error: invalid application of 'sizeof' to incomplete type 'struct termio' ../deps/openssl/openssl/crypto/ui/ui_openssl.c:532: error: invalid use of undefined type 'struct termio' ../deps/openssl/openssl/crypto/ui/ui_openssl.c:532: error: 'ECHO' undeclared (first use in this function) ../deps/openssl/openssl/crypto/ui/ui_openssl.c:536: error: 'TCSETA' undeclared (first use in this function) ../deps/openssl/openssl/crypto/ui/ui_openssl.c: In function 'echo_console': ../deps/openssl/openssl/crypto/ui/ui_openssl.c:553: error: invalid application of 'sizeof' to incomplete type 'struct termio' ../deps/openssl/openssl/crypto/ui/ui_openssl.c:554: error: invalid use of undefined type 'struct termio' ../deps/openssl/openssl/crypto/ui/ui_openssl.c:554: error: 'ECHO' undeclared (first use in this function) ../deps/openssl/openssl/crypto/ui/ui_openssl.c:558: error: 'TCSETA' undeclared (first use in this function) gmake[1]: *** [/home/rin/usr/local/node/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/ui/ui_openssl.o] エラー 1
(´・ω・`)
/usr/include にあるんだがなあ
-I してもダメだった。
_ [NetBSD][node.js][pkgsrc-wip]pkgsrc-wip に node.js があるらしい (失敗)
Issue #1023: netbsd port - joyent/node
ので試そうとしている。
% cd /usr/pkgsrc % cvs -d:pserver:anonymous@pkgsrc-wip.cvs.sourceforge.net:/cvsroot/pkgsrc-wip login % cvs -z3 -d:pserver:anonymous@pkgsrc-wip.cvs.sourceforge.net:/cvsroot/pkgsrc-wip checkout -P wip
% cd /usr/pkgsrc/wip/node % make install clean clean-depends : ld: cannot find -lexecinfo scons: *** [obj/release/mksnapshot] Error 1 scons: building terminated because of errors. Waf: Leaving directory `/usr/pkgsrc/wip/node/work/node-v0.4.7/build' Build failed: -> task failed (err #2): {task: libv8.a SConstruct -> libv8.a} *** Error code 1 Stop. make: stopped in /usr/pkgsrc/wip/node/work/node-v0.4.7 *** Error code 1 Stop. make: stopped in /usr/pkgsrc/wip/node *** Error code 1 Stop. make: stopped in /usr/pkgsrc/wip/node
? ('A`)
% cd /usr/pkgsrc/wip/libexecinfo
make install したらインストール済みと言われた。
update してみる。
% sudo make update clean clean-depends : install -c -r -o root -g wheel -m 444 libexecinfo.so.1.0 /usr/pkgsrc/wip/libexecinfo/work/.destdir/usr/pkg/lib/libexecinfo.so.1.0 install -l s -r libexecinfo.so.1.0 /usr/pkgsrc/wip/libexecinfo/work/.destdir/usr/pkg/lib/libexecinfo.so.1 install -l s -r libexecinfo.so.1.0 /usr/pkgsrc/wip/libexecinfo/work/.destdir/usr/pkg/lib/libexecinfo.so /usr/bin/install -c -o root -g wheel -m 644 /usr/pkgsrc/wip/libexecinfo/work/libexecinfo-1.1/execinfo.h /usr/pkgsrc/wip/libexecinfo/work/.destdir/usr/pkg/include => Automatic manual page handling => Generating post-install file lists /usr/pkgsrc/wip/libexecinfo/work/.destdir/usr/pkg/lib/libexecinfo.so.1.0: installed without execute permission; fixing (should use [BSD_]INSTALL_LIB) => Checking file-check results for libexecinfo-1.1 => Checking for non-existent script interpreters in libexecinfo-1.1 => Checking file permissions in libexecinfo-1.1 => Checking for missing run-time search paths in libexecinfo-1.1 => Checking for work-directory references in libexecinfo-1.1 ===> Building binary package for libexecinfo-1.1 => Creating binary package /usr/pkgsrc/packages/All/libexecinfo-1.1.tgz ===> Install binary package of libexecinfo-1.1 if /usr/pkg/sbin/pkg_info -K /var/db/pkg -qe "libexecinfo-[0-9]*"; then /usr/pkg/sbin/pkg_info -K /var/db/pkg -qr "libexecinfo-[0-9]*" > /usr/pkgsrc/wip/libexecinfo/work/.DLIST; else /usr/bin/touch /usr/pkgsrc/wip/libexecinfo/work/.DLIST; fi ===> Cleaning for libexecinfo-1.1 ===> Cleaning for libexecinfo-1.1 ===> Cleaning for digest-20111104 ===> Cleaning for checkperms-1.11
ふむ?
% ls -l /usr/pkg/lib/libexecinfo* -r--r--r-- 1 root wheel 40804 Apr 1 22:22 /usr/pkg/lib/libexecinfo.a lrwxr-xr-x 1 root wheel 18 Apr 1 22:22 /usr/pkg/lib/libexecinfo.so -> libexecinfo.so.1.0* lrwxr-xr-x 1 root wheel 18 Apr 1 22:22 /usr/pkg/lib/libexecinfo.so.1 -> libexecinfo.so.1.0* -r-xr-xr-x 1 root wheel 41419 Apr 1 22:22 /usr/pkg/lib/libexecinfo.so.1.0* -r--r--r-- 1 root wheel 46778 Apr 1 22:22 /usr/pkg/lib/libexecinfo_pic.a
? ('A`)
2012-04-03 :-(
_ [NetBSD]Dell Inspiron Mini 10v のハードディスクを交換した
交換する前に手元のデスクトップ PC に接続して NetBSD をインストールしておいた。
あとは手順どおりに作業 → Dell Inspiron 1011 サービスマニュアル - ハードディスクドライブ ( Dell Inspiron 1011 - User Guide
hitomi$ uname -a NetBSD hitomi.area51.gr.jp 5.1.2 NetBSD 5.1.2 (GENERIC) #0: Thu Feb 2 17:22:10 UTC 2012 builds@b6.netbsd.org:/home/builds/ab/netbsd-5-1-2-RELEASE/i386/201202021012Z-obj/home/builds/ab/netbsd-5-1-2-RELEASE/src/sys/arch/i386/compile/GENERIC i386
2012-04-04 :-(
_ 夜
1900 Xほげ
2000 飯。パエリア ( スペイン人に教えてもらった、誰にでも出来る美味しいパエリアの作り方 | 地中海ブログ ) 。1 人ぶん + 弁当ぶんで 1 合炊いたんだが多かった。
2100 昼寝
2200 Xほげ
2300 tdiaryほげ
2430 Xおわた
2012-04-06 :-(
_ Dell Inspiron Mini 10v
以前は USB メモリスティックから NetBSD インストーラーを起動してインストールしたんだが[ 20091219#p04 ] 考えてみればディスクをデスクトップへ接続してしまえば楽なんだよなあ。
なぜ USB メモリスティックを使おうとしたのか。
そこに USB メモリスティックがあったからだ。
2012-04-07 :-)
2012-04-08 :-)
_ 午前
0930 起床
1100 四十九日 || 坊さんから花祭( 灌仏会 - Wikipedia )についての説明をされるなど。「若者の仏教離れ」と言っていたんだが、そういえば年始に川崎大師へ行ったとき[ 20120101#p08 ]も坊さんが川崎大師について「大本山が川崎、成田、高尾にあり云々」(平間寺 - Wikipedia)など丁寧に説明されてた。説明することで関心を持ってもらおうということかしら。
2012-04-10 :-(
2012-04-11 :-)
_ [リッジレーサー7][heroku][sinatra][ruby][haml][git]heroku で sinatra を使ってリッジレーサー7 のコースとマシンをランダムに印字するだけの簡単なウェブアプリケーションを作ってみた
どう見ても ARC( ANS RidgeRacer Championship ) 用なんだがそれはそれとして。
これからRubyを始める人たちへ に触発されてというか sinatra ってこんな簡単なのか、ということで見よう見まねでやってみた。
heroku への準備
sinatra でローカルで動作するようになったら heroku の準備をする。公式に手順がある。倉貫さんや machu さんの所にもある。
- Getting Started with Ruby on Heroku/Cedar
- Heroku上でSinatraアプリを動かすまでのまとめ - まちゅダイアリー(2011-10-02)
- Ruby版PaaSの"Heroku"で無料Railsホスティング環境を手に入れよう - Social Change!
Gemfile と Procfile を用意。
% touch Gemfile
中身
source :rubygems gem 'sinatra' gem 'thin' gem 'haml'
% touch Procfile
中身
web: bundle exec ruby rr7.rb -p $PORT
bundle しておく
% bundle install
foreman 入れる
% gem install forema
foreman で起動
% foreman start 22:49:10 web.1 | started with pid 3388 22:49:12 web.1 | == Sinatra/1.3.2 has taken the stage on 5000 for development with backup from Thin
http://localhost:5000 にアクセスして動作してれば ok
heroku へデプロイ
手順どおりにやる。
% git init Initialized empty Git repository in /home/rin/work/lang/ruby/RR7/.git/
% git add .
% git commit -m "create" [master (root-commit) 38a72ff] create 6 files changed, 206 insertions(+), 0 deletions(-) create mode 100644 Gemfile create mode 100644 Gemfile.lock create mode 100644 Procfile create mode 100644 course.rb create mode 100644 machine.rb create mode 100755 rr7.rb
heroku create するときに --stack cedar を指定しないと git push するときに「 Rails か Rack アプリ以外は受け付けねーよ」と怒られてしまう。
% heroku create --stack cedar rr7 Creating rr7... done, stack is cedar http://rr7.herokuapp.com/ | git@heroku.com:rr7.git Git remote heroku added
% git remote heroku
% git remote show heroku Warning: Permanently added the RSA host key for IP address '50.19.85.132' to the list of known hosts. Enter passphrase for key '/home/rin/.ssh/id_rsa': * remote heroku Fetch URL: git@heroku.com:rr7.git Push URL: git@heroku.com:rr7.git HEAD branch: (unknown)
push する。
% git push heroku master Enter passphrase for key '/home/rin/.ssh/id_rsa': Counting objects: 8, done. Delta compression using up to 4 threads. Compressing objects: 100% (7/7), done. Writing objects: 100% (8/8), 1.88 KiB, done. Total 8 (delta 0), reused 0 (delta 0) -----> Heroku receiving push -----> Ruby app detected -----> Installing dependencies using Bundler version 1.1.2 Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment Fetching gem metadata from http://rubygems.org/..... Installing daemons (1.1.8) Installing eventmachine (0.12.10) with native extensions Installing haml (3.1.4) Installing rack (1.4.1) Installing rack-protection (1.2.0) Installing tilt (1.3.3) Installing sinatra (1.3.2) Installing thin (1.3.1) with native extensions Using bundler (1.1.2) Your bundle is complete! It was installed into ./vendor/bundle Cleaning up the bundler cache. -----> Discovering process types Procfile declares types -> web Default types for Ruby -> console, rake -----> Compiled slug size is 3.8MB -----> Launching... done, v3 http://rr7.herokuapp.com deployed to Heroku To git@heroku.com:rr7.git * [new branch] master -> master r0
ok
heroku create したときにアプリケーション名を指定しておいたので http://rr7.herokuapp.com/ にアクセスすれば ok 。
Heroku push rejected, no Rails or Rack app detected
Gemfile や Procfile を準備せずに heroku create して git push しようとすると怒られる。
% git push heroku master Enter passphrase for key '/home/rin/.ssh/id_rsa': Counting objects: 10, done. Delta compression using up to 4 threads. Compressing objects: 100% (9/9), done. Writing objects: 100% (10/10), 2.04 KiB, done. Total 10 (delta 1), reused 0 (delta 0) -----> Heroku receiving push ! Heroku push rejected, no Rails or Rack app detected To git@heroku.com:deep-sunrise-7357.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'git@heroku.com:deep-sunrise-7357.git'
この状態になって、後から Gemfile や Procfile を追加してもやはり同じように怒られてしまうので訳わかんなくなったので一度 rm -rf .git して heroku create --stack cedar してから再度 git init から作業したらちゃんとデプロイ出来た。よく分からない。
_ [ruby]ruby 1.9 の Array#sample
これからRubyを始める人たちへ に Array#sample が使われてるんだが残念ながら手元の環境が ruby 1.8.7 だったので Array#sample が実装されてない( クエリ:sample - るりまサーチ )。代替手段面倒くさかった。
#!/usr/bin/ruby # -*- encoding: utf-8 -*- # これからRubyを始める人たちへ # http://melborne.github.com/2012/04/09/to-newbie/ def password_gen(size = 8) # ruby1.9 # [*0..9, *'a'..'z', *'A'..'Z'].sample(size).join # ruby1.8 a = [*0..9] + [*'a'..'z'] + [*'A'..'Z'] pass ||= [] size.times { pass << a[rand(a.length)] } pass.join end if __FILE__ == $0 puts 10.times.map { password_gen } end
2012-04-13 :-(
_ [Android]Android SDKほげ
- Microsoft Windows7 Professional
Android SDK - Android Developers からダウンロードしてインストールして SDK Manager.exe を実行したら怒られた。
Preparing to install archives Downloading Android SDK Platform-tools, revision 11 Failed to create directory C:\Program Files (x86)\Android\android-sdk\temp Downloading Documentation for Android SDK, API 15, revision 2 Failed to create directory C:\Program Files (x86)\Android\android-sdk\temp Downloading SDK Platform Android 4.0.3, API 15, revision 3 Failed to create directory C:\Program Files (x86)\Android\android-sdk\temp Downloading Samples for SDK API 15, revision 2 Failed to create directory C:\Program Files (x86)\Android\android-sdk\temp Downloading Sources for Android SDK, API 15, revision 2 Failed to create directory C:\Program Files (x86)\Android\android-sdk\temp Downloading Google USB Driver, revision 4 Failed to create directory C:\Program Files (x86)\Android\android-sdk\temp Skipping 'Android SDK Tools, revision 19'; it depends on 'Android SDK Platform-tools, revision 11' which was not installed. Skipping 'ARM EABI v7a System Image, Android API 15, revision 2'; it depends on 'SDK Platform Android 4.0.3, API 15, revision 3' which was not installed. Skipping 'Google APIs, Android API 15, revision 2'; it depends on 'SDK Platform Android 4.0.3, API 15, revision 3' which was not installed. Done. Nothing was installed.
SDK Manager.exe を右クリックしてコンテキストメニューから「管理者として実行」で実行したらイケた。こんにゃろ
しかしパッケージをインストールしようとすると「 fetching ナントカカントカ」をしたままダウンロードが進まない。
Android SDKのインストールでエラー(Failed to fetch URL)が出た - ありの日記
このエラーにはならなかったんだが、ともあれ https を http にするといいらしい。イケた。
2012-04-15 :-)
_ 午前
0800 起床
1050 IPA試験 情報セキュリティスペシャリスト || 会場は SC 専用らしい。午前 I 免除なので午前 II の時間に会場の教室に入ったら誰も居なかったんだがつまり全員午前 I 免除なのかしら。
2012-04-16 :-(
2012-04-20 :-(
_ 若者のサーバー離れ
虚栄心を確保するためと技術的な好奇心により、昔からおうちサーバーでコンテンツを運営してきたんだけど、各種アプリケーションのための設定が面倒くさくなってきているのでいまさらながらアウトソーシングが徐々に進んでいる。ておくれ
コンテンツ | 過去 | 現在 |
メール | Mew | Gmail |
フィードリーダー | FreshReader | Google Reader |
IRC proxy | area51 madoka | 友人 tiarra |
グループウェア(?) | area51 wiki | area51 wiki, Google docs |
日記 | area51 tdiary | 同左 |
メモ | area51 wiki | 同左 |
ML | area51 quickml | 同左 |
ブログサービスなんて世の中にたくさんあるし、 tumblr でブログ書いてるひともたくさん居るし( http://atelier-tiv.tumblr.com/ とかいろいろ )、github で wiki 書けるし( ていうかなんでもできるみたいだけど )、tdiary が heroku で動作しそうだし( tDiary on heroku - HsbtDiary(2012-03-23) ) 、むしろそれVPSでry などというのは当たり前だし。クラウドこわい。
_ [mikutter][NetBSD][ておくれ]mikutter を入れた
せっかく X を入れたので mikutter を入れてみた。
% cd /usr/pkgsrc/net/mikutter % make install clean clean-depends
入力システムは uim-anthy で
InstallUim - uim-doc-ja - Japanese Documentation Project for uim - Google Project Hosting
% cd pkgsrc/inputmethod/uim % make install clean clean-depends
.xinitrc はこんな
export LANG=ja_JP.UTF-8 setxkbmap jp GTK_IM_MODULE=uim ; export GTK_IM_MODULE QT_IM_MODULE=uim ; export QT_IM_MODULE uim-xim & XMODIFIERS=@im=uim ; export XMODIFIERS exec /usr/pkg/bin/awesome
2012-04-21 :-)
_ 午後
1300 ビデオ消化
_ [RR7][リッジレーサー7] リッジレーサー7 ARC 2011 卯月GP
実際のところはネタ切れなのでチームバトルなんぞやってみた。
- ANSΩmiwarin 243
- ANSΩ三嶋出雲 229
- GREENOGRE 229
- ANSΩFLOW 222
- agumon 215
- REDOGRE 201
- megu.Girls 201
- SOLARE 201
- majestajovial 197
- ANSΩkeyaki 183
- ANSΩ八雲藍 151
- ANSΩemotion21 129
- STARGOLD 50
- ガンマ 36
スンマセンスンマセンスンマセン
ペアバトルのほうが白熱するかしら。
_ pkgsrc rsync
rsync 3.0.8 がインストール済みの環境で make update すると、 All/rsync-3.0.9.tgz が無い、と怒られる。make deinstall しても解決しない。そりゃそうなんだがどうしてこうなった。
% rsync --version rsync version 3.0.8 protocol version 30
% cd /usr/pkgsrc/net/rsync % sudo make update clean clean-depneds ===> Resuming update for rsync-3.0.9 => Bootstrap dependency digest>=20010302: found digest-20111104 ===> Install binary package of rsync-3.0.9 pkg_add: no pkg found for '/usr/pkgsrc/packages/All/rsync-3.0.9.tgz', sorry. pkg_add: 1 package addition failed *** Error code 1 Stop. make: stopped in /usr/pkgsrc/net/rsync *** Error code 1 Stop. make: stopped in /usr/pkgsrc/net/rsync *** Error code 1 Stop. make: stopped in /usr/pkgsrc/net/rsync *** Error code 1 Stop. make: stopped in /usr/pkgsrc/net/rsync
2012-04-22 :-)
_ 午後
1300 カーネルVM
_ 夜
2000 懇親会
_ [カーネル/VM探検隊]第七回 カーネル/VM探検隊&懇親会
初めてのカーネル/VM探検隊。カーネルのコードなんていじらないし VM なんて知らないしよく「こわっ カーネル/VM 近寄らんとこ」と言われているようにこわいんだけどせっかくだから行ってみた。何言ってるのかマジわかんない。スライドは 第七回 カーネル/VM探検隊 タイムテーブル を参照。中卒 ruby コミッター sora_h ( 15歳? )を初めて見たんだけどほんとに若かった。恐ろしいです。
(」・ω・)」うー(/・ω・)/にゃー が多かった。
テキトーにメモ
- PDP-11 を FPGA で走らせる
- PDP-11
- 仕様公開されてる
- 昔: 冷蔵庫
- 今: 基板1枚。MMU乗ってる
- Extreme Java
- Java で WiFi スタックを実装した
- USB → Ethernet → TCP →
- TCP スタックはもう二度と実装したくない
- Linux の実装がカオス
- FreeBSD はキレイ
- IEEE の仕様書は素敵
- IETF の仕様書は酷い
- 組み込み Java
- GC なんて無かった
- 自前で alloc/free しないといけない
- JVM を設定するときにヒープ領域の大きさを決める
- ヒープ領域から alloc して使い終わったら free するようにすればいいよ
- Java で WiFi スタックを実装した
- Windows フック攻撃
- 攻撃から防御する
- むしろ反撃する。攻性防壁しようよ
- DLL インジェクション
- スレッドインジェクション
- コマンド・シェルスクリプトで企業システムを作る
- WordPress でブログ書いてたらインジェクションされたので bash でブログシステムを作った
- データ整理
- レベル 1 ~ 4(5) に分類する
- 実例 apache ログ
- L1: 生ログ
- L2: awk 向けに空白区切りに整理
- L3: 項目毎に集計した。アクセス数など
- L4: アプリケーションからそのまま表示する形
- 地味に便利なスクリプト
- gyo: 行数を数える( wc -l と同じ )
- keta: 桁数を揃える( vim の Align と同じ )
- FreeBSD 9
- ZFS v28
- Capsicum
- NFS v4
- bsdinstall
- 新しいシステムインストーラ。シェルスクリプトで書かれた。sysinstall は時代遅れ
- FreeBSD Daily Topics:2011年5月23日 FreeBSD 9の新しいデフォルトシステムインストーラ「BSDIntall」|gihyo.jp … 技術評論社
- 難解プログラミング言語
- チャーチ数
- Uコンビネータ ( Yコンビネータ ? )
- チューリング完全
- ( つまり Brainfuck のことだったんだけど何言ってるかさっぱり分からなかった (ノ∀`) )
- チューリング完全 - Wikipedia
- 404 Blog Not Found:TuringとChurchの狭間で
- チューリングコンプリート ‐ 通信用語の基礎知識
- ラムダ計算 - Wikipedia
- LT
- サラリーマンなら VM 作りましょう
- Earlang やりましょう
- Haskell ry
- X 捨て Wayland やりましょう
- ELF のローダーを書きましょう
- TinyCC をビルドしましょう
- コンパイラのツールがひと通り実装されているのでコードリーディングすると楽しい
- TCC : Tiny C Compiler
- Tiny C Compiler - Wikipedia, the free encyclopedia
2012-04-23 :-(
_ [awesome]awesome の設定ファイル(lua)が使えなかった件
まずは Vicious - awesome のとおりに
% mkdir -p ~/.config/awesome/ % git clone http://git.sysphere.org/vicious % mv vicious ~/.config/awesome/
~/.config/awesome/rc.lua を書いてみる。
require("vicious") -- Initialize widget datewidget = widget({ type = "textbox" }) -- Register widget vicious.register(datewidget, vicious.widgets.date, "%b %d, %R", 60)
おもむろに startx したもののこれまでとまったく変わらない。はて
構文チェックしてみる。
% awesome -k -c rc.lua rc.lua:1: no such option 'require' rc.lua:1: awesome: parsing configuration file rc.lua failed.
? ('A`)
man awesomerc してみると どうも設定ファイルが ~/.awesomerc に書くことになっているし rc.lua なんて一言も出てこないんですけど。
はて
% awesome -v awesome (awesome) 2.3.6 (Tomorrow Morning) compiled at Apr 20 2012 20:10:53 for i386--netbsdelf by gcc version 4.1.3 (root@mogu.area51.gr.jp)
使えなかった ('A`)
( 設定ファイルが lua になったのは v3 から )
2012-04-25 :-(
2012-04-27 :-(
_ awesome
http://awesome.naquadah.org/changelogs/v3.4.10
( via obache )
commit 0116d739b5f5b7f4cb1625cd57e7723b2c05ea9c Author: Uli Schlachter <psychon@znc.in> Date: Thu Aug 12 20:14:56 2010 +0200 Don't fail if execinfo is not available Previously, cmake aborted when execinfo was not found. With this commit the backtrace code is just disabled when execinfo is not available. Signed-off-by: Uli Schlachter <psychon@znc.in>
ほむほむ
2012-04-29 :-)
_ 午後
1300 kozosもくもく
_ 夜
1800 懇親会
_ [kozos]第6回 12ステップ組込みOS自作本もくもく会 : ATND
行ってきた。
もくもく系は初めて参加するというか今まではノートPCが無かったのでもくもく系に参加しなかっただけなんだからね。Dell Inspiron Mini 10v に NetBSD をインストールしたので[ 20120403#p05 ] もくもくしまくります。
会場には「C が嫌いだから C++ で kozos を書きなおすわ」と言うひとが居たり「NetBSD のパフォーマンス出ないわーで出ないわー」という人が居たり「kozos を ARM に移植するわ」というご老体が居たり( なんと 老人Z は現実のことだったのだ )するなどして私のようなペーペーはひたすらビクビクしながら作業をした。などという私は kozos 本を読み進めながら関数コールツリーを追ってみたり gcc 4.7.0 を make fail したりするだけだった。13:00 から会場入りして 17:00 まで作業したんだけど、タスクを 2 つくらい処理するとなるとやはり午前中から行かないと時間が足りないかなあ。
懇親会
- kozos本の魚はニジマスである
- 12ステップで作る自作CPU入門
- オレオレCPUを作ってオレオレ命令セットを作ってオレオレOSを作るのは、プログラマならば誰しも見る夢である
- 温泉で合宿
坂井さんからサインを貰った。コード書けよハゲということで( 松野徳大――「だまってコードを書けよ」 - @IT自分戦略研究所 gdgd言ってないでコード書けよハゲ - Hyper Great Creator やすを ) Hyper Great Creator www
4877832394
_ [フォト][ricty]Windows にプログラミング用フォント ricty を入れてみた
Ricty の話題は見かけてたんだけど Windows での生成手順が面倒くさいので敬遠してたんだが、けなくさんからツッコミを頂いたので[ 20120427#c01 ] Windows で作業しないで ubuntu とかで作業すればいいんじゃないのということで重い腰を上げてみた。
環境
- Microsoft Windows 7 64bit
- ubuntu 11.10
手順
Windows で ricty フォントを作成するのは面倒くさそうなので、ubuntu で ricty フォントを作成してフォントを Windows へコピーしてインストールしてみた。
ubuntu での作業
Ricty の README に書いてあるとおりに作業。
- Ricty の書庫をダウンロードして展開
- fontforge をインストール sudo aptitude install fontforge
- Inconsolata のサイトから otf をダウンロードして Ricty のディレクトリへ移動
- Migu 1M のサイトから書庫をダウンロードして展開して ttf を Ricty のディレクトリへ移動
生成
% sh ricty_generator.sh Inconsolata.otf migu-1m-regular.ttf migu-1m-bold.ttf
.fonts へコピーしておく。使うかどうかは別として
% mkdir ~/.fonts % cp Ricty*.ttf ~/.fonts
Windows での作業
テキトーな手段で Windows へコピーする。
たとえば Windows から ssh と tar でコピー。
% ssh ubuntu 'cd .fonts && tar cf - . ' | tar xf -
ttf を Windows の「フォント」へインストールすればおk
しかし日本語が欠ける( Rictyフォント + gdipp - 旧ホットケーキ屋 )ので、gdipp じゃなくてあえて MacType を使ってみる( 窓の杜 - 【REVIEW】Windows上のあらゆるフォント表示を劇的に美しくする「MacType」 )。
秀丸のフォントで Ricty を設定してみたらこんな感じになった (>'A`)>
MS ゴシックだとこうなる。ぐぬぬ
2012-04-30 :-)
_ [ricty][フォント]わあい Windows で Ricty 使えるようになったよー
既知の問題
一部の環境において、生成されたフォントの全角文字の文字間隔が不自然に大きくなることがあります。
生成されたフォントを os2version_reviser.sh に食べさせることで修正できます。
ttf はすでに生成してあるので[ 20120429#p05 ] 続きから作業。
スクリプト取得。
% wget https://raw.github.com/yascentur/Ricty/master/misc/os2version_reviser.sh
変換。
% sh os2version_reviser.sh Ricty*.ttf
テキトーに Windows へ持ってきてフォントを上書きインストール。
さらに MacType でテキトーに設定した( Win7 OPT が割りと文字が薄い(?) ので CRT の設定にした。使ってるの LCD だけど )。
あでも変換前の文字がヤバいんだが Ricty Discard にしたら変換前文字もほどほどになった。
_ [pkgsrc][ricty][フォント]pkgsrc/fonts/ricty-ttf make fail
けなくさんからツッコミを頂いたので[ 20120427#c05 ] pkgsrc/fonts/ricty-ttf をビルドしてみる。
% cd /usr/pkgsrc/fonts/ricty-ttf % sudo make install clean clean-depends : ===> Installing dependencies for ricty-ttf-3.1.3 => Build dependency fontforge-[0-9]*: found fontforge-20110222nb3 => Build dependency migu-ttf-20111002: found migu-ttf-20111002 => Build dependency inconsolata-ttf-[0-9]*: found inconsolata-ttf-20090207 => Build dependency checkperms>=1.1: found checkperms-1.11 => Full dependency encodings-[0-9]*: found encodings-1.0.3 => Full dependency mkfontdir-[0-9]*: found mkfontdir-1.0.6 => Full dependency mkfontscale-[0-9]*: found mkfontscale-1.0.9nb1 ===> Overriding tools for ricty-ttf-3.1.3 ===> Extracting for ricty-ttf-3.1.3 ===> Patching for ricty-ttf-3.1.3 ===> Creating toolchain wrappers for ricty-ttf-3.1.3 ===> Building for ricty-ttf-3.1.3 set -e; cd /usr/pkgsrc/fonts/ricty-ttf/work/yascentur-Ricty-fe68161; ./ricty_generator.sh /usr/pkg/lib/X11/fonts/TTF/Inconsolata.otf /usr/pkg/lib/X11/fonts/TTF/migu-1m-regular.ttf /usr/pkg/lib/X11/fonts/TTF/migu-1m-bold.ttf Ricty Generator 3.1.3 Author: Yasunori Yusa <lastname at save dot sys.t.u-tokyo.ac.jp> This script is for generating ``Ricty'' font from Inconsolata and Migu 1M. It requires 2-5 minutes to generate Ricty. Owing to SIL Open Font License Version 1.1 section 5, it is PROHIBITED to distribute the generated font. Generate modified Inconsolata. Find /usr/pkg/lib/X11/fonts/TTF/Inconsolata.otf. Save Modified-Inconsolata-Regular.sfd. While making Inconsolata bold, wait a moment... Save Modified-Inconsolata-Bold.sfd. Generate modified Migu 1M. Find /usr/pkg/lib/X11/fonts/TTF/migu-1m-regular.ttf. While scaling migu-1m-regular.ttf, wait a little... Save Modified-migu-1m-regular.sfd. Find /usr/pkg/lib/X11/fonts/TTF/migu-1m-bold.ttf. [1] Killed ${fontforge_cmd}... Remove temporary files Abnormal terminated *** Error code 4 Stop. make: stopped in /usr/pkgsrc/fonts/ricty-ttf *** Error code 1 Stop. make: stopped in /usr/pkgsrc/fonts/ricty-ttf
失敗した。
/var/log/message を見る。
Apr 30 19:46:20 mogu /netbsd: UVM: pid 23404 (fontforge), uid 0 killed: out of swap
swap が足りないと言っている。増やしまSHOW
swap を増やす
NetBSD Documentation: Other FAQs and HOWTOs - Memory/Swap Configuration
% sysctl -w vm.anonmax=100
などとしてみたけど変わらず同じ現象になる。
正攻法として swap を追加してみる。
現在 128 MB ある。けっこう少ない
% swapctl -lh Device Size Used Avail Capacity Priority /dev/wd0b 128M 87M 42M 68% 0
参考として ricty の生成が成功した ubuntu の swap はどうなっているか。894 MB ある。
% free -m total used free shared buffers cached Mem: 496 352 143 0 5 188 -/+ buffers/cache: 158 338 Swap: 894 188 705
ざっくりと 1 GB くらい作ってみる。
% dd if=/dev/zero bs=1m count=1024 of=/home/swap % chmod 600 /home/swap % swapctl -a -p 1 /home/swap
確認
% swapctl -lh Device Size Used Avail Capacity Priority /dev/wd0b 128M 87M 42M 68% 0 /home/swap 1.0G 0B 1.0G 0% 1 Total 1.1G 87M 1.0G 8%
これでイケるだろ。
再度 make したらさらに怒られた。
Apr 30 20:48:29 mogu /netbsd: uid 0, pid 23140, command fontforge, on /: file system full
( ̄ω ̄;)
% df -h Filesystem Size Used Avail %Cap Mounted on /dev/wd0a 528M 527M -26M 105% / /dev/wd0f 9.8G 87M 9.3G 0% /var /dev/wd0e 20G 6.0G 13G 31% /usr /dev/wd0g 19G 9.0G 9.0G 50% /home kernfs 1.0K 1.0K 0B 100% /kern ptyfs 1.0K 1.0K 0B 100% /dev/pts procfs 4.0K 4.0K 0B 100% /proc
なにがあるんだ
% cd / % ll total 511696 drwxr-xr-x 2 root wheel 512 Nov 7 2010 altroot/ drwxr-xr-x 2 root wheel 1024 Nov 7 2010 bin/ -r--r--r-- 1 root wheel 60012 Jul 24 2011 boot -rw-r--r-- 1 root wheel 195 Nov 7 2010 boot.cfg drwxr-xr-x 2 root wheel 512 Jul 24 2011 cdrom/ drwxr-xr-x 5 root wheel 34816 Jul 24 2011 dev/ drwxr-xr-x 24 root wheel 2048 Apr 30 13:12 etc/ drwxr-xr-x 3 root wheel 512 Apr 30 20:47 home/ dr-xr-xr-x 2 root wheel 512 Apr 30 21:06 kern/ drwxr-xr-x 2 root wheel 1536 Nov 7 2010 lib/ drwxr-xr-x 3 root wheel 512 Nov 7 2010 libdata/ drwxr-xr-x 3 root wheel 512 Nov 7 2010 libexec/ drwxr-xr-x 2 root wheel 512 Nov 7 2010 mnt/ -rwxr-xr-x 1 root wheel 13650931 Dec 26 21:17 netbsd* -rwxr-xr-x 1 root wheel 11895472 Nov 7 2010 netbsd.old* dr-xr-xr-x 1 root wheel 512 Apr 30 21:06 proc/ drwxr-xr-x 2 root wheel 3072 Nov 7 2010 rescue/ drwxr-xr-x 7 root wheel 512 Apr 30 14:27 root/ drwxr-xr-x 2 root wheel 2560 Nov 7 2010 sbin/ drwxr-xr-x 3 root wheel 512 Nov 7 2010 stand/ -rw------- 1 root wheel 498073600 Apr 30 20:45 swap <==== drwxrwxrwt 4 root wheel 512 Apr 30 21:04 tmp/ drwxr-xr-x 22 root wheel 512 Apr 21 20:11 usr/ drwxr-xr-x 25 root wheel 512 Mar 16 20:51 var/
oh!
さっき試しに作った /swap だった。削除する。
% sudo rm -f swap
再度make
% make install
ok
_ けなく [gmailにwindowsで生成したricty投げました]
Before...
_ 迅帝 [やっぱ、今日はエイプリルフールですか・・・orz 兄貴を脅したいよぉ]
_ みわ [もっとテクニカルなネタを炸裂できるようにせんと ('A`)]
_ エモエモ [実は・・・先日彼女ができまうわなにするやめ(ry 嘘だから殴らないで(つд⊂)エーン]
_ みわ [無茶しやがって (´・ω・`)]
_ 迅帝 [ふにゃー俺神になってみわさんを倒したいっす]