Posts

Showing posts from 2018

modular X.orgなNetBSDマシンからssh -Yで接続して、X11 forwardingする場合

NetBSDのxsrcのfontconfigが新しくならないので、最近は、X11_TYPE=modularでpkgsrcを使っている。つまり、pkgsrcからX.orgをインストールしている。 そうやって生活していく中で、自分のNetBSDマシンのX serverにリモートマシンのXアプリケーションのウィンドウを表示させようとした場合に、 これまでやったことのない設定が必要だったので書いておく。 そもそもOpenSSHというのはいやに奥が深くて、全く分かったような気にならない。 よくあるX11フォワーディングの際の設定というのは、リモートマシンがmodular X.orgの/etc/ssh/sshd_configに以下のように記述することである。 X11Forwarding yes XAuthLocation /usr/pkg/bin/xauth 今回問題になったのは、X server側、つまり手元のマシンの設定である。リモートマシンをmodular X.orgにしたことは何度もあったのだが、手元のマシンをmodular X.orgにしたのは 経験がなかった。 このような場合には、手元のマシンの/etc/ssh/ssh_configファイルに以下のような設定が必要になる。 XAuthLocation /usr/pkg/bin/xauth こうしないと、ssh -Yvvv remotehostnameを実行した場合に、以下のような表示になってしまう。 debug1: No xauth program. Warning: No xauth data; using fake authentication data for X11 forwarding. debug1: Requesting X11 forwarding with authentication spoofing. そして、 $ echo $DISPLAY localhost:11.0 のように表示されているのに、 $ xhost Invalid MIT-MAGIC-COOKIE-1 keyxhost: unable to open display "localhost:11.0" のように表示されてしまう。

CLIP STUDIO PAINT EXのフィルタープラグインとVisual Studio Community 2017

はじめに http://www.clip-studio.com/clip_site/download/clipstudiopaint/cspsdk にCLIP STUDIO PAINT EXのフィルタープラグインSDKと言うのがあって、 CLIP STUDIO PAINT EXにC++で独自のフィルターを書けるようになっている。 まあ、CLIP STUDIO PAINT EXとのインターフェイスの部分だけC++であれば、 別に全てをC++で書く必要はないだろう。 Visual Studio Community 2017でビルドしてみる 文書によると、フィルタープラグインはVisual Studio Expressではビルドできないそうである。 これは、実際に附属のサンプルをビルドしてみれば理由は簡単に分かった。 MFCが必要なのである。 なので、Visual Studio Community 2017ではMFCをインストールしておけば 問題なくビルドできる。 ライセンスの考察SDKのライセンス上、自作のフィルタープラグインをオープンソースな ソースコードを再利用できるか、オープンソースで開発できるか考えてみる。 copyleftなライセンスだと、SDK付属のヘッダーファイルとは混ぜられないし、SDKの再発明は禁止されているので、copyleftなライセンスのコードは採用できないだろう。 copyleftなライセンスの場合には、フィルタープラグインの配布はセルシス社のプラットフォーム上に限定されているので、 そもそもソースコードの配布ができるのかを確認しておかないといけないと言う課題もある。 現実的に考えて、copyleftなライセンスなソースコードを再利用するのは無理であろう。 BSDライセンスやMITライセンス等であれば、外部のソースコードを再利用することも可能だろう。 ソースコードを公開するとしたら、SDK由来のコード(ヘッダーファイル等)は含めることができないのは間違いない。 その上で、セルシス社のプラットフォーム上でソースコードを公開できるのかどうかに、ソースコードを公開できるかは依存していると考えられる。 現実的ではないような気もする。

Git for Windowsでgit statusの表示中のパスの日本語文字列が文字化けする場合の対処方法

Git for Windowsは、Git bashのみで使っている。 基本的にはGit bashの内部で困ることはないのだが、 唯一パスに日本語の文字列が含まれている場合に文字化けしてしまって 判別できないのが不満だった。 ~/.gitconfigに、以下のように追加すれば文字化けはなくなった。 $ vi ~/.gitconfig [core] quotepath = false

電話サービスの通話料の比較

NTT加入電話への通話料SMARTalk8円/30秒みおふぉんダイアル10円/30秒ひかり電話8円/3分 こう比較すると、自宅のひかり電話の回線から発信できるような仕組みを作りたくなってしまう。

Oracle OLEDB Provider Version 12.2.0.1.0 for Windows x86をインストールする際のエラー

Image
Windows 7 Professional 32-bitに、Oracle OLEDB Provider Version 12.2.0.1.0をインストールするには、 例えば、C:\app\instantclient_12_2に必要なDLLを揃えて、PATH環境変数にこのディレクトリーを追加した後で、 regsvr32 C:\app\instantclient_12_2\oraoledb12.dllを実行すれば良い。 しかし、「指定されたモジュールが見つかりません。」のエラーが出ることがある。 こうなるとOLEDB Providerは登録されないので、OLEDB経由でOracle Databaseに接続することはできない。 これは、Visual C++ 2013 redistributableを インストールすることで解消された。

Is it time for open processors?

Is it time for open processors? を読んだので翻訳しておく。 ただし、正しく訳せているとは思わない。 これは、 Jonathan Corbet氏による2018年1月9日のlwn.netにおける記事で、 Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) で公開されている。 Is it time for open processors? MeltdownとSpectreの2つの脆弱性の公開により、 ハードウェアレベルのセキュリティー上の問題が存在し得ることに、 改めて注目が集まっている。 ソフトウェアの脆弱性に関しては、まだ脆弱なソフトウェアのセキュリティー の解消のために非常に多くの努力がされているが、 ハードウェアな脆弱なままであれば、全て無駄な努力である。 私たちのシステムを動かしているCPUは、高度にプロプライエタリーであり、 嬉しくない驚きを内包していることが示されている (例えば、Intel Management Engine)。 そうなると、ソフトウェアがそうであったように、 オープンソースハードウェアに移行しようという動きがでてくるのは当然だろう。 オープンソフトウェアハードウェアへの移行は可能かもしれないし、 確かに利点はあるが、それで全てが解決する訳ではないだろう。 現代のCPUは複雑であり、販売されている市場は過酷な状況である。 オープンなやり方でCPUを開発しようと言うのは驚かれるかもしれない。 しかし、この分野でもオープンな開発を進める動きはある。 オープンなCPUと言う考えは、ファンタジーではない。 以下に、いくつかの事例を紹介する。しかし網羅的なものではない。 既に公開されているもの POWERアーキテクチャーを元にしたOpenPOWERの事例を見てみよう。 これは真にオープンソースではない。 主体的に利用するのであれば、OpenPOWER Foundationに加盟しなければならない。 しかし、プロセッサーを共同作業として開発するという例ではある。 比較的オープンな設計に基づいた製品が出荷されている。 OpenPOWERは、ハイエンドに特化している。 この設計に基づいたチップが、近い将来携帯電話やノートP…