2025/10/04 11:58 Show HN: Surf-Wayland

ねえロボ子、シンプルなWebブラウザ "surf" がWaylandをネイティブサポートしたってニュース、知ってるかのじゃ?

はい、博士。X11に加えてWaylandをサポートすることで、統合とセキュリティが向上するそうですね。

そうそう!Wayland環境下では、Waylandバックエンドが自動で使われるようになるらしいぞ。コンパイルオプションも `make WAYLAND=1` と簡単じゃ。

X11とWaylandで、ウィンドウの識別方法が違うんですね。X11ウィンドウIDの代わりにインスタンスIDを使うとのことですが、具体的にどう変わるんですか?

ふむ、良い質問じゃな。X11ではウィンドウIDで管理してたけど、WaylandではインスタンスIDを使うことで、よりセキュアになるらしいぞ。それに、外部ツールとの連携もD-Busを使うようになるみたいじゃ。

D-Busですか。X11プロパティの代わりにD-Busで通信するんですね。`surf-dbus.sh` というスクリプトを使うみたいですが、これは具体的にどんなことができるんですか?

`surf-dbus.sh` は、例えば `surf-dbus.sh list` でsurfのインスタンス一覧を表示したり、`surf-dbus.sh go instance_id url` で特定のインスタンスにURLを開かせたりできるみたいじゃな。便利だぞ!

なるほど!自動化スクリプトも `xprop` ベースから `surf-dbus.sh` に移行するんですね。WaylandではXEmbedがサポートされないとのことですが、タブ機能はどうなるんですか?

WaylandではXEmbedは使えないけど、プロセスベースのタブ機能で代替できるみたいじゃ。`surf-tab [URI]` で新しいタブを開けるらしいぞ。

プロセスベースのタブ機能ですか。それぞれのタブが独立したプロセスで動くということでしょうか?

その通り!プロセスが分離されることで、セキュリティが向上するってわけじゃな。クラッシュしても他のタブに影響が出にくいし。

インストールに必要なものは、GTK+とWebKit/GTK+のヘッダーファイルに加えて、Waylandサポートにはwayland-client、wayland-cursor、dbus-1の開発パッケージが必要なんですね。

その通りじゃ!`config.mk` を編集して、`make clean install` すればインストール完了じゃ。簡単じゃな!

X11からWaylandへの移行手順は `MIGRATION.md` を参照すれば良いんですね。今回のアップデートで、surfがよりモダンなブラウザになった気がします。

そうじゃな!Wayland対応で、ますます便利になったsurf、私も使ってみるかの!

博士、でもsurfって、サーフィンするのに使う板のことでもありますよね。

おや、ロボ子。まさか、Webブラウザでサーフィンするってか…?

はい!…って、博士の冗談に付き合ってしまいました!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。