MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
PinePhoneの初期設定のソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
PinePhoneの初期設定
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == <br><br> == eMMCへのインストール == ==== JumpDrive ==== 内蔵のeMMCは、postmarketOSのDanct12とMartijnによるJumpDriveユーティリティを使用してOSを書き込むことができる。<br> <br> JumpDriveはMicroSDから起動して、PinePhoneがコンピュータに接続されると内蔵のeMMCを公開する。<br> マウントされたeMMCにOSをフラッシュする手順は、他のストレージの場合と同様である。<br> <br> <code>dd</code>コマンド、balenaEtcher、Gnome Disks等のソフトウェアを使用してOSを書き込むことができる。<br> <br> JumpDriveは、以下の公式Webサイトからダウンロードできる。<br> (PinePhoneの場合は、pine64-pinephone.img.xzをダウンロードする)<br> https://github.com/dreemurrs-embedded/Jumpdrive/releases/<br> <br> # JumpDriveのイメージをダウンロードして解凍する。 # balenaEtcher等を使用して、MicroSDにJumpDriveのイメージを書き込む。 # MicroSDをPinePhoneに挿入して、PinePhoneを起動する。 # PCとPinePhoneをUSBケーブルで接続する。 # PinePhoneのストレージ(例: /dev/mm〜、dmesg、GNOME disks等でデバイス名およびアンマウントされていることを確認する)に、選択したOSのイメージファイルを書き込む。 # 書き込みが完了した後、PinePhoneをPCから外して、PinePhoneをシャットダウンする。<br>この時、MicroSDを取り出す。 # PinePhoneの電源を投入して、eMMCから起動する。 <br> <u>※備考</u><br> <u>JumpDriveは、インストールに失敗した場合のレスキューイメージとしても機能する。</u><br> <u>レスキューイメージとして使用するには、172.16.42.1にTelnetで接続した後、rootfsをマウントして修正すればよい。</u><br> <br> ==== MicroSDのOSからインストール ==== # MicroSDに任意のOSを書き込みした後、PinePhoneにMicroSDを挿入して、PinePhoneを起動する。 # Webブラウザを起動して、任意のOSのイメージをダウンロードする。<br>または、ターミナルを起動して、OSのプロジェクトをgit clone <OSのプロジェクトのURL>する。<br>Gitを使用する場合は、OSをビルドする必要がある。 # 以下のコマンドを実行して、ダウンロードまたはビルドしたOSのイメージをeMMCに書き込む。<br>通常、現在のカーネルでは、<u>MicroSDは/dev/mmcblk0</u>、<u>eMMCは/dev/mmcblk2</u>となる。 #: <code>sudo dd if=<インストールするOSのイメージ> of=/dev/mmcblk<span style="color:#C00000;">X</span> bs=1M status=progress</code> # <span style="color:#C00000;">X</span>はeMMCの番号ラベル # 書き込みが完了した後、PinePhoneをシャットダウンして、MicroSDを取り出す。 # PinePhoneの電源を投入して、eMMCから起動する。 <br><br> == SIMカード == ==== Phosh ==== # まず、[設定] - [Mobile] - [Advanced]項目 - [Network Mode]から、[3G, 4G]を選択する。 # 次に、[設定] - [Mobile] - [Advanced]項目 - [Access Point Names]を選択する。 # [Access Points]画面右上の[+]ボタンをタップして、APNを設定する。<br><br>以下に、各通信会社の設定を示す。<br> #* Biglobe #** 名前 #**: Biglobe mobile type D #** APN #**: biglobe.jp #** ユーザ名 #**: user #** Password #**: 0000 <br><br> == microSDカードの使用 == microSDカードをデータ領域として使用する場合は、ext4フォーマットのmicroSDカードを挿入する必要がある。<br> <br> もし、インストール時に使用したmicroSDカードを使用する場合は、以下の手順を実行する。<br> # GPartedやpartedコマンド等を使用して、新しいMS-DOSパーティションを作成する。 # 次に、以下のコマンドを実行して、u-bootを上書きする。(これを行わない場合、PinePhoneは残存しているu-bootから起動しようとする) #: <code>sudo dd if=/dev/zero of=/dev/YOURSDCARDDEVICE bs=512 seek=16 count=1</code> # 最後に、microSDカードに対して、ext4パーティションを作成する。 <br> 以下に、microSDカードを使用する手順を示す。 # まず、microSDカードを挿入およびPinePhoneの電源を投入して、ターミナルを起動する。 # 以下のコマンドを実行して、microSDカードをマウントする。 #: <code>sudo mkdir /mnt/sdcard && sudo mount -t ext4 /dev/mmcblk0p1 /mnt/sdcard</code> # 次に、ホームディレクトリの内容にmicroSDカードへコピーする。 #: <code>sudo cp -aR /home /mnt/sdcard</code> # microSDカードの一時的なマウントポイントをアンマウントする。 #: <code>sudo umount /mnt/sdcard</code> # microSDカードを、ホームディレクトリへマウントする。 #: <code>sudo mount -t ext4 /dev/mmcblk0p1 /home</code> # microSDカードのUUIDを取得して、/etc/fstabファイルにエントリを追加する。 #: UUIDを取得するには、以下のコマンドを実行する。 #: <code>sudo blkid /dev/mmcblk0p1</code> #: <br> #: /etc/fstabファイルに、以下の内容を追記する。 #: (最後のパラメータの<code>2</code>は、fsckに他のエントリの後で確認するように指示している) #: <code>UUID=a2c1f977-0405-4ae1-8169-639b8ae53e3b /home ext4 defaults 0 2</code> # 最後に、microSDカードにあるホームディレクトリのユーザ名とグループ名を、現在使用しているユーザ名とグループ名に変更する。 #: <code>sudo chown -R mobian:mobian /home/mobian</code> <br> 上記の設定により、microSDカードはホームディレクトリに持続的にマウントされる。<br> (eMMCのホームディレクトリにある全てのファイルを持つ)<br> <br><br> == Wi-FiのIPアドレスの設定 == ==== Phosh ==== [設定]を開いて、[Wi-Fi]を選択する。<br> 現在接続しているWi-FiのSSID名の右にある歯車ボタンをタップする。<br> [IPv4]項目において、IPアドレス、サブネットマスク、ゲートウェイ、DNSの設定を行う。<br> <br><br> == SSHの設定 == まず。OpenSSHサーバをインストールする。<br> sudo apt-get install openssh-server <br> OpenSSHを自動起動および開始する。<br> sudo systemctl enable ssh sudo systemctl restart ssh <br><br> == 日本語フォントのインストール == 日本語フォントをインストールするために、以下のコマンドを実行する。<br> sudo apt-get install fonts-dejavu fonts-noto-cjk fonts-vlgothic fonts-takao fonts-vlgothic fonts-ipafont <br><br> == ディスプレイ関連の調整 == ==== ソフトウェアの自動スケーリング ==== Phoc 0.4.0以降、画面に収まらない大きなウィンドウを自動的に縮小することができる。<br> この機能は、以下のコマンドを実行して、各ソフトウェアごとに有効にする必要がある。<br> scale-to-fit <ソフトウェアID> on <br> ソフトウェアIDは、ソフトウェア自身がどのように宣言しているかによって異なる。<br> <center> {| class="wikitable" style="background-color:#fefefe;" |+ ソフトウェアとソフトウェアIDの関係 |- ! style="background-color:#00ffff;" | ソフトウェア名 ! style="background-color:#00ffff;" | ソフトウェアID |- | Anki || anki |- | Calendar || gnome-calendar |- | Cawbird || cawbird |- | Empathy || empathy |- | Firefox || firefox-esr |- | Geary || geary |- | Maps || org.gnome.Maps |- | Mumble || net.sourceforge.mumble.mumble |- | Nautilus || org.gnome.nautilus |- | Totem || totem |- | Sudoku || gnome-sudoku |- | Chromium || chromium |} </center> <br> ソフトウェアIDを確認するには、ソフトウェアを<code>WAYLAND_DEBUG=client</code>を付加して起動する。<br> 例えば、Geditの場合は、<code>xdg_toplevel@37.set_app_id("gedit")</code>のような行を確認する。<br> <br> Evolutionのリマインダーウィンドウのサイズを変更する場合、ソフトウェアIDは、<code>evolution-alarm-notify</code>となる。<br> <br> [https://linmob.net/2021/02/13/pinephone-setup-scaling-in-phosh.html Linmob.net]には、スケーリングのテクニックの詳細が記載されている。<br> <br> ==== 画面の拡大 1 ==== ソフトウェアが画面に収まらない場合、画面を拡大して表示したい場合がある。<br> <br> [設定]にある[ディスプレイ]には、100[%]または200[%]のスケーリングを選択する設定がある。<br> 他の値を使用する場合やターミナルから操作する場合は、wlr-randrパッケージをインストールする。<br> sudo apt install wlr-randr <br> # スケーリングを1.5にする場合 wlr-randr --output DSI-1 -scale 1.5 <br> この方法では、スケーリングは再起動するまで適用される。<br> 小数点の数値を選択することもできるが、パフォーマンスに影響する可能性があることに注意すること。<br> puri.smのブログには、スケーリングをその場で簡単に変更できるソフトウェアを作成する方法についての記事がある。<br> <br> ==== 画面の拡大 2 ==== スケーリングの設定を永続的に適用する方法がある。<br> <br> 標準の設定は、/usr/share/phosh/phoc.iniファイルにある。<br> 標準の画面のスケーリングを変更するには、/usr/share/phosh/phoc.iniファイルを/etc/phosh/phoc.iniファイルにコピーして、以下の箇所を変更する。<br> [出力:DSI-1]. # scale = 2 scale = 1.5 <br> ==== 画面の拡大 3 ==== <code>wlr-randr</code>コマンドの使用を便利にするため、yad(特に、フォーム構築オプション)を使用して、GUIソフトウェアを作成する。<br> これは、<code>wlr-randr</code>コマンドを使用して、異なるスケールを設定する一連のボタン群である。<br> vi ~/InstallSoftware/Scale/scale.sh <br> <syntaxhighlight lang="bash"> #!/usr/bin/env bash yad --title Scale Screen --form \ --field='Default dpi (2x scale)':fbtn "wlr-randr --output DSI-1 --scale 2" \ --field='Low dpi (1.75x scale)!window-restore-symbolic':fbtn "wlr-randr --output DSI-1 --scale 1.75" \ --field='Medium dpi (1.5x scale)!window-minimize-symbolic':fbtn "wlr-randr --output DSI-1 --scale 1.5" \ --field='High dpi (1.25x scale)!window-maximize-symbolic':fbtn "wlr-randr --output DSI-1 --scale 1.25" \ --field='Max dpi (1x scale)!view-fullscreen-symbolic':fbtn "wlr-randr --output DSI-1 --scale 1" \ --field='Restart Phosh':fbtn "sudo systemctl restart phosh" \ --button='Close!gtk-cancel':1 </syntaxhighlight> <br> 上記のシェルスクリプトを実行するデスクトップエントリファイルを作成する。<br> vi ~/.local/share/applications/Scale.desktop: <br> [Desktop Entry] Type=Application Name=Scale Screen GenericName=Scale Screen Icon=video-display-symbolic Exec=/home/<ユーザ名>/InstallSoftware/Scale/scale.sh Terminal=false Categories=Utility; <br><br> == オンスクリーンキーボード == Mobianには、標準でSqueekboard(オンスクリーンキーボード)が搭載されている。<br> <br> Squeekboardのレイアウトは、キーボードの説明ファイルを~/.local/share/squeekboard/keyboards/terminalディレクトリに追加することにより、<br> 簡単にカスタマイズできる。<br> また、ディスプレイのスケーリングが100%の場合、Squeekboardは、(us|de|...)_wide.yamlファイルという追加のレイアウトを探す。<br> # ターミナル ~/.local/share/squeekboard/keyboards/terminal/(us|de|...).yaml ~/.local/share/squeekboard/keyboards/terminal/(us|de|...)_wide.yaml (スケーリングが100%の場合) # Emoji : ~/.local/share/squeekboard/keyboards/emoji/(us|de|...).yaml ~/.local/share/squeekboard/keyboards/emoji/(us|de|...)_wide.yaml (スケーリングが100%の場合) <br> Squeekboardの設定ファイルのフォーマットは、2021年4月現在、十分に文書化されていないが、カスタマイズすることは簡単である。<br> https://developer.puri.sm/projects/squeekboard<br> <br> 既存のレイアウトを利用して、それを調整すると便利である。<br> <br> すぐに使用できる設定ファイルは、以下に示すURL(特に、Squeekboardリポジトリ)にある。<br> * [https://source.puri.sm/Librem5/squeekboard/-/tree/master/data/keyboards Squeekboardリポジトリ] * [https://gitlab.com/Ph42oN/squeekboard-terminal-layout 他のリポジトリ] * [https://forum.pine64.org/showthread.php?tid=9633&page=2 PINE64フォーラムのスレッド] <br> ユーザがカスタマイズした設定ファイルは、2文字の言語コードの後に".yaml"というファイル拡張子を付けて保存する。<br> 横長にカスタマイズする場合は、言語コードの後に"_wide.yaml"を付ける。<br> 例えば、us.yamlファイルおよびus_wide.yamlファイルとなる。<br> <br> 設定ファイルを、~/.local/share/squeekboard/keyboardsディレクトリに配置する。<br> <br> ターミナルや絵文字用にカスタマイズされた設定ファイルも同じように命名されるが、terminalディレクトリやemojiディレクトリといったサブディレクトリに配置する。<br> 例えば、カスタマイズされたUSレイアウトは、以下のディレクトリのようになる。<br> * ~/.local/share/squeekboard/keyboards/us.yamlファイル * ~/.local/share/squeezeboard/keyboards/terminal/us.yaml (端末のキーボード) <br> また、[https://wiki.mobian-project.org/doku.php?id=accessibility アクセシビリティ]とOrca screenreaderとの互換性については、いくつかの作業が必要である。<br> <br><br> == 日本語入力 == 現在(2021/4/24)、この設定が有効な環境は、Mobianのみである。<br> <br> まず、以下のFcitxとそのライブラリをインストールする。<br> sudo apt install fcitx fcitx5 fcitx5-config-qt fcitx5-data fcitx5-frontend-gtk2 fcitx5-frontend-gtk3 \ fcitx5-frontend-qt5 fcitx5-table gir1.2-fcitxg-1.0 fcitx5-module-wayland fcitx5-modules \ fcitx5-module-ibus fcitx5-module-fullwidth fcitx5-module-dbus fcitx5-module-emoji fcitx-mozc \ ibus-mozc mozc-data mozc-server mozc-utils-gui <br> /etc/environmentファイルまたは~/.profileファイルの最下行に、以下の内容を追記する。<br> export XMODIFIERS=@im=fcitx export QT_IM_MODULE=fcitx export GTK_IM_MODULE=fcitx <br> 次に、/usr/share/fcitx5/addon/fcitx-mozc.confファイルを、以下の内容で作成する。<br> [Addon] Type=SharedLibrary Name=fcitx-mozc GeneralName=Mozc Comment=Mozc support for Fcitx Library=fcitx-mozc.so Category=InputMethod Enabled=True SubConfig= IMRegisterMethod=ConfigFile LoadLocal=True <br> さらに、/usr/share/fcitx5/inputmethod/mozc.confファイルを、以下の内容で作成する。<br> [InputMethod] UniqueName=mozc Name=Mozc IconName=/usr/share/fcitx5/mozc/icon/mozc.png Priority=1 LangCode=ja Parent=fcitx-mozc <br> /usr/share/fcitx/mozcディレクトリを/usr/share/fcitx5ディレクトリにコピーする。<br> sudo cp -rf /usr/share/fcitx/mozc/ /usr/share/fcitx5/ <br> Mobianを再起動する。<br> sudo shutdown -r now <br> 再起動後、Fcitx5を有効にする。<br> 有効にするには、ターミナルで以下のコマンドを実行する。(~/.profileファイルに、以下のコマンドを記述してもよい)<br> <u>この時、エラーメッセージが出力されて処理が止まるが、気にせずに[Ctrl] + [C]キーを同時押下する。</u><br> fcitx -r <br> 日本語入力と英語入力の切り替えは、PCと同様に、[Ctrl] + [Space]キーを同時押下することで切り替えができる。<br> <br><br> == 電話帳 == ==== Evolutionの使用 ==== Evolutionをインストールする。<br> sudo apt-get insatll evolution <br> Evolutionをディスプレイにフィットさせる。<br> この設定を行わない場合、インポート画面が大きくなりすぎるため、表示できない。<br> scale-to-fit evolution on <br> ファイルマネージャから電話帳のファイル(.vcf拡張子)を開く。<br> [データのインポート]画面が起動して、インポートする連絡先が表示される。<br> 画面下の[進む]ボタンを押下して、電話帳をインポートする。<br> <br> インポート完了後は、Evolutionをアンインストールする。<br> sudo apt-get remove evolution sudo apt-get autoremove <br> ==== Pythonスクリプトの使用 ==== Githubから、以下のツールをダウンロードする。<br> sudo apt-get install git git clone https://github.com/pine-clover/Clontacts.git <br> 以下のコマンドを実行して、電話帳のファイル(vcf拡張子)をインポートする。<br> python3 main.py <電話帳のファイルのパス> <br><br> == スクリーンショット == ==== 静止画 ==== 必要な依存関係をインストールする。 sudo apt-get install grim libnotify-bin yad <br> 以下のURLからscreenshot2appスクリプトをダウンロードして、任意のディレクトリに保存する。<br> https://matrix-client.matrix.org/_matrix/media/r0/download/matrix.org/rGMszhcjGTIQeZwCCaXMGMvw<br> chmod 755 screenshot2app mkdir -p ~/InstallSoftware/ScreenShot2app mv screenshot2app ~/InstallSfotware/ScreenShot2app <br> 以下のURLからscreenshot2appスクリプトのデスクトップエントリファイルをダウンロードして、~/.local/share/applicationsディレクトリに保存する。<br> https://matrix-client.matrix.org/_matrix/media/r0/download/matrix.org/CMaVegElpdiMbiChKaqPRgAW<br> mv screenshot.desktop ~/.local/share/applications <br> また、screenshot.desktopファイルを以下のように編集する。<br> <br> ==== 動画 ==== 画面を録画する場合は、wf-recorderをインストールする。<br> sudo apt install wf-recorder <br> 画面とマイクを使用した動画を作成する場合、以下のコマンドを実行する。(SSHからでも可能)<br> wf-recorder --file=recording_with_audio.mp4 --audio <br><br> == PinePhoneがSMSを受信しない場合 == SMSメッセージの受信ができない場合でも、SMSの送信、電話、データ通信は正常に行われている場合がある。<br> 原因として、モデムのキューに残っているSMSメッセージが考えられる。<br> <br> モデムのキューは、OSを再起動しても、OSを再インストールしても持続する時がある。<br> MobianおよびManjaroでは、電話、データ通信、GPS、SMS等のモデムとの全ての通信をModemManagerが行う。(他のOSではこの限りではない)<br> <br> ModemManagerには、<code>mmcli</code>コマンドでアクセスできる。<br> * Mobian sudo mmcli -m 0 --messaging-list-sms # SMSメッセージが無い場合 No sms messages were found # SMSメッセージが10件ある場合 Found 10 SMS messages: /org/freedesktop/ModemManager1/SMS/0 (received) <br> * Manjaro sudo mmcli -m 3 --messaging-list-sms # SMSメッセージが無い場合 No sms messages were found # SMSメッセージがある場合 /org/freedesktop/ModemManager1/SMS/77 (受信) <br> Mobianの場合は、全てのSMSメッセージを削除する場合、以下のコマンドを実行する。<br> sudo mmcli -m 0 --messaging-delete-sms=1 # 10件削除する場合、--messaging-delete-smsオプションの値において、 # 1~10を設定して、全てのメッセージを削除する <br> Manjaroの場合は、全てのSMSメッセージを削除する場合、以下のコマンドを実行する。<br> sudo mmcli -m 3 --messaging-delete-sms=77 # リストアップされた全てのSMSメッセージで繰り返す <br> なお、<code>-m 0</code>または<code>-m 3</code>とは、モデム0またはモデム3(PinePhoneに搭載されているモデム)を指す。<br> <br> mmcliコマンドで利用できるメッセージ関連のアクションの詳細は、<code>sudo mmcli --help-messaging</code>コマンドを実行することで確認できる。<br> また、https://electronproton.com/mmcli-command-examples も参考になる。<br> <br> 特定の構成では、-m 2や-m 4等、様々な-m <数値>の組み合わせを試す必要があるかもしれない。<br> <br> 最近のMobianやPostmarketOSには、eg25-managerというユーザスペースのデーモンが含まれており、モデムを管理して適切な動作を確保している。<br> <br><br> == スリープ / サスペンド == ==== Phosh ==== ===== カスタムサスペンドタイムアウトの設定 ===== [設定]ソフトウェアの[電源]項目では、限られた種類のタイムアウトのみ用意されている。<br> <br> 以下の例では、サスペンドのタイムアウトを30秒に設定している。<br> gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 30 <br> また、現在のタイムアウトを確認するには、以下のコマンドを実行する。<br> gsettings get org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout <br> ===== サスペンドを防いで画面を表示し続ける ===== ソフトウェアの中には、スクリーンセーバーまたはサスペンドが作動するものがある。(mpv、aptでのアップグレード等)<br> このような場合、gnome-session-inhibitツールが役に立つ。<br> <br> gnome-session-inhibitツールには、様々なレベルの抑制機能がある。<br> inhibit LEVELオプションを使用すると、サスペンド(別名:クラストスリープ)やアイドルでのスクリーンロックを防ぐことができる。<br> <br> 例えば、PinePhoneがスリープ状態になるのを防ぎ、システムをアップグレードするには、以下のコマンドを実行する。<br> gnome-session-inhibit -inhibit suspend sudo apt upgrade <br> また、以下のコマンドを.bashrcファイルのエイリアスに追記すると便利である。<br> # ターミナルでsudoコマンドを使用する場合はサスペンドを禁止する alias sudo='gnome-session-inhibit sudo' <br> 上記のコマンドを自動化するには、/usr/share/applications/*.desktop にある任意のデスクトップランチャーのexec項目に対して、<br> gnome-session-inhibitを付加することができる。<br> <br> ===== SSHセッションでのスリープ防止 ===== Phoshの[電源]項目にあるインアクティビティは、画面とのインタラクションのみを考慮しているため、SSH接続中にPinePhoneがスリープモードに入ることがある。<br> これを防ぐためには、~/.bashrcファイルの最下行に以下の設定を追記する。<br> <syntaxhighlight lang="sh"> if [[ -n $SSH_CONNECTION ]]; then : $(gnome-session-inhibit --inhibit suspend \ --reason "SSH connection is active" \ --inhibit-only) & fi </syntaxhighlight> <br> 上記の設定は、環境変数SSH_CONNECTIONが現在設定されているかどうかを確認する。(これはPinePhoneにSSH接続した場合に確認される)<br> 設定されている場合は、現在のシェルはSSHセッションを介して生成されているので、gnome-session-inhibitを使用してPinePhoneのサスペンド / スリープを防ぐ。<br> <br> ssh-connectionやbash-sessionがkillされる時、gnome-session-inhibitもkillされて、PinePhoneはサスペンドできるようになる。<br> <br> ===== Mediaplayback作動中のスリープ防止 ===== [https://src.jayvii.de/Hobby/PinePhoneScripts/src/branch/main/sguard Suspend-Guardスクリプト]を使用して、メディア(音楽や動画等)が再生されている間はサスペンドしないようにすることができる。<br> <br> このスクリプトは、pulseaudioでオーディオを出力しているソフトウェアがあるかどうかを確認して、再度確認するまでの間、サスペンドを防止する。<br> これにより、メディアが再生されない場合は、サスペンドできるようになる。<br> <br> このスクリプトには、自動的に設定を有効にするsystemd-unitが付属しており、ソースコードは[https://src.jayvii.de/Hobby/PinePhoneScripts/src/branch/main/sguard Git]で閲覧することができる。<br> <br><br> == 起動時にコンソール出力を表示する == ==== Mobian ==== 標準では、ブートコンソールはシリアルインターフェースである。<br> ブートコンソールにターミナルを追加することにより、コンソール出力が可能になる。<br> <br> この設定では、/etc/default/u-bootファイルを編集する。<br> もし、ファイルが存在しない場合は、以下のコマンドを実行する。<br> sudo u-boot-update <br> /etc/default/u-bootファイルの<code>U_BOOT_PARAMETERS</code>パラメータに対して、<code>splash</code>項目を削除して、<code>console=tty1</code>を追記する。<br> これは、2つの異なるコンソール(シリアルとtty1)を有効にするためのものである。<br> sudo vi /etc/default/u-boot # /etc/default/u-bootファイル U_BOOT_PARAMETERS="console=ttyS0,115200 consoleblank=0 loglevel=7 rw plymouth.ignore-serial-consoles vt.global_cursor_default=0 console=tty1" <br> 設定を適用するため、ブートローダをアップデートする。<br> sudo u-boot-update <br> ==== SUSE ==== ブートローダの<code>quiet</code>オプションは、ブートプロセスを出力しないようにする設定である。<br> また、<code>splash</code>オプションはブート画面を表示するための設定である。<br> <br> もし、Linux起動時にブートプロセスの情報を見る場合は、/etc/default/grubファイルにある<code>GRUB_CMDLINE_LINUX_DEFAULT =</code>を編集する。<br> * <code>quiet</code>オプションを削除する。 * <code>splash=0</code>に変更する。 <br> <br> 設定を適用するため、GRUBをアップデートする。<br> sudo grub2-mkconfig -o /boot/grub2/grub.cfg <br><br> == FlatPackのインストール == ==== Mobian ==== ターミナルを起動して、以下のコマンドを実行する。<br> sudo apt-get install gnome-software-plugin-flatpak flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo <br> FlatPakからChromiumをインストールする。<br> flatpak install flathub org.chromium.Chromium scale-to-fit chromium on flatpak run org.chromium.Chromium <br> FlatPakからChromiumをアンインストールする場合は、以下のコマンドを実行する。<br> flatpak uninstall org.chromium.Chromium <br> また、FlatPakからChromiumをアップデートする場合は、以下のコマンドを実行する。<br> flatpack update org.chromium.Chromium <br> Chromiumを使用する前に、以下の設定を行うことが重要である。<br> Webブラウザのユーザエージェントが漏洩する時、サービスプロバイダがデバイスを特定した場合、アカウントを無効にする可能性がある。<br> <br> # Chromiumのアドレスバーに<code>chrome://flags</code>と入力して、"Freeze User-Agent request header"をインストールおよび有効にして、Chromiumを終了する。 # 再度、Chromiumを起動して、[その他のツール] - [拡張機能]から"Use-Agent Switcher"をインストールする。 # この拡張機能を開いて、[Android] - [Android Kitkat]を選択する。 # 最後に、Chromiumを再起動する。<br>これにより、Chromiumがモバイルで起動する。 <br><br> == Chromiumブラウザのインストール == まず、Chromiumブラウザをインストールする。<br> sudo apt-get install chromium chromium-common chromium-sandbox fonts-liberation gir1.2-notify-0.7 gir1.2-packagekitglib-1.0 gir1.2-polkit-1.0 libfile-basedir-perl \ libfile-desktopentry-perl libfile-mimeinfo-perl libio-stringy-perl libipc-system-simple-perl libjsoncpp24 libnet-dbus-perl libre2-9 \ libtie-ixhash-perl libu2f-udev libx11-protocol-perl libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxxf86dga1 python3-certifi \ python3-cups python3-cupshelpers python3-requests python3-six python3-smbc python3-urllib3 system-config-printer system-config-printer-common \ system-config-printer-udev termit x11-utils x11-xserver-utils xdg-utils <br> 次に、/etc/chromium/local.confファイルを作成して、以下のように編集する。<br> unset GDK_BACKEND <br> Chromiumブラウザが実行できるかどうか確認する。<br> <br><br> == JDimのインストール == == パッケージ管理システムからインストール == まず、JDimをインストールする。<br> sudo apt-get install cmigemo-common jdim libatkmm-1.6-1v5 libcairomm-1.0-1v5 libglibmm-2.4-1v5 libgtkmm-3.0-1v5 libmigemo1 libonig5 libpangomm-1.4-1v5 \ libsigc++-2.0-0v5 nkf skkdic <br> 次に、2chproxy.plと依存関係のライブラリをダウンロードおよびインストールする。<br> sudo apt-get install git libhttp-daemon-perl liblwp-protocol-https-perl libyaml-tiny-perl <br> git clone https://github.com/yama-natuki/2chproxy.pl.git cd 2chproxy.pl ./install.sh $HOME/InstallSoftware/2chproxy /usr/bin/jdim <br> 以下の設定を、/etc/sysctl.confファイルに追記する。<br> net.ipv6.conf.all.disable_ipv6 = 1 <br> 以下の設定を、~/.profileファイルに追記する。<br> export PROXY="$HOME/InstallSoftware/2chproxy/2chproxy.pl" export JD="/usr/bin/jdim" <br> PinePhoneを再起動する。<br> <br> もし、スレッドを読み込めない場合は、JDimのメイン画面にある[設定]メニューバー - [ネットワーク] - [IPv6使用]チェックボックスをオフにする。<br> <br> ==== ソースコードからインストール ==== JDimのビルドに必要な依存関係のライブラリをインストールする。<br> sudo apt install autoconf dh-autoreconf automake autotools-dev m4 autoconf-archive libltdl-dev libtool \ gnutls-bin libgnutls-dane0 libopts25 libunbound8 libgnutls28-dev \ libgmp-dev libgmpxx4ldbl libgnutls-openssl27 libgnutls28-dev libgnutlsxx28 libidn2-dev libp11-kit-dev libtasn1-6-dev libtasn1-doc nettle-dev \ gir1.2-atspi-2.0 libatk-bridge2.0-dev libatk1.0-dev libatkmm-1.6-dev libatspi2.0-dev libcairo-script-interpreter2 libcairo2-dev libcairomm-1.0-dev \ libdatrie-dev libepoxy-dev libfribidi-dev libgdk-pixbuf-2.0-dev libgdk-pixbuf2.0-bin libglibmm-2.4-dev libgraphite2-dev libgtk-3-dev \ libgtkmm-3.0-dev libharfbuzz-dev libharfbuzz-gobject0 libice-dev liblzo2-2 libpango1.0-dev libpangomm-1.4-dev libsigc++-2.0-dev libsm-dev \ libthai-dev libxcb-render0-dev libxcb-shm0-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxext-dev libxfixes-dev libxft-dev libxi-dev \ libxinerama-dev libxrandr-dev libxrender-dev libxtst-dev pango1.0-tools x11proto-input-dev x11proto-randr-dev x11proto-record-dev \ x11proto-xext-dev x11proto-xinerama-dev <br> JDimのソースコードをダウンロードする。<br> mkdir -p ~/InstallSoftware cd ~/InstallSoftware git clone https://github.com/JDimproved/JDim JDim <br> JDimのビルド向けディレクトリを作成する。<br> cd JDim && mkdir build <br> JDimをビルドする。<br> <u>ただし、make installコマンドは使用しないことに注意すること。</u><br> autoreconf -i cd build ../configure --with-native make -j $(nproc) <br> 次に、2chproxy.plをダウンロードする。<br> cd ~/InstallSoftware git clone https://github.com/yama-natuki/2chproxy.pl.git 2chproxy <br> ダウンロードした2chproxy.plディレクトリにあるjd.shファイルを、以下のように編集する。<br> PROXY="/home/<ユーザ名>/InstallSoftware/2chproxy/2chproxy.pl" # 2chproxy.plファイルのパスを記述 JD="/home/<ユーザ名>/InstallSoftware/JDim/src/jdim" # JDimの実行ファイルのパスを記述 <br> ~/.local/share/applicationsディレクトリに、jdim.desktopファイルを作成する。<br> または、~/InstallSoftware/2chproxy/jdim.desktopファイルを~/.local/share/applicationsディレクトリにコピーして、以下のように編集する。<br> vi ~/.local/share/applications/jdim.desktop または cp ~/InstallSoftware/2chproxy/jdim.desktop ~/.local/share/applications/jdim.desktop <br> [Desktop Entry] Type=Application Name=JD 2ch browser Comment=JD is a 2ch browser based on gtkmm2. Exec=/home/<ユーザ名>/InstallSoftware/2chproxy/jd.sh Icon=/home/<ユーザ名>/InstallSoftware/JDim/jdim.png Terminal=false Categories=Network;Internet; <br><br> == テーマの変更 == インストールしたテーマは、/usr/share/themesディレクトリに保存される。<br> また、テーマの中には、システムの標準のキーバインドを変更するものがある。(例えば、プリインストールされているEmacsテーマはキーバインドのみを変更する)<br> <br> * Adapta *: Adaptaは、Material Design Guidelinesに基づいたアダプティブなテーマである。 *: パッケージには、Adapta、Adapta-Eta、Adapta-Nokto、Adapta-Nokto-Etaの5種類が含まれている。 *: <code>sudo apt install adapta-gtk-theme fonts-roboto fonts-roboto-unhinted gnome-accessibility-themes gnome-themes-extra gtk2-engines-murrine</code> *: <br> * Breeze *: KDEのBreezeに合わせて作成されたGTK2、GTK3用のGTKテーマである。 *: パッケージには、BreezeとBreeze-Darkが含まれている。 *: <code>sudo apt install breeze-gtk-theme</code> *: <br> * Materia *: Materia(旧Flat-Plat)は、Material Designテーマである。 *: パッケージには、Materia-light-compact、Materia-light、Materia-dark-compact、Materia-dark、Materia-compact、Materiaの各テーマが含まれている。 *: <code>sudo apt install materia-gtk-theme</code> *: <br> * Numix *: Numixは、ライト要素とダーク要素が組み合わさったモダンなフラットテーマである。 *: ただし、Darkバージョンでは、上下のバーのテキストが見えにくい欠点がある。 *: <code>sudo apt install numix-gtk-theme</code> <br> インストールしたテーマを変更するには、以下のコマンドを実行する。<br> テーマ名とは、/usr/share/themesディレクトリにあるテーマのディレクトリ名である。<br> gsettings set org.gnome.desktop.interface gtk-theme '<テーマ名>' <br> 例えば、Materiaダークに変更する場合は、以下のコマンドを実行する。<br> gsettings set org.gnome.desktop.interface gtk-theme 'Materia-dark' <br><br> == 壁紙の変更 == ==== メイン画面 ==== 壁紙は、ソフトウェアを起動して表示されるまでの間、短い時間のみ表示される。<br> [設定]の[背景]で設定できる。<br> <br> ターミナルで背景を設定するには、以下のコマンドを実行する。<br> gsettings set org.gnome.desktop.background picture-uri 'file:///home/mobian/Pictures/<画像ファイル名>.jpg' <br> ==== ロック画面 ==== ソフトウェア選択画面やロック画面の背景を変更するには、~/.config/gtk-3.0/gtk.cssファイルを作成する必要がある。<br> <br> 以下は、cssスクリプトの例である。 <syntaxhighlight lang="css"> // ~/.config/gtk-3.0/gtk.css // Restart phosh using "sudo systemctl restart phosh" phosh-app-grid { background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url('file:///home/mobian/Pictures/App.jpg'); background-size: cover; background-position: center; } phosh-lockscreen, .phosh-lockshield { background-image: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url('file:///home/mobian/Pictures/Lock.jpg'); background-size: cover; background-position: center; } </syntaxhighlight> <br><br> == .profileファイルの編集 == .profileファイルを、以下のような内容を追記する。<br> <syntaxhighlight lang="sh"> # User Add # Add Library Path export LD_LIBRARY_PATH="/home/mobian/InstallSoftware/Qt_5_15_2/lib:$LD_LIBRARY_PATH" # Display Scaling #wlr-randr --output DSI-1 --scale 1.5 # Enable Qt Debug export QT_QPA_PLATFORMTHEME="qt5ct" export DISPLAY=":0" export XAUTHORITY="/home/mobian/.Xauthrity" export XDG_SESSION_TYPE="wayland" # Enable Qt Quick Debug export QML2_IMPORT_PATH="/home/mobian/InstallSoftware/Qt_5_15_2_Library/qml" export QML_IMPORT_PATH="/home/mobian/InstallSoftware/Qt_5_15_2_Library/qml" export QT_PLUGIN_PATH="/home/mobian/InstallSoftware/Qt_5_15_2_Library/plugins" #export XDG_RUNTIME_DIR="/home/mobian/XDG_RUNTIME" # Not Enable (Display will be Black Screen) # Fcitx for Japanese export XMODIFIERS=@im=fcitx export QT_IM_MODULE=fcitx export GTK_IM_MODULE=fcitx </syntaxhighlight> <br><br> == .bashrcファイルの編集 == .bashrcファイルを、以下のような内容を追記する。<br> <syntaxhighlight lang="sh"> # User Add # エイリアスを追加 alias cd='cd -P' alias rm='rm -i' alias cp='cp -i' alias mv='mv -i' alias ls='ls -hlvF --group-directories-first --color=auto' alias cat='cat -n' alias less='less -n' alias grep='grep -i' alias en='LANG=C LANGUAGE=C LC_ALL=C' alias jp='LANG=ja_JP.UTF-8' alias igrep='sudo dpkg -l | grep' alias asearch='sudo apt-cache search' alias nano='nano -lmS' alias snano='sudo nano -lmS' alias scale='wlr-randr --output DSI-1 --scale' alias poff='sudo shutdown -h now' alias preboot='sudo shutdown -r now' #alias sudo='gnome-session-inhibit sudo' # コマンドの重複を履歴に残さない export HISTCONTROL=ignoredups # 空白から始めたコマンドを無視 export HISTCONTROL=ignorespace # コマンド履歴に残さないコマンド群 export HISTIGNORE="fg*:bg*:history*:cd*:ls*:cat*:less*:more*:grep*:lgrep*:igrep*:scale*:which*:clear:man*:startx*:exit*:poff*:preboot*" HISTTIMEFORMAT='%Y%m%d %T '; export HISTTIMEFORMA # プロンプトの表示形式 PS1='\e[0;31m\u\e[0m@\e[0;32m\h\e[0m(\t) [Path \w] \n> ' # mkdirとcdを同時実行 function mkcd() { if [ "$#" -eq 0 ]; then echo "Too few arguments!" elif [ "$#" -eq 1 ]; then if [ -d $1 ]; then echo "$1 already exists!" cd $1 else mkdir -p $1 && cd $1 fi else echo "Too many arguments!" fi } # ディレクトリに存在するディレクトリとファイルの検索 function lgrep() { if [ "$#" -eq 1 ]; then local IFS_BACKUP=$IFS IFS=$'\n\t' for OBJECT in $(\ls -aA --group-directories-first | \grep -iE "${1}") do \ls -AdhlF --color "${OBJECT}" done echo "" IFS=$IFS_BACKUP elif [ "$#" -eq 2 ]; then # 第1引数で指定したディレクトリが存在するか確認する if [ ! -d "$1" ]; then echo "Not Exist Directory $1" 1>&2 return 1 fi local IFS_BACKUP=$IFS IFS=$'\n\t' # 現在のカレントディレクトリを一時的に保存する local CURRENTDIR=$(\pwd) # 第1引数で指定したディレクトリに移動する cd "${1}"; # 第2引数で指定したパターンを使用して検索する for OBJECT in $(\ls -aA --group-directories-first | \grep -iE "${2}") do \ls -AdhlF --color "${OBJECT}" done # カレントディレクトリに戻る cd "${CURRENTDIR}" echo "" IFS=$IFS_BACKUP unset -v OBJECT else echo "Specify Arguments." 1>&2 fi return 0 } # パターンにマッチするファイル内容を検索する function filegrep() { if [ "$#" -eq 2 ]; then local IFS_BACKUP=$IFS IFS=$'' for OBJECT in $(\find . -type f -name "${1}" -print0 | \xargs -0 \grep -inE "${2}") do echo "${OBJECT}" done echo "" IFS=$IFS_BACKUP elif [ "$#" -eq 3 ]; then # 第1引数で指定したディレクトリが存在するか確認する if [ ! -d "$1" ]; then echo "Not Exist Directory $1" 1>&2 return 1 fi local IFS_BACKUP=$IFS IFS=$'' # 現在のカレントディレクトリを一時的に保存する local CURRENTDIR=$(\pwd) # 第1引数で指定したディレクトリに移動する cd "${1}"; # 第2引数で指定したパターンを使用して検索する for OBJECT in $(\find . -type f -name "${2}" -print0 | \xargs -0 \grep -inE "${3}") do echo "${OBJECT}" done # カレントディレクトリに戻る cd "${CURRENTDIR}" echo "" IFS=$IFS_BACKUP unset -v OBJECT else echo "Specify Arguments." 1>&2 fi return 0 } # 環境変数PATHの設定 function SetPATH() { OLDIFS=${IFS} IFS=$':' BEFORE_HOME='$HOME' AFTER_HOME=${HOME} PATH_NAME=$(echo ${1//${BEFORE_HOME}/${AFTER_HOME}}) SLASH=$(echo ${PATH_NAME: -1:1}) if [ ${SLASH} = "/" ]; then LENGTH="${#PATH_NAME}" let LENGTH=${LENGTH}-1 PATH_NAME=$(echo ${PATH_NAME:0:${LENGTH}}) fi if [ ! -d ${PATH_NAME} ]; then echo "No Exist Directory" return 1 fi EXIST_FLAG=0 for VALUE in ${PATH} do if [ ${VALUE} = ${PATH_NAME} ]; then EXIST_FLAG=1 break fi done if [ ${EXIST_FLAG} -eq 0 ]; then export PATH="$PATH_NAME:$PATH" elif [ ${EXIST_FLAG} -eq 1 ]; then echo "Already Exist ${PATH_NAME} in PATH " 1>&2 fi unset -v OLDIFS SLASH LENGTH BEFORE_HOME AFTER_HOME PATH_NAME EXIST_FLAG VALUE IFS=${OLDIFS} return 0 } function SetLIBRARY() { OLDIFS=${IFS} IFS=$':' BEFORE_HOME='$HOME' AFTER_HOME="$HOME" PATH_NAME=$(echo ${1//${BEFORE_HOME}/${AFTER_HOME}}) SLASH=$(echo ${PATH_NAME: -1:1}) if [ ${SLASH} = "/" ]; then LENGTH="${#PATH_NAME}" let LENGTH=${LENGTH}-1 PATH_NAME=$(echo ${PATH_NAME:0:${LENGTH}}) fi if [ ! -d ${PATH_NAME} ]; then echo "No Exist Directory" return 1 fi EXIST_FLAG=0 for VALUE in ${PATH} do if [ ${VALUE} = ${PATH_NAME} ]; then EXIST_FLAG=1 break fi done if [ ${EXIST_FLAG} -eq 0 ]; then export LD_LIBRARY_PATH="$PATH_NAME:$LD_LIBRARY_PATH" elif [ ${EXIST_FLAG} -eq 1 ]; then echo "Already Exist ${PATH_NAME} in PATH " 1>&2 fi unset -v OLDIFS SLASH LENGTH BEFORE_HOME AFTER_HOME PATH_NAME EXIST_FLAG VALUE IFS=${OLDIFS} } # 環境変数PATHの重複を削除する function DeleteDuplicate() { if typeset -A &>/dev/null; then # 連想配列が使用できるか確認する # 使える場合 typeset -A _paths typeset _results while read -r _p do if [[ -n ${_p} ]] && (( ${_paths["${_p}"]:-1} )); then _paths["${_p}"]=0 _results=${_results}:${_p} fi done <<<"${PATH//:/$'\n'}" PATH=${_results/:/} unset -v _p _paths _results else # 使えない場合はawkを使用する typeset _p=$(awk 'BEGIN{RS=":";ORS=":"} !x[$0]++' <<<"${PATH}:") PATH=${_p%:*:} unset -v _p fi } if [[ -n $SSH_CONNECTION ]]; then : $(gnome-session-inhibit --inhibit suspend \ --reason "SSH connection is active" \ --inhibit-only) & fi </syntaxhighlight> <br><br> __FORCETOC__ [[カテゴリ:PinePhone]]
PinePhoneの初期設定
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse