jail(iocage)で、録画サーバその5

config.jsonの、mirakurunのURLを変更して起動してみたら、sqlite3のエラー。

root@recorder:~/EPGStation # npm start

> EPGStation@1.7.5 start /root/EPGStation
> node dist/server/index.js

internal/modules/cjs/loader.js:968
  throw err;
  ^

Error: Cannot find module '/root/EPGStation/node_modules/sqlite3/lib/binding/napi-v3-freebsd-x64/node_sqlite3.node'

確かに node_modules/sqlite3/lib/binding/napi-v3-freebsd-x64 は無い。インストールに失敗してる?
そこだけやってみたら。。

root@recorder:~/EPGStation # npm install -f sqlite3
npm WARN using --force I sure hope you know what you are doing.

> sqlite3@5.0.0 install /root/EPGStation/node_modules/sqlite3
> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Using request for node-pre-gyp https download
node-pre-gyp WARN Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v5.0.0/napi-v3-freebsd-x64.tar.gz
node-pre-gyp WARN Pre-built binaries not found for sqlite3@5.0.0 and node@12.18.4 (node-v72 ABI, unknown) (falling back to source compile with node-gyp)
gyp ERR! find Python
gyp ERR! find Python Python is not set from command line or npm configuration
gyp ERR! find Python Python is not set from environment variable PYTHON
gyp ERR! find Python checking if "python" can be used
gyp ERR! find Python - "python" is not in PATH or produced an error
gyp ERR! find Python checking if "python2" can be used
gyp ERR! find Python - "python2" is not in PATH or produced an error
gyp ERR! find Python checking if "python3" can be used
gyp ERR! find Python - "python3" is not in PATH or produced an error
gyp ERR! find Python
gyp ERR! find Python **********************************************************
gyp ERR! find Python You need to install the latest version of Python.
gyp ERR! find Python Node-gyp should be able to find and use Python. If not,
gyp ERR! find Python you can try one of the following options:
gyp ERR! find Python - Use the switch --python="/path/to/pythonexecutable"
gyp ERR! find Python   (accepted by both node-gyp and npm)
gyp ERR! find Python - Set the environment variable PYTHON
gyp ERR! find Python - Set the npm configuration variable python:
gyp ERR! find Python   npm config set python "/path/to/pythonexecutable"
gyp ERR! find Python For more information consult the documentation at:
gyp ERR! find Python https://github.com/nodejs/node-gyp#installation
gyp ERR! find Python **********************************************************
gyp ERR! find Python
gyp ERR! configure error
gyp ERR! stack Error: Could not find any Python installation to use

やっぱりpythonあやしかったかー。手っ取り早く ln -s /usr/local/bin/python3.7 /usr/local/bin/python してもう一度やると、今度は無事にビルドされた。
も一度起動。

root@recorder:~/EPGStation # npm start

> EPGStation@1.7.5 start /root/EPGStation
> node dist/server/index.js

[2020-09-25T02:45:33.168] [WARN] system - reserves.json is not found.
[2020-09-25T02:45:33.289] [WARN] system - dbinfo.json is not found.
[2020-09-25T02:45:33.295] [INFO] system - create dbinfo.json
[2020-09-25T02:45:33.322] [INFO] system - ServicesDB created
[2020-09-25T02:45:33.347] [INFO] system - ProgramsDB created
[2020-09-25T02:45:33.381] [INFO] system - RulesDB created
[2020-09-25T02:45:33.406] [INFO] system - RecordedDB created
[2020-09-25T02:45:33.448] [INFO] system - EncodedDB created
[2020-09-25T02:45:33.474] [INFO] system - RecordedHistoryDB created
[2020-09-25T02:45:33.486] [INFO] system - start Updater pid: 38047
[2020-09-25T02:45:34.006] [INFO] system - mirakurun -> services: 47
[2020-09-25T02:45:34.019] [INFO] system - insert Services done
[2020-09-25T02:45:34.429] [INFO] system - mirakurun -> programs: 11645
[2020-09-25T02:45:35.341] [INFO] system - insert Programs done.
[2020-09-25T02:45:35.347] [INFO] system - mirakurun -> tuners: 4
[2020-09-25T02:45:35.668] [INFO] system - updater done
[2020-09-25T02:45:35.670] [INFO] system - start updateAll
[2020-09-25T02:45:35.672] [INFO] system - done updateAll

ひとまずよし。

jail(iocage)で、録画サーバその4

ffmpeg導入済みのjailに、EPGStationを導入メモ。ひとまず設定の手前まで。

nodeとnpm
root@recorder:~ # pkg install node12 npm-node12
環境チェック

EPGStation/linux-setup.md at master · l3tnun/EPGStation · GitHub
にある通りにやってみる。

root@recorder:~ # node --version
v12.18.4
root@recorder:~ # ffmpeg -version
ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
built with FreeBSD clang version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1)
configuration: --prefix=/usr/local --mandir=/usr/local/man --datadir=/usr/local/share/ffmpeg --pkgconfigdir=/usr/local/libdata/pkgconfig --enable-shared --enable-pic --enable-gpl --enable-avresample --cc=cc --cxx=c++ --disable-alsa --disable-libopencore-amrnb --disable-libopencore-amrwb --enable-libaom --disable-libaribb24 --enable-asm --enable-libass --disable-libbs2b --disable-libcaca --disable-libcdio --disable-libcelt --disable-libcodec2 --enable-libdav1d --disable-libdavs2 --disable-libdc1394 --disable-debug --enable-htmlpages --enable-libdrm --disable-libfdk-aac --disable-libflite --enable-fontconfig --enable-libfreetype --enable-frei0r --disable-libfribidi --disable-gcrypt --disable-libglslang --disable-libgme --enable-gmp --enable-gnutls --enable-version3 --disable-libgsm --enable-iconv --disable-libilbc --disable-libjack --disable-libklvanc --disable-libkvazaar --disable-ladspa --disable-libmp3lame --disable-liblensfun --disable-libbluray --disable-librsvg --disable-librtmp --enable-libxml2 --disable-lto --disable-lv2 --disable-mbedtls --disable-libmfx --disable-libmodplug --disable-libmysofa --disable-nonfree --disable-openal --disable-opencl --enable-libopencv --disable-opengl --disable-libopenh264 --disable-libopenjpeg --disable-libopenmpt --disable-openssl --enable-optimizations --enable-libopus --disable-pocketsphinx --disable-libpulse --disable-librabbitmq --disable-librav1e --enable-runtime-cpudetect --disable-librubberband --disable-sdl2 --disable-libsmbclient --disable-libsnappy --disable-sndio --disable-libsoxr --disable-libspeex --disable-libsrt --disable-libssh --disable-libtensorflow --disable-libtesseract --enable-libtheora --disable-libtwolame --enable-libv4l2 --enable-vaapi --disable-vapoursynth --enable-vdpau --disable-libvidstab --disable-libvmaf --enable-libvorbis --disable-libvo-amrwbenc --enable-libvpx --disable-vulkan --disable-libwavpack --disable-libwebp --enable-libx264 --enable-libx265 --disable-libxavs2 --enable-libxcb --enable-libxvid --disable-outdev=xv --disable-libzimg --disable-libzmq --disable-libzvbi
libavutil      56. 51.100 / 56. 51.100
libavcodec     58. 91.100 / 58. 91.100
libavformat    58. 45.100 / 58. 45.100
libavdevice    58. 10.100 / 58. 10.100
libavfilter     7. 85.100 /  7. 85.100
libavresample   4.  0.  0 /  4.  0.  0
libswscale      5.  7.100 /  5.  7.100
libswresample   3.  7.100 /  3.  7.100
libpostproc    55.  7.100 / 55.  7.100
root@recorder:~ # python --version
python: Command not found.
root@recorder:~ # python3.7 --version
Python 3.7.9
root@recorder:~ # gcc --version
gcc: Command not found.
root@recorder:~ # cc --version
FreeBSD clang version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1)
Target: x86_64-unknown-freebsd12.1
Thread model: posix
InstalledDir: /usr/bin

pythongccがあやしいが。。そのまま続行。

EPGStation

1度しか使わないgitをjailの中に入れるの面倒なので、ホスト側で取っておく。

# cd /iocage/jails/recorder/root/root/
# git clone https://github.com/l3tnun/EPGStation.git

jail内に戻って続き。

root@recorder:~ # cd EPGStation/

root@recorder:~/EPGStation # npm install --no-save
...
npm ERR! code EBADPLATFORM
npm ERR! notsup Unsupported platform for mirakurun@3.3.1: wanted {"os":"linux,darwin,win32","arch":"any"} (current: {"os":"freebsd","arch":"x64"})
npm ERR! notsup Valid OS:    linux,darwin,win32
npm ERR! notsup Valid Arch:  any
npm ERR! notsup Actual OS:   freebsd
npm ERR! notsup Actual Arch: x64

mirakurunを導入した時と同じエラーだな。。
ぐぐったら force オプションがそれっぽいので、無理やり導入。

root@recorder:~/EPGStation # npm install mirakurun --no-save --force
...
+ mirakurun@3.3.1
added 106 packages from 41 contributors, updated 1 package and audited 1193 packages in 15.858s
found 2 low severity vulnerabilities
  run `npm audit fix` to fix them, or `npm audit` for details

はいった。
続き。

root@recorder:~/EPGStation # npm run build

> EPGStation@1.7.5 build /root/EPGStation
> gulp build --max_old_space_size=768 --env production

sh: gulp: not found
npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR! EPGStation@1.7.5 build: `gulp build --max_old_space_size=768 --env production`
npm ERR! spawn ENOENT
npm ERR! 
npm ERR! Failed at the EPGStation@1.7.5 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

うーん。npmわからん。。まあ無いと言ってるから足して、続き。

root@recorder:~/EPGStation # npm install gulp --no-save
...
+ gulp@4.0.2
updated 1 package, moved 1 package and audited 1086 packages in 8.725s
found 0 vulnerabilities

root@recorder:~/EPGStation # npm run build

> EPGStation@1.7.5 build /root/EPGStation
> gulp build --max_old_space_size=768 --env production

[21:06:38] Node flags detected: --max_old_space_size=768
[21:06:38] Respawned to PID: 35061
[21:06:40] Using gulpfile ~/EPGStation/gulpfile.js
[21:06:40] Starting 'build'...
[21:06:40] Starting 'build-server'...
[21:06:40] Starting 'clean-server'...
[21:06:40] Finished 'clean-server' after 10 ms
[21:06:40] Starting 'tslint-server'...
[21:06:45] Finished 'tslint-server' after 5.66 s
[21:06:45] Starting '<anonymous>'...
[21:06:59] Finished '<anonymous>' after 13 s
[21:06:59] Finished 'build-server' after 19 s
[21:06:59] Starting 'build-client'...
[21:06:59] Starting 'clean-client'...
[21:06:59] Finished 'clean-client' after 7.8 ms
[21:06:59] Starting 'tslint-client'...
[21:07:02] Finished 'tslint-client' after 3.05 s
[21:07:02] Starting '<anonymous>'...
[21:07:18] Version: webpack 4.44.2
Built at: 09/24/2020 9:07:18 PM
             Asset      Size  Chunks                    Chunk Names
            app.js  1.71 MiB       0  [emitted]  [big]  main
app.js.LICENSE.txt   5.3 KiB          [emitted]
Entrypoint main [big] = app.js
[21:07:18] Finished '<anonymous>' after 16 s
[21:07:18] Finished 'build-client' after 19 s
[21:07:18] Starting 'client-css-build'...
[21:07:19] Finished 'client-css-build' after 1.4 s
[21:07:19] Finished 'build' after 39 s
設定の準備まで

ドキュメント通り。

root@recorder:~/EPGStation # cp config/config.sample.json config/config.json
root@recorder:~/EPGStation # cp config/operatorLogConfig.sample.json config/operatorLogConfig.json
root@recorder:~/EPGStation # cp config/serviceLogConfig.sample.json config/serviceLogConfig.json
root@recorder:~/EPGStation #

regzaとsamba

なぜ今まで気づかなかったんだろうって気もするけど、regzaのLANハードディスクにsambaを登録できるやんか。
試してみたら少しハマって、Wiresharkのお世話になってしまったので、メモ。

環境
  • Regza: 50Z810X (ソフトウェアバージョン T3E-01CDDD 724)
  • samba: 4.11.8 (pkg)
事前準備

smb4.confに、regza向け定義を追加。ユーザ追加が面倒なのでゲストアクセスさせる。

[tv]
        comment = Viceo Directories
        create mask = 0777
        directory mask = 0777
        guest ok = Yes
        guest only = Yes
        path = /media/tv
        read only = No
regzaの設定>接続機器設定>LANハードディスクの登録 の一覧に出てこない

見つからないといわれる。赤ボタンで再スキャンしても、しばらくたって同じメッセージ。
そういえばワークグループ名がWORKGROUPじゃないんだった。緑ボタンで変更。

まだ出てこない

わかんないので赤ボタンのスキャンをWiresharkで覗いてみると、regzaからのリクエス

    Negotiate Protocol Request (0x72)
        Requested Dialects
            Dialect: PC NETWORK PROGRAM 1.0
            Dialect: MICROSOFT NETWORKS 1.03
            Dialect: MICROSOFT NETWORKS 3.0
            Dialect: LANMAN1.0
            Dialect: LM1.2X002
            Dialect: DOS LANMAN2.1
            Dialect: Samba
            Dialect: NT LANMAN 1.0
            Dialect: NT LM 0.12

に対して、sambaからのレスポンス

    Negotiate Protocol Response (0x72)
        Selected Index: -1, PC NETWORK PROGRAM 1.0 chosen

を返してた。

man smb.conf すると、デフォルトが server min protocol = SMB2_02 なのか。。
server min protocol = NT1 に変更して、samba再起動。

想定と違う共有フォルダが出てきた

赤ボタンで再スキャンしたら、見えた!。だが。
regza向けの \\SERVER\tv ではなく、arecx6向けの \\SERVER\arecx6 だけ出てきて、tvが出てこない。なんだこりゃ。
わかんないので再びWiresharkで覗いてみると、

  1. \\IPアドレス\共有名 に、WORKGROUP/GUEST でアクセス(ワークグループ名を変えたのにWORKGROUPなのは解せないが)
  2. 「.toshiba_MACアドレス」フォルダを削除 ⇒ そんなものないのでこれは失敗する
  3. 「.toshiba_MACアドレス」フォルダを作成 ★1
  4. 「.toshiba_MACアドレス」フォルダを削除

★1で成功したら、OK ⇒リストに出てくる
★1で失敗したら、\\ホスト名\共有名 にしてリトライ、再び★1で失敗しNG ⇒リストに出てこない

結局、ゲスト(=nobody)で共有フォルダ直下にフォルダ作成できるかどうかが分かれ目だった。
ということで、さくっと /media/tv をchmodして解決。

jail(iocage)で、録画サーバその3

その2で、jail recorderでffmpeg+vaapiが動くようにしたのはおいといて、別jailでmirakurunを動かしてみた。
下の参考文献ほぼそのままだけど、現時点 mirakurun 3.3.1 の導入ログとして。

iocage

新規に作る。実は試行錯誤で作ったり壊したりしてるんですが省略。

# iocage create -n mirakurun -r 12.1-RELEASE
mirakurun successfully created!
# iocage set devfs_ruleset=6 mirakurun
devfs_ruleset: 4 -> 6
# iocage set ip4_addr="em0|192.168.0.13" mirakurun
ip4_addr: none -> em0|192.168.23.13
# iocage start mirakurun
* Starting mirakurun
  + Started OK
  + Using devfs_ruleset: 1002 (cloned from devfs_ruleset 6)
  + Using IP options: ip4.addr=em0|192.168.0.13 ip4.saddrsel=1 ip4=new ip6.saddrsel=1 ip6=new
  + Starting services OK
  + Executing poststart OK
#

devfs_ruleset=6はあらかじめ作っておいたもの。dri/drmは不要で、ptxを追加。

[devfsrules_ptx=6]
add include $devfsrules_hide_all
add include $devfsrules_unhide_basic
add include $devfsrules_unhide_login
add path zfs unhide
add path 'ptx*' unhide
recpt1

ホスト側で,、
FreeBSDでrecpt1を使う [努力したWiki]
freebsd-019-recpt1_20190127.tar.gz をありがたくいただいてビルド。enable-b25もしとく。

できた一式を、jailの/usr/local/bin、/usr/local/libに配置。

pkg

jailの中で作業。現行pkgのnode(v14)とnpmでやったら、npmの実行でv14に対応してないとエラーはくので、v12でやり直した。

root@mirakurun:~ # pkg install bash node12 npm-node12
root@mirakurun:~ # ln -s /usr/local/bin/bash /bin/bash

最後のsymlinkは、これがないとmirakurunスクリプトの実行がこける。

pm2
root@mirakurun:~ # npm install pm2 -g
(なんかちらほらWARN出てるけど、完了)
+ pm2@4.4.1
added 186 packages from 191 contributors in 7.477s
mirakurun

githubから持ってきてbuildする。jail環境にgitを入れるのが面倒なので、ホスト環境で取得したものをjail環境にコピーした。

$ git clone https://github.com/Chinachu/Mirakurun.git

$ git log -1
commit 113a10da5e6401a312dd08bd4224b4d4dd33e9a9 (HEAD -> master, tag: 3.3.1, origin/master, origin/HEAD)
Author: kanreisa <re@pixely.jp>
Date:   Sat Aug 8 01:51:28 2020 +0900

    @3.3.1

$ vi Mirakurun/package,json
(最後のほうにあるosに、"freebsd", を追加。)

$ (jail環境の /root/Mirakurun にコピー。手順は省略)

ここからまたjail内で。

root@mirakurun:~/Mirakurun # npm install
root@mirakurun:~/Mirakurun # npm run build
root@mirakurun:~/Mirakurun # npm install . -g --unsafe --production

設定ファイルをコピー

root@mirakurun:~/Mirakurun # mkdir /usr/local/etc/mirakurun
root@mirakurun:~/Mirakurun # cp -v config/* /usr/local/etc/mirakurun
root@mirakurun:~/Mirakurun # rm -v /usr/local/etc/mirakurun/*win32*

設定

root@mirakurun:~/Mirakurun # mirakurun config server
(変更せずに、確認だけ)

root@mirakurun:~/Mirakurun # mirakurun config tuners
(コマンドを、command: recpt1 --b25 --device /dev/ptx0.s0 <channel> - -
 のように変更。デバイス名は s0/s1/t0/t1 で適宜)

root@mirakurun:~/Mirakurun # mirakurun config channels
(MXを16->20に。TVKを18で追加)

起動。なぜかエラーになる。

root@mirakurun:~/Mirakurun # mirakurun start
[PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized
[PM2][ERROR] Script not found: /root/Mirakurun/mirakurun-server

こうならできたが、実行がforegroundなので停止はCtrl+C。

root@mirakurun:~/Mirakurun # npm run start

> mirakurun@3.3.1 start /root/Mirakurun
> node -r source-map-support/register --max_old_space_size=512 lib/server.js

2020-09-22T15:31:32.318+09:00 info: load server config `/usr/local/etc/mirakurun/server.yml`
2020-09-22T15:31:32.321+09:00 info: load channels config `/usr/local/etc/mirakurun/channels.yml`
2020-09-22T15:31:32.326+09:00 info: load tuners config `/usr/local/etc/mirakurun/tuners.yml`
2020-09-22T15:31:32.328+09:00 info: 4 of 5 tuners loaded
2020-09-22T15:31:32.329+09:00 info: load db `/usr/local/var/db/mirakurun/services.json` w/ integrity (NzG9o3GEy8Ga5hbYBPGcTbscZVvZSATtawVp8O5W/HM=)
2020-09-22T15:31:32.329+09:00 info: db `/usr/local/var/db/mirakurun/services.json` is not exists
2020-09-22T15:31:32.330+09:00 info: load db `/usr/local/var/db/mirakurun/programs.json` w/ integrity (NzG9o3GEy8Ga5hbYBPGcTbscZVvZSATtawVp8O5W/HM=)
2020-09-22T15:31:32.330+09:00 info: db `/usr/local/var/db/mirakurun/programs.json` is not exists
2020-09-22T15:31:33.110+09:00 info: ChannelItem#'BS:BS15_0' serviceId=101 check has started
2020-09-22T15:31:33.111+09:00 info: TSFilter has created (serviceId=null, eventId=null)
2020-09-22T15:31:33.125+09:00 info: TunerDevice#0 process has spawned by command `recpt1 --b25 --device /dev/ptx0.s0 BS15_0 - -` (pid=8080)
2020-09-22T15:31:33.126+09:00 info: listening on http+unix://%2Fvar%2Frun%2Fmirakurun.sock
2020-09-22T15:31:33.127+09:00 info: listening on http://192.168.0.13:40772
Error: listen EADDRINUSE: address already in use 127.0.0.1:40772
    at Server.setupListenHandle [as _listen2] (net.js:1313:16)
    at listenInCluster (net.js:1361:12)
    at doListen (net.js:1498:7)
    at processTicksAndRejections (internal/process/task_queues.js:85:21)
Error: listen EPROTONOSUPPORT: protocol not supported ::1:40772
    at Server.setupListenHandle [as _listen2] (net.js:1296:21)
    at listenInCluster (net.js:1361:12)
    at doListen (net.js:1498:7)
    at processTicksAndRejections (internal/process/task_queues.js:85:21)
2020-09-22T15:31:33.142+09:00 info: TunerDevice#0 streaming to user `Mirakurun:getServices()` (priority=-1)
2020-09-22T15:31:44.691+09:00 info: TSFilter has closed (serviceId=null, eventId=null)

後からぐぐって分かったけど、こうらしい。

root@mirakurun:~ # cd /usr/local/lib/node_modules/mirakurun/
root@mirakurun:/usr/local/lib/node_modules/mirakurun # pm2 start processes.json
[PM2][WARN] Applications mirakurun-server not running, starting...
[PM2][WARN] Folder does not exist: /usr/local/var/log
[PM2] Creating folder: /usr/local/var/log
[PM2][WARN] Folder does not exist: /usr/local/var/log
[PM2] Creating folder: /usr/local/var/log
[PM2][WARN] Folder does not exist: /usr/local/var/run
[PM2] Creating folder: /usr/local/var/run
[PM2] App [mirakurun-server] launched (1 instances)
テスト

mirakurun を使って VLC でテレビを視聴する。 | 妄想日記 by 妄想エンジン
にならって、WindowsVLCからアクセスしてみる。

メディア>ネットワークストリームを開く(Ctrl+N)
http://192.168.0.13:40772/api/channels/GR/21/services/1056/stream/

おぉ。できた。。すばらしい。。

jail(iocage)で、録画サーバその2

続き。jail内でffmpeg+vaapiを動かす件。
試行錯誤したのをはしょってるけど当初エラーが出てて、検索すると、dev/drm/0のデバイス番号が0x180以下になるようにkldのロード順を調整しろ、みたいなのがあって悩んだ。
結局うちでは関係なかったようで、ポイントは下記:

  • devfsで、jail内にdriとdrmを公開
  • libva-intel-driver と libva-intel-media-driver は、jail内にも必要(drm-kmodは親だけでOK)
iocage

prison作るところから。

# iocage create -n recorder -r 12.1-RELEASE
recorder successfully created!
# vi /etc/devfs.rules
(こんな内容で)

[devfsrules_qsv=5]
add include $devfsrules_hide_all
add include $devfsrules_unhide_basic
add include $devfsrules_unhide_login
add path zfs unhide
add path dri unhide
add path 'dri/*' unhide
add path drm unhide
add path 'drm/*' unhide

最初の4行は、include $devfsrules_jailでいい気がするけど、それだと全デバイス出てきてしまった。
これを読み込んで、続行。

# service devfs restart
# iocage set devfs_ruleset=5 recorder
devfs_ruleset: 4 -> 5
# iocage set ip4_addr="em0|192.168.0.12/24" recorder
ip4_addr: none -> em0|192.168.0.12/24
root@rose:~ # iocage start recorder
* Starting recorder
  + Started OK
  + Using devfs_ruleset: 1001 (cloned from devfs_ruleset 5)
  + Using IP options: ip4.addr=em0|192.168.0.12/24 ip4.saddrsel=1 ip4=new ip6.saddrsel=1 ip6=new
  + Starting services OK
  + Executing poststart OK
ffmpeg

ここからjail内で。

root@recorder:~ # pkg install ffmpeg
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y
Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/FreeBSD:12:amd64/quarterly, please wait...
Verifying signature with trusted certificate pkg.freebsd.org.2013102301... done
[recorder] Installing pkg-1.14.6...
[recorder] Extracting pkg-1.14.6: 100%
Updating FreeBSD repository catalogue...
[recorder] Fetching meta.conf: 100%    163 B   0.2kB/s    00:01
[recorder] Fetching packagesite.txz: 100%    6 MiB   6.6MB/s    00:01
Processing entries: 100%
FreeBSD repository update completed. 32007 packages processed.
All repositories are up to date.
Updating database digests format: 100%
The following 57 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        aom: 2.0.0_1
        argp-standalone: 1.3_4
        ca_root_nss: 3.56
        dav1d: 0.7.1
        expat: 2.2.8
        ffmpeg: 4.3.1,1
        fontconfig: 2.13.92_2,1
        freetype2: 2.10.2
        fribidi: 0.19.7
        gettext-runtime: 0.20.2
        glib: 2.56.3_8,1
        gmp: 6.2.0
        gnutls: 3.6.15
        graphite2: 1.3.14
        harfbuzz: 2.6.8
        indexinfo: 0.3.1
        jpeg-turbo: 2.0.4
        libX11: 1.6.12,1
        libXau: 1.0.9
        libXdmcp: 1.1.3
        libXext: 1.3.4,1
        libXfixes: 5.0.3_2
        libass: 0.14.0
        libdrm: 2.4.102,1
        libepoll-shim: 0.0.20200602
        libffi: 3.2.1_3
        libiconv: 1.16
        libidn2: 2.3.0_1
        libogg: 1.3.4,4
        libpciaccess: 0.16
        libpthread-stubs: 0.4
        libtasn1: 4.16.0
        libtheora: 1.1.1_7
        libudev-devd: 0.4.2
        libunistring: 0.9.10_1
        libv4l: 1.18.0
        libva: 2.8.0
        libvdpau: 1.4
        libvorbis: 1.3.6_1,3
        libvpx: 1.8.2_1
        libx264: 0.159.2999
        libxcb: 1.13.1
        libxml2: 2.9.10
        nettle: 3.6
        opencv-core: 3.4.1_33
        opus: 1.3.1
        p11-kit: 0.23.20
        pciids: 20200529
        pcre: 8.44
        python37: 3.7.9
        readline: 8.0.4
        tpm-emulator: 0.7.4_2
        trousers: 0.3.14_3
        wayland: 1.18.0_3
        x265: 3.2.1_3
        xorgproto: 2020.1
        xvid: 1.3.7,1

Number of packages to be installed: 57

The process will require 356 MiB more space.
62 MiB to be downloaded.

Proceed with this action? [y/N]: y
[recorder] [1/57] Fetching ffmpeg-4.3.1,1.txz: 100%   15 MiB  16.1MB/s    00:01
[recorder] [2/57] Fetching libxcb-1.13.1.txz: 100%    1 MiB   1.1MB/s    00:01
[recorder] [3/57] Fetching libXdmcp-1.1.3.txz: 100%   14 KiB  14.5kB/s    00:01
[recorder] [4/57] Fetching xorgproto-2020.1.txz: 100%  217 KiB 222.6kB/s    00:01
[recorder] [5/57] Fetching libXau-1.0.9.txz: 100%   11 KiB  11.4kB/s    00:01
[recorder] [6/57] Fetching libxml2-2.9.10.txz: 100%  827 KiB 846.9kB/s    00:01
[recorder] [7/57] Fetching libpthread-stubs-0.4.txz: 100%    2 KiB   2.0kB/s    00:01
[recorder] [8/57] Fetching libX11-1.6.12,1.txz: 100%    2 MiB   1.7MB/s    00:01
[recorder] [9/57] Fetching fontconfig-2.13.92_2,1.txz: 100%  380 KiB 389.4kB/s    00:01
[recorder] [10/57] Fetching expat-2.2.8.txz: 100%  124 KiB 126.9kB/s    00:01
[recorder] [11/57] Fetching freetype2-2.10.2.txz: 100%    1 MiB   1.4MB/s    00:01
[recorder] [12/57] Fetching gettext-runtime-0.20.2.txz: 100%  161 KiB 165.1kB/s    00:01
[recorder] [13/57] Fetching indexinfo-0.3.1.txz: 100%    6 KiB   5.8kB/s    00:01
[recorder] [14/57] Fetching gnutls-3.6.15.txz: 100%    2 MiB   2.6MB/s    00:01
[recorder] [15/57] Fetching trousers-0.3.14_3.txz: 100%  476 KiB 487.9kB/s    00:01
[recorder] [16/57] Fetching tpm-emulator-0.7.4_2.txz: 100%  114 KiB 116.6kB/s    00:01
[recorder] [17/57] Fetching gmp-6.2.0.txz: 100%  478 KiB 489.3kB/s    00:01
[recorder] [18/57] Fetching p11-kit-0.23.20.txz: 100%  438 KiB 448.8kB/s    00:01
[recorder] [19/57] Fetching libtasn1-4.16.0.txz: 100%  599 KiB 613.7kB/s    00:01
[recorder] [20/57] Fetching ca_root_nss-3.56.txz: 100%  285 KiB 291.5kB/s    00:01
[recorder] [21/57] Fetching libffi-3.2.1_3.txz: 100%   35 KiB  35.3kB/s    00:01
[recorder] [22/57] Fetching nettle-3.6.txz: 100%    1 MiB   1.3MB/s    00:01
[recorder] [23/57] Fetching libidn2-2.3.0_1.txz: 100%  110 KiB 112.9kB/s    00:01
[recorder] [24/57] Fetching libunistring-0.9.10_1.txz: 100%  528 KiB 540.3kB/s    00:01
[recorder] [25/57] Fetching xvid-1.3.7,1.txz: 100%  280 KiB 286.7kB/s    00:01
[recorder] [26/57] Fetching x265-3.2.1_3.txz: 100%    2 MiB   1.9MB/s    00:01
[recorder] [27/57] Fetching libx264-0.159.2999.txz: 100%  676 KiB 692.6kB/s    00:01
[recorder] [28/57] Fetching libvpx-1.8.2_1.txz: 100%    1 MiB   1.4MB/s    00:01
[recorder] [29/57] Fetching libvdpau-1.4.txz: 100%   56 KiB  57.4kB/s    00:01
[recorder] [30/57] Fetching libXext-1.3.4,1.txz: 100%   95 KiB  97.1kB/s    00:01
[recorder] [31/57] Fetching libva-2.8.0.txz: 100%  148 KiB 151.5kB/s    00:01
[recorder] [32/57] Fetching libXfixes-5.0.3_2.txz: 100%   15 KiB  15.2kB/s    00:01
[recorder] [33/57] Fetching wayland-1.18.0_3.txz: 100%  119 KiB 121.8kB/s    00:01
[recorder] [34/57] Fetching libepoll-shim-0.0.20200602.txz: 100%   18 KiB  18.3kB/s    00:01
[recorder] [35/57] Fetching libdrm-2.4.102,1.txz: 100%  238 KiB 244.2kB/s    00:01
[recorder] [36/57] Fetching libpciaccess-0.16.txz: 100%   22 KiB  22.1kB/s    00:01
[recorder] [37/57] Fetching pciids-20200529.txz: 100%  211 KiB 216.2kB/s    00:01
[recorder] [38/57] Fetching libv4l-1.18.0.txz: 100%  363 KiB 372.1kB/s    00:01
[recorder] [39/57] Fetching jpeg-turbo-2.0.4.txz: 100%  342 KiB 350.3kB/s    00:01
[recorder] [40/57] Fetching libudev-devd-0.4.2.txz: 100%   15 KiB  14.9kB/s    00:01
[recorder] [41/57] Fetching argp-standalone-1.3_4.txz: 100%   34 KiB  34.6kB/s    00:01
[recorder] [42/57] Fetching libtheora-1.1.1_7.txz: 100%  169 KiB 173.6kB/s    00:01
[recorder] [43/57] Fetching libvorbis-1.3.6_1,3.txz: 100%  342 KiB 350.0kB/s    00:01
[recorder] [44/57] Fetching libogg-1.3.4,4.txz: 100%  192 KiB 196.7kB/s    00:01
[recorder] [45/57] Fetching libass-0.14.0.txz: 100%  136 KiB 139.1kB/s    00:01
[recorder] [46/57] Fetching harfbuzz-2.6.8.txz: 100%  697 KiB 714.2kB/s    00:01
[recorder] [47/57] Fetching graphite2-1.3.14.txz: 100%  101 KiB 103.3kB/s    00:01
[recorder] [48/57] Fetching glib-2.56.3_8,1.txz: 100%    3 MiB   3.2MB/s    00:01
[recorder] [49/57] Fetching python37-3.7.9.txz: 100%   16 MiB  16.8MB/s    00:01
[recorder] [50/57] Fetching readline-8.0.4.txz: 100%  354 KiB 362.8kB/s    00:01
[recorder] [51/57] Fetching pcre-8.44.txz: 100%    1 MiB   1.3MB/s    00:01
[recorder] [52/57] Fetching libiconv-1.16.txz: 100%  608 KiB 622.3kB/s    00:01
[recorder] [53/57] Fetching fribidi-0.19.7.txz: 100%   80 KiB  82.0kB/s    00:01
[recorder] [54/57] Fetching dav1d-0.7.1.txz: 100%  376 KiB 385.3kB/s    00:01
[recorder] [55/57] Fetching aom-2.0.0_1.txz: 100%    3 MiB   3.1MB/s    00:01
[recorder] [56/57] Fetching opencv-core-3.4.1_33.txz: 100%    2 MiB   2.2MB/s    00:01
[recorder] [57/57] Fetching opus-1.3.1.txz: 100%  328 KiB 336.1kB/s    00:01
Checking integrity... done (0 conflicting)
[recorder] [1/57] Installing xorgproto-2020.1...
[recorder] [1/57] Extracting xorgproto-2020.1: 100%
[recorder] [2/57] Installing indexinfo-0.3.1...
[recorder] [2/57] Extracting indexinfo-0.3.1: 100%
[recorder] [3/57] Installing libXdmcp-1.1.3...
[recorder] [3/57] Extracting libXdmcp-1.1.3: 100%
[recorder] [4/57] Installing libXau-1.0.9...
[recorder] [4/57] Extracting libXau-1.0.9: 100%
[recorder] [5/57] Installing libxml2-2.9.10...
[recorder] [5/57] Extracting libxml2-2.9.10: 100%
[recorder] [6/57] Installing libpthread-stubs-0.4...
[recorder] [6/57] Extracting libpthread-stubs-0.4: 100%
[recorder] [7/57] Installing gettext-runtime-0.20.2...
[recorder] [7/57] Extracting gettext-runtime-0.20.2: 100%
[recorder] [8/57] Installing libffi-3.2.1_3...
[recorder] [8/57] Extracting libffi-3.2.1_3: 100%
[recorder] [9/57] Installing readline-8.0.4...
[recorder] [9/57] Extracting readline-8.0.4: 100%
[recorder] [10/57] Installing libxcb-1.13.1...
[recorder] [10/57] Extracting libxcb-1.13.1: 100%
[recorder] [11/57] Installing gmp-6.2.0...
[recorder] [11/57] Extracting gmp-6.2.0: 100%
[recorder] [12/57] Installing pciids-20200529...
[recorder] [12/57] Extracting pciids-20200529: 100%
[recorder] [13/57] Installing python37-3.7.9...
[recorder] [13/57] Extracting python37-3.7.9: 100%
[recorder] [14/57] Installing pcre-8.44...
[recorder] [14/57] Extracting pcre-8.44: 100%
[recorder] [15/57] Installing libiconv-1.16...
[recorder] [15/57] Extracting libiconv-1.16: 100%
[recorder] [16/57] Installing libX11-1.6.12,1...
[recorder] [16/57] Extracting libX11-1.6.12,1: 100%
[recorder] [17/57] Installing expat-2.2.8...
[recorder] [17/57] Extracting expat-2.2.8: 100%
[recorder] [18/57] Installing freetype2-2.10.2...
[recorder] [18/57] Extracting freetype2-2.10.2: 100%
[recorder] [19/57] Installing tpm-emulator-0.7.4_2...
===> Creating groups.
Creating group '_tss' with gid '601'.
===> Creating users
Creating user '_tss' with uid '601'.
[recorder] [19/57] Extracting tpm-emulator-0.7.4_2: 100%
[recorder] [20/57] Installing libtasn1-4.16.0...
[recorder] [20/57] Extracting libtasn1-4.16.0: 100%
[recorder] [21/57] Installing ca_root_nss-3.56...
[recorder] [21/57] Extracting ca_root_nss-3.56: 100%
[recorder] [22/57] Installing libunistring-0.9.10_1...
[recorder] [22/57] Extracting libunistring-0.9.10_1: 100%
[recorder] [23/57] Installing libepoll-shim-0.0.20200602...
[recorder] [23/57] Extracting libepoll-shim-0.0.20200602: 100%
[recorder] [24/57] Installing libpciaccess-0.16...
[recorder] [24/57] Extracting libpciaccess-0.16: 100%
[recorder] [25/57] Installing libogg-1.3.4,4...
[recorder] [25/57] Extracting libogg-1.3.4,4: 100%
[recorder] [26/57] Installing graphite2-1.3.14...
[recorder] [26/57] Extracting graphite2-1.3.14: 100%
[recorder] [27/57] Installing glib-2.56.3_8,1...
[recorder] [27/57] Extracting glib-2.56.3_8,1: 100%
No schema files found: doing nothing.
[recorder] [28/57] Installing fontconfig-2.13.92_2,1...
[recorder] [28/57] Extracting fontconfig-2.13.92_2,1: 100%
Running fc-cache to build fontconfig cache...
Font directories:
        /usr/local/share/fonts
        /usr/local/lib/X11/fonts
/usr/local/share/fonts: skipping, no such directory
/usr/local/lib/X11/fonts: skipping, no such directory
/var/db/fontconfig: cleaning cache directory
fc-cache: succeeded
[recorder] [29/57] Installing trousers-0.3.14_3...
===> Creating groups.
Using existing group '_tss'.
===> Creating users
Using existing user '_tss'.
[recorder] [29/57] Extracting trousers-0.3.14_3: 100%
[recorder] [30/57] Installing p11-kit-0.23.20...
[recorder] [30/57] Extracting p11-kit-0.23.20: 100%
[recorder] [31/57] Installing nettle-3.6...
[recorder] [31/57] Extracting nettle-3.6: 100%
[recorder] [32/57] Installing libidn2-2.3.0_1...
[recorder] [32/57] Extracting libidn2-2.3.0_1: 100%
[recorder] [33/57] Installing libXext-1.3.4,1...
[recorder] [33/57] Extracting libXext-1.3.4,1: 100%
[recorder] [34/57] Installing libXfixes-5.0.3_2...
[recorder] [34/57] Extracting libXfixes-5.0.3_2: 100%
[recorder] [35/57] Installing wayland-1.18.0_3...
[recorder] [35/57] Extracting wayland-1.18.0_3: 100%
[recorder] [36/57] Installing libdrm-2.4.102,1...
[recorder] [36/57] Extracting libdrm-2.4.102,1: 100%
[recorder] [37/57] Installing jpeg-turbo-2.0.4...
[recorder] [37/57] Extracting jpeg-turbo-2.0.4: 100%
[recorder] [38/57] Installing libudev-devd-0.4.2...
[recorder] [38/57] Extracting libudev-devd-0.4.2: 100%
[recorder] [39/57] Installing argp-standalone-1.3_4...
[recorder] [39/57] Extracting argp-standalone-1.3_4: 100%
[recorder] [40/57] Installing libvorbis-1.3.6_1,3...
[recorder] [40/57] Extracting libvorbis-1.3.6_1,3: 100%
[recorder] [41/57] Installing harfbuzz-2.6.8...
[recorder] [41/57] Extracting harfbuzz-2.6.8: 100%
[recorder] [42/57] Installing fribidi-0.19.7...
[recorder] [42/57] Extracting fribidi-0.19.7: 100%
[recorder] [43/57] Installing gnutls-3.6.15...
[recorder] [43/57] Extracting gnutls-3.6.15: 100%
[recorder] [44/57] Installing xvid-1.3.7,1...
[recorder] [44/57] Extracting xvid-1.3.7,1: 100%
[recorder] [45/57] Installing x265-3.2.1_3...
[recorder] [45/57] Extracting x265-3.2.1_3: 100%
[recorder] [46/57] Installing libx264-0.159.2999...
[recorder] [46/57] Extracting libx264-0.159.2999: 100%
[recorder] [47/57] Installing libvpx-1.8.2_1...
[recorder] [47/57] Extracting libvpx-1.8.2_1: 100%
[recorder] [48/57] Installing libvdpau-1.4...
[recorder] [48/57] Extracting libvdpau-1.4: 100%
[recorder] [49/57] Installing libva-2.8.0...
[recorder] [49/57] Extracting libva-2.8.0: 100%
[recorder] [50/57] Installing libv4l-1.18.0...
[recorder] [50/57] Extracting libv4l-1.18.0: 100%
[recorder] [51/57] Installing libtheora-1.1.1_7...
[recorder] [51/57] Extracting libtheora-1.1.1_7: 100%
[recorder] [52/57] Installing libass-0.14.0...
[recorder] [52/57] Extracting libass-0.14.0: 100%
[recorder] [53/57] Installing dav1d-0.7.1...
[recorder] [53/57] Extracting dav1d-0.7.1: 100%
[recorder] [54/57] Installing aom-2.0.0_1...
[recorder] [54/57] Extracting aom-2.0.0_1: 100%
[recorder] [55/57] Installing opencv-core-3.4.1_33...
[recorder] [55/57] Extracting opencv-core-3.4.1_33: 100%
[recorder] [56/57] Installing opus-1.3.1...
[recorder] [56/57] Extracting opus-1.3.1: 100%
[recorder] [57/57] Installing ffmpeg-4.3.1,1...
続きを読む

jail(iocage)で、録画サーバその1

ずーっと、foltiaに手を入れた私家版を運用してたのだけど、最近はもっぱらregzaタイムマシンとdアニメで、ほとんど使ってなかった。
アニメはdアニメとPrimeビデオで何とかなる気がするので、今回はmirakurunとかEPGstationにいってみようかと思うけど、さてどうなるか。

なにはともあれ、PT3ドライバ。

ptx
$ git clone https://github.com/Piro77/fbsdpt3.git
$ cd fbsdpt3
$ make
# make install
# echo 'ptx_load="YES"' >> /boot/loader.conf
# kldload ptx

うお。ふっ飛んだ。

ptx0: <EARTHSOFT PT3> mem 0xf0001000-0xf0001fff,0xf0000000-0xf0000fff at device 0.0 on pci2
ptx0: fail i2c run_code status 0x32
ptx0: retry init_tuner
ptx0: fail i2c run_code status 0x32
ptx0: retry init_tuner
ptx0: alloc_dmabuf: bus_dmamem_alloc returned 12
ptx0: fail allocate consistent. 2


Fatal trap 12: page fault while in kernel mode
cpuid = 0: apic id = 00
fault virtual address   = 0xffff804000004000
fault code              = supervisor read data, page not present
instruction pointer     = 0x20:0xffffffff81091fdc
stack pointer           = 0x28:0xfffffe002d52f390
frame pointer           = 0x28:0xfffffe002d52f390
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 80037 (kldload)
trap number             = 12
panic: page fault
cpuid = 0
time = 1600677155
KDB: stack backtrace:
#0 0xffffffff80c1d207 at kdb_backtrace+0x67
#1 0xffffffff80bd053d at vpanic+0x19d
#2 0xffffffff80bd0393 at panic+0x43
#3 0xffffffff810a8dcc at trap_fatal+0x39c
#4 0xffffffff810a8e19 at trap_pfault+0x49
#5 0xffffffff810a840f at trap+0x29f
#6 0xffffffff8108221c at calltrap+0x8
#7 0xffffffff80bab560 at free+0x30
#8 0xffffffff82f61117 at free_pt3_dma+0x1b7
#9 0xffffffff82f60e6d at create_pt3_dma+0x1dd
#10 0xffffffff82f62181 at pat3_init+0xba1
#11 0xffffffff82f5835a at ptx_attach+0x24a
#12 0xffffffff80c0c091 at device_attach+0x3e1
#13 0xffffffff80c0bc92 at device_probe_and_attach+0x42
#14 0xffffffff80821c56 at pci_driver_added+0xe6
#15 0xffffffff80c09c3a at dvclass_driver_added+0x7a
#16 0xffffffff80c09b9a at devclass_add_driver+0x16a
#17 0xffffffff80baece4 at module_register_init+0xa4

retry init_tunerになって吹っ飛んだので、アンテナ線をつないでなかったから?ということで、アンテナと接続してから再起動。

Copyright (c) 1992-2019 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 12.1-RELEASE-p9 GENERIC amd64
FreeBSD clang version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1)
VT(efifb): resolution 1024x768
CPU: Intel(R) Celeron(R) CPU G1820 @ 2.70GHz (2693.83-MHz K8-class CPU)
  Origin="GenuineIntel"  Id=0x306c3  Family=0x6  Model=0x3c  Stepping=3
  Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,S
SE,SSE2,SS,HTT,TM,PBE>
・・・省略・・・
ptx0: <EARTHSOFT PT3> mem 0xf0001000-0xf0001fff,0xf0000000-0xf0000fff at device 0.0 on pci2
ptx0: fail i2c run_code status 0x32
ptx0: retry init_tuner
ptx0: fail i2c run_code status 0x32
ptx0: retry init_tuner

あら。起動したけど同じメッセージ。boot時の組み込みはOK、起動後のkldloadはNG、なのかしら。まあいいや。

QSV

QSVが使えるという話をみかけた。
FreeBSD と vaapi であそぶ。 | 妄想日記 by 妄想エンジン

うちはCeleron G1820で、どうやらいけそう。
QSV対応CPU一覧 - 記憶は人なり

書いてあるとおりだけど

# pkg install libva-intel-driver libva-intel-media-driver libva-utils drm-kmod
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 15 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        drm-fbsd12.0-kmod: 4.16.g20200221
        drm-kmod: g20190710
        gmmlib: 20.2.2
        gpu-firmware-kmod: g20200503
        libXext: 1.3.4,1
        libXfixes: 5.0.3_2
        libdrm: 2.4.102,1
        libepoll-shim: 0.0.20200602
        libpciaccess: 0.16
        libva: 2.8.0
        libva-intel-driver: 2.4.1
        libva-intel-media-driver: 20.2.0
        libva-utils: 2.8.0
        pciids: 20200529
        wayland: 1.18.0_3

Number of packages to be installed: 15

The process will require 267 MiB more space.
38 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/15] Fetching libva-intel-driver-2.4.1.txz: 100%  898 KiB 919.7kB/s    00:01
[2/15] Fetching libva-intel-media-driver-20.2.0.txz: 100%   30 MiB   7.8MB/s    00:04
[3/15] Fetching libva-utils-2.8.0.txz: 100%  446 KiB 456.6kB/s    00:01
[4/15] Fetching drm-kmod-g20190710.txz: 100%    812 B   0.8kB/s    00:01
[5/15] Fetching libva-2.8.0.txz: 100%  148 KiB 151.5kB/s    00:01
[6/15] Fetching libXfixes-5.0.3_2.txz: 100%   15 KiB  15.2kB/s    00:01
[7/15] Fetching libXext-1.3.4,1.txz: 100%   95 KiB  97.1kB/s    00:01
[8/15] Fetching wayland-1.18.0_3.txz: 100%  119 KiB 121.8kB/s    00:01
[9/15] Fetching libepoll-shim-0.0.20200602.txz: 100%   18 KiB  18.3kB/s    00:01
[10/15] Fetching libdrm-2.4.102,1.txz: 100%  238 KiB 244.2kB/s    00:01
[11/15] Fetching libpciaccess-0.16.txz: 100%   22 KiB  22.1kB/s    00:01
[12/15] Fetching pciids-20200529.txz: 100%  211 KiB 216.2kB/s    00:01
[13/15] Fetching gmmlib-20.2.2.txz: 100%  190 KiB 195.0kB/s    00:01
[14/15] Fetching drm-fbsd12.0-kmod-4.16.g20200221.txz: 100%    2 MiB   2.1MB/s    00:01
[15/15] Fetching gpu-firmware-kmod-g20200503.txz: 100%    4 MiB   4.6MB/s    00:01
Checking integrity... done (0 conflicting)
[1/15] Installing pciids-20200529...
[1/15] Extracting pciids-20200529: 100%
[2/15] Installing libepoll-shim-0.0.20200602...
[2/15] Extracting libepoll-shim-0.0.20200602: 100%
[3/15] Installing libpciaccess-0.16...
[3/15] Extracting libpciaccess-0.16: 100%
[4/15] Installing libXfixes-5.0.3_2...
[4/15] Extracting libXfixes-5.0.3_2: 100%
[5/15] Installing libXext-1.3.4,1...
[5/15] Extracting libXext-1.3.4,1: 100%
[6/15] Installing wayland-1.18.0_3...
[6/15] Extracting wayland-1.18.0_3: 100%
[7/15] Installing libdrm-2.4.102,1...
[7/15] Extracting libdrm-2.4.102,1: 100%
[8/15] Installing gpu-firmware-kmod-g20200503...
[8/15] Extracting gpu-firmware-kmod-g20200503: 100%
[9/15] Installing libva-2.8.0...
[9/15] Extracting libva-2.8.0: 100%
[10/15] Installing gmmlib-20.2.2...
[10/15] Extracting gmmlib-20.2.2: 100%
[11/15] Installing drm-fbsd12.0-kmod-4.16.g20200221...
[11/15] Extracting drm-fbsd12.0-kmod-4.16.g20200221: 100%
[12/15] Installing libva-intel-driver-2.4.1...
[12/15] Extracting libva-intel-driver-2.4.1: 100%
[13/15] Installing libva-intel-media-driver-20.2.0...
[13/15] Extracting libva-intel-media-driver-20.2.0: 100%
[14/15] Installing libva-utils-2.8.0...
[14/15] Extracting libva-utils-2.8.0: 100%
続きを読む

jail(iocage)で、なろう>mobiその2

その1に続けて、もろもろインストール。
どうも、iocage pkgコマンドは、pkgコマンドのキー入力待ちでプロンプト表示せずに停止しちゃうっぽい。-yオプション付きで自動インストールさせればOK。

iocage

外と通信できるよう、ipaddrを割り当てして、起動。

# iocage set ip4_addr="em0|192.168.0.11/24" narou
# iocage start narou
openjdk8
# iocage pkg narou install -y openjdk8-jre
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 29 package(s) will be affected (of 0 checked):
続きを読む