ケーブルの抜け防止に良さそうな製品

AVANTEC(アバンテック) | 電源、USB、HDMI等コネクタ、ケーブルの抜け防止製品のご紹介

サーバやスイッチなんかの電源なんかは抜け防止の金具が付いてますが,PCなんかだと付いてません.
電源だとサプライ品で見たことありましたがこちらの製品だとUSBやスマホなんかのmicroUSBなんかも対応するものがあるみたい.場合によっては便利そうです.
オンラインショップはあるようですが,Amazonとかでも売ってると便利そうです.

DuckDuckGo を日本語環境で使う

DuckDuckGo という検索エンジンがあります.検索エンジンといえばGoogle一強という感じですがその分プライバシーがGoogleに筒抜けだったり蓄積されたりするのが嫌かもしれません(その分その人に合う検索結果が帰ってくるはずですが).それに対してDuckDuckGo はユーザプロファイルを作らず誰に対しても同じキーワードから同じ検索結果を返します.
DuckDuckGo使いたいけど日本語の情報が出てこないから使い物にならないって人が居たので日本語の検索結果を表示する設定が知られて無さそうということで最近使っている設定をメモしておきます.

https://duckduckgo.com/?q=keyword&kp=-1&kl=jp-jp&kc=1&kf=-1&kh=1&k1=-1
この例だと以下のように日本語の検索結果を返すようになっています.

q=検索キーワード
kp=-1 セーフサーチ無効
kl=jp-jp 日本向けの検索結果
kc=1 自動先読み有効
kf=-1 サイトアイコン有効
kh=1 https有効
k1=-1 広告無効

ブックマークツールバーなどに以下を登録しておくといい感じです.
https://duckduckgo.com/?q=keyword&kp=-1&kl=jp-jp&kc=1&kf=-1&kh=1&k1=-1

常用するなら以下のように規定の検索エンジンを差し替えてしまうといいでしょう.
Screenshot from 2015-02-06 06:54:45
Screenshot from 2015-02-06 06:55:20
Screenshot from 2015-02-06 06:56:17

JessieでフォントがDejaVuになって困る

ある時からDebianJessieのあちこちのフォントが中華な感じに.

Screenshot from 2014-12-24 14:37:17Screenshot from 2014-12-24 14:36:28

確認すると DejaVu というフォントらしい.

LibO で設定を変えてみても恐らく和文フォントを設定されていないテンプレートを利用した時などに戻ってしまったり.Chromium で設定を変えみても反映されなかったりでした.
Screenshot from 2014-12-24 14:49:03Screenshot from 2014-12-24 15:06:24

とりあえずこのフォントは使わないなってことで消して対処療法….

% sudo apt purge fonts-dejavu fonts-dejavu-core fonts-dejavu-extra ttf-dejavu ttf-dejavu-core ttf-dejavu-extra

RaspberryPi B+ でUSB で1.2A を利用できるようにする(失敗)

“Raspberry Pi Model B+のUSBポートに1.2Aの電力を供給する – あっきぃ日誌” http://akkiesoft.hatenablog.jp/entry/20140727/1406443999

を見て /boot/config.txt 編集しないとB+ でUSB に1.2A の電力を供給できないことを知りました.
で,/boot/config.txt 規定値のまま,safe_mode_gpio=4 登録,max_usb_current=1登録.両方登録のパターンで試したんですがいずれもHDD スピンアップしませんでしたorz

電源はGPIO から河野総統謹製のラズベリーポット(ラズベリーハブの電源部分のみ+αのもの),microUSB からAnker の40W USB 電源の2パターンを試しました.
HDD はSeagate Momentus XT 500GB/4GB SSD付きハイブリッド7200rpm を500円位で秋葉原で売っていた適当なケースに入れたものです.5400rpmとかなら行けるのかなとか?

Y型のUSB cable を使って片方から給電したら動くのでHDD は問題なくRaspberryPi B+ からの電気が足りないせいなはず.ちなみにPC(Lenovo X220)だとUSB x1で動作します.

OS 色々いじってるので一旦初期状態にしてからまた試してみようかと思います.

IMG_20140730_080938

OpenStreetMap を使ったマイマップのような uMap を試してみる

を見てuMap を試してみました.

以下のページにアクセスしてマップを作成とするだけです.

試しに書いてみました.
日本語化もされているし簡単に地図も書けるので人にも勧めやすくていいなと思いました.


フルスクリーン表示

埋め込み時に埋め込みコードをそのまま貼り付けるとイギリスとかの辺りが表示されてしまうのですが,地図編集時のURL http://umap.openstreetmap.fr/ja/map/linux02_11213#17/31.57706/-229.44820 の#以降の #17/31.57706/-229.44820 を埋め込むと任意の座標を表示できました.


周りのデータが少なくて寂しかったのでざっと道路沿いの建物をトレースしてみました.
しかしまだまだ寂しいですね><



gist にコマンドラインから貼り付ける

先日コマンドラインからgist に貼り付けられるんだと驚かれたのでちょっと書いておきます.

その時使ったsctipt はこちら.

Debian jessie 以降,Ubuntu 14.04 以降だとパッケージもあります.このパッケージで導入した場合コマンド名は gist ではなく gist-paste になります.

自分で入れる場合は,gem やHomebrew が使えます.

  • apt $ sudo apt-get install gist
  • gem $ sudo gem install gist
  • Homebrew $ brew install gist

※Homebrew が動く環境を持っていないのでこちらは未検証です.

導入後利用する前に,認証を済ませておきます.2要素認証にも対応しています.

$ gist --login
Obtaining OAuth2 access_token from github.
GitHub username: matoken
GitHub password: 
2-factor auth code: 984736

Success! https://github.com/settings/applications

認証が終わったら試してみます.
一番単純な動かし方は貼り付けたいファイルを指定するだけです.これで公開状態で貼り付けられます.

$ gist lingrbot_web.cgi
https://gist.github.com/ed68bd7182ffddee4801

ファイルタイプを指定する場合は面倒ですがファイル名も指定しないと反映されないようです.

$ gist -f ml2lingr.pl -t perl /tmp/ml2lingr.pl
https://gist.github.com/3021d8d064d8a1d29ba9

標準入力も

$ gist
(type a gist. to cancel, when done)
hoge
fuga
https://gist.github.com/3e993a396a7671403f9e

$ echo “hoge” | sha512sum |gist
https://gist.github.com/970e190f97ae67c8e90d

更新も可能です.

$ gist -u 3021d8d064d8a1d29ba9 -f ml2lingr.pl -t perl /tmp/ml2lingr.pl
https://gist.github.com/3021d8d064d8a1d29ba9

しかし,更新などはURL やID を指定しないといけないのでgitでclone しておいて編集後push したほうがお手軽そうです.

その他のpastbin系サービスを使いたい場合いろんなコマンドがあります.最近は pastebinit を使っています.
このコマンドの対応サービスはこんなかんじです.

$ pastebinit -l
Supported pastebins:
- cxg.de
- fpaste.org
- p.defau.lt
- paste.debian.net
- paste.drizzle.org
- paste.kde.org
- paste.openstack.org
- paste.pocoo.org
- paste.pound-python.org
- paste.ubuntu.com
- paste.ubuntu.org.cn
- paste2.org
- pastebin.com
- pastie.org
- pb.daviey.com
- slexy.org
- sprunge.us
- yourpaste.net

ちなみにこのへんのコマンドを使うまではクリップボード操作アプリを使ってました.
$ cat file | xclip とかするとクリップボードにファイルの内容がコピーされるのでこれをブラウザ上のテキストエリアに貼り付けたりしていました.

nkf でbase64 エンコード,デコードしたら結果が違う?

小さなバイナリを受け渡ししたいけれどファイル共有サービスとか使うのも面倒だしbase64 にしてgist に貼ってしまおうと思ったのですが,nkf コマンドでbase64 にエンコードして,確認のためデコードしてみたら違う結果に.

% cat original | nkf -MB > hoge
% cat hoge | nkf -mB > fuga
% diff original fuga           
バイナリーファイル original とfuga は異なります
% ls -l
-rw-r--r--  1 mk   mk       4080  5月 29 20:38 original
-rw-r--r--  1 mk   mk       5422  5月 29 20:52 hoge
-rw-r--r--  1 mk   mk       3999  5月 29 20:52 fuga

Google+ にこのことを書いたら
https://plus.google.com/u/0/103792214056489833385/posts/bbVzNS7RNTR

Masakazu Takahashiさんにコメントをいただきました.

試したところ、デコードのときに入力文字コードを明示的に指定する必要があるようです。

% nkf -mBW hoge > fuga

そんなこんなで、base64のエンコード/デコードだけなら、base64コマンドのほうが確実かも。

ということで,base64 コマンドならGNU Coreutils に含まれているので大抵の環境で使えるしってことでbase64 コマンドで貼り付けました.

% cat jl-bct.bct | xz | base64 | gist-paste

ついでに復元はこんな感じで

% wget -O – https://gist.github.com/matoken/b2041569865a82895082/raw/53b85e9333e3b837d24714a8e529dde69ec788e9/jl-bct.bct.xz.base64 | base64 -d | xzcat > jl-bct.bct

Lenovo のバッテリー自主回収

2014-03-30 20.45.18

Lenovo のNotePC に使われているバッテリーの一部で問題が起こる可能性があるということで自主回収を行っているようです.
アメリカで2件の発熱事故があったそうです.

対象機種を調べてみると,私の持っているX201s も対象だということで確認してみました.
#現在USBx2が死んでたりマザーボードが死にかけてよく落ちたりするようになっているorz

Windows で動作するチェッカープログラムが提供されていますが,OS はWindows ではないので次のフォームを利用しました.

バッテリー裏のバッテリーコードを入力するのが面倒(22桁!)ですが,バッテリーさえ手元にあればチェックできます. 端末はLinux なのでバッテリのステータスを表示してコピペすればと思ったのですが,型番やシリアルなどは出てきますが,バッテリーコードらしきものは見当たりませんでした.チェックプログラムは提供されているので求め方はあるんでしょうけどね><

手元に2本あるのでバッテリーコード入力すると,買い増しした方のバッテリーが交換対象でした. そのまま住所などを入力するととりあえず手続き完了. ちなみに1本ずつしかチェックできなので,恐らく複数の対象バッテリがある場合は住所等の入力はその都度必要そうです.

しばらく待つと新しいバッテリーが発送されてくるはずなので,代わりに対象のバッテリーを返送する形になるようです.

ちなみに,交換対象のバッテリセルはSANYO で,対象外のはPanasonic でした.

バッテリーのヘタリ具合もみてみると,未だ80%程のようでまだまだ使えますね.2本を交互に使ってたのがよかったのかな?ちょっと勿体無い.

$ upower -d|grep -i device
Device: /org/freedesktop/UPower/devices/line_power_AC
  native-path:          /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:09/PNP0C09:00/ACPI0003:00/power_supply/AC
Device: /org/freedesktop/UPower/devices/battery_BAT0
  native-path:          /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:09/PNP0C09:00/PNP0C0A:00/power_supply/BAT0
$ upower -i /org/freedesktop/UPower/devices/battery_BAT0
  native-path:          /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:09/PNP0C09:00/PNP0C0A:00/power_supply/BAT0
  vendor:               SANYO
  model:                42T4694
  serial:               xxxx
  power supply:         yes
  updated:              Sun Mar 30 20:36:32 2014 (15 seconds ago)
  has history:          yes
  has statistics:       yes
  battery
    present:             yes
    rechargeable:        yes
    state:               charging
    energy:              56.1993 Wh
    energy-empty:        0 Wh
    energy-full:         75.3912 Wh
    energy-full-design:  93.24 Wh
    energy-rate:         17.3715 W
    voltage:             12.746 V
    time to full:        1.1 hours
    percentage:          74.5436%
    capacity:            80.8571%
    technology:          lithium-ion
  History (charge):
    1396179392      74.544  charging
    1396179363      74.337  charging
    1396179333      74.131  charging
    1396179303      73.910  charging
  History (rate):
    1396179363      17.371  charging
    1396179333      17.349  charging
    1396179303      17.072  charging

ちなみにこの買い増ししたバッテリーは2011年3月19日に秋葉原のニッシンパルで購入しました.計画停電時にバッテリ容量が心もとなかったので購入したのでした.

Kobo Debian で dist-upgrade 後にもタッチパネルが使えるようにする

marekさん謹製のKobo Debian でapt-get dist-upgrade してxorg を更新するとタッチパネルが利用できなくなります.

原因は,marekさん謹製のマルチタッチドライバ(Kobo オリジナルはシングルタッチ)がxorg のバージョンに追従されないため.
解決するためにドライバをビルドしなおしてインストールする必要がある.

手順

apt-get dist-upgrade を行った後, /home/marek/src/xorg-input-kobomultitouch に移動し,ビルド&インストールを行う.
次回起動時に認識するようになる.

# cd /home/marek/src/xorg-input-kobomultitouch
# make clean
# make
# make install

開発環境は導入済みなので開発環境を導入する必要はない.

以前紹介した

を使ってもOK

P2VJ というビットマップ形式の画像ファイルからベクター形式のSVG形式に変換するソフトを試してみた

P2VJ というビットマップ形式の画像ファイルからベクター形式のSVG形式に変換するソフトを見かけたので試してみました。
どういったものかというとビットマップ形式のPNG/Jpeg/BMP の画像をSVG かPDF のベクター形式のファイルに変換してくれるというものです。

Java で書かれていて、Java 環境であれば動作するようです。
Windows 向けには.bat ファイルが用意されていますが、手元の環境はLinux だったので起動用のsh script を用意して実行するようにしました。

P2VJ をダウンロードして展開したディレクトリに移動して、実行用のscript をダウンロードして実行権を付与して実行します。

$ wget https://gist.githubusercontent.com/matoken/9200813/raw/51f17da9e8b8d17e6449063baeb40e8499df2b4e/runp2vj.sh
$ chmod +x runp2vj.sh
$ ./runp2vj.sh

使い方は基本的に変換したい画像を指定するだけです。詳細は同梱のreadme.txt/readme_en.txt に詳しいです。

チェックボックスについて
postere・・・ポスタリゼーション(色の平滑化)をかけます。写真や、ぼかしを使っている絵を変換しようとする場合ONにしておいてください。jpeg画像の場合もONにしておくことをお勧め
します。
remove anti-Aliase・・・完全に2値化された絵(MSペイントなどで描かれた絵)を変換する場合以外はONにしておいてください。
makepng・・・ベクタ化した後PNG画像を作ります。
makepdf・・・ベクタ化した画像の PDF ファイルを作ります。コンビニとかで高解像度画像が(たぶん)そのまま印刷できるよ!

サイズが各種揃っていて、SVG もあるDebian ロゴで試してみました。

  • Debian ロゴ
    • openlogo-nd-25.png -> 25×30 pix
    • openlogo-nd-50.png -> 50×61 pix
    • openlogo-nd-75.png -> 75×92 pix
    • openlogo-nd-100.png -> 101×124 pix

このPNG ファイルをP2VJ でSVG に変換しました。

SVG に変換たものを横幅200pix に拡大したもの。

SVG に変換たものを1000×1230 に拡大して切り出したもの。

さすがにあまり小さい画像だとイマイチですが、覚えておくと色々使えそうです。

以下メモ。

% montage -label %f -tile 2x2 -geometry 200 -quality 100 openlogo-nd-25.svg openlogo-nd-50.svg openlogo-nd-75.svg openlogo-nd-100.svg out.png
% for i in openlogo-nd-*.svg ;do convert -geometry 1000x1230 -crop 400x400+200+200 $i $i-corp.png; done
% montage -label %f -tile 2x2 -geometry 200 -quality 100 openlogo-nd-25.svg-corp.png openlogo-nd-50.svg-corp.png openlogo-nd-75.svg-corp.png openlogo-nd-100.svg-corp.png corp.png