Debian 8 jessie + xfce 4 で xscreensaver から light-locker に移行する方法

 前置きを書いてたら長くなったので本題から先に。

 light-locker は lightdm に依存する画面ロックツールで,xscreensaver や gnome-screensaver の代替として利用可能。ただしスクリーンセーバ機能や独自のロック画面は提供せず,ロック画面として lightdm のログイン画面を利用する。Debian の xfce および LXDE の標準のセットアップではディスプレイマネージャとして lightdm を使用しているので,そのまま利用できる。

 レポジトリにあるので,apt でインストールできる。

# aptitude update
# aptitude install light-locker
# aptitude purge xscreensaver xscreensaver-data

 xflock4 は xfce のスクリーンロックを管理するプログラムで,実体は簡単なシェルスクリプト。xscreensaver, light-locker, gnome-screensaver という優先度でデーモンにコマンドを与え,そのうち存在するものが画面をロックするという仕組み。標準で light-locker にも対応した設定になっているので,特に何かする必要はなし。

$ cat /usr/bin/xflock4
...
for lock_cmd in \
    "xscreensaver-command --lock" \
    "light-locker-command --lock" \
    "gnome-screensaver-command --lock"
do
    $lock_cmd >/dev/null 2>&1 && exit
done
...

 xflock4 がそのまま使えるので,画面ロックまでの時間の設定は xfce 電源管理 (xfce4-power-manager) から可能。
 いじょ。

追記:
 Debian 8 における lightdm の初期設定では,ログイン画面にユーザリストが表示されないため,画面ロックを解除するたびにユーザ名も入力せねばならずやや煩雑。ユーザが自分のみであれば,ユーザ名のリストを表示する設定にすることで xscreensaver や gnome-screensaver の画面ロックと同じ手軽さになる。

設定ファイルにある「greeter-hide-users=false」のコメントアウトを外してサービスを再起動する。

# vi /etc/lightdm/lightdm.conf
...
greeter-hide-users=false
...
# service lightdm restart

追記その2:
 lightdm のログイン画面に戻るためか,画面のロック後に時間経過で自動的にサスペンドやシャットダウンをさせる設定(たとえば,20分間無操作で画面ロック,1時間無操作でサスペンドという設定)が,ユーザ権限では機能しない。複数人が同時にログインするマシンでない場合,以下の設定で解決する。

# vi /usr/share/polkit-1/actions/org.freedesktop.login1.policy
        ......
        <action id="org.freedesktop.login1.suspend">
                ......
                <defaults>
                        <allow_any>auth_admin_keep</allow_any>
                        <allow_inactive>auth_admin_keep</allow_inactive>
                        <allow_active>yes</allow_active>
                </defaults>
        </action>
        ......

これを

        ......
        <action id="org.freedesktop.login1.suspend">
                ......
                <defaults>
                        <allow_any>yes</allow_any>
                        <allow_inactive>yes</allow_inactive>
                        <allow_active>yes</allow_active>
                </defaults>
        </action>
        ......

こうする(allow_any と allow_inactive を auth_admin_keep から yes に変更)。

追記その3(17/03/20):
 どうしたわけかいつの間にか(おそらく前回 dist-upgrade してから)また画面ロック後のサスペンドが効かなくなってしまっていました。設定ファイルを見るとデフォルトの状態に上書きされてしまっているようです。普通はこういうことはありませんので,何らかの手違いでしょうか。たしかにまあ,本来は考慮されていない使い方なわけで,セキュリティに深く関わる機能であることを鑑み,念のため Light-locker を使う時は画面ロック時=サスペンド時としたほうがいいのかもしれません。(しかしデスクトップ環境の電源管理ユーティリティとの統合を考えるとこの仕様?は問題があると思います)
 ところで xscreensaver の一件は Debian では xscreensaver から単に警告表示部分を取り除くことで対応する方向性のようですが,個人的には,他の部分――名称と見た目も変更しておいてくれないものかと思います。仮想パッケージとして “xscreensaver” からのエイリアスを残しておけばあえて xscreensaver としての登録にこだわる必要はないと思いますし,なによりあのロゴを見てウイルスかと勘違いされたことがありますので……(笑)

 以下前置きです。

 4月1日から,xscreensaver を使用している Debian jessie システムで,ログイン時に「This version of XScreenSaver is very old! Please upgrade!」(このバージョンの XScreenSaver は非常に古いです! アップデートしてください!)と書かれた仰々しく目立つポップアップウィンドウが出るようになり,物議を醸しています。同じ文面は xscreensaver のロック画面にも現れ,xscreensaver の設定画面には以下のような強い表現さえ使われています。「This version of xscreensaver is VERY OLD! Please upgrade! http://www.jwz.org/xscreensaver/ (If this is the latest version that your distro ships, then your distro is doing you a disservice. Build from source.)」(このバージョンの xscreensaver は非常に古いです! アップデートしてください! http://www.jwz.org/xscreensaver/ (もしこれがお使いのディストロが提供する最新のバージョンである場合,そのディストロはあなたに害を与えています。ソースからビルドしてください。))このメッセージは,作者である Zawinski 氏が書いたもので,そのバージョンのリリースからどれくらい時間が経過したかを見て,単純に12ヶ月を超えると表示される仕組みになっているようです。
 この問題について Debian のバグレポートメーリングリストに投稿した方が現れたのですが,そこへ作者でありこのメッセージを書いた本人である Zawinski 氏が登場して反論し,かなりの荒れ模様となっています。

#819703 – xscreensaver: please disable “This version of XScreenSaver is very old! Please upgrade!” message – Debian Bug report logs

両者の主張の要点は以下の通り。
Zawinski 氏:

  • 古いバージョンの xscreensaver をいつまでも提供し続けるディストロのせいで,既に修正したバグについての修正依頼が何度も舞い込み,大変迷惑している。
  • 私は言う,「あんたの使っているディストロはクソだ」。だけど彼らはいつもこうだ。「でもソースからコンパイルするなんてどうすればいいのかわからないんだけど 1
  • 古いバージョンのソフトウェアを何年も使い続けるなんてどうかしている。最新のバージョンを使うようにすべきである。仮にそれができないなら,私のソフトウェアを Debian から取り除いてくれ。
  • ライセンス上はこの要求を無視する権利もあるが,合法的なことと正しいことは違う。

反対意見:

  • まず,表示される警告メッセージがあまりに無礼かつ攻撃的である。ユーザにとって迷惑であり,社会通念上問題がある。
  • Debian の stable(安定版)リリースでは,バージョンは2年ごとのリリース時点で凍結し,セキュリティホールや重大なバグのみについて最低限の修正を加える仕組みになっている。これによって,修正に伴う新たな問題の発生を極力抑え,システムの安定性を長期的に最大限高く保つことができるようになっている。この仕組みを理解できていないのではないか。
  • 標準的な Debian システムに含まれる千数百のパッケージそれぞれがこのようなことをすれば,システムは不安定になり,ひどいことになる。
  • Debian における xscreensaver のバグは Debian のバグトラッキングシステムで管理されており,理論的には,直接メールなどで Zawinski 氏に報告が行くことはないはずである。仮に来ても,単に無視すれば手間ではないはずだ。
  • バージョンが古いことそれ自体はバグではない。
  • そもそも xscreensaver は自由ソフトウェアライセンスで提供されており,作者がその使われ方についてどうこう言うことはできない。ライセンスに規定されている以上の要求はソフトウェアの自由と相反するものである。

 そんなわけで,現在「レポジトリから xscreensaver を取り除け」(Zawinski 氏)という主張と「アホ言うな」という反応の間で侃々諤々の,というか感情的すぎるきらいのある議論が行われています。
 個人的には,ハードウェアに効果的な省電力機能が搭載され S3 スリープも普及しきった今ではスクリーンセーバの存在意義はかなり限定的であるように思いますし,xscreensaver のルックスはいかにも昔風で今時のデスクトップに合わないと思いますので,これを機にスッパリ xscreensaver を離れてもいいんじゃないかと思いますがね。
 Zawinski 氏が優れたハッカーであり,これまでコミュニティに多大な貢献をなしてきたことは疑う余地がありませんが,氏の理想は古き良き時代のハッカー文化にあり,それは今の世の中と少し乖離しているようです。昔は技術力こそが力であり,コードの書けない,ましてやコンパイルさえできないユーザは,”luser”(user + loser)として蔑まれました。しかし時代は変わりました。今や Linux ディストリビューションはハッカーのみならずコンピュータ科学以外の分野の研究者,医療従事者,ごく普通の事務職員までが日常的に使用するものとなりました。多くのニーズに応えるためにシステムがより大きく複雑になる一方,コミュニティへの貢献の道はあらゆる人へと開かれ,コーディングに限らず,各人のできることでのコミュニティへの貢献が尊重され,かつ必要とされるようになりました。ハッカーならぬ私はこの新しい時代はとても素晴らしいものだと思っていますが,古くからのハッカーにとっては必ずしもそうでもないのかもしれません。
 ともあれ,早期の円満な解決を祈っています。

参照:
#819703 – xscreensaver: please disable “This version of XScreenSaver is very old! Please upgrade!” message – Debian Bug report logs
Bug #1406825 “xscreensaver complains “This version of xscreensav…” : Bugs : xscreensaver package : Ubuntu
light-locker/README at master · the-cavalry/light-locker · GitHub
Set up light-locker with XFCE action buttons. / Newbie Corner / Arch Linux Forums
14.04 – Authentication required before suspend – Ask Ubuntu

Notes:

  1. ソースのコメントでは “herp derp I eat paste” と続く。要するに知識も調べる気もないユーザを揶揄しての囃し文句。

Raspberry Pi 3 model B の国内販売が開始

「Raspberry Pi 3 Model B」発表のお知らせ – Raspberry Pi Shop by KSY
Raspberry Pi 3 Model B – Raspberry Pi

 先月末に発表・発売された Raspberry Pi 3 model B の国内販売が始まったようです。3 B は無線 LAN と Bluetooth の内蔵が大きな特徴ですが,「技術基準適合証明等 1」を取得したうえでの発売であるため,日本国内において合法的に使用することができます

 Raspberry Pi Foundation 公式サイトで 2 と比較しての特長として挙げられているのは以下。

  • A 1.2GHz 64-bit quad-core ARMv8 CPU
  • 802.11n Wireless LAN
  • Bluetooth 4.1
  • Bluetooth Low Energy (BLE)


そのほかにも細かな改良や仕様変更があります。詳細は冒頭にリンクを貼った KSY のプレスリリースを参照のこと。注意すべき点として,推奨される電源電流が 2.5A に引き上げられています。もっとも,2 でも無線ドングル込みで安定動作させるにはそれくらい用意するのが普通でしたので,そういう意味ではこれまで通りと言えましょう。

 気になる点として,価格が税抜5250円(税込5670円)と,米国の35ドル 2 や英国の25ポンド 3を考えると,かなり割高な印象を受けます。よく不満の声を聞く EU でも 35,65 ユーロ 4となっています(以上全て税抜価格)。実に1ドル150円・1ポンド210円・1ユーロ147円という世界です。為替が不安定とはいえ,ここ30年くらいを振り返ってみても,そこまで行くことはなかったはずです。
 もちろん技適証明にもけっこうなコストがかかりますし,そもそも原価ギリギリと思われるので,輸送や在庫のコストも直接反映されてしまうのでしょう。しかし,いくらなんでも高すぎるような気がしないでもありません。国内で販売してくれるというだけでもありがたいところではありますが,多くの人の善意のうえに成り立っている競争のないジャンル・製品ですので,一応言及させていただきました。

 そんなわけで,ますますパワフルかつ便利になった Raspberry Pi,手に入れたら何に使いましょうか?

Notes:

  1. として言及されているが,たぶん工事設計認証
  2. 16年3月26日現在1ドル=約113円なので約3957円
  3. 同上約159.8円,約3995円
  4. 同上約126.2円,約4500円

ドメインとサーバの移転

 ドメインとサーバを移転しました。MiniBird の一番下のプラン(月250円)ではあるものの,元々が StarDomain の無料オマケサーバだったので大きなグレードアップです。とはいってもアクセス数増加への対応だとか応答速度向上だとかそういうのではなく,「今までのドメイン名を別の用途に使いたい」というきわめて消極的な理由からの移転で,サーバを変更したのはオマケサーバの SQL データベース付きプランの新規割振が終了しているというだけの理由からだったりします。無料で MySQL 付きのサーバもいろいろあるんですが,どれも広告が出るんですよねえ。僕はあまり広告が好きじゃないんです。それから,古すぎるなどの理由で役に立たない記事は今回ついでに公開を終了しました。
 そのうちまた移転しないとも限らないので,今回したことのメモを残しておきます。
 なお,はじめに断っておきますが,今回私が試した「WordPress 標準のエクスポート機能」はあまり賢明な選択肢とは言えません。よほどの PC アレルギーでもない限り,FTP クライアントでファイルをコピーして phpMyAdmin でデータベースをインポートするやり方のほうがよほど早く終わるでしょうし,サイトの規模が大きくなったり数が多くなったりしても使えるテクニックです。現状,WordPress 標準のエクスポート機能は,扱えるものが少なすぎてサーバ移転の手段としてはあまり実用的ではないと思います。というか,そもそもそういう使い方は主だった使い方としては想定されていないのかもしれません。

1, 古いサーバの WordPress にログインし,サイドバーの「ツール>エクスポート」を開き,全てのデータをエクスポート・ダウンロード。
2, 新しいサーバに WordPress を導入し,「ツール>インポート」を開き,「WordPress」を選択。初回は「WordPress インポートツール」の導入を求められるのでこれを導入し,再度同じ操作をする。先ほどダウンロードした xml ファイルをアップロードする。「添付ファイルをダウンロードしてインポートする」にチェックを入れると,画像などを古いサーバから自動でダウンロードして展開してくれる。記事中のリンクも自動で書き換えてくれるのでリンクが切れない。ただし,画像をページに貼り付けていたはずが単なるリンクになっているなどの問題も一部あった。そのほか,アカウントの統合・移行 1も一括してできる。
3, 新しいサーバにプラグイン類を導入して設定をする。基本的に全手動なので面倒。今回は数が少ないので手でできたけれど,規模が大きくなると厳しそう。
4, 新しいサーバの設定変更やテーマの選択・カスタマイズを行う。これも全手動。
5, 検索エンジンやはてなブックマーク等からのリンクが切れないように,古いサーバから新しいサーバへのリダイレクトを設定する。WordPress のプラグインでもリダイレクトを行うものがあるが,サッパリ消してしまいたいので .htaccess でやる。
中身は以下(他の項目より上に追加)。

RewriteEngine On
# 書き換えを有効化
RewriteBase /
# 設定対象のルートの設定,普通は標準で / なので省略可
RewriteCond %{REQUEST_URI} [0-9]{1,6}
# / 以降が数字1~6桁で構成される URI へのアクセスのみを対象にするということ。
# それぞれの環境のパーマリンクの構成に合わせて正規表現で記述。
RewriteRule ^(.*)$ http://oppekepe.org/$1 [R=301,L]
# 今回はパーマリンクがドメイン名以外そのままなので,RewriteCond の条件に当てはまるもの全て ^(.*) を
# 変数に入れ,新しいドメイン名の後ろに付加して,そこへ転送するようにする。
# R=301 はステータスコードを 301 (Moved Permanently)にするということ,L はループ防止のおまじない。

以上で完了です。
しかし,StarDomain オマケサーバが多機能すぎたせいもあってか,有料プランにはしたもののあまり感動がありません。うーむ,年0円 vs. 年2430円(ポイント最大適用)か……

Notes:

  1. たとえば A ,B というユーザがそれぞれ作成した記事について,C というユーザが作成・保有したことに変更するなど

キングジム,折りたたみキーボードのモバイル PC「PORTABOOK XMC10」発表

フルサイズをコンパクトに、たためるパソコン「ポータブック」 | キングジム
【Hothotレビュー】キングジム 「ポータブック XMC10」 ~開閉型キーボード搭載のコンパクトWindows 10ノート – PC Watch
動画:キーボード変形Win10 PC『ポータブック XMC10』開発者ロングインタビュー – Engadget Japanese

 どこもかしこも判で押したような退屈でくだらないモバイル機器ばかりを出しているモバイル不毛の時代ではありますが,まだこの世の中も捨てたものではありませんね。なにしろこの「XMC10」が世に出ることができたのだから。
 XMC10 はスペックこそ近頃はやりの「PC の形をしたタブレット」ですが,そんじょそこらのガラクタとは一線を画しています。見てください,このキーボードを。名機 Thinkpad 701 を彷彿とさせる,ユニークな変形キーボードを搭載しているのです! 個人的にはこの手のギミックの有用性については懐疑的だったりするのですが,ともかくこれを実現させて世に送り出した心意気は素晴らしい。ポインティングデバイスもタッチパッドなんておもちゃじゃありません。Thinkpad Tablet で採用例のある人差し指で操作するタイプの光学式ポインティングデバイスです。でも,せっかくなら Thinkpad のような物理的なトラックポイントにして欲しかったですね。コストや厚さの兼ね合いから妥協もやむを得なかったのでしょうけども。閑話休題,液晶もあの忌々しいグレア液晶ではなく,屋外や日光の差し込む環境でも快適に使える安心のアンチグレア液晶です。このマシンはモバイルマシンであることに加えディスプレイが8インチとかなり小さめですので,ディスプレイが見やすいアンチグレアであることは重要なポイントです。プロジェクタの接続を念頭に置いてでしょう,変換コネクタ不要の VGA 端子も搭載しています。 
 一方で難点や荒削りな部分も目立ちます。まずは何より価格でしょう。Atom,RAM 2GB,eMMC 32GB というスペックで予価「9万円前後」というのは相当厳しいと言わざるを得ないでしょう。もっとも,独特で手の込んだ造り,ニッチ製品で数が出ることは期待できないことを考えると,仕方のないことだとは思います。バッテリ駆動時間が公称5時間というの厳しいです。バッテリ駆動時間は徐々に縮んでいくものであることを考えると,せめて8時間は超えて欲しいところです。また,バッテリが取り外せないのもマイナスです。そして,これはかなりクリティカルな問題ですが,重量が公称で820gと実はあんまり軽くありません。10.1〜13.3インチの普通のモバイルマシンと同じくらいあります。たとえば,予算をあと3万円ほど足せば,性能が遥かに上でバッテリも倍持って重量が85g軽い Let’snote RZ4 が買えてしまいます……
 とはいえ,これはキングジムの初のモバイル PC です。代を重ねるごとにユーザの声を取り入れて進化していった Pomera のように,これからユーザの声に応えて洗練されてゆくことでしょう。正直なところこの機種はそれほど売れないとは思いますが,それにこりず,第二弾・第三弾とユニークなモバイルマシンを投入していって欲しいものです。これからもキングジムのモバイル PC に注目していきたいと思います。

16/11/25追記:発売から一年近く経ったいま,値段は22000円前後まで落ちているようです。一般的なタブレット構成のラップトップより安いですから,これは間違いなく破格です。尤も特殊な仕様ですから「他のを買うならこれを」という勧め方はできません。ともかく,うっかり買ってしまわないよう気をつけたいと思います(?)

CPU1GHz,RAM512MB で5ドル! Raspberry Pi Zero 登場

本日,Raspberry Pi Zero の即時の頒布開始をお知らせできることをうれしく思います。メイド・イン・ウェールズ,そして価格はちょうど5ドルです。Zero は Raspberry Pi ファミリの一人前の構成員で,以下を搭載しています:

  • Broadcom BCM2835 アプリケーションプロセッサ
    • 1GHz ARM11 core (Raspberry Pi 1 より 40% 高速)
  • 512MB LPDDR2 SDRAM
  • micro-SD カードスロット
  • mini-HDMI ソケット,1080p60 映像出力
  • Micro-USB ソケット,データ入出力および電源用
  • 端子未実装の 40-pin GPIO ヘッダ
    • Model A+/B+/2B と同一のピンアウト
  • 端子未実装のコンポジット出力ヘッダ
  • これまでの Raspberry Pi で最小のフォームファクタ,65mm x 30mm x 5mm
  • Raspberry Pi Zero: the $5 computer – Raspberry Pi

 あの Raspberry Pi に新モデルが登場しました。価格は衝撃の5ドル。しかし価格以上に衝撃なのは,この値段で完成したコンピュータとして機能し,しかも第1世代の Raspberry Pi を超える基本スペックを持っているという点です。
 だって……5ドル。5ドルですよ? Arduino より安いどころか PIC ボードのキットより安いですよ? それどころか私が昨日食べたラーメンより安いんですよ? なのに 1GHz の CPU と 512MB の RAM 載っけてて Debian(Raspbian) が動くって……金銭感覚狂いそうです。
 Raspberry Pi A+ と比較して省かれたものはオーディオ出力 1および DSI ポート 2です。GPIO とコンポジット出力もコストカットのため端子が省かれていますが,配線はちゃんと引いてあります(えらい! 素晴らしい!)。USB ポートも micro になっています。HDMI も mini です。販売価格での差が数百円程度までなら通常サイズの方がよかったですが,それは先進国のホビイストの考えというもので,途上国ではまた違った需要があるのかもしれません。ともかく,電子工作ネタやなんちゃって IoT ネタはこれからは Zero で決まりですね。
 日本での価格は,おそらく800円〜1000円といったところでしょうか? 近ごろ為替相場も落ち着いてきているので600円台で出してくる可能性も無きにしもあらず。いずれにせよ非常に安くなるものと思われます。これまで「自分には使いこなせないだろうし……」と敬遠してきた人も手に取りやすくなって,DIY の裾野が広がるといいですね!

Notes:

  1. コメント欄を見ると HDMI での音声出力には対応しているようです。
  2. カメラとか繋ぐアレ。

Debian 8 で Bluetooth DUN

 Debian 8 Jessie で Bluetooth DUN しようとして……泥沼にハマった。
 Bluez のバージョンが 5 に入り仕様が大きく変わったようで,これまでの定石が通用しません。一応 blueman や gnome-bluetooth なども入れて試してみましたが,やはりうまくいかない。つなぐ先も「BlueDUN」という市販のアプリを入れた Android スマートフォンで,こっちが特殊な仕様である可能性もあります。せめて他にいくつかモデムがあればいいのですが……なんとか調べながら設定してはみるものの,正体不明のエラーとか……検索してみるとバグがうんたらかんたらとか言ってるし……うわこのコマンドも無くなったのか……このエラーは何だ?……しかし眠い……寒い……外明るくなってきた……つらい……などと合計10時間以上を無為に費やし,「これは複雑なバグまたは心霊現象が関与しており自分の手には負えない」という結論に達したところで以下のページを見つけました。

delx » Bluetooth DUN Tethering with Linux and a Nokia Symbian Phone

 2014年? Arch? もしや,これでいける? 藁にもすがる気持ちで試してみると……いやっほううう!!! 繋がった!!! 何度再起動して試してもオーケー。引っ掛かりポイントは Debian では「python-dbus」ではなく「python3-dbus」が必要であるという点と始めに wlan の接続を切ってから試さないとダメという2点くらいで,本当に書いてあるとおりにコピペして書き換えて実行するだけ。恐ろしく簡単。
 スクリプトを眺めてみるとなにやら見たことのないことをしている部分がある。やっぱり仕様変更絡みで別のやり方をする必要があったらしい。この辺はそのうちちゃんと調べないといけませんね。
 いやあ,ありがたやありがたや。

Firefox の UI が極端に大きく(あるいは小さく)なったら

少し前,Debian で Iceweasel をアップデートしたら,設定が勝手に変わったのか解釈の仕様が変わったのかで Firefox の UI(HTML レンダリングだけでなく,ボタン類も)が極端に大きくなってしまった。が,検索したら一瞬で解決したので,忘れないうちにメモ。

My websites and UI have suddenly become huge. How can I get them back to a normal, smaller size? | Firefox Support Forum | Mozilla Support

about:config にアクセスし,layout.css.devPixelsPerPx の値を変更。自分の環境では -1.0 -> 1.0 に変更で完璧。
でも,改めて考えてみると他にも何かありそうだし,一度設定をリセットしたほうがいいかなあ。

よさそうなキーボードのメモ

 現在,安いメンブレンキーボードを使用中。腱鞘炎になりそうになったら高いキーボードを買おうと思いつつも,意外となんともないもので,なんとなく使い続けている状況。晴れて(?)腱鞘炎になりそうになった時のためにメモ。

私の理想のキーボード

  • 腱鞘炎などになりにくく,疲れにくく,さらに作業能率を落とさないもの。
  • キー荷重は軽めがよい。キーストロークは,テンポ良く入力できるものであればどのようなものでも構わない。
  • キートップに位置に合わせた傾斜加工が施してあるもの。
  • コンパクトなもの。テンキーは不要。
  • 可能な限り標準的な配列であるもの(少なくとも,少し慣れればタッチタイプが可能である程度であること)。また,ファンクションキー(F1〜F12)やカーソルキーが独立したキーとして存在するもの。
  • 無線であることが望ましい。その場合,安全な暗号化方式でなければならない。
  • 曲線的なデザインよりは角張ったデザインがよい。
  • タイプ音は静かであることが望ましい。
  • キートップの刻印が消えにくいものが望ましい。あるいは逆に無刻印のものもよい。
  • キーボードを見るたびに Windows のロゴが目に入るのは不愉快だから代わりに Tux キーをつけろ(暴言)

Realforce91UBK(約14,500円)
 最有力候補。東プレが誇る静電容量無接点方式のスイッチで,実用品としてはおそらく最高峰のもの。キータッチは言うに及ばず,耐久性も折り紙つきで,チャタリングの心配もない。テンキーレスモデルでトラックボールまで動かす手の移動が少なくてすむ。無線ではなく有線であるという欠点はあるものの,他は非の打ち所がない。なお,テンキーレスではないが30g荷重モデル(このモデルは45g荷重)もあり,悩むところ。

I-T Touch AS-KB91T(約7,500円)
 テンキーレス,シンプルなデザインと自分の好みにあっている上,Cherry スイッチのメカニカルキーボードとして最安クラスでもある。これも有力候補ながら,下記 Majestouch 2 Tenkeyless との価格差2500円が悩ましい。

Majestouch 2 Tenkeyless FKBN91M/NFB2(約10,000円)
 国内メカニカルで一番人気の Majestouch で,Cherry MX 茶軸,テンキーレスで,刻印がキートップではなく側面になされているモデル。すっきりした印象でかっこいいけど,あと5000円足せば Realforce に手が届くんだよなあ。

EnduraPro(14,380円)
 Model M などが有名な IBM バックスプリング方式キーボードの末裔で,静電容量無接点方式でもメカニカルスイッチ方式でもない独自のスイッチ構造を採用している。キーに仕込まれた大きなバネの反発力でキーを戻すという仕組みで,音もかなり大きいらしい。このモデルは Ultra Classic というモデルの派生で,ユニークなことにトラックポイントが付いている。ニッチさ+機能性を考えれば安い印象だが,実用品として Realforce と比較すると……? ダイアテックが国内正規代理店になっている。Unicomp 直販でも買えるものの,送料が6000円くらいするのでダイアテックで買ったほうが得。余談ながら Unicomp 直販では Linux ユーザのための交換キートップセットなんてのも売っている。

Happy Hacking Keyboard Professional 2(約22,000円)
 ファンクションキー(F1〜F12)がないので,残念ながら日本語の文章を書くのがメインである自分には厳しい。

Kinesis Advantage Qwerty(42,530円)
 いわゆるエルゴノミクスキーボードの代表的なもの。Cherry MX 茶軸。疲れにくさに定評があるが,流石にこの値段では手が出ない。

The Recreated Sinclair ZX Spectrum(77.99GBP+送料約20GBP)
 英国のコンピュータ史に名を刻む名機 ZX Spectrum を忠実に再現した Bluetooth キーボード。忠実に再現しているのでゴム製キートップのチクレットキーボード。実用性とかそういう退屈なことを考えてはいけない。これ自体はそうでもないけど Amazon.co.uk の関連商品にある「Sinclair ZX Spectrum Mug」がむっちゃ欲しい。

Qwerkywriter(329USD+送料50USD)
 タイプライタ風 Bluetooth キーボード。見た感じかなりしっかりした造り。中身はメカニカルキーボードなので,こっちは実用もできそう。ただやっぱり高すぎる。

iBuffalo BSKBC02BKF(約1,300円)
 最低価格帯にもかかわらず手の込んだ作りになっていて,コストパフォーマンスが素晴らしいと人気のキーボード。値上げ騒動があったものの,まだ在庫があるようで今のところ実勢価格は変わらず。まあ上がっても2000円を切るくらいだとは思うけど,欲しい方はお早めに。

SANWA SUPPLY SKB-KG3BK(約1,500円)
 コンパクトな PS/2 キーボードが欲しくて買ったやつ(って最初の趣旨から完全にズレてるな……)。軽いキータッチ,配列やキーピッチへの影響を最低限にしつつのフットプリント圧縮となかなか悪くありません。安物シリーズではこれもおすすめ。

国民に対する国家の暖かな見守りによって平和と安全を実現するための穏健なる提案

著作権侵害サイト遮断 政府が導入検討、海外経由に対応  :日本経済新聞

 まだ確定した話ではありませんが,昨今の政治情勢を見る限り,きっと実現することでしょう。これはまさに私が待ち望んでいたものです。フィルタリング導入という第一歩に加え,同じフレームワークでの用途拡大という第二歩を踏み出すことによって,わが国のあるべき姿の実現への道筋が確固たるものになるのです。実現すれば,改正通信傍受法や特定秘密保護法と並び,わが国を守る強力な武器になることでしょう。
 
 この機会に,私の持つ意見と提案について述べましょう。
 
1. インターネットの監視・フィルタリングを推進せよ
 今やインターネットは人々の生活に欠かせないものとなりました。しかし,今のインターネットは美しい場所とはいえません。それどころか,あらゆる犯罪や悪徳が渦巻く,この世で最も醜悪な場となっています。それもただ醜いだけではありません。凶悪な犯罪者たちが違法な情報を得たり連絡を取り合ったりするのに使う,極めて危険で有害な場でもあるのです。残念ながらわが国では「通信の秘密」なる奇妙な概念が導入され,戦後はこれが金科玉条のように守られてきました。しかしこの概念は何の根拠も持ちません。時計の針を70年ほど戻せば,政府が国民の手紙や電話を監視することは当たり前でした。それによって危険人物をあぶり出し,テロを未然に防ぐことができ,社会の秩序安寧が保たれていたのです。また海外に目を向ければ,政府がすべての通信を監視することが合法である国は多く存在します。テクノロジーの進歩はあらゆる通信を自動で監視することを可能にし,手紙や電話を人の手で監視していた時代とは比べ物にならないほど有効な監視ができるようになっているのです。にもかかわらずわが国では,「通信の秘密」なる破綻した概念によって,今も恐ろしい犯罪者が野放しになっています。野放しになっている犯罪者が,明日にでも,他でもないあなたやあなたの大切な人を殺すかもしれないのです!
 期待できる動きもあります。その最たる例が冒頭で述べたフィルタリングです。これは本来憲法における「通信の秘密」に抵触しうる内容なのですが,リストの作成を民間組織に行わせる一方,その組織と政府との間で密接な関係を保ち,また他の選択肢を事実上取れなくすることによって,政府が直接監視するのと同様の効果を保ちつつ,電気通信事業者法の枠内の問題とすることができます。もともと児童ポルノ規制のために考案されたフレームワークですが,今の政治情勢であれば,著作権侵害の抑止も違法性阻却事由であると裁判所に認めさせることも,簡単ではないにしても必ず可能でしょう。その調子で次々対象を拡大していけばよいのです。しかも,これは極めて重要ですが,憲法であっても,規定のあまりに困難で不便な改正手続きを踏まずに事実上改正することはわけない,憲法など無視したとて大半の人はほとんど関心を寄せないということが明らかになっています。可能性はまさに無限大です。来たるべき新しい国の実現を前に,私は興奮を抑えられません。

2. 暗号化を禁止せよ
 暗号化! なんと恐ろしい響きでしょう。データを隠して一体どうしようというのでしょうか。Tor のように通信経路を秘匿化するものもありますが,これも同様に禁止すべきものです。誰もが知っているとおり,善良な人物は隠し事など持ちません。隠し事をする必要があるのは,詐欺師や殺人犯,危険思想の持ち主,生来の異常者のような反社会的な悪人だけです。データの暗号化などを試みる者は,外国のスパイやテロリスト,小児性愛者のような異常で社会と相容れない凶悪犯であることは論を俟ちません。むろん,業務上の要請など個人的ではない理由から,不本意ながらデータを隠さないといけない場合もあるでしょう。しかしその場合においても,政府に対しては当然全てを見せることができるはずです。もし万が一開示を拒むようなことがあれば,その組織は政府に対して隠し事をしなければならないということであり,実際には反社会勢力による偽装組織であると証明されます。
 政府によるバックドアのない暗号化技術を利用する者は凶悪な犯罪者だけであり,完全な秘密を持つことが許されるのは,国民の命を守る存在である政府だけです。一刻も早く暗号化を禁止し,違反者に重い刑罰を課すとともに容易に余罪を追求できるようにすることが必要です。なにも極端な話をしているわけではありません。世界第二位の経済大国も含む,多くの国で既に無許可での暗号化が違法となっています。監視後進国のわが国でそれが急には難しいというのであれば,捜査の対象となった者に対し全てのパスワード等の開示を義務付け,それを拒む場合に刑罰を課すという立法を早急に行うべきです。これは完璧ではないにせよ,国民の安全を守るための重要な一歩になることは間違いありません。

3. 予防的な家宅・身体捜索を実現せよ
 現行の制度では,残念ながら,確固たる証拠がないと有罪と断じることはできないことになっています。幸いわが国では「疑わしきは罰せず」といった頑迷な信条は一般には広まっていませんが,それでも司法の場でははっきりした証拠を示さねばなりません。インターネットに関連する犯罪についても,被疑者(これはもちろん犯人とほぼイコールです)のローカルのデータを調べる必要がある場合がほとんどでしょう。そこで役立つのが,予防的な捜索です。被疑者に感づかれれば,証拠を抹消されるかもしれません。少しでも疑念があれば予防的に捜索をするようにすることによって,犯罪の証拠を確実に発見,あるいは犯罪を未然に抑止できるようになります。たとえ犯罪を裏付ける証拠を得られなくとも,メールやチャットの記録を調べることによって他の潜在的な犯罪者もより容易に洗い出すことができるようになりますので,危険分子摘発の効率は飛躍的に向上します。
 素晴らしいことに,上で述べた内容は既に部分的に実現しています。それがいわゆる「別件逮捕・別件勾留」です。残念ながら一部の無責任なマスコミや国民の反発によって充分な効率は実現できていませんが,わが国の秩序は別件逮捕の存在によって保たれていると言ってよいでしょう。将来的には,警察が捜索を行うに先立って裁判所の令状が必要になるという「令状主義」の非効率性そのものを是正すべきですが,近年のわが国では司法が行政に反抗することはあまりありませんので,近いうちに制度改正なしに実質的な是正が実現することでしょう。
 憲法に違反する,という反論もあるでしょうが,それは誤りです。そもそも先述のように憲法の規定に実質的な意味は何もないということは置いておいても,公共の福祉(これはすなわち,全体の利益の前には個人の利益は無視できるという意味です。憲法学者は異なった見解を述べていますが,そのような現実を踏まえない机上の空論を顧みる必要はありません)によって,完全に合憲であることが明らかです。
 守るべきは犯罪者の権利ではありません。正しく生きる善良な一般人の権利です。

4. 雑多な意見を統制し,政府見解を世論とせよ
 私が常々心を痛めていることに,本来指導者たりえる分でないにもかかわらず,自分自身で考えたり,自分の意見を持ったり,あまつさえそれを発信したりする人々がいることがあります。このような行為は社会を徒に混乱させるだけです。血脈によるのか文化資本によるのかはさておき,人に支配する者と支配される者が存在しているのは,アリストテレスも述べているとおりです。近代以降,人は誰しも平等であるなどという危険思想が世界中に広まっています。わが国もまた例外ではなく,党のある幹部が指摘したように,天賦人権説のような誤った考え方が広く浸透しています。この元凶は教育にあり,わが国で最も権威ある新聞が報じたように,「立憲主義」について「権力を持つ者をしばる」と説明されるなど,極端に偏向した刷り込みが行われているのです。こうした誤った考えは国民の間から永久に消し去らなければなりません。国家的な意思決定に参加することができるのは,高い地位を持つ家庭に生まれたエリートだけです。幸い,党は初・中等教育の改革に成功しつつありますので,いずれ人々は分をわきまえて行動するようになるでしょう。
 
5. 党への国民の絶対の服従を実現せよ
 党は常に完全であり,誤りを犯すことはありません。これは,裏返せば,党に反発する者は常に誤っているということを意味します。それもただ単に誤っているだけではなく,敵国からやってきたスパイや,破壊活動家,思考犯や反逆者であることが殆どです。わが国の存立を全うし、国民を守るための切れ目のない安全保障を実現するためには,これらの危険分子を一掃し,また反逆の恐れがないほどに人々の党に対する忠誠を確固たるものにする必要があります。そのためにも,インターネット上の有害情報を遮断し,通信内容について検閲を推進し,インターネットに関連する違法行為の捜査を強化しなければなりません。この意見に反対する者はこの国には一人もいないでしょう。もし存在すれば,それは敵国のスパイかそれに類する善良な国民の敵に他ならず,即座に検挙せねばなりません。もちろん,この文章を読んでいるあなたも私の意見に全面的に同意してくれることでしょう。私は,あなたが党の方針に逆らうような愚を侵さず,善良で模範的な国民として生活することを望んでいます。ビッグ・ブラザーはあなたを見守っています。

Raspberry Pi ホームオートメーション計画(1)

経緯
 任意の複数の時刻に(止める必要のあるアラームでなく)時報してくれる時計って値段が意外とするなー,鳴る音もやかましい電子音で理想とは違うようだし → そういや以前 Raspberry Pi でホームオートメーションもどきしてたな,せっかくだからあれを復活させて音を鳴らすようにしようか

使うもの
・Raspberry Pi model B 35ドル  1
・SD カード(4GB, Class10) 約500円
・スピーカ 約500円
・USB マイク 約500円  2
・USB ハブ 100均
・USB 無線 LAN アダプタ 約1000円
・ビットトレードワン USB赤外線リモコンキット 約2200円
・RaspPi と リモコンモジュールを収めるケース 100均のものを加工
・AC-USB アダプタ 約500円  3
・USB ケーブル 100均
計 約9700円 4

載せたい機能
・時報(小中学校のチャイムみたいなイメージ)
・エアコンのリモコン
・ネットラジオ
・合成音声でしゃべる
・音声認識で操作

手順的な
1. SD カードに OS を書き込んでセットアップ
Raspberry Pi Downloads – Software for the Raspberry Pi
 NOOBS が公式の推奨ですが,Raspbian のディスクイメージを書き込むのも単に dd するだけです。お好きな方で。

2. raspi-config でファイルシステム拡張,ロケール等を日本に,ホスト名変更,sshd 有効化。
 ホスト名は hal にしました。乗組員に反逆したりはしないと願いたい。

3. ユーザ pi を消して自分のユーザを登録,sudo できるように設定。
sudo adduser ユーザ名
sudo gpasswd -a ユーザ名 sudo
新しいユーザでログインした後
sudo userdel -r pi

4. アップデート,ssh などの設定
sudo aptitude update
sudo aptitude upgrade

 外部公開はしないので初期設定でも問題はないと思いますが,設定したところで特にデメリットがあるわけでもないので,
・root ログインの禁止
・IP アドレス制限で LAN 内からしかアクセスできないようにする
・公開鍵認証にしてパスワード認証の禁止
・ログイン試行回数の制限
あたりはやっとくといいような気がします。
SSHのアクセス元IPを制限する – エーエイチレフ linuxサーバー技術情報
sshのrootログインを禁止する

5. 機能を追加していく
時報機能
 mplayer を導入,cron とかでパパっと。
倦怠ブ録: 自宅サーバーにアラーム機能を構築する
cronを使ってLinuxデスクトップを目覚し時計にする – Qiita

リモコン機能
 ビットトレードワン社の「USB赤外線リモコンキット」を使用。本来 Windows 専用ながら,kjmkznr 氏という方が使いやすい Linux 用ツールを公開してくださっているのでありがたやと言いながら導入する。詳細は以下。
kjmkznr/bto_ir_cmd · GitHub
ORBIT SPACE
 コマンドだけで動く。まだ詳しくはチェックしてないけど,問題なさそうな雰囲気。

ネットラジオ
 mplayer にプレイリストの URL を与えるだけで再生できる。便利な時代だなあ。
コマンドラインでshoutcastを聞く(mplayer編) – ひゃまだのブログ
raspberry piを簡易インターネットラジオにしてみた ( UNIX ) – ロードバイクときどきiPad/Airなblog – Yahoo!ブログ
 ここで問題発生。音声がすぐに途切れてしまう。キャッシュの指定を充分に大きくしても同様。ちょっと検索してみた限りでは mplayer にバグがあるとかではなさそうなので,安物ドングルでの無線接続なのが原因?

合成音声でしゃべらせる
 Open JTalk をレポジトリから導入するだけ。Raspbian Wheezy での導入および再生支援スクリプトについては,以下を参照のこと。
橋本商会 » Raspberry Piに喋らせる
 バージョンによって仕様がそこそこ違うので注意。Wheezy のレポジトリにあるやつはちょい古。使うファイルの形式の関係から,MMD agent のファイルから mei(女性声)を導入する場合,最新の 1.4 ではなく 1.3 のものを使う必要がある。
 ザ・合成音声という感じの声だけど,ともかくパラメータを与えるだけで問題なく動く。素晴らしい。でも個人的にはもっと若い感じの声がいいなあ

 さて,ここまでで出力側があっという間に整いましたが,入力側がまだです。むしろここからが本番,茨の道で,音声認識はどうやってもマトモに使えなかった記憶が。それで「タブレットで良くね?」ということで廃止したのでした。潔く諦めてウェブアプリとかをインタフェースにしたほうがいいでしょうか……ってそれだとそれこそ「タブレットで良くね?」ってなりそうだなあ。
 来週末に続く(のか?)

Notes:

  1. 今から買うなら B+(3510円,USB ポートいっぱいで有線 LAN も ok)か A+(2,835円,メモリが B+ の半分だけど公称消費電力が3分の1)がおすすめ。
  2. が,感度と指向性の高いもっと高い機種を買うのがおすすめ
  3. 常時稼働なのでもう数百円出してパナのを買うのがおすすめ
  4. もっとも3分の2以上は別件での無駄遣いの流用ですが。