おはようございます!

上差し木々の紅葉がだいぶ進んできましたね。右差し 群馬県庁32階のライブカメラにリンクを張ってあります。

2023年の成果(趣味編)の候補選定を始めました。
MiniBrowserのビルド & 起動 右差し 年初の今年を目標を達成!!
を先ず挙げたいと思います。


WebKit(ウェブキット)は、Appleが中心となって開発しているオープンソースのHTMLレンダリングエンジン群の総称です。HTML、CSS、JavaScript、SVG、MathMLなどを解釈します。

WebKitは、元々AppleのmacOSに搭載されるSafari(組み込みブラウザ)のレンダリングエンジンとして、LinuxやBSDといった、Unix系用※のレンダリングエンジンであるKHTMLをフォークして開発されたそうです。
※ 私の場合は、Ubuntu(Linuxの亜流のOS)です。


上差しXサーバー(ROCK 5B)上のMiniBrowser@Ubuntu 20.04 LTS(ARM64)を、Xクライアントから起動した様子

ROCK 5B(16GB)の調達 右差しネイティブビルドにはRAMが、16GBでも足りない。。。
それから、AX210NGWの技適に関して

https://www.intel.com/content/dam/support/us/en/documents/wireless/ax210-regulatory-webflyer-ccg.pd
なので、技適を通ているとの認識です。但し、wifiユニットに関してのことなのでアンテナ込みだと様子が違うかも?という懸念が残る。。。

に届け出を出します。

上差し【ログイン認証できない】
マイナンバーカード自体の問題ではないと思いますが、
登録済のメールアドレスを変更する際に、登録済のメールアドレスが使用出来る前提で認証が行われる。
困ったことに、登録済のメールアドレスが既に使用できない(登録済のメールアドレスでワンタイムパスワードを受信できない。)場合に、苦戦しました。
右差し システムの課題なのか、個人のリテラシー不足なのか。。。このようなところが、課題なのだと思います。

届け出番号、使用開始から期限の書かれた受付メールを受信して一応、届け出完了です。


以下私の環境でのメモです。【工事中】

<<Last update 2023/11/23>>
WebKitGTK+ を Focal Fossa Ubuntu(20.04 LTS)で、ROCK 5B(16GB)ビルド & 起動する方法です。
https://qiita.com/keyi8773/items/30e3725bd7c98cf99d2c

を参考にさせて頂きました。

【環境の準備】
イメージ:Mini SDCard 64GB以上
https://github.com/radxa/debos-radxa/releases/download/20230201-0944/rock-5b-ubuntu-focal-server-arm64-20230201-1200-gpt.img.xz
及び、初期的な設定は完了している前提
右差しソースコード一式は、

を参照願います。

PowerShellからSSHで入って、
rockでログイン:

【CMake最新版インストール】
https://self-development.info/%E3%80%90ubuntu%E3%80%91%E6%9C%80%E6%96%B0%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3cmake%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/

を参照願います。

sudo apt-get -y install ninja-build
sudo apt-get update
sudo apt-get upgrade

【release tarball のダウンロード】
https://ubuntu.pkgs.org/20.04/ubuntu-main-arm64/gir1.2-webkit2-4.0_2.28.1-1_arm64.deb.html
を参照のこと。

webkitgtk-2.28.1.tar.gz
https://webkitgtk.org/releases/ から webkitgtk-2.28.1 をダウンロードして解凍する。

sudo wget https://webkitgtk.org/releases/webkitgtk-2.28.1.tar.xz

sudo xz -dv webkitgtk-2.28.1.tar.xz
sudo tar xfv webkitgtk-2.28.1.tar

【GCC のバージョンアップ】
C/C++ コンパイラ,Python 3 ヘッダファイル・ライブラリ等のインストール
sudo apt -y update && sudo apt -y install build-essential python3-dev python3-pip

gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0です。

【必要パッケージのインストール】
cd ./webkitgtk-2.28.1
sudo Tools/gtk/install-dependencies
sudo apt install ruby-dev libenchant-dev libwoff-dev

sudo apt-get install xdg-dbus-proxy

sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

sudo apt-get install -y libenchant-2-dev

【ビルド】
メモリ消費を考えると、ローカルコンソールからの操作が望ましいかも。
https://trac.webkit.org/wiki/WPE
を参照のこと。
###
To build WPE WebKit, you need to install two dependencies first (both available ?here):

libwpe (previously known as libWPEBackend): this is the base library for WPE abstractions to provide platform EGL surfaces and handling input;
WPEBackend-fdo: this is the reference WPE backend implementation, using freedesktop.org technologies and used for testing upstream WPE.
###

sudo cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja -DENABLE_MINIBROWSER=ON
→追加、アップデートが必要なパッケージは、各環境に依存

<CMakeに必要なパッケージの入手:ここから>
sudo apt-get install libcairo2-dev libxt-dev
sudo apt-get install -y libgcrypt-dev
sudo apt-get install libgtk-3-dev
sudo apt-get install -y libjpeg-dev
sudo apt-get install -y libsoup-gnome2.4-dev
sudo apt install webp
sudo apt install libwebp-dev
### libwpe
sudo wget https://wpewebkit.org/releases/libwpe-1.14.0.tar.xz
sudo xz -dv libwpe-1.14.0.tar.xz
sudo tar xfv libwpe-1.14.0.tar
cd libwpe-1.14.0
sudo cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja
sudo ninja
sudo ninja install
を実施した。
###

### libwpebackend-fdo 
wpe/fdo-egl.hが見つからないと言われたら、以下を実施 
sudo apt-get install libwpebackend-fdo-1.0-dev

 

sudo wget http://archive.ubuntu.com/ubuntu/pool/universe/w/wpebackend-fdo/wpebackend-fdo_1.6.0.orig.tar.xz
sudo xz -dv wpebackend-fdo_1.6.0.orig.tar.xz
sudo tar xfv wpebackend-fdo_1.6.0.orig.tar
cd wpebackend-fdo_1.6.0
sudo cmake -DPORT=WPE -DCMAKE_BUILD_TYPE=RelWithDebInfo -GNinja
sudo ninja
sudo ninja install


### 以下ビルド時に叱られたら実施
sudo apt-get install -y libxslt-dev
sudo apt install libsecret-1-dev
sudo apt-get install -y gobject-introspection
sudo apt install libgirepository1.0-dev
sudo apt -y install libtasn1-dev
sudo apt-get install -y libxt-dev
sudo apt-get install -y libnotify-dev
sudo apt-get install libhyphen-dev
sudo apt-get install pkg-config valgrind emacs-nox libltdl-dev libtiff-tools exiftool git git-lfs cmake liblcms2-dev libtiff-dev libpng-dev libheif1 libheif-dev libz-dev unzip libzstd-dev libwebp-dev build-essential hwinfo
sudo apt-get install python3-jpylyzer
sudo apt-get install libopenjp2-7-dev
sudo apt-get install -y bubblewrap
sudo apt-get install -y libseccomp-dev
sudo apt-get install xdg-dbus-proxy
sudo apt-get install -y gperf
<CMakeに必要なパッケージの入手:ここまで>

sudo ninja
→初回Build/2回目以降linkingにとっても時間が掛かる。

sudo ninja install

※ RAM 16GBでも瞬間的にメモリ不足になる場合がある。
  何回か繰り返すとビルドが通る。
      最後の残り70程度は Try & Errorを繰り返してペイシェントにビルド。

sudo apt install at-spi2-core
sudo apt -y update
sudo apt -yV upgrade
sudo shutdown -r now

【MiniBrowser を起動】
Xクライアント:
/home/rock/webkitgtk-2.28.1/bin/MiniBrowser

【日本語表示】
なのですが、その方法が確立出来ていない課題残

「ISO-8859-1(Latin1)」は西欧系の言語ですので、日本語に対応していません

 

の起動オプション
WebKitSettings writable properties for default WebKitWebView
--default-charset=gchararray 文字セットが指定されていないコンテンツの解釈に利用するデフォルトのテキスト文字セットです。


の辺りにヒントがありそうです。


language-pack-jaをインストール
sudo apt install language-pack-ja

その後に、emacsをインストールすると、
sudo apt install emacs
→ 日本語フォントがインストールされる様です。

sudo apt remove emacs
emacsをremoveしてもインストールされたフォントは、そのまま残る様だ。

/home/rock/webkitgtk-2.28.1/bin/MiniBrowser --default-charset=utf8
で起動すると、日本語表示可能

グッ

【参考】

 

 

【参照】