Open Source Projects

Dilloブラウザ3.3.0:新制御、ページアクション、FLTK 1.4対応

さて、Dilloがバージョン3.3.0をリリースした。今回は、実に興味深い仕掛けが隠されている。単なるブラウジングを超え、ブラウザを鈍器のように使いこなすレベルの話だ。

Key Takeaways

  • Dillo 3.3.0は、dillocユーティリティを使用して、UNIXソケット経由の強力なコマンドライン制御を追加した。
  • カスタマイズ可能な「ページアクション」により、ユーザーは高度な操作のためにページメニューにカスタムコマンドを定義できる。
  • FLTK 1.4の実験的なサポートが追加されたが、レンダリングの問題があり、デフォルトで有効にすべきではないと指摘されている。
  • Dilloのコアなプライバシー原則を侵害することなく、OAuthログインのためのプライバシー強化が実装された。
  • DilloはGitHubから、CodebergおよびSourceHutにミラーを持つ独自のセルフホストサーバーにGitリポジトリを移行した。

またブラウザのアップデートか、と思うかもしれない。だが、これは単なる見た目の変更ではない。ミニマルな心意気を貫くDilloが、バージョン3.3.0をひっそりとリリースし、その袖には実に興味深い仕掛けを隠しているのだ。単なるブラウジングはもう過去の話。ブラウザを鈍器のように使いこなす、そんなレベルの話になってくる。

コマンドと制御:Dillo、リモート制御を手に入れる

これが今回の目玉だ。Dillo 3.3.0は、UNIXソケット経由での制御を導入した。猫画像を見たいだけの一般ユーザーにとって、これは一体どういう意味を持つのか? それはスクリプト化であり、自動化だ。つまり、ターミナルからブラウザにページをリロードさせたり、URLを開かせたり、さらにはその内容をダンプさせたりすることが可能になったのだ。ここで主役となるのはdillocユーティリティ。dilloc helpと入力すれば、あなたの内なるシステム管理者の涙を誘うようなコマンドメニューが現れる。Dilloがまだ生きているか確認したい? dilloc pingでOK。現在のページのコンテンツを掴みたい? dilloc dumpで十分だ。少々野暮ったいが、強力だ。まさにオープンソースが champion すべき柔軟性そのものだ。

だが、ここで言っておくべきことがある。これはギークだけのものではない。コマンドラインツールから検索結果を自動取得し、Dilloに新しいタブでそれを読み込ませる、なんてことも想像できるだろう。あるいは、特定のウェブページを常に監視し、新しい情報が現れたらdilloc reloadでリロードするスクリプトだ。率直に言って、これほどシンプルなブラウザにしては、その可能性は少々 overwhelming だ。これは、多くの mainstream ブラウザが、まあ、広告や肥大化したインターフェースを優先するあまり、とうの昔に見捨ててしまったレベルの統合性だ。Dilloは、今もなお善戦を続けている。

ページアクション:ウェブにあなたの意思を遂行させる

そして、ページアクション。ページ上で右クリックすると、カスタムコマンドを定義できるようになる。ここからが本当に面白くなってくる。彼らの例は秀逸だ:「page_action="Mimic Chrome:curl_chrome136 $url | dilloc load"」。一体全体、これは何をするのか? 現在のURLを取得し、Chromeを装ってcurlでそれを取得(一部のJavaScript保護を回避するため)、そしてその新鮮なHTMLを直接Dilloにパイプする。要するに、Dilloに現在のページをリロードさせるが、それは disguise と特定の方法で行わせる、ということだ。確かにハックだが、美しく効果的なハックだ。これにより、厄介なペイウォールや、そうでなければあなたを追い返すJavaScriptの罠を回避できる。

この機能は、実用的なエンジニアリングの模範だ。あらゆるブラウザを完璧に模倣する複雑なJavaScriptエンジンを構築しようとするのではなく、彼らは制限を回避するためのツールを提供してくれた。まるで、シェフに錆びたナイフを与えて傑作を彫るように言い、そして彼らが実際にそれをやり遂げるようなものだ。

FLTK 1.4は一線を超えすぎか?

さて、FLTK 1.4のサポートについて。ここから私の懸念が少しだけ顔を出す。「実験的」というのがキーワードであり、それには十分な理由がある。X11で96 DPIの画面ではFLTK 1.3と同等のレンダリング品質を主張しているが、より高 DPI や Wayland ではレンダリングの問題があることを認めている。パッケージメンテナーへの警告は stark だ:「FLTK 1.4 サポートをデフォルトで有効にしないでください。」これは心臓の弱い人のための機能ではない。テスターのためのものだ。境界を押し広げ、ぼやけたフォントや一般的な視覚的な不快感を報告したい人のためのものだ。新しいツールキットに追いつこうとする努力は評価するが、これは安定した高速なブラウザを求めるユーザーにとっては、パンドラの箱になりかねない。この「実験的」というタグが、しばらくの間そのままであることを願おう。

OAuthの修正:重要な小さな勝利

あまり派手ではないが、それでも重要なのは、OAuthログインの修正だ。Dilloは常にプライバシーの champion であり、トラッキングを防ぐためにデフォルトでサードパーティCookieをブロックしている。しかし、これは正当な認証フローを壊す可能性がある。ここでの修正は賢い:ユーザーが開始したリクエスト後のメインページのリダイレクトからのCookieを許可することだ。これにより、Fediverse を Smolfedi 経由で利用する際の OAuth ログインが、Dillo のコアなプライバシー原則を侵害することなく機能するようになった。微妙な変更だが、Dilloを単なるブラウザの歴史の脚注以上のものにしているのは、このようなニュアンスのある決定なのだ。ユーザーを尊重するブラウザだ。

そして、スコアを付けている人のために言っておくと、彼らはGitHubからも移行した。コードは今や彼ら自身のサーバーにあり、CodebergとSourceHutにミラーがある。インフラストラクチャを自分たちで管理することにしたのは、彼らの功績だ。それ自体が表明だ。

では、Dillo 3.3.0の評価はどうか? Chromeに取って代わることはないだろう。ほとんどの人にとってFirefoxに取って代わることすらしないだろう。しかし、軽量で高速、そして極めてスクリプト化可能なブラウザを高く評価する人々にとっては、このリリースはsignificantなupgradeだ。dillocとページアクション機能は、今日では珍しいレベルの制御とカスタマイズ性を提供し、実にエキサイティングだ。FLTK 1.4の実験的なサポートからは、ピクセルとの戦いの準備ができていない限り、手を出さないようにしよう。

軽量ブラウジングにおけるゲームチェンジャーか?

インターネット全体という壮大な計画においては、まさに「ゲームチェンジャー」とまでは言えないだろう。しかし、Dilloが占めるニッチな領域においては、 massiveな飛躍だ。dilloc経由でブラウザを制御できる能力は、ほとんどの mainstream ブラウザでは単純に実現不可能な、高度にカスタマイズされたワークフローや自動化されたブラウジングタスクへの道を開く。パワーユーザー、ウェブスクレイピングスクリプトをテストする開発者、あるいはウェブコンテンツを素早く取得・表示する必要があるシステム管理者などを想像してみてほしい。特にページアクションは、一般的なウェブの煩わしさに対する巧妙な回避策を示しており、Dilloの機敏性と、すべてのウェブ標準への準拠よりもユーザーのエンパワーメントを優先する姿勢を際立たせている。スピードとシンプルさを何よりも優先してきたブラウザにとって、これは powerfulな声明だ。

開発者にとってなぜ重要なのか?

このリリースは、開発者にとっていくつかの重要な意味を持つ。第一に、dillocツールはDilloへのプログラムインターフェースを提供する。これは、開発者がDilloをテストスイートに統合したり、自動化されたウェブ監視ツールを構築したり、あるいはこれまでこのような軽量クライアントでは不可能だった方法でウェブページと対話するカスタムスクリプトを作成したりできることを意味する。第二に、ページアクション機能は、デバッグや回避策のための開発者の夢だ。特定のJavaScript要素なしでページがどのようにレンダリングされるかを素早く確認する必要があるか? あるいは、簡単な検査のためにソフトペイウォールをバイパスする必要があるか? page_action は直接的な道を提供する。これは実験を奨励し、単一で変更不可能な体験を受け入れることを強制されるのではなく、開発者が特定のニーズに合わせてブラウジング体験を調整するための tangibleなメカニズムを提供する。この反復的で拡張可能なアプローチは、多くのオープンソース開発哲学と完全に一致する。


🧬 関連インサイト

よくある質問

Dillo 3.3.0では具体的に何が変わりましたか?

Dillo 3.3.0は、UNIXソケット経由のコマンドライン制御(dillocユーティリティ)、右クリックメニューからアクセスできるカスタマイズ可能なページアクション、そしてFLTK 1.4の実験的なサポートを導入しています。また、brotliコンテンツエンコーディングサポートやキーボードショートカットの改善など、いくつかのバグ修正とマイナーな機能強化も含まれています。

FLTK 1.4のサポートは安定していますか?

いいえ、FLTK 1.4のサポートは明確に「実験的」とラベル付けされています。有望ではあるものの、特に高 DPI画面やWaylandでは既知のレンダリング問題があります。ユーザーおよびパッケージメンテナーは、デフォルトでの有効化を避けることが推奨されます。

Dilloを使ってウェブタスクを自動化できますか?

はい、新しいdillocユーティリティとその様々なコマンド(open、reload、dumpなど)を使用すると、スクリプトからDilloを制御し、ターミナルから多くのウェブ関連タスクを自動化できるようになりました。これにより、Dilloは開発者やパワーユーザーにとって、はるかに強力なツールになります。

Sam O'Brien
Written by

Ecosystem and language reporter. Tracks package releases, runtime updates, and OSS maintainer news.

Worth sharing?

Get the best Open Source stories of the week in your inbox — no noise, no spam.

Originally reported by Hacker News (best)