HarukaのNote

Linuxやプログラミング関係+旅行等の記録帳

OpenSUSE で chrome-remote-desktop host を自動起動

OpenSUSE Tumbleweed で Chrome-remote-desktopを動かすことができたので、方法を残しておきます。

Google Chrome のインストール

事前にChromeブラウザをインストールします。

#リポジトリ追加
$ wget https://dl.google.com/linux/linux_signing_key.pub

$ sudo rpm --import linux_signing_key.pub

$ sudo zypper ar http://dl.google.com/linux/chrome/rpm/stable/x86_64 Google-Chrome

#リポジトリ更新
$ sudo zypper ref

$ sudo zypper in google-chrome-stable

Alienrpm を作成

Alienは .deb を .rpm に変換してくれるソフトです。
今後、公式が rpm で配布してくれるといいのですが…
https://remotedesktop.google.com/access/にアクセスし、.Deb インストーラーをダウンロードします。

Alien のインストール

#リポジトリ追加
$ sudo zypper ar -f -p80 -r https://download.opensuse.org/repositories/system:/packagemanager/openSUSE_Tumbleweed/system:packagemanager.repo

#リポジトリ更新
$ sudo zypper ref

# 必要ソフトとAlienのインストール
$ sudo zypper in python-devel python-xml python2-pip python-psutil xdpyinfo alien

$ pip2 install --user psutil

rpm のビルド

sudo alien -r --scripts chrome-remote-desktop_current_amd64.deb

rpm インストール

$ sudo zypper in ./chrome-remote-desktop-89.0.4389.45-2.x86_64.rpm 
$ sudo chmod +s /opt/google/chrome-remote-desktop/user-session

AUR から便利なスクリプトの取得

Arch Linux用のコミュニティリポジトリに便利なツールがあるので使わせていただきます。

$ git clone https://github.com/frealgagu/archlinux.chrome-remote-desktop.git

# crd スクリプトをchrome-remote-desktopディレクトリに追加
$ sudo cp archlinux.chrome-remote-desktop/crd /opt/google/chrome-remote-desktop/

# daemonのための.serviceスクリプトをsystemdに追加
$ sudo cp archlinux.chrome-remote-desktop/chrome-remote-desktop.service /usr/lib/systemd/user/

# crd のシンボリックリンクを usr/bin に作成
$ sudo ln -s /opt/google/chrome-remote-desktop/crd /usr/bin

セットアップ

pam 権限を変更します。
元あったコードはコメントアウトします。

sudo vim /etc/pam.d/chrome-remote-desktop 
/etc/pam.d/chrome-remote-desktop
# Copyright (c) 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

#@include common-auth
#@include common-account
#@include common-password
#session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
#session required pam_limits.so
#@include common-session
#session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
#session required pam_env.so readenv=1
#session required pam_env.so readenv=1 user_readenv=1 envfile=/etc/default/locale

# 以下を追加
auth required pam_permit.so
account required pam_permit.so
password required pam_permit.so
session required pam_permit.so
session optional pam_umask.so

crd (chrome-remote-desktop)の設定

$ crd --setup
ユーザ [USER] をグループ chrome-remote-desktop に追加
Checking working directory and session file are present
That would be /home/[USER]/.config/chrome-remote-desktop and
/home/[USER]/.chrome-remote-desktop-session
Now entering the editor to make the appropriate changes to your session file.
Press any key to continue...

まずsessionの設定を促されます。

/home/[USER]/.chrome-remote-desktop-session
# You will have to uncomment one of the following lines for CRD to work
# Remove the # and select ctrl-X to finish.
# 
export $(dbus-launch)
# exec startxfce4
# exec startxfce4
# exec icewm-session
# exec icewm-session
# デスクトップはcinnamonを選択
exec cinnamon-session-cinnamon
# exec cinnamon-session-cinnamon2d

保存して次に進みます。

Default size is set to 1366x768 in
/home/[USER]/.config/chrome-remote-desktop/Size.
Change this if you want another screen size on your client.
Remember that this will affect all clients you use.
Now entering the editor to make the appropriate changes to
your Size file. Do not enter any comments to this file
Press any key to continue...

以下のファイルが開くので解像度を指定します。デフォルトは1366x768です。

~/.config/chrome-remote-desktop/Size
1920x1080

保存して次に進みます。

This completes the setup.

Please remember that you will need to allow Chrome or Chromium
to act as a server for this to work at all.

To do that, open CRD in your chrome or chromium browser
and follow the instructions. Clicking the computer will open
it in the browser window in default resolution.
For a more pleasant chromoting experience, just issue the command
crd --restart
Happy chromoting! :)

自動起動daemon)の設定

$ systemctl --user enable chrome-remote-desktop
$ systemctl --user start chrome-remote-desktop

ブラウザから起動

https://remotedesktop.google.com/access/にアクセスし、セットアップします。
次回からopenSUSEを再起動すると自動で起動されると思います。

最後に

Linux OSではOpenSUSEが好きなのですが、これまではChrome-remote-desktopが使えず、研究室での作業PCにはManjaroを使っていました。しかし、この度ManjaroでCRDがなぜか起動できなくなって、これを機にOpenSUSEでの方法を調べて見ました。
なんとかうまくいってよかったです。最近の情報が少なかったので、OpenSUSEが好きな人の参考になれば幸いです。

ソアラ(SC430)の専用シートカバーがアメリカから到着!

はじめに

私が今乗っているトヨタ ソアラは2001年製で古いです。そして、シート形状も独特なため、日本ではフィットするシートカバーがありません。

そこで、海外のWEBサイトから探してみました。

購入サイト

購入したのは以下のサイトです。
www.seatcoversunlimited.com

複数の素材とカラーから選ぶことができます。
今回は、ソアラの海外での販売ブランドに合わせて、車種をLEXUS SC、年代を2002年に設定しました。

f:id:krulcifer-einfolk-fafnir:20210411153508p:plain
seat covers unlimited

シート素材

いくつかの素材の説明を訳してみました。概要は www.DeepL.com/Translator(無料版)で翻訳し、修正しました。今回、私はベロア調の Vel-Quilt のネイビーを選択しました。

Neo-Sport(ネオプレン)

ネオプレン製シートカバーはネオスポーツと呼ばれていますが、これはスポーツマンの最良の友であり、水やこぼれが内装に浸透して車の再販価値に悪影響を及ぼすのを防ぐためです。これらのカバーは実際にはNeo-Supremeと呼ばれ、多くの場合、ネオプレンの上にカットされているので、ほとんどのネオプレンのように太陽の下でフェードしません。SUVのシートカバーとして最適です。

Leatherette(合皮)

多くの車のオーナーは、本革シートの外観を愛していますが、その高いコストに制限されています。これらのカバーは本革に比べて数分の一のコストで、同じ外観と感触を持っています。レザーレットは車のインテリアをスタイリッシュにし、高額なコストをかけずに本革シートのような高級感を提供します。当社の素材は高品質のビニールで製造されており、何年も使用できるように作られています。また、汚れや水に強く、破れにくいのも特徴です。

Dorchester

ドーチェスターの生地は摩耗性に優れています。トラックのに最適で、ヘビーデューティーな業務用として最も人気のある生地です。この生地は厚手で、背面に追加されたフォームにより、ほとんど壊れません。トラックやバン、タクシーなどのハードな使用でも、この生地を擦り切れません。汚れてしまうかもしれませんが、それだけです。汚れても、それだけです。私たちの椅子張りスタイルの生地はすべて、スプレー式のファブリッククリーナーやカーペットクリーナーで掃除でき、その後は掃除機で吸い取るだけです。多くのフォード、シボレー、ダッジのフリートは、このシートカバーによる保護の恩恵を受けています。厚手の生地を使用しているため、Scottsdaleのようなカバーと比べてシートにフィットしない場合がありますのでご了承ください。

Scottsdale

スコッツデールのシートカバーは、当社が最初に製造した椅子張りスタイルのカバーのひとつです。この生地は最も丈夫な生地で、市場を変えたいと思ったからです。そして、その生地にフォーム生地の裏地を貼り付けて縫い合わせ、シートに装着しました。私たちは、また新しいカーシートカバーのトレンドを始めました。私たちは常に最先端を走っているように見えますが、さらにこのカバーは少なくとも8年は持ちました。もともとスコッツデールは、シボレー・トラックのオリジナル内装材として製造された生地で、その名前はシボレー・スコッツデール・ピックアップに由来しています。残念ながら、シボレー、フォード、ダッジなどのメーカーでは、このような丈夫な生地はもう使われていませんが、ご心配なく!どんな車やトラック、SUVのシートカバーとしても、素晴らしい仕上がりになります。何年経ってもベストセラーの一つです。スコッツデールのシートカバーの生地は、耐久性のあるナイロン・ポリエステル・ポリプロピレンの混合素材で、裏地にはフォーム生地を使用しており、取り付け後の外観を向上させています。スコッツデールのシートカバーはトラックのシートカバーとしても最適で、現在市販されている他のどの生地よりも耐久性に優れています。

Vel-Quilt

Vel-Quiltは、他の生地に見られるような内部の模様やデザインがなく、シンプルな色であるため、シートカバーに最適です。無地を好む人や、自動車の内装に柄のないシートカバーが必要な人もいるでしょう。ベルキルトはそのための生地です。この生地は10色あり、最新の車に似合うだけでなく、多くの古い車やトラック、クラシックモデルのインテリアにもマッチします。古いモデルの内装には、グリーンやレッド、ブルーなどが使われていることが多いのですが、現在のモデルはグレーやタンになっています。ヴェルキルトなら、どんなインテリアカラーにも対応できそうです。年式、メーカー、モデルを入力して、その可能性をチェックしてみてください。

Sheepskin(シープスキン)

シープスキンがシートカバーの中のキャデラック(最上級)と呼ばれるのには、理由があります。

  1. 想像以上に快適な乗り心地です。運転席にいても助手席にいても、まるで宙に浮いているかのようです。
  2. シープスキンシートカバーは、背中やお尻に空気を循環させることができます。
  3. キャデラックのシートカバー、メルセデスのシートカバー、BMWのシートカバーなどに最適です。どんな車にも似合いますので、ご安心ください。
  4. この1インチのシープスキンペレットは、どんなインテリアにも合うように12色から選べます。

購入方法に関して

PayPalを使うのが最も簡単です。
サイトからオーダーに進みます。
執筆時はフロントとリア込みで$384.80です。今はヘッドレストとアームレスト込みのセットがあるんですね…
欲しかったです。

f:id:krulcifer-einfolk-fafnir:20210411160952p:plain
オーダー

購入に進みます。CHECKOUTを押して、PayPalを選択します。
住所や連絡先も記載します。
ただこの時点で送料は含まれていません。

f:id:krulcifer-einfolk-fafnir:20210411161932p:plain
購入画面

最後に請求書がもらえるので保存しておきます。

送料に関して

海外発送に関しては言及のないショップなので、メールで問い合わせをします。
以下の内容を送信しました。
order numberには、先ほどの請求書から控えた番号を記載します。
これで、先方がある程度送料を見積もってくれます。

To: Seat Cover Info <info@seatcoversunlimited.com>
Title: Additional information regarding your product

Dear Sir or Madam,

My name is [名前] and I am writing you from Japan.
I have a question regarding your online shop.
I visited your webpage (https://www.seatcoversunlimited.com/) and I am interested in purchasing the custom seat cover for [車種(英名)].
Is it possible to purchase it from Japan?

order number: XXXXXXX
Customer Name: [名前]
Phone: [電話番号]
Email: [メールアドレス]

I look forward to hearing from you soon.
Yours sincerely,

[名前]

以下のように「問題ないです!更新された請求書です。送料は$74.95、PayPalでの支払いでいいでしょうか。」と返信が来ました。送料込みの請求書PDFが添付されているので、確認します。

Yes absolutely! Here is your updated order. The shipping fee came out to $74.95, can we request payment through PayPal on that?

Thank you!

以下のように返信します。「確認しました。PayPalでいいのでどうやって払うか教えてください。」

Thank you very much. I checked.
I accept the order and I can pay through PayPal. Please tell me how to pay an additional fee through that.

「財務部に連絡しました。財務部が支払いメールを送ります。受け取り次第、支払いを証明する書類を提出してください。」

I have reached out to our financial department to send a request for payment. Please provide proof of payment once you receive it. 

以下のようにメールでPayPalの支払いリクエストが届きます。

f:id:krulcifer-einfolk-fafnir:20210411164918p:plain
PayPalメール
合計金額

本体 42197.17 円
送料 8219.02 円
合計 50416.19 円
と約 5 万円でした。専用設計のシートカバーとしては結構安いと思います。
フロントだけならもっと安くなると思います。

シートカバーを取り付け

1月の中旬に注文して、3月末には届きました。
取り付けには詳細なマニュアルがついているので問題ありませんでした。

外観

意外と軽い素材ですが表面の質感は、一般的な純正のベロア生地の質感と遜色なく、安っぽくありませんでした。
また、最初は少し表面が浮いていたものの、座っているうちに馴染み、今はフィットしています。

色は、どうしてもこの青色がサイトで綺麗に見えて選んだのですが、周りの人から見るとミスマッチかもしれません。私は満足しています。やはり、ヘッドレストは欲しかったと感じます。
f:id:krulcifer-einfolk-fafnir:20210411151842j:plain

背面はシートを外さないと取り付けが難しいので、隙間に挟み込むようにして取り付けました。結構固く挟まったので大丈夫かと…
シートを倒すレバーように切り込みも入っています。
f:id:krulcifer-einfolk-fafnir:20210411160034j:plain
f:id:krulcifer-einfolk-fafnir:20210411160352j:plain

最後に

今回購入した商品は個人的には大変満足のいくものでした。
アメリカには、こういった個人向けのカスタムサービスがたくさんあるのは、最新版向けの商品在庫しか対応していない日本と比べて、うらやましく感じました。
そして、値段もそれほど高くない。

大きいものなので、送料も妥当な範囲だと思います。

中古車なので、本革シートがどうしても傷んでいて、気になっていたのが改善できてよかったです。

今回、個人的にすごく満足し、感動したので、ブログに載せる形で紹介させていただきました。

Open SuSE Leapの起動時間が長い

おそらく,nvidiaドライバを入れると発生します.

起動時にローディングアニメーションを表示するPlymouthがNvidiaドライバに対してうまく働いていないのでしょう.


以下のリンクを参考に設定を変更します.
How do I bring back Plymouth after Nvidia driver installation? : openSUSE

方法

2つのファイルを作成.
geditでもvimでもいいので管理者権限で以下のファイルを作成します.

/etc/modprobe.d/nvidia.conf
options nvidia_drm modeset=1
/etc/dracut.conf.d/nvidia.conf
add_drivers+="nvidia nvidia_modeset nvidia_uvm nvidia_drm"
install_items+="/etc/modprobe.d/nvidia.conf"

更新

$ sudo dracut -f

これで,再起動すると改善されると思います.

Fantiaに投稿された画像・動画をダウンロードするソフトウェアを作成しました

はじめに

友人より,「Fantiaの画像をオリジナルサイズで保存したいけど面倒」と相談があったため,今回ダウンローダを作ってみました.

Fantiaとは

ファンティア[Fantia]は、イラストレーター・漫画家・コスプレイヤー・ゲーム製作者・VTuberなど、各方面で活躍するクリエイターが、創作活動に必要な資金を獲得できるサービスです。

とのことです.
いろんな人が画像や動画をアップしている場のようです.
創作支援系の研究をしている自分としては,イラスト系は特に興味深いですが,これまで触ったことはありませんでした.
ちなみに,相談されたのはマヨナカ配信 (広瀬もこ)さんの作品のダウンロード.
画像は.jpg動画はMOV形式でしたので,動作確認もそれらのファイルでしています.
2021/05/01 動画DLの不具合修正.zip等にも対応.

作成したダウンローダ

名前は適当にFt Downloaderとつけました.
会員限定コンテンツを取得するためにCookieが必要ですので,ソフトにコピーして使用します.

動作環境

f:id:krulcifer-einfolk-fafnir:20210309024159p:plain
Ft Downloader
使い方
  1. Session_id(Cookie)のコピー&ペースト
  2. Fantiaの投稿URLを入力(クリエイターのホームではなく,個々の投稿ページです)
  3. SUBMITを押します.投稿画像のサムネイルが表示されます.動画のみのページでは表示されません(DLは正常にできると思います)
  4. Save Pathが自動で投稿番号になるので,任意のフォルダ名に変更します
  5. Downloadを押します.Finished!!と表示されるまで待ってください.
  6. output/ フォルダ下に保存されます

開発に関して

GUIは,PythonのEELというライブラリを使用しました.
こちらは,以前にブログで簡単に説明しています.
Python の GUI ~ EEL と Kivy ~ - HarukaのNote

スクレイピングに関して,一部以下のサイトを参考にさせて頂きました.同じ相談を受けている人がいたとは 笑
免責事項に関しても参考にさせて頂きました.
非常に参考になりました.感謝申し上げます.
ファンティア(Fantia)からファンクラブに投稿された画像を一括ダウンロードするスクリプトを書いた - 毎日へっぽこ

また,HTMLのbootstrapにはUmiを使用させて頂きました.
Umi - 日本語も美しく表示できるBootstrapテーマ

免責事項

免責事項

  • スクリプトの作成者は,株式会社虎の穴,ファンティア,ならびにファンティア開発に一切関係はありません.
  • スクリプトは,ファンティア利用規約に違反のない範囲にて,自己責任でご利用ください.
  • ファンティアへの投稿のダウンロード可否については,ヘルプページにて可能と回答されております.
  • スクリプトの作成者は,本スクリプトによって生じた損害等について,一切の責任を負いかねますのでご了承ください.

ダウンロード

本ソフトウェアは個人利用の為に作られています.今後の改良も未定です.一切の補償はいたしかねます.
また,本ソフトウェアは無償です.一切の費用は発生いたしません.
2021/05/01 動画や圧縮ファイルをダウンロードできるように修正しました.
2021/05/04 .Google Drive では警告が出るようなのでリンクをGitHubに変更しました.また,ファイル名等を指定できるように対応しました.

新Ver.
session_idやファイル名の命名規則が保存されるようになりました.
ウィンドウサイズや背景色も変更できる様になりました(settings.ymlを直に編集するので玄人向けです).
https://github.com/haruka0000/Ft-Downloader/releases/download/1.3/FtDownloader_20210513.zip

旧Ver.
Ver. 1.2 https://github.com/haruka0000/Ft-Downloader/releases/download/1.2/FtDownloader_20210504.zip
Ver. 1.1 https://github.com/haruka0000/Ft-Downloader/releases/download/1.1/FtDownloader_20210501.zip

個人開発でインストールも必要ないためSymantec等のウイルス対策ソフト環境下では弾かれましたが,セキュリティ面では問題ないと思います.
近くソースコードを公開しようと思います.

最後に

もし役にたったと感じましたら,私の友人が頑張っている以下のクラウドファンディングの情報を広げていただけますと幸いです.
camp-fire.jp
クラウドファンディングは終了しましたが,未だ支援を募っているようです.
以下のリンクから手助け頂けますと幸いです.
Studying abroad in Japan

PDF をブックマークにそって分割するソフトウェアを作成しました

はじめに

先日,知り合いの板金屋さんから,「PDFを分割するソフトはないですか?」と尋ねられ,探してみました.

聞けば,海外の車のマニュアルを翻訳したいが,WEB上のドキュメント翻訳サービスにアップロードできるデータサイズ(一般的に10MBまで)ではないらしく,分割したいとのことでした.

ファイルを見せてもらうと約300MBで,ブックマークがきっちりとついたタイプであったため,ブックマークに沿って分割し,分割後のファイル名をブックマークからつければ後でわかりやすいと思いましたが,意外とそういう分割をしてくれるソフトが見つからなかったので,今回作成してみました.

PDF-Splitterに関して

GUI は手抜きで,Python の EEL を使ったため,多少起動が重たいです.
また,実行には Chromechromium ベースのブラウザが必要と思います.

もし興味があれば使って見てください.
以下のリンクを開き,PDF-Splitter.exe をダウンロードすれば使えると思います.
https://github.com/haruka0000/pdf-splitter/releases/tag/v1.0.0

使用方法

実行時は,Windowsのセキュリティに実行するか尋ねられます.詳細から実行を選択してください.

  1. Import PDFでPDFを読み込む.ブックマークがあれば表示される.
  2. 表を編集する.from,toははじめのページとおわりのページ
  3. commit を押す.
  4. Split PDF!! を押す.

その他

  • Defaultは最初の読み込み時の状態に戻す.commitで適用.
  • All Clearは(ブックマークがあれば)表を空にする.commitで適用.
  • Prefixはファイル名の数字のあとに付与する文字を一括追加する.commitで適用.
f:id:krulcifer-einfolk-fafnir:20201009195134j:plain
PDF-Splitter メニュー

最後に

素人が趣味で作ったものなので,過度に期待はしないでください.
使用は自己責任でお願いいたします.

Manjaro Xfce4 で Chrome-remote-desktop

GnomeChrome-remote-desktop (以下 crd)はあまり相性が良くないらしく,Xfceをインストールして使っています.

Manjaro(Arch)で crd を使うための設定を以下に残しておきます.

crd のインストール

$ yay -S chrome-remote-desktop

yay が無い場合は,以下のコマンドで事前にインストールします.

$ sudo pacman -S yay

crd の設定

一般的な Linux での crd は /opt/google/chrome-remote-desktop/chrome-remote-desktopを編集しますが,私の場合は立ち上げにエラーが発生したため編集しません.

~/.chrome-remote-desktop-session を編集します.
以下のように記載します. fcitxによる日本語入力の設定もしています.

eval $(dbus-launch --sh-syntax)
export GTK_IM_MODULE=fcitx 
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
exec /usr/bin/startxfce4

crd を起動

以下のコマンドで再起動することで,他のPCからアクセスできると思います.

$ systemctl --user enable chrome-remote-desktop
$ systemctl --user start chrome-remote-desktop
$ crd --restart

以下のサイトを参考にさせていただきました.
qiita.com