ケーブルを外せないUSBハブは、どうやってもケーブルが断線してしまって長く使い続けられなかった。 J5 create JUH340は、 ケーブルが外せるので長持ちしている。セルフパワーUSBハブであるのも良い。 日本で売られているものは、3Aと4AのACアダプターの両方の場合がある。
ケーブルを外せないUSBハブは、どうやってもケーブルが断線してしまって長く使い続けられなかった。 J5 create JUH340は、 ケーブルが外せるので長持ちしている。セルフパワーUSBハブであるのも良い。 日本で売られているものは、3Aと4AのACアダプターの両方の場合がある。
これまでPopplerのpdffonts
でPDFファイルが使用しているフォントを一覧していたのだが、
pkgsrc/print/mupdf
を使うようになったのでmupdfでフォント一覧を見たいと思っていた。
mutool info -F
を使えば良かった。
$ mutool info -F target.pdf target.pdf: PDF-1.4 Info object (4075 0 R): <</CreationDate(D:20090605190151-05'00')/Author(Gregory Brown)/Creator(XSL Formatter V4.3 R1 \(4,3,2008,0424\) for Linux)/Producer(Antenna House PDF Output Library 2.6.0 \(Linux\))/ModDate(D:20090609120839-04'00')/Title(Ruby Best Practices)/Trapped/False>> Pages: 330 Retrieving info from pages 1-330... Fonts (9): 3 (5 0 R): Type1 'QXKOAR+MyriadPro-SemiboldCond' (1988 0 R) 5 (9 0 R): Type0 'QXKOAR+Birka-SemiBoldItalic' Identity-H (1997 0 R) 5 (9 0 R): Type0 'QXKOAR+Birka-Italic' Identity-H (1998 0 R) 6 (27 0 R): Type0 'QXKOAR+Birka' Identity-H (2003 0 R) 7 (32 0 R): Type0 'QXKOAR+ArialUnicodeMS' Identity-H (2006 0 R) 15 (298 0 R): Type1 'QXKOAR+TheSansMonoCd-W5Regular' (2012 0 R) 15 (298 0 R): Type1 'QXKOAR+TheSansMonoCd-W7Bold' (2014 0 R) 15 (298 0 R): Type1 'QXKOAR+TheSansMonoCd-W5RegularItalic' (2013 0 R) 329 (1979 0 R): Type0 'QXKOAR+Birka-Bold' Identity-H (2017 0 R)
ビデオファイルがいくつかあるのだが、VLC for iPadOS/iOS/Fireでローカルネットワーク経由で再生する際にどのような方法で ファイルを共有すれば良いのか迷っていたが、SambaでSMBで共有すれば途中からも再生もできた。 Windowsからファイルを格納するのにも便利なので、SMBで良いようだ。
私がiPadOS/iOSに慣れていないだけだと思うのだが、VLC for iPadOSで「ネットワーク」メニュー内の「サーバーに接続」の保存された接続設定を削除する方法に迷ってしまった。 左にスワイプすれば赤い削除のボタンが表示されるので、それをタップすれば良い。
Microsoft Visual Studio Community 2019は、個人ではどのようなアプリケーションを作成するのにも利用できるようだ。
マイクロソフト ソフトウェア ライセンス条項 MICROSOFT VISUAL STUDIO COMMUNITY 2019より:組織では、利用できる用途は限定されているようだが、その利用できる用途にはデバイスドライバーの開発が含まれている。
a. 個人ライセンス。お客様は、販売またはその他の目的でお客様独自のアプリケーションを開発している個人である場合、本ソフトウェアを使用して、当該アプリケーションを開発およびテストすることができます。
マイクロソフト ソフトウェア ライセンス条項 MICROSOFT VISUAL STUDIO COMMUNITY 2019より:ここで、個人はWindowsオペレーティングシステムのデバイスドライバーを開発およびテストすることができるかというのが気になった。 以下の文章を読むと、「アプリケーション」には「Windowsオペレーティングシステムのデバイスドライバー」が含まれているように思える。
お客様のユーザーは、人数に制限なく、本ソフトウェアを使用して、Windows オペレーティング システムのデバイス ドライバーを開発およびテストすることができます。
マイクロソフト ソフトウェア ライセンス条項 MICROSOFT VISUAL STUDIO COMMUNITY 2019より:
お客様がエンタープライズである場合、お客様の従業員および契約社員は本ソフトウェアを使用して、お客様のアプリケーションを開発またはテストすることはできません。ただし、上記で許可されている (i) オープンソース、(ii) Visual Studio の拡張機能、(iii) Windows オペレーティング システムのデバイス ドライバー、(iv) SQL Server の開発、および (v) 教育目的の場合を除きます
PEM形式のファイルの中身を確認するには、以下のようにすれば良い。
$ openssl x509 -in isrgrootx1.pem.txt -noout -text Certificate: Data: Version: 3 (0x2) Serial Number: 82:10:cf:b0:d2:40:e3:59:44:63:e0:bb:63:82:8b:00 Signature Algorithm: sha256WithRSAEncryption Issuer: C = US, O = Internet Security Research Group, CN = ISRG Root X1 Validity Not Before: Jun 4 11:04:38 2015 GMT Not After : Jun 4 11:04:38 2035 GMT Subject: C = US, O = Internet Security Research Group, CN = ISRG Root X1 Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public-Key: (4096 bit) Modulus: 00:ad:e8:24:73:f4:14:37:f3:9b:9e:2b:57:28:1c: 87:be:dc:b7:df:38:90:8c:6e:3c:e6:57:a0:78:f7: 75:c2:a2:fe:f5:6a:6e:f6:00:4f:28:db:de:68:86: 6c:44:93:b6:b1:63:fd:14:12:6b:bf:1f:d2:ea:31: (snip)
Windows 10 1909で、ローカルのDNSキャッシュを消去するには、コマンドプロンプトで以下のように実行すれば良い。
> ipconfig /flushdns
自宅のネットワークでは、IPv4でしかDNSサーバーを運用していない。これは、ISC DHCPDとBINDを組み合わせて 動的にホスト名を割り当てるようにしている。 IPv6は、IPoEな接続をそのまま使っているので、IPoE接続側は自宅外のDNSサーバーを配って来る。 こういう環境では、Windows 10 1909は、IPv6の自宅外のDNSサーバーを優先して使ってしまうため、 自宅内の動的に割り当てたホスト名で他のマシンにアクセスできない。 IPv6のDNSサーバーに以下のように手動登録すれば、IPv4のDNSサーバーを優先できる。
ffff::192.168.0.1
この記事は、NetBSD Advent Calendar 2019の22日目の記事です。
ちょっと目を離した隙に、Jupyter NotebookがNetBSD/amd64-currentで動かなくなってしまっていたので、 The pkgsrc guideのEPUB版を作る話を書きたいと思います。
以下で作成したEPUBファイルの動作は、iPad Pro上のApple BooksアプリのEPUBビューアー機能で確認しました。
2019年1月4日12:15 (UTC)くらい以降のpkgsrcツリーのpkgsrc/doc/guide
ディレクトリーで作業する必要があります。
distinfo
ファイルに、pkgsrc-guide/htdocs-share-20200104.tar.gz
ファイルが登録されていれば大丈夫です。
The pkgsrc guidleは、以下の形式で作成することができます。
括弧内は、OUTPUTS
変数に設定することで生成対象にするときの名前です。
標準では、EPUBファイルは生成されません。明示的にEPUBファイルを生成するようにOUTPUTS
変数に指定する必要があります。
つまり以下のように実行します。
$ cd /usr/pkgsrc/doc/guide $ make OUTPUTS=epubこうすると、
${WRKSRC}/pkgsrc.epub
としてEPUB版のThe pkgsrc guideが生成されます。
The NetBSD guideも少しの修正でEPUB版を生成できるはずですので、 試してみたいと思います。
この記事は、NetBSD Advent Calendar 2019の21日目の記事です。
NEC PC-9801全盛の時代に、Bio_100%のMarkadiaという縦スクロールシューティングゲームをしたことがありました。 それ以来、ゲームというものには手を出していなかったのですが、久し振りにやってみたいと思いました。 ですが、手元のラップトップは、ゲームでキーボードを酷使して問題ないようには見えません。 ここでゲーミングキーボードを買って来るという選択肢もありましたが、USB接続のゲームパッドを使ってみることにしました。 USB接続のLogicool製のGamepad F310というのを選びました。
pkgsrc/games
以下には、450以上のゲームが登録されていますが、縦スクロールシューティングゲームに近いものは多くはないようです。
以下が候補になりました。
今回は、chromium-bsuをやってみることにします。 taiseiも試したのですが、NetBSDでゲームパッドを使うには何か修正が必要なようですので、今回はパスします。
chromium-bsuのインストールは以下のようにします。
# cd /usr/pkgsrc/games/chromium-bsu # make installここで、chromium-bsuはバージョン0.9.16.1nb1以降を使うようにします。 このバージョンから、SDL2経由でゲームパッドを利用できます。
Logicool Gamepad F310には2つのモードがあります。XモードとDモードです。 背面のスライドスイッチで切り替えが可能です。 Xモードでは、USB Product ID = 0xc21d、Dモードでは、USB Product ID = 0xc216と、モード毎に別々のIDが割り振られています、 スライドスイッチを切り替えると、一度抜き差ししたのと同じような挙動をします。
(Dモードで接続) uhidev0 at uhub2 port 1 configuration 1 interface 0 uhidev0: Logicool (0x46d) Logicool Dual Action (0xc216), rev 2.00/4.14, addr 6, iclass 3/0 uhid0 at uhidev0: input=8, output=7, feature=0 (Xモードへ切り替え) uhid0: detached uhidev0: detached uhidev0: at uhub2 port 1 (addr 6) disconnected uhidev0 at uhub2 port 1 configuration 1 interface 0 uhidev0: Logicool (0x46d) Gamepad F310 (0xc21d), rev 2.00/40.14, addr 7, iclass 255/93 uhid0 at uhidev0: input=20, output=6, feature=0
Dモードは旧来のモード、Xモードはより新しいモードであるようです。
SDL2のBSD用のjoystickサポートは、Dモードを前提としているようです。
Xモードのサポートは、Linuxのevdev
を前提としているようにも見えます。
実際、XモードのF310では、キャリブレーションをしても使えるようになりませんでした。
NetBSDのUSB HID関連のカーネルソースコードを見ると、XBox用のゲームパッドのサポートコードがあります。
同様にカーネルでのサポートが必要なのかもしれません。
Gamepad F310をUSB接続してDモードに切り替えてから、chromium-bsdを起動させてみると、 正しいキーバインディングで利用できているようです。 しかし、初めてゲームパッドというものを使ったので、良い成績を残すには相当の慣れが必要そうです。
この記事は、NetBSD Advent Calendar 2019の19日目の記事です。
CHFSを使ってみたいと思っていましたが、 サポートするハードウェアが分からないし、おそらく手元に存在しないので試せないと考えていました。 CHFS (CHFS flash file system)は、フラッシュメモリー用のファイルシステムです。
しかし、NANDフラッシュメモリーデバイスについては、nandemulator(4)
というエミュレートする仮想的なデバイスが用意されていて、
RAMから割り当てて揮発性のNANDフラッシュメモリーデバイスを作成することが可能でした。
これにより、NetBSD/amd64でもCHFSを試してみることができそうです。
nandemulator(4)
のソースコードであるsys/dev/nand/nandemulator.c
を読むと、エミュレートされるNANDフラッシュメモリーの
サイズは32MBでハードコードされてしまっていますが、CHFSを試してみるという視点では、32MBでも良さそうです。
file-system CHFS pseudo-device nandemulator
以下のようにして、カーネルモジュールを読み込みます。
# modload nandemulator # modload chfsこれらを実行すると、カーネルブートメッセージに以下のように出力されます。
nandemulator0: NAND emulator nand0 at nandemulator0: ONFI NAND Flash nand0: vendor: NETBSD, model: NANDEMULATOR nand0: manufacturer id: 0x00 (Unknown), device id: 0x00 nand0: page size: 2048 bytes, spare size: 64 bytes, block size: 131072 bytes nand0: LUN size: 256 blocks, LUNs: 1, total storage size: 32 MB nand0: column cycles: 2, row cycles: 3, width: x16 nand0: scanning for bad blocks flash0 at nand0: partition, size 32 MB, offset 0 flash0: erase size 128 KB, page size 2048 bytes, write size 2048 bytes仮想的なNANDフラッシュメモリーデバイスは、
/dev/flash0
に割り当てられたようです。
mount_chfs(8)
のマニュアルページによると、CHFSなフラッシュメモリーデバイスは、
初回マウント時に自動的にnewfs(8)
相当のことが実施されるようです。
The file system will be created during the first mount.ですので、
newfs_chfs
コマンドはありません。
以下のようにして、/mnt
にマウントしてみます。
# mount_chfs /dev/flash0 /mnt状況を確認してみます。
$ mount /dev/flash0 on /mnt type chfs (local) $ df -h /dev/flash0 31M 0B 30M 0% /mntどうやら普通に使えそうです。
CHFSは、LinuxやeCosで利用できるJFFS2を意識して作られたようなので、機会があったら比較してみたいと思います。
この記事は、 NetBSD Advent Calendar 2024 の13日目の記事です。 llama.cppを使ってみる 以前に、 NetBSD/amd64でllama.cppを使ってみる という記事で llama.cpp を使ってみていました。 あれか...