Month: April 2023

Ubuntuのカスタマイズ#1 LINEの追加とGUIの変更

今週は頭痛がひどく殆ど寝ていたRockinWoolです。寝る→PCいじる→妻と生活→寝るという最高に幸せな環境で体調は少し改善していますが、それでも頭痛が残っています。なので悪い人の下で働き続けてダメージを受けるとこうなるのだなと体感しながら日々を過ごしています。さて、今回のテーマは「Ubuntuを新規インストールした際にやっておきたいこと その1」です。まずはLINEのインストールとGUIの変更について、参考になったサイトを紹介しながら説明していきます。 LINEのインストール Qiitaにある「【UbuntuでLINE!?】 UbuntuでLINEを使う方法を画像付きで説明する(@north_redwingさん)」を参考に進めます。基本的には書いてあることをまったくそのままやれば上手く行きます。しかし、この方法には一つ落とし穴がありました。 LINEの更新時にアイコンが透明になる問題について LINEのアイコンは、/home/""username""/.local/share/applications/chrome-"app-id"-Default.desktopに対して、Icon=/home/"username"/.config/google-chrome/Default/Extensions/"app-id"/"app-ver"/res/img/line_logo_128x128_on.pngを書き込むことによって設定していました。察しの良い方は気づかれたかもしれませんが、Iconのパスに”app-ver”が含まれていますね。これによって、LINEに自動更新が入りバージョンが上がるとパスが失効してしまいます。結果としてアイコンが透明になるわけです。 LINEアイコンの透明化を回避するための策について さて、原因が分かれば対策は簡単です。要はapp-verの含まれない場所に画像をコピーし、そこを参照すれば良いわけです。なので、/home/"username"/.config/google-chrome/Default/Extensions/"app-id"/"app-ver"/res/img/line_logo_128x128_on.pngを/home/"username"/.config/google-chrome/Default/Extensions/"app-id"/ディレクトリへ移動し、Iconのパスをそこへ設定すれば解決します。 GUIの変更 「【Linux】Ubuntu22.04をMac風にカスタマイズする(macOS Ventura風)」さんを参考に進めます。ただし、この記事にある内容は結構ボリューミーなので、少し選んで入れていきました。 お気に入りアプリを表示する場所を画面下に変更する 上記記事を紹介しておきながら、早速その中に存在しないGUI設定になります。これはUbuntuの設定から変更できます。実は今回の目的はこれを達成することでした。複数ディスプレイでUbuntuを使う際に、メインにしか表示場所が無いと不便でしたので。下記に設定方法がわかる画像をおいて置きます。 まとめ 今回もここまで読んでくださってありがとうございました。皆様のPC遊びライフの一助になれば幸いです。 参考文献 【UbuntuでLINE!?】 UbuntuでLINEを使う方法を画像付きで説明する【Linux】Ubuntu22.04をMac風にカスタマイズする(macOS Ventura風)

DockerDesptopから画面を取るまで

今回はDocker Desktop for Linuxから画面を取るまでの試行錯誤、およびシンプルなdockerからの変更点などを解説します。4/15から4/24までの格闘日誌になります。ちょうど職場でのプレッシャが起因した休職に入ったのですが、今もすごく頭が痛いです。治るのかなこれ? 普通のDockerから画面を取る場合 普通のdockerから画面を取る場合は、下記3つが必要になります。 まずは1つ目、ソケットファイルの共有から解説します。まずはホストにあるソケットファイルの実体ですが、こちらは簡単に見つけることができます。先頭がd(directory)ではなく、s(socket)になっていることが証拠です。 2つめの$DISPLAY変数ですが、こちらはホストでは下記のようになっています。 $DISPLAY変数の構成は(ホスト名):(ディスプレイ番号).(スクリーン番号)で表現されます。今回はローカルホストであるため、ホスト名は省略されており、理由は良くわかりませんがスクリーン番号も省略されています。コンテナから画面を取る際も、localhostの画面へ表示を行いたいので$DISPLAY変数は同じで良いということですね。最後の画面表示の許可ですが、通常Xサーバへは決められたユーザしかログインできないのでそれを解除する作業になります。単純にxhost+と端末で入力するだけなので、非常に簡単な作業ではあります。ここまでの作業を自動でやってくれるプログラムはここで公開してあります。 DockerDesktopではうまく行かない 表題の通り、上記の手法をDockerDesktopで再現しようとしてみてもうまくいきません。エラーメッセージは下記の通りです。 このエラーは$DISPLAYで指定されている:0の画面へアクセスしようとしたら開けなかったというメッセージになり、通常はxhost + を行わなかった時に発生します。念の為xhost + を再度やってみても同じ回答が来るので、今回は違う原因で発生していると推測できます。幸いなことに、前回DockerDesktopは通常版とは違い、VM上で動作している説が発見できているので、今回は「別マシンから自マシン上へ画面を転送する」という技術で解決する必要がありそうです。 DockerDesktopからホストへのSSHを可能にする さて、情報の転送といえばSSHですね。今まで横着してSSH関連についてあまり勉強してこなかったのですが、今回はOpenSSH入門(河本安武さん著)を使ってしっかり活用して行こうと思います。まず、コンテナ側にあるアプリがssh-client, ローカルマシン側がssh-serverになるため、コンテナにopenssh-clientが入っているか確認しました。ここはデフォルトで入っていたので特筆する作業は無いです。一方でローカルホストの方にopenssh-serverが必要なのに入れていなくてかなり長い間格闘しました。ChatGPT先生の介抱もあってなんとか気づけたのですが、皆様もこのような初歩的なミスに引っかからないようにしましょう。ローカルホストへのssh-serverのインストールは下記の通りになります。 sudo apt install openssh-server ホスト上のSSH開通実験 まずはsshが正しく可能かどうか確認しましょう。私の場合、最初にこの開通実験を行っていなかったため、問題の切り分けに時間がかかりました。反省を兼ねてここで当たり前の確認作業を記述します。このセクションでやっておくべきことは「ホスト端末」→「ホスト端末」へのSSHが成功するかどうかの確認になります。これ自体は下記の方法で実行できます。 ssh username@localhost ホスト→コンテナへのSSH ホスト→ホストのSSHが成功することが確認できたあとは、ホスト→コンテナのSSHを試してみましょう。ちなみに私はここで躓きました。まずはエラーメッセージから。 $ssh…

WordPressのカスタマイズ@2023.04.10

こんにちは。RockinWoolです。WordPressでサイトを運営する上で、日々気になるのが閲覧数。これを効率良く上昇させるためには、デザインを良くする必要があると考えています。今回は大胆にサイトを更新しましたので、その一部始終をまとめました。 メニューバーを追加 今回のサイト更新は、「メニューバーを作りたい」という目的がありました。旧デザインでは投稿記事が増えるにつれて、本当に知りたい情報にアクセスしにくくなります。例えば、上図のように技術日誌と環境構築記事を分ければ、特定のソフトウェアインストールを知りたい方などが早く記事にたどり着けるかなと考えました。 外観→メニューが見つからない 一般的なサイトではWordPressの管理画面にて、外観→メニューとたどることによってメニューが設定できると説明があります。しかし、私のWordPressの画面では外観→メニューというのが出てきません。回答としては、サイトのデザインテーマによってはメニューが出てこないものがあるということのようです。今回は下記のNewsWayというテーマを採用することによって、デザインを一新しつつメニューを追加することに成功しました。また、完全に追加ですがTwitterとの連携も行いました。 目次の追加 Qiitaのような技術ブログの中には、説明の目次があらかじめ上部に用意されているものがあります。自分のブログでも同じことをしたくなり調査した結果、Table of contents plusという拡張で自動的に可能であることがわかりました。 https://www.conoha.jp/lets-wp/wp-tableofcontents/ バックアップ 前回の記事でも書きましたが、WordPressのテーマや投稿記事、プラグイン等をすべてバックアップするAll-in-One WP Migrationを見つけました。管理画面のプラグイン追加からすぐに取り入れることができるので、説明は割愛します。それにしてもWordPressのプラグインはとても便利なものが多いですね。 リンク切れの検出 こちらもBroken Link Checkerという拡張を入れるだけですぐ実現できます。ブログ作成者としてはメンテコストが上がりますが、その分ユーザへの恩恵も大きいものだと思います。 その他プラグイン ちなみにこれら以外のプラグインについてはこちらのサイトに記載されておりますので、ご興味がありましたらご参考にしてください。自分の場合はデフォルトで入れているもの等もありましたので、ここでは限定して紹介させていただきました。また、バックアップ系のプラグインについてもこちらのサイトがより詳しく記載しておりますので、自分の好みに合わせてインストールしていただければと思います。 それでは、今回はここまで。また何かしら更新したら記事にします。今後ともよろしくお願いします。##