2018年5月30日水曜日

RSSリーダー、ふたたび

 Firefoxで使えるRSSリーダーであるSageの記事のサマリー表示がされなくなってしまった。
 もともとFirefoxがメジャーアップデートしてSageが使えなくなっていたのだけれど、古いFirefoxを使いつづけていたのだ。なんか、制限がかけられてしまったのだろう。
 一時期、GnusでRSSを読んでいたこともあったけれど、Sageの快適さにはかなわなかった。サマリー表示が便利だったのだ。
 どうしてだか、GnusでRSSの更新がおそかったということもある。
 RSSなんてもうオワコンか、とも思ったけれど、次のRSSリーダーはどうしよう。
 どのアプリもピンとこないし、Gnusは遅い。そこでEmacsで動くRSSリーダーである「Newsticker」を試してみたのだが、これも更新が遅い。見ていると、blogspotでじっと待ってしまっている。なんだ? Emacs25ではGnusがTime outで落ちるぞ。
 Sageではそんなことはないのだが。
 原因はEmacs?
 いろいろやってふと思ってwgetで試してみた。

 やっぱり遅い。time outが起きている。blogspotのせい? よくよくwgetの出力を見ていたら記事がダウンロードされていた。あれ? time outしたのに?
 だいいたDNSのアドレス解決でIPアドレスの前にあるわけのわからん数値はなんだ……あっ、これ、ipv6が返却されてきているのか!
 そうか。ipv6でアクセスしにいってtime outしたあとにあらためてipv4でアクセスしなおしているんだ。
 それなら最初からipv4でアクセスするようにすれば、いいんだ、と思ったけれど、EmacsのURLパッケージに指定する方法を見つけ切れなかった。ググったり、考えたり、推理したりして答えを見つけた。
 MacOSはデフォルトでipv6からアクセスするようになっていたのだった。
 つまりMacBook Airのipv6を無効にすれば、よいのだった。

sudo networksetup -setv6off Wi-Fi

 結果、GnusもNewstickerの更新が馬鹿っ速くなった。

後日譚:といいながらSageをインストールしなおしたら動いてしまった。

2018年5月28日月曜日

2018年5月26日土曜日

置き場

 小さいというのも置き場にこまるもので、しかたないので画鋲で壁に貼りつけた。

2018年5月21日月曜日

Beelink S1

 週末にキーボードが届いたので「Beelink S1」の初期設定作業。
 Windows10。うーむ、見慣れん。

 次にあまっている128GのSSDにLinux系のCentOSをインストールを試みる。

 「Beelink S1」はOSがLinuxのものがあるので——日本ではWindows10のみの販売——、Linuxは動くだろうと踏んだのだ1
 ところがうまくインストールできない。FreeBSDも同じ。半日かけてあきらめる。「Beelink S1」のLinuxはたしか、Ubuntuだったことを思い出してそちらでインストールを試みてみると、こちらはあっさりとうまくいった。

 でもまぁ、今のところ、「Beelink S1」は使い道がないなぁ。

Footnotes:

1

 BIOSの設定画面の出し方がわからず、右往左往してしまった。結局、Escキーか、Delキーの押しっぱなしだった。

2018年5月19日土曜日

2018年5月18日金曜日

VNC for Raspberry Pi

 以前はRaspberry PiをVNCでiPadProに表示したのだけれど、なぜか、今はうまくいかない。へんだなぁ、と思いつつ、TigerVNCならうまくいくかな、とMacBook Airにinstallした。
 だめ。
 MacBook Airの元々のVNCでもだめなのは知っていたけれど。
 ググってみると、RealVNCでならできるっぽい。

 install。
 けれど、画面が小さすぎて突っ伏してしまった。

 どうやら/boot/config.txtを変更すれば、できるらしい。

 おっ、いいじゃん。
 ますます「Beelink S1」が不要になっていく。

2018年5月16日水曜日

ThinkPad X60引退計画

 そろそろThinkPad X60には引退してもらわねば。
 そう思ったのも触ったらかなり熱くなっていて、やばいんじゃない? と思ったからだ。考えてみたらThinkPadでやっていることなんてRaspberry Piでできるんじゃない? そっちの方が消費電力もすくないんじゃない?
 で、Rasberry Piをひっぱりだしてきた。1
 ところが。
 動かない……。
 TVにつないで調べてみると、どうやらOSのSDカードが壊れているらしい。起動の途中でなんかメッセージがでている。
 それでカッとなって「Beelink S1」を買ってしまった。どうせ、Raspberyy Piじゃ、PostgreSQLは動かないだろう、と思ったこともある。ところがだ。ググってみたところ、動くらしい
 ぎゃー。何をやっておるんですか、わたしは。まずそっちを調べなさいよ。

 あらためてraspbianをとってきて今度は「Patech スポーツカメラ 12MP」で使っていたSDカード(32G)にインストールする。
 動いた。けれど、wifiに接続しない。
 しかもうちにある唯一のキーボード(bluetooth)にも接続しない。
 sshは動くようにしているのだけれど、ネットワークに接続できないので手も足もでない。1年も放っておいたのでハードが壊れてしまったんだろうか。
 TimeCupsleにLANケーブルで直繋ぎしてみる。
 こちらもだめ。しかし、原因はTimeCupsleっぽい。
 そこで蔵っておいた無線LANルーターをひっぱりだしてきて直に接続——できた。MacBook Airからsshで入る。で、すったもんだやった結果、wpa_supplicant.confのパスワードは暗号化しなければ、ならないことが判明。今まで直書きしていたのではまってしまった。
 無事、無線LANに接続できるようになる。

 で、そのあと、EmacsとPostgreSQLを何も考えず、apt-get。
 PostgreSQL、trust認証にしているのに弾かれるという現象に悩まされる。普通にEmacsのsql-postgresからはうまくいくのに。1時間ほど、試行錯誤の末、現象が判明。localhostを指定してやると、パスワードを聞いてくる。
 当然、trust認証のつもりなのでパスワードなど設定してなくてそれで弾かれてしまっていた。
 パスワードを設定して解決。
 ThinkPad X60のPostgreSQLからデータを放りこんで無事、動作する環境を確保した。

Footnotes:

1

調べてみたら1年ぶりだった。購入したのは2017年の4月。

2018年5月15日火曜日

Beelink S1を購入

買ったのはいいけど、うちにはキーボードがないのだった……。

2018年5月14日月曜日

再帰関数

 shellバッファにコマンドを投げてその結果を取得したい。
 単純にshellなら「shell-command」を使えば、いいんだけど、sshでいくつかのサーバを経由したときはshellバッファへ投げるしか、ないよなぁ。問題はshellバッファはコマンドの結果が非同期だということだ。
 コマンドを投げた直後は結果がまだ返ってきてない。
 filter関数を切り替えても非同期の問題は解決しない。終わりがわからないからだ。これはあれか。1秒毎にカーソルの位置をチェックして位置がかわらなくなったら終わりだと判断するか。
 whileかなぁ、なんかLispっぽくねー。
 うだうだ考えて再帰で書けることに気づいた。
 こんな感じ?

(defun wrk(p)
  (sleep-for 1)
  (let ((now (point)))
    (if (equal p now)
 now
      (wrk now))))

 簡単にmax-lisp-eval-depthにひっかかってしまうけど、ちゃんと末尾再帰している。elispでは意味ないけど。で、こうかな。

(let ((p (point)))
  (buffer-substring-no-properties p (wrk p)))

2018年5月12日土曜日

auto-revert-mode

 Emacsを使っていると、いろんなファイルを開きっぱなしにしていることはよくあることで——しかもdaemonモードで立ち上げていたりすると、いつもまでもそのまま。
 気づくと、見ているソースファイルがいつのまにか、更新されていて嵌まるなんてことがある。
 そんなあなたにauto-revert-mode。
 ファイルが更新されたらrevertしてくれる。
 便利、と思ってモードフックに放りこんでいる。

 この間、ふと思いついて試してみたらdired-modeでも使えるのだった。
 logのフォルダとか、これで自動的に更新されるのをチェックできるじゃないか。おおっ、いいじゃないか。
 それなら「global-auto-revert-mode」でもいいかも——。

2018年5月8日火曜日

道具の確認

 オン・ザ・ブロックを喰らったあと、道具がどうなったのか、確認してなかった。ひさしぶりに砂と潮だらけの道具をひっぱりだしてみる。
 デスマストはしてなかったとわかっていたけれど、どうしてあの状況でだいじょうぶだったのか、わからない……。道具をチェックしてみてようやくそれが判明した。
 アウトホールラインが切れていた。

 ああ、このおかげで助かったのか。そうか。
 そういえば、ひどい目にあった直後にはそう思ったっけ。
 セイルのあちらこちらが破れているけれど、梱包テープでリペアできるレベル。ただしバテンはほぼ、全滅だった。バッキバキに折れている。こちらは6.7のセイルのバテンを切り刻んで代用。

 なんとか、セイル(5.3)は使えそうだ。
 一番、ひどい状態だったのはスケグとブームのラバーだった(実はカメラだったような気がする)。

2018年5月6日日曜日

ibuffer

 anythingやhelmになれていると、さすがにデフォルトのlist-buffersはつらい。かといってネットに接続されていない環境なのでanythingとかをインストールすることもできない。
 ストレスだ。
 list-buffersの使い方を知らないだけか、と調べていて気づいた。
 なんだ、この「ibuffer」というのは?
 おっ。
 いいじゃん、これ。llist-buffersの拡張版という感じ。
 バッファリストの絞りこみができる。
 さっそく「C-x C-b」をibufferにマッピングした。

(define-key global-map "\C-x\C-b" 'ibuffer)