🧫

ゆめかわ日記

Firefoxをチューニングしてやや快適な状態に持っていきする技法

Firefox使っていますか。

ブラウザの中でもかなりの老舗になったFirefoxですが、 安定性や機能面では他のブラウザと肩を並べるほど性能が高く、デザインもモダンで常にアップグレードされたブラウザです。

www.mozilla.org

さあさあ、ぜひ使ってみましょう。

というのは冗談で、今回はがっつり使ってる方へ向けて初期設定の一例をご紹介しようと思います。

初期設定

ブラウザをまず使って行うことは、何よりも初期設定です。

インストールしてすぐに阿部寛のホームページを開く事も魅力の一つですが、快適に使うために最初に必要な設定をしておきましょう。

基本設定

まずは使わなさそうなオプションを排除します。

ここでのおすすめの設定は、

  • 新しいコンテンツをタブで開く事
  • 複数タブが開かれている際に×や🔴を押すと警告を出す

という項目です。特に、複数のタブを開いた直後にうっかり抹消してしまうのは復旧時の煩わしさにつながるのでONにしておくのが無難でしょう。

機能提案などは快適なブラウジングの妨げになることがあるので、切っておくとよいです。

プライバシー

プライバシーの設定は、支障が出ない限り厳格に行っておくとよいでしょう。

強化型トラッキング機能は強化型のブロックを行う。

ユーザーの情報共有をオフにする。

パスワード保存機能を使う場合はオンでも構いませんが、
パスワードマネージャーはブラウザのものを使わず、Bitwarden等の専用ソフトを使う事をお勧めします。

GoogleMeet等を利用しない場合はデバイスの接続要求を遮断します。
許可したいドメイン(サービス)がある場合は例外として登録しましょう。

Firefoxに利用状況を送信したくない場合はここもオフにします。

DNSoverHTTPS機能に関しては、よほどセキュリティに気を使わない限りはオフで問題ないと思います。
CloudFlareでのマスクを使った場合は通信に部分的な暗号化がなされますが、稀に通信状況が影響してアクセスが遅くなる場合があります。
異常にアクセスが遅い場合はこちらの部分をデフォルトにしてみてください。(特にDNSに1.1.1.1を利用している場合)

コンフィグ

設定項目での調整が済んだら、コンフィグで調整してきます。
ここからは調整を間違えるとブラウザの挙動が悪くなるので、十分注意して設定を行ってください。

まず、URL入力欄にabout:configと入力します。

警告が出ますが、そのまま続行します。
以下に複数調整する項目を紹介しますので、必要に応じて設定してください。

稀に設定自体が存在しない場合があります。その場合は+を押していただき、以下の条件に合わせて追加してください。

  • 真偽値 :true/false
  • 数値 :数字を入れるもの

キャッシュの調整

ディスクキャッシュは遅延の要因となるため、メモリキャッシュに限定します。

browser.cache.disk.enable → false
browser.cache.memory.enable → true

memory capa
1GB 36864
2GB 73728
4GB 147456
8GB 233016

次に自身のPCのスペックに合わせてキャッシュの量を調整します。
メモリ128GBぐらい積んでいると、もっとキャパ割り当てたいなと思う次第ですが、
Firefoxのメモリ割り当ては仕様上最大233016なので、これ以上割り振っても効果はありません。

位置情報の取得禁止

設定項目で位置情報を取得させないようにチェックを入れていたとしても、コンフィグ上ではオンになっている場合がございます。
そのため、手動でオフにします。

geo.enabled → false

GPUレンダラー

GPUがPCに組み込まれている場合はGPUレンダラーの設定をオンに出来ます。

gfx.webrender.all → true
gfx.webrender.enabled → true

レンダリングプロセス

ウェブページの読み込み速度を上げるためにレンダリングプロセス数を上げます。
この設定はメモリに十分な余裕がある場合にのみ行ってください。

dom.ipc.processCount → 64 or 128

アドオン

Firefoxはアドオンを駆使することで十分な力を持ちます。 ただし、アドオンを入れすぎると性能の低下につながるという諸刃の剣でもあるため、入れすぎないようにすることが重要です。

いかに数点おすすめを紹介しておきます。

addons.mozilla.org

ブラウザの広告を直接遮断できる広告ブロッカーです。
広告の遮断だけでなく、ページの整形などにも使えるため非常に便利です。

これに合わせAdguard等を使えば、殆どの広告は遮断可能です。

addons.mozilla.org

addons.mozilla.org

Twitterの広告やおすすめ紹介が煩わしいと思われる方にお勧めの拡張機能です。
2015年代のUIに戻したり、ミニマムな構成にすることが出来ます。

他にできることは沢山ありますが、今回はここまでにします。 ブラウザの中でも比較的詳細な部分まで設定が可能なので、より自分好みのブラウザを形成したい方には非常におすすめのブラウザです。

もしよければこの機会に、デフォルトブラウザにしてみてはいかがでしょうか。

🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊🦊

オッペン見てきたぞ

前から気になっていた映画、「オッペンハイマー」を見てきました。

 

規約上ここではネタバレの記事を書けないので、Noteの方で記載させていただきました。

 

もし、映画を見た方がいらっしゃったら読んでいただけると幸いです。

 

note.com

うーん。しかしながらいろいろな人の感想を読んでて思うに...

 

僕の世代と、40代以上の方の世代で作品の感じ取り方が相当違う感じがしていて、もしかしたら燃えるかもしれないので、燃えたら消します。

 

これは僕が燃えたから消すのではなく、戦争映画なので当時戦争を経験されていた方やそれに近しい世代の方がPTSDに繋がる刺激を受けないように配慮するのが最善であるためですのでご了承あれ。

 

と言いつつも、僕の感想も理解していただけると嬉しいかな。

 

内容に触れずにいうと超面白かった。ノーランファンには刺さる。

 

ぜひ上映中に足を運んでください。

Misskeyの開発環境における画像ぼやける問題メモ

Misskeyをローカルホストで建てる場合、URLの部分にlocalhostと入れることになります。

#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# Misskey configuration
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

#   ┌─────┐
#───┘ URL └─────────────────────────────────────────────────────

# Final accessible URL seen by a user.
url: https://localhost

# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# URL SETTINGS AFTER THAT!

こんな感じで入れてビルドするといい感じに立ち上がってくれます。

しかし、画像を投稿してみたり、アイコンが反映されない点で違和感を覚えますね。

こんな感じで画像を投稿したとしてもぼやけた画像しか投稿されず、画像が無いというエラーが表示されます。 Misskeyの画像投稿はプロキシやオブジェクトストレージを介在していない場合、URL/画像情報という形で画像を紐付けします。

Misskeyをlocalhostで建てた場合、アクセス先はlocalhost:3000となるためlocalhost:3000/画像情報というURLとなります。


#   ┌─────┐
#───┘ URL └─────────────────────────────────────────────────────

# Final accessible URL seen by a user.
url: https://localhost:3000

# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# URL SETTINGS AFTER THAT!

要するにこんな感じで修正すれば、アクセス経路がしっかり確立されるので画像を投稿d

できてへんやんけ!

あぁ...迷宮入りだ...って思ってよく見てみると

SSL証明発行してないのにhttps接続になっている。

#   ┌─────┐
#───┘ URL └─────────────────────────────────────────────────────

# Final accessible URL seen by a user.
url: http://localhost:3000

# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# URL SETTINGS AFTER THAT!

最終修正を行い...

やったぜ。

教訓

httpsは証明書無いとあきまへんで

証明書を導入しておけばlocalhostでもhttps接続は可能です。

ChromeBook is ChromeBook

近頃AmazonでChromeBookが売り出されていることが多いです。Windowsのノートパソコンと比較するとやや安価であり、機能もシンプルであることが売りです。

家電量販店では「PCのエントリーモデル」みたいな感じで売られていますね。

ということで今回は2024年現在においてChromeBookって何なんですかという部分を詰めていこうと思います。

Chrome OS

ChromeBookにはChromeOSが内蔵されています。ChromeOSは超ファジーな感覚で捉えるとGoogleChromeと愉快な仲間達で構成されるOSで、Googleアカウントに紐づけて様々なGoogleサービスを利用するOSとなっています。

そのため、基本的にはChromeブラウザを介して機能が提供されており、PWAを拡張したような立ち位置です。

ChromeOSのメリットは、Googleサービスを直接的に利用できる点にあります。ブラウザ上で様々なコンテンツを管理していると、タブがごっちゃになることが多く、情報の整理が難しい点が懸念されますが、ChromeBookの場合アプリケーションとしてサービスを独立させているので独立して操作することができます。

一方でデメリットとしては、プリインストールアプリが多い点に加え、デフォルトのGoogleサービスはアンインストール不可であるという点で注意が必要です。また、現行よりもややレガシーなバージョンを提供していることから、若干機能面で遅れが発生しています。

ChromeBook本体

現行でおおよそ3万円から5万円で入手可能な基本的なスペックと呼ばれるのは以下のような感じです。

・2コア程度のモバイル向けor独自CPU

・4GB~8GBのメモリ

・64GB~128GBのストレージ(eMMC/SSD)

タブレットとしてはやや高性能な立ち位置ですが、PCとしては動作が心もとないレベルのスペックで構成されていることが多いです。

中には高性能モデルも売り出されていますが、安価で販売されているのが魅力である点からニッチな市場になっており、基本的に入手可能なモデルはこの程度に収まっているように見受けられます。

価格帯の差は中のスペックではなく、タブレットとして兼用可能かという点に依拠していることが多いです。そのためPC感覚で使用される場合は3万円代の安価なモデルを購入されるとよいでしょう。

基本的なスペックでの動作

控えめに言ってブラウジングでも心もとないのが現状です。

2003年ぐらいであればちやほやされた立ち位置だと思いますが、クライアントサイドでも高度な処理が要求されるこの時代では、メールチェックや軽い検索でもフリーズしてしまうことが多いです。

そのため、PCに使い慣れていればいるほどPCの形をしているからこそ求めるニーズに応えられないというもどかしさを感じると思います。

Androidとの微妙な互換性

LinuxVMとAndroidが両方使えるとのことで、Google Playやflatpakのアプリケーションが動作することがChromeBookの特徴ですが、GooglePlayの多くはスマートフォンやタブレットに向けて制作されることが多く、仮に動作したとしても挙動が変だったり、画面サイズがうまく調節できないといったケースが多いです。

また、Flatpak経由でアプリケーションを利用する場合は、基本的なスペックの倍以上のスペックを盛ってないと動きさえもしないので、幻です。

稀にギークな方が裏技感覚で導入している例がありますが、あれは高性能なPCにChromeOSを入れるといったニッチな構成をして成しえるものである点を踏まえておく必要があります。

ビジネスマン目線からの最適解

ビジネスマンとして仕事でChromeBookを使う最適解は、RDP接続に絞られると思います。

Officeが動作しない点やメールで固まる点から、直接ChromeOSを使用するのは難しいですが、tailscaleやRDSクライアントを利用し、会社のデスクトップPCやクラウドPCに接続すれば、スペックに依存しないので快適に利用できると思います。

タブレットでキーやマウス操作をするのが煩わしいといった場合にご活用いただけるのではないかと思っています。

個人的には、ノートパソコンを経費で購入していただいたほうが業務効率は高いと思いますが...

子供向けPCとして扱えるか

扱えません。

予算に余裕がなくてもなるべくしっかりとしたノートパソコンを購入して頂くか、N100が搭載された比較的安価なミニPCをご用意いただいたほうがよろしいと思います。

特にプログラムがやりたいという趣旨でご所望の場合はWindowsかLinuxが入ったPCをご購入ください。プログラムに全く向いてないどころかほぼ出来ないマシンです。

また、教育機関からOfficeアカウントが付与される場合も多いと思います。ChromeOSはOfficeがWeb版しか対応しておらず、まともに使えないものと思ったほうが宜しいです。

エントリーモデルPCとして扱えるか

扱えません。

そもそもPCの形をしていますが、実態としてはGoogleサービス専用機です。

文書作成をして印刷なども出来なくはないのですが、Windowsで操作したほうが比較的明確で、情報面でも多いと思います。

個人的には、エントリーだからこそ比較的しっかりとしたPCを購入することをお勧めします。 これはしっかりとしたChromeBookではなく、しっかりとしたPCのことを指します。

まとめ

ChromeBookは実質PCではない

ChromeBookはタブレットでもない

ChromeBookはGoogle系サービス専用機

2024年現在においては比較的安価に手に入るものの使用シーンは限られている。

今後状況が変化することもあると思います。2024年の今日の時点でのある一般人目線での所感として捉えていただけると幸いです。

MisskeyでSpotifyのナウプレBotを作ろう

今回はMisskeyでSpotifyのなうぷれを行う方法について紹介します。 今回はサーバーとGo言語を使用して構成するため、若干ややこしくなりますがお付き合いいただけると幸いです。

IFTTTでMisskeyに再生中の曲をポストする

MisskeyでSpotifyで再生中の曲を共有できれば、その曲で話題が作れるから面白いなぁということで何か使えないか模索していたところ、はるのんさんがIFTTTを使用してWebHookを投げる方法をZennで記載されていたので試してみました。

zenn.dev

IFTTTはいくつかのトリガーと、それに基づく動作をビジュアルライクに定義して使用することができるサービスです。

記事の中で紹介されていますように、再生中の曲をトリガーにして、Misskeyにその曲情報を転送します。

はるのんさんの説明がとても詳細で完ぺきだったので、迷うことなく導入することができました。本当に感謝。

再生するとしっかりと投稿される。最高!

...

しかし、僕はSpotify馬鹿なので一日に5時間ぐらい曲を再生し続けます。

おそらく皆さんはそのような使い方をされないので問題ないと思うのですが、僕のような使い方をしているとIFTTTが曲の情報を取得する挙動が徐々におかしくなり始めました。

具体的に言うと、曲の情報を取得する処理がジャムって(もたついて)しまい、30分に一回のスパンで一気に投稿するようになってしまいました。

一曲3分だとすると30分で再生する曲は10曲。それが一気にMisskeyのタイムラインに投げ込まれてしまうとフォロワーさんや同一サーバーにいる利用者の方々が困惑してしまうことになります。

IFTTTやZapierといったトリガー型サービスは、そこまで頻繁な条件の発生を想定しているものではなく、不定期だけど規則性のある条件を利用してオートメーション化する事が本来の使用用途のため、僕みたいに5時間以上再生するような音楽馬鹿がいると耐えられないとのこと。

そのため、Misskey投稿に特化したBOTサービスを自ら調達する必要が生じました。

np2mastを活用させていただく

どのように実装しようか悩んでいたところ、二年前にyudeさんという開発者の方がMastodon向けにNowPlayソフトを制作されていたので、こちらをフォークしてMisskeyバージョンを作ろうという事になりました。

github.com

コード中でMastodonとMisskeyで差が出てくる部分はAPIの認証のみであったため、そこを加筆する形でMisskey版を製作させていただいたのですが、認証部分で何故か処理に失敗してしまったので原因を探っていたところ、Spotifyのスコープを明確に指定してトークンを発行しなければならないとのことでした。

github.com

僕が書き換えたばかりに曲の情報が連続してうまく保持できないこともあり、 色々あって数か月かかりましたが完成。yudeさんのMastodonナウプレが無かったら50年掛かってたと思うので本当に助かりました。

使用方法

Githubに簡単に説明を書いていますが、僕が火星人な影響で何を言ってるのか分からないということなので、写真を併せて説明させていただきます。

このリポジトリではSpotifyのトークンを発行する準備が必要なので、手元のPCでトークンを発行してからサーバーに.envファイルを追加し実行する手順を踏みます。

使用するサーバーはDebian/Ubuntu系です。適宜環境に合わせて読み替えてください。

前提として、このサービスはGoで動いているので、手元のPCとサーバーにGoをインストールしていただく必要があります。

go.dev

公式ページを参考に導入を済ませておいてください。

リポジトリの準備

まず、リポジトリを手元のPCにクローンします。

git clone https://github.com/CAT5NEKO/np2misk.git

次に、リポジトリ内部にあるenv.exampleファイルに記載されている認証情報のうちSPOTIFY_REFRESH_TOKEN="" 以外の項目を埋めます。以下より順に進めていきましょう。

Misskeyの認証情報を登録

MISSKEY_ACCESS_TOKEN="ノートの作成/消去の権限のみを付与してください。"
MISSKEY_ENDPOINT_URL="https://example.tld"

ここではMisskeyのURLとアクセストークンを記載します。

MisskeyのURLはBotを動かすサーバーのURLを記載します。misskey.ioであればhttps://misskey.ioになります。

サーバーによってはBotを禁止している場合もございますので、利用規約をよくお読みになってから導入して下さい。

アクセストークンは設定→API で発行します。

APIの作成を押し、ノートの作成・消去の権限を与え、チェックマークを押すとアクセストークンが表示されます。

このトークンは一度だけしか表示されないのでしっかりコピーしてから画面を閉じてください。 また、このトークンがあれば、誰でもあなたのアカウントを使ってノートを作成する事が可能になるので、決してSNSに投稿したり外部に公開されないよう保管してください。

以上を追加すればこのような感じで埋まると思います。””(ダブルクォーテーション)の中に記載するようにしてください。

MISSKEY_ACCESS_TOKEN="先ほど発行したアクセストークン"
MISSKEY_ENDPOINT_URL="https://example.tld"

Spotifyの認証情報を登録

SpotifyのアクセストークンはSpotifyの開発者ページで発行します。こちらのURLに進んでください。

すでにログインを済ませているとこのような画面が出ると思いますので、そちらの右上にあるアカウントのアイコンをクリックし、Dashboardという項目に移動します。

ダッシュボードに移動するとアプリ一覧が表示されるので、CreateAppをクリック

画像の通り必要な項目を埋めていきます。

AppName:アプリの名前。なんでもいいです。
Description:アプリの説明。なんでもいいです。
WebSite:ウェブサイト。今回はBotを作るためサイトが存在しないため存在しないページを記載していただいて構いません。
CallBack:そのままで大丈夫です。

最後にWebAPIの項目にチェックし、利用規約に同意してSAVEボタンを押します。

するとこのようにアプリケーションの利用統計が表示されている項目に飛びますので、Settingというボタンを押します。

Settingページの上部にClientIDとClientSecretが記載されていますので、今回はこちらのふたつを使います。

こちらも重要な個人情報なので大切に保管してください。

こちらのページで得た情報をenvの項目に記載します。

SPOTIFY_CLIENT_ID="Client ID (上のやつ)"
SPOTIFY_CLIENT_SECRET="Client Secret (下のやつ)"

これらがそろったら、リポジトリ内部に.envファイルを作り、env.exampleを参考に情報を埋め合わせて下さい。VScode(コードエディタ)やIDE(統合開発環境)などを使うとgo buildがボタン一つで実行できることもあって便利です。ぜひご検討ください。

無料 https://code.visualstudio.com/

30日間は無料(おすすめ) https://www.jetbrains.com/ja-jp/go/download/

.envファイルの記載が住みましたら、goで書かれたソースコードを実行可能な状態にします。

ターミナルでgo buildというコマンドを入力し、実行可能なファイルを作成して実行してもらうか、IDEやエディタの再生マークのようなものを押してください。

すると、ターミナル上にURLが表示されますので、そちらを押してください。

URLに飛ぶと再度ログインが促され、許可が求められますので許可してください。 すると自動で.envファイルにREFRESH_TOKENが埋められます。

お手元のPCでご使用いただく場合であればここで再度実行していただくと処理が開始します。

サーバー上の設定

Botとして動作させるにはサーバー上に設置して恒久的に動作させる必要があります。

ここからはややコマンドが多くなるので画像は割愛させていただきます。

リポジトリの準備

今度はサーバー上でリポジトリをクローンしてください。

git clone https://github.com/CAT5NEKO/np2misk.git

そして、リポジトリ内に移動していただき、.envファイルを作成し、先ほど手元のPCで埋めた内容をコピペします。

cd np2misk
nano .env

その際にビルドもお願いします。

go build

次に同一ディレクトリ内に処理が失敗して終了した場合に蘇生するシェルを作成します。

nano run_main.sh
#!/bin/bash

cd /path/to/your/np2misk/
 
if [ -x ./np2misk ]; then
    ./np2misk
  else
    echo "Error: ./np2misk not found or not executable."
fi

while true; do
    ./np2misk
    if [ $? -eq 0 ]; then
      echo "Execution completed successfully. Exiting."
      exit 0
        else
          echo "Error occurred. Retrying..."
            sleep 1
    fi
done

必要に応じてパスやファイル名を置き換えてください。

最後に、こちらのシェルをSystemdを使用してサービス化します。

[Unit]
  Description=Run run_main script repeatedly

[Service]
  Type=simple
  ExecStart=/bin/bash /path/to/your/np2misk/run_main.sh

[Install]
  WantedBy=default.target

こちらも適宜置き換えて下さい。

保存が済んだらreload、enabledで有効化し、statusで正常に動作していることを確認します。

これでSpotify上で曲を再生すれば、投稿されるようになります。

まとめ

最後のほう火星語復活して申し訳ございません。

基本的ななうぷれであればはるのんさんの紹介されていたIFTTTの方式が一番楽ですのでそちらをご活用いただけると快適に投稿できますが、僕みたいなヘビーユーザーの場合は投稿処理に滞りが発生するので、今回のようにBotを作成する方式をとると便利だという話でした。

ご活用いただければ幸いです。

肉aaS

※この記事は2023年10月に作成されたものです。最終更新日から1年が経過しておりますので情報の真正にご注意ください

肉aaSとは

肉aaSという単語を聞いたことはございますか。IaaSやSaaSという単語が業界で飛び交う中、青天の霹靂の如く登場した肉aaS、今後エンジニアリングの要衝になる可能性もある期待可能性の高い技術です。

肉aaSとは

クラウド肉

のことを表します。クラウド肉とは皆さんお馴染みの言葉で表現するとダクト飯のことですね。 春日俊彰さんが独自に考案、そして開発した肉通信プロトコルの一つで、クラウド経由でユーザー体験を向上させる革新的な技術です。

出典:肉aaSとは

肉aaSを採用するメリット

肉aaSを採用するメリットは環境構築、保守管理の手間を削減する事ができる点にあります。

一般的な焼肉は以下のようなプロセスを辿ります。

手順としてはめてお(生肉)をデプロイし、焼きあがるまで保守管理する形で体内にサービスが提供されます。一般的には七輪等はすでに用意されていることからPaaSである可能性が高いですが、それでもめておの数に比例して工数の増加は避けられません。

肉aaSの場合そういった問題を避けられることが出来ます。

肉aaSは換気ダクトを通じて他者の焼いた肉にフリーライドする形で体内にコミットする形式がとられるために、AWSのようなSaaSで懸念されるコストの問題も削減でき、こちらが用意するのはご飯だけなので管理も大幅に簡略化出来ます。

これらの点で肉aaSは他のサービス提供形式よりも格段に優れている事が伺えますね。

肉aaSのデメリット

肉aaSのデメリットとしてはAZ(網・ゾーン)の位置で肉の味を感じにくかったりCDN({一酸化}炭素出しすぎやねん)が干渉していると死に至る危険性があるという面で注意が必要です。 また、まだ有名なサービスでないため職務質問を受ける可能性も考慮し、身分証は携行してください。

まとめ

・肉aaSとはクラウド肉

・SaaSよりも遥かに優れている

いかがでしたか。

画像サンプルicon8様

当ブログの投稿内容において、具体的な根拠や出典を明示していない限り、根拠や出典の存在を一切保証しません。また、根拠や出典が明示されているか否かにかかわらず、根拠や出典の妥当性・真実性を保証しません。

尚、実際の人物や団体に影響が出ないようにある程度抽象化したり脚色したりすることもあります。ここに出てくる登場人物や出来事は全て夢の中で起こっているようなものという感覚で読んでいただけると幸いです。