MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
PinePhoneの初期設定のソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
PinePhoneの初期設定
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == LinuxディストリビューションをPinePhoneにインストールする手順、および、推奨される設定を記載する。<br> <br><br> == OSのダウンロード == インストールするLinuxディストリビューションのイメージをダウンロードする。<br> * Manjaro ARM *: Phosh : https://github.com/manjaro-pinephone/phosh/releases または https://manjaro.org/download/ *: Plasma Mobile : https://github.com/manjaro-pinephone/plasma-mobile/releases または https://manjaro.org/download/ * openSUSE Tumbleweed *: Phosh and Plasma Mobile : https://download.opensuse.org/repositories/devel:/ARM:/Factory:/Contrib:/PinePhone/images * Mobian *: Phosh (PinePhone) : https://images.mobian-project.org/pinephone/weekly/ *: Phosh (PinePhone Pro) : https://images.mobian-project.org/pinephonepro/weekly/ <br><br> == PinePhone本体へのインストール == ==== Tow-Boot (Mobianをインストールする場合) ==== 2022年4月3日以降、Mobianのイメージとインストーラには、デバイス固有のU-Boot(ブートローダ)が含まれていない。<br> また、現在、MobianではU-Bootがサポートされていない。<br> <br> そのため、ブートローダがインストールされていない場合、PinePhoneにTow-Bootをインストールすることが必要となる。<br> PinePhoneではeMMCにインストールすることを推奨、PinePhone ProではSPIにインストールすることが推奨される。<br> <br> <u>Tow-Bootは、MobianをPinePhoneにインストールする前に行う必要がある。</u><br> <br> また、Tow-Bootは、JumpDriveの機能も備えている。<br> <br> # 最新のTow-Bootをダウンロードする。 #: 最新のTow-Bootを[https://github.com/Tow-Boot/Tow-Boot/releases Github]からダウンロードする。 #: PinePhoneの場合 : pine64-pinephoneA64-YYYY.MM-XXX.tar.xz #: PinePhone Proの場合 : pine64-pinephonePro-YYYY.MM-XXX.tar.xz #: <br> # ダウンロードしたファイルを解凍して、解凍したディレクトリに移動する。 #: PinePhoneの場合、SPIフラッシュが存在しないため、mmcboot.installer.imgを使用する。 #: PinePhone Proの場合、SDカードにspi.installer.imgを使用する。 #: <br> # SDカードにtow-bootのイメージを書き込む。 #: <u>Tow-BootのイメージをSDカードに書き込む</u>。(<code>dd</code>コマンドやBalena Etcher等のソフトウェアを使用する) #: <br> #: <code>dd</code>コマンドの例 #: PinePhoneの場合 : <code>sudo dd if=mmcboot.installer.img of=/dev/XXX bs=1M oflag=direct,sync status=progress</code> #: PinePhone Proの場合 : <code>sudo dd if=spi.installer.img of=/dev/XXX bs=1M oflag=direct,sync status=progress</code> #: <br> # PinePhoneにSDカードを挿入して、PinePhoneを起動する。 <br> PinePhone Proの起動順序は、SPI -> eMMC -> SDカードの順であるため、Tow-Bootを使用してインストールするために、標準の起動順序を変更する必要がある。<br> これは、Pinephone Pro(Explorer Edition以降)の場合、REボタンを長押しすることにより、行うことができる。<br> <br> Tow-BootをSPIにインストールすることにより、Pinephone ProはOSのストレージと競合することなく、標準規格に準拠したブートが使用できる。<br> <br> PinePhone Proの電源を切り、SDカードを挿入した後、Pinephone Proの[RE]ボタンとボリュームの[−]ボタンを同時押下して、電源を入れる。<br> <u>※注意</u><br> <u>起動直後において、PinePhone Proが振動してLEDが赤く点灯するまで(その後、LEDが黄色に点灯する)、[RE]ボタンとボリュームの[−]ボタンを同時押下し続ける必要があることに注意する。</u><br> <u>PinePhone Proを充電しながら行うことを推奨する。</u><br> <br> インストーラGUIが起動するので、[Install Tow-Boot to eMMC Boot]または[Install Tow-Boot to SPI Boot] - [Start Installation]を選択する。<br> この時、インストール前にストレージを消去する必要は無い。<br> ストレージの消去は、Tow-Boot(またはSPIパーティションにインストールされた他のプラットフォームのファームウェア)のアンインストールに使用することができる。<br> <br> インストール完了後、SDカードを取り出す。<br> <br> ==== 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からインストール ==== # 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> == MicroSDカードへのインストール == LinuxディストリビューションをMicroSDカードにインストールすることにより、PinePhoneにインストールせずにOSを試すことができる。<br> これは、LinuxデスクトップにおけるLive USBやLive DVDのような位置付けである。<br> <br> ==== MicroSDカードを使用する前に (共通) ==== <u>もし、PinePhone向けLinuxディストリビューションのインストールに使用したmicroSDカードを使用する場合、以下の手順を実行する。</u><br> <br> # GPartedや<code>parted</code>コマンド等を使用して、新しいMS-DOSパーティションを作成する。 #: 以下の例では、<code>parted</code>コマンドを使用したフォーマットおよびパーティションを作成している。 ## フォーマットを行うmicroSDカードを選択する。 ##: <code>sudo parted /dev/sd<span style="color:#C00000">X</span></code> ##: 例: <code>sudo parted /dev/sdb</code></code> ##: <br> ## microSDカードをフォーマットする前に、<code>mklabel</code>コマンドを実行してラベルを作成する必要がある。 ##: (parted) <code>mklabel gpt</code> ##: <br> ## 次に、パーティションを作成する。<br>以下の例では、パーティション名を"primary"、FAT32タイプ、パーティションサイズは0%から100%までとしている。 ##: (parted) <code>mkpart</code> ##: パーティションの名前? []? <code>primary</code> ##: ファイルシステムの種類? [ext2]? <code>FAT32</code> ##: 開始? <code>0%</code> ##: 終了? <code>100%</code> ##: <br> ## パーティションの作成が完了した後、<code>print</code>コマンドを実行して、パーティションを確認する。 ##: (parted) <code>print</code> ##: <br> # 残存しているu-bootのデータを削除する。<br>この操作を行わない場合、PinePhoneは残存しているu-bootから起動しようとする。 #: <code>sudo dd if=/dev/zero of=/dev/sd<span style="color:#C00000">X</span> bs=512 seek=16 count=1</code> #: または #: <code>sudo dd if=/dev/zero of=/dev/sd<span style="color:#C00000">X</span> bs=512 seek=16 count=2</code> <br> ==== Mobian ==== ダウンロードしたイメージファイルから、MicroSDにMobianをインストールする。<br> または、balenaEtcher等を使用する。<br> gunzip mobian-pinephone-phosh-YYYYMMDD.img.gz または gzip -d mobian-pinephone-phosh-YYYYMMDD.img.gz sudo dd bs=1M if=mobian-pinephone-phosh-YYYYMMDD.img of=/dev/sd<span style="color:#C00000">X</span> status=progress <br> * 一般ユーザ名 *: mobian * パスワード *: 1234 * ルートユーザ名 *: root * ルートユーザのパスワード *: root <br> ==== Manjaro ARM ==== ダウンロードしたイメージファイルから、MicroSDにManjaro ARMをインストールする。<br> または、balenaEtcher等を使用する。<br> xzcat Manjaro-ARM-plasma-mobile-*.img.xz | sudo dd bs=4M of=/dev/sd<span style="color:#C00000">X</span> iflag=fullblock oflag=direct status=progress; sync <br> * 一般ユーザ名 *: manjaro * パスワード *: 123456 * ルートユーザ名 *: root * ルートユーザのパスワード *: root (※) *: <br> *: 最新のManajro ARMにおいて、スーパーユーザのパスワードは不明である。 *: そのため、以下に示すコマンドを実行して、スーパーユーザのパスワードを指定する必要がある。 *: <code>sudo passwd root</code> <br> ==== openSUSE Tumbleweed ==== ダウンロードしたイメージファイルから、MicroSDにopenSUSE Tumbleweedをインストールする。<br> または、balenaEtcher等を使用する。<br> xzcat openSUSE-Tumbleweed-ARM-PLAMO-pinephone.aarch64.raw.xz | sudo dd bs=4M of=/dev/sd<span style="color:#C00000">X</span> iflag=fullblock oflag=direct status=progress; sync <br> * 一般ユーザ名 *: pine * パスワード *: 1234 * ルートユーザ名 *: root * ルートユーザのパスワード *: linux <br><br> == SIMカード == ==== Phosh ==== # まず、[設定] - [Mobile] - [Advanced]項目 - [Network Mode]から、[3G, 4G]を選択する。 # 次に、[設定] - [Mobile] - [Advanced]項目 - [Access Point Names]を選択する。 # [Access Points]画面右上の[+]ボタンをタップして、APNを設定する。 <br> 以下に、各通信会社の設定を示す。<br> * Biglobe ** 名前 **: 任意 (例. Biglobe mobile type D) ** APN **: biglobe.jp ** ユーザ名 (一部端末では、ID(ユーザ名)を<code>user@biglobe.jp</code>に設定する必要がある。エラーが発生する場合は試すこと) **: user ** Password **: 0000 ** 認証方式 **: CHAPまたはPAP ** PDP Type **: IP (PPPは未対応) ** APNタイプ (テザリングが利用できない場合、端末の接続設定に<code>APNタイプ</code>項目が表示される場合は、以下の設定を追加で入力する) **: default,supl,dun **: ※文字列の区切りは、<code>,</code>(カンマ)であることに注意する。 *: <br> * OCNモバイル ** 名前 **: 任意 (例. OCN mobile) ** APN **: 新コース : lte.ocn.ne.jp **: 新コース以外 : lte-d.ocn.ne.jp ** ユーザ名 **: mobileid@ocn ** Password **: mobile ** 認証方式 **: CHAP ** PDP Type **: IP (PPPは未対応) ** PINパスワード **: 0000(デフォルト) <br><br> == microSDカードの使用 == microSDカードをデータ領域として使用する場合は、ext4フォーマットのmicroSDカードを挿入する必要がある。<br> <br> もし、インストール時に使用したmicroSDカードを使用する場合は、以下の手順を実行する。<br> # GPartedやpartedコマンド等を使用して、新しいMS-DOSパーティションを作成する。 #: partedコマンドでのパーティション作成例を、以下に示す。 ## microSDカードをフォーマットする前に、<code>mklabel</code>コマンドを実行してラベルを作成する必要がある。 ##: <code>sudo parted /dev/sdX # 例: sudo parted /dev/sdb</code> ##: (parted) <code>mklabel gpt</code> ## 次に、パーティションを作成する。<br>以下の例では、パーティション名を"primary"、FATfsタイプ、パーティションサイズは0%から100%までとしている。 ##: (parted) <code>mkpart</code> ##: パーティションの名前? []? <code>primary</code> ##: ファイルシステムの種類? [ext2]? <code>FAT32</code> ##: 開始? <code>0%</code> ##: 終了? <code>100%</code> ## パーティションの作成が完了した後、printコマンドを実行して、パーティションを確認する。 ##: (parted) <code>print</code> # 次に、以下のコマンドを実行して、u-bootを上書きする。(これを行わない場合、PinePhoneは残存しているu-bootから起動しようとする) #: <code>sudo dd if=/dev/zero of=/dev/sdX bs=512 seek=16 count=1</code> #: または #: <code>sudo dd if=/dev/zero of=/dev/sdX bs=512 seek=16 count=2</code> # 最後に、GNOME DisksやYaSTパーティションマネージャを使用して、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> == 初期設定 == ==== Manjaro ==== アップデートにおいて、ミラーサーバを設定する。<br> sudo pacman-mirrors --continent sudo pacman -Syyu <br> Manjaroを使用する場合、必要となる基本的なライブラリをインストールする。<br> sudo pacman -S --needed make cmake rsync base-devel gcc gdb gdb-common zip unzip lz4 meson ninja python python-pip sdl2 zlib ffmpeg <br> KB151キーボードライブラリを使用する場合は、以下に示す手順を実行する。<br> # KB151キーボードライブラリをインストールする。 #: <code>sudo pacman -S --needed ppkb-tools</code> #: <br> # KB151キーボードライブラリのデーモンを自動起動する。<br> #: <code>sudo systemctl enable ppkb-i2c-inputd.service</code> #: <br> # 標準のキーボードライブラリを無効にするため、ブートオプション<code>pinephone-keyboard.disable_input</code>を追記する。 #: <code>sudo nano /boot/boot.txt</code> #: <br> #: <code># /boot/boot.txtファイル</code> #: <code> setenv bootargs 〜 pinephone-keyboard.disable_input</code> #: <br> # ブートローダを更新する。 #: <code>sudo pp-uboot-mkscr</code> #: <br> # PinePhoneを再起動する。 #: <code>sudo systemctl reboot</code> #: <br> # KB151キーボードライブラリを使用して入力できるかどうか確認する。 <br> ==== SSHの設定 ==== まず、OpenSSHサーバをインストールする。<br> Manjaro ARMでは、Phosh Beta28以降、Plasma Beta 13以降は標準でOpenSSHがインストールされている。<br> # Mobian sudo apt-get install openssh-server # Manjaro sudo pacman -S openssh <br> OpenSSHを自動起動および開始する。<br> # Mobian sudo systemctl enable ssh sudo systemctl restart ssh # Manjaro sudo systemctl enable sshd sudo systemctl restart sshd <br> ==== 日本語フォントのインストール ==== 日本語フォントをインストールするために、以下のコマンドを実行する。<br> # Mobian sudo apt-get install fonts-dejavu fonts-noto-cjk fonts-vlgothic fonts-takao fonts-ipafont # Manjaro sudo pacman -S ttf-dejavu ttf-droid noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-extra otf-ipafont otf-ipaexfont otf-ipamjfont <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> sudo mkdir /etc/phosh sudo cp /usr/share/phosh/phoc.ini /etc/phosh/phoc.ini <br> sudo vi /etc/phosh/phoc.ini <br> # /etc/phosh/phoc.iniファイル ...略 [出力: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> == 日本語入力 == ==== Mobian ==== 現在(2021/4/24)、この設定が有効な環境は、Mobianのみである。<br> <br> ===== Fcitx-KKCを使用する場合 ===== まず、FcitxおよびKKCをインストールする。<br> sudo apt install fcitx-kkc fonts-noto-cjk <br> PinePhoneを再起動する。<br> <br> Fcitxのサービスを起動する。<br> fcitx -r <br> 再起動後、Fcitxの新しいアイコンが2つ統合されるが、これらのアイコンを選択して起動してはならない。<br> 代わりに、King's Cross等のターミナルからFcitxの設定ツールを起動する。<br> <u>ただし、SSHを使用すると正常に設定できないことに注意する。</u><br> fcitx-configtool <br> Fcitx設定ツールのキーボード一覧画面が表示される。(標準キーボードは削除してはならない)<br> [現在の言語のみ表示]チェックボックスのチェックを外す。<br> <br> [+]アイコンを選択して、検索欄に<u>kkc</u>と入力する。<br> [かな漢字]キーボードを選択して、[OK]ボタンを押下する。<br> <br> KKCを有効にするには、[Global Config]タブ - [Trigger Input Method]項目がある。(初期設定では、[Ctrl] + [Space])<br> しかし、[Ctrl] + [Space]キーはPinePhoneで使用するには快適ではないため、[Ctrl] + [LAlt]キーのような他のトリガーに変更する。<br> <br> Fcitx設定ツールを終了して、外部キーボードおよびスクリーンキーボードから日本語入力ができるかどうかを確認する。<br> <br> ===== Fcitx-Mozcを使用する場合 ===== まず、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> ==== Manjaro ARM ==== Fcitxをインストールする。<br> # Fcitxをインストールする場合 sudo pacman -S --needed qt5ct qt5-translations sudo pacman -S fcitx fcitx-mozc fcitx-gtk2 fcitx-gtk3 fcitx-qt5 kcm-fcitx # Fcitx5をインストールする場合 sudo pacman -S --needed qt5ct qt5-translations sudo pacman -S fcitx5 fcitx5-mozc fcitx5-qt fcitx5-config-qt fcitx5-gtk fcitx5-configtool <br> 次に、~/.pam_environmentファイル(場合によっては、/etc/environmentファイルも含む)を作成して、以下の設定を追記する。<br> なお、~/.xprofileファイル、~/.profileファイル、~/.bashrcファイル、~/.xinitrcファイルは設定不要である。<br> # Fcitxをインストールする場合 LANG=en_US.UTF-8 XMODIFIERS=@im=fcitx XMODIFIER=@im=fcitx GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx DefaultIMModule=fcitx # Fcitx5をインストールする場合 INPUT_METHOD=fcitx5 XMODIFIERS=@im=fcitx5 GTK_IM_MODULE=fcitx5 QT_IM_MODULE=fcitx5 fcitx5 -r <br> PinePhoneを再起動、または、再ログインする。<br> <br> ターミナルを起動して以下のコマンドを実行する。<br> Fcitx5の設定では、入力メソッドにMozcを追加する。<br> * Manjaro Phoshの場合 *: <code>QT_QPA_PLATFORM=wayland fcitx5-configtool</code> *: または *: <code>QT_QPA_PLATFORM=xcb fcitx5-configtool</code> * Manjaro Plasma Mobileの場合 *: <code>fcitx5-configtool</code> <br><br> == 電話帳 == ==== Evolutionの使用 (Phoshの場合) ==== Evolutionをインストールする。<br> # Mobian sudo apt-get insatll evolution # Manjaro sudo pacman -S evolution <br> Evolutionをディスプレイにフィットさせる。<br> この設定を行わない場合、インポート画面が大きくなりすぎるため、表示できない。<br> scale-to-fit evolution on <br> ファイルマネージャから電話帳のファイル(.vcf拡張子)を開く。<br> [データのインポート]画面が起動して、インポートする連絡先が表示される。<br> 画面下の[進む]ボタンを押下して、電話帳をインポートする。<br> <br> インポート完了後は、Evolutionをアンインストールする。<br> # Mobian sudo apt-get purge evolution sudo apt-get autoremove # Manjaro sudo pacman -R evolution <br> ==== PhoneBookの使用 (KDEの場合) ==== PhonBookのメイン画面右上にあるボタンをタップして、[Import]を選択する。<br> ファイル選択ダイアログから、電話帳ファイル(vcf拡張子)を選択する。<br> <br> ==== Clontactsの使用 ==== [https://github.com/pine-clover/Clontacts.git ClontactsのGithub]から、Clontactsをダウンロードする。<br> または、<code>git clone</code>コマンドを使用して、Clontactsをダウンロードする。<br> sudo apt-get install git # Mobianのみ git clone https://github.com/pine-clover/Clontacts.git <br> 以下のコマンドを実行して、電話帳のファイル(vcf拡張子)をインポートする。<br> python3 main.py <電話帳のファイルのパス> <br><br> == スクリーンショット == ==== 静止画 ==== 必要な依存関係をインストールする。 # Mobian sudo apt-get install grim libnotify-bin yad # Manjaro sudo pacman -S grim libnotify 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> == 音量 == 音量を最大にしているのに、内蔵スピーカーの音が小さいように感じることがある。 この時、alsamixerを使用して、ラインアウトのゲインを調整することができる。 sudo apt install alsa-utils <br> alsamixerを使用する場合、以下のコマンドを実行する。<br> alsamixer <br> ミキサーが表示されたら、[F6]キーを押下して、[PinePhone]デバイスを選択する。<br> 左右の矢印キーで[ラインアウト]を探して、上矢印でゲインを上げる。<br> <br> また、[Line Out Source]でステレオではなく[Mono Dif]を選択することで、さらにゲインを上げることができる。<br> <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> ==== Manjaro ==== まず、/boot/boot.txtファイルを以下のように編集する。<br> sudo vi /boot/boot.txt <br> # /boot/boot.txtファイル # 編集前 setenv bootargs loglevel=4 console=tty0 console=${console} earlycon=uart,mmio32,0x01c28000 consoleblank=0 boot=PARTUUID=${uuid_boot} root=PARTUUID=${uuid_root} rw rootwait quiet audit=0 bootsplash.bootfile=bootsplash-themes/manjaro/bootsplash # 編集後 setenv bootargs loglevel=4 console=ttyS0,115200 earlycon=uart,mmio32,0x01c28000 consoleblank=0 boot=PARTUUID=${uuid_boot} root=PARTUUID=${uuid_root} rw rootwait audit=0 console=tty1 <br> 設定を適用するため、U-bootをアップデートする。<br> sudo pp-uboot-mkscr <br> ==== SUSE ==== ブートローダの<code>quiet</code>オプションは、ブートプロセスを出力しないようにする設定である。<br> また、<code>splash</code>オプションはブート画面を表示するための設定である。<br> <br> Linux起動時にブートプロセスの情報を見る場合は、/etc/sysconfig/bootloaderファイルにある<code>DEFAULT_APPEND</code>を編集する。<br> sudo vi /etc/sysconfig/bootloader <br> * <code>quiet</code>オプションを削除する。 * <code>splash=〜</code>を<code>splash=0</code>に変更する。 <br> <br> 設定を適用するため、GRUBをアップデートする。<br> sudo grub2-mkconfig -o /boot/grub2/grub.cfg <br><br> == FlatPakのインストール == ターミナルを起動して、以下のコマンドを実行する。<br> # Mobian sudo apt-get install gnome-software-plugin-flatpak flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo # Manjaro sudo pacman -S flatpak flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo <br><br> == Chromiumブラウザのインストール == ==== パッケージ管理システムからインストール (Mobian / Manjaro) ==== Chromiumをインストールする。<br> # Mobian sudo apt install chromium # Manjaro sudo pacman -S --needed chromium <br> ==== FlatPakからインストール (Mobian / Manjaro) ==== パッケージ管理システムからインストールしたChromiumは、描画処理の不具合により、画面がホワイトアウトする場合がある。<br> この時、FlatPakからChromiumをインストールする。<br> flatpak install flathub org.chromium.Chromium <br> PinePhoneの画面に最適化する。<br> scale-to-fit chromium on <br> Chromiumを起動する。<br> flatpak run org.chromium.Chromium <br> FlatPakからChromiumをアンインストールする場合は、以下のコマンドを実行する。<br> flatpak uninstall org.chromium.Chromium <br> また、FlatPakからChromiumをアップデートする場合は、以下のコマンドを実行する。<br> flatpak update org.chromium.Chromium # または flatpak upgrade org.chromium.Chromium <br> ==== Chromiumブラウザの設定 ==== 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> もし、Chromiumを起動した時に画面がホワイトアウトする場合は、/etc/chromium/local.confファイルを作成して、以下の設定を追記する。<br> sudo vi /etc/chromium/local.conf <br> # /etc/chromium/local.confファイル unset GDK_BACKEND <br> Chromiumブラウザが実行できるかどうか確認する。<br> <br> ==== Chromiumブラウザの問題 ==== Chromiumを起動した時、文字が表示されない場合がある。<br> この時、[ハードウェアアクセラレーションが使用可能な場合は使用する]のチェックを外す。<br> # 設定画面も見えない可能性もあるため、アドレスバーに chrome://settings/system と入力する。 # 上から2番目のスイッチを無効化(グレーアウト)する。 # Chromiumを再起動する。 <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> == SoCのオーバークロック == ==== Allwinner SoC ==== Allwinner Socをオーバークロックするには、まず、/boot/dtbs/allwinnerディレクトリにあるDTBファイルをDTSファイルに変換する必要がある。<br> 所有しているPinePhoneに適合するsun50i-a64-pinephone-1.X.dtbファイルを、DTSファイルに変換する。<br> sudo dtc -I dtb -O dts /boot/dtbs/allwinner/sun50i-a64-pinephone-1.X.dtb -o /boot/dtbs/allwinner/sun50i-a64-pinephone-1.X.dts <br> 変換したDTSファイルの内容を、以下に示すように編集する。<br> 以下の例では、Allwinner SoCのCPUを1.344[GHz]に変更している。<br> sudo vi /boot/dtbs/allwinner/sun50i-a64-pinephone-1.X.dts <br> # /boot/dtbs/allwinner/sun50i-a64-pinephone-1.X.dtsファイル # 編集前 opp-table-cpu { ...略 opp-1152000000 { opp-hz = <0x00 0x44aa2000>; opp-microvolt = <0x13d620>; clock-latency-ns = <0x3b9b0>; }; }; # 編集後 (Allwinner SoCを1.344[GHz]に変更する場合) opp-table-cpu { ...略 opp-1152000000 { #opp-hz = <0x00 0x44aa2000>; opp-hz = <0x00 0x501bd000>; opp-microvolt = <0x13d620>; clock-latency-ns = <0x3b9b0>; }; }; <br> 次に、編集したDTSファイルをDTBファイルに変更する。<br> sudo dtc -I dts -O dtb /boot/dtbs/allwinner/sun50i-a64-pinephone-1.X.dts -o /boot/dtbs/allwinner/sun50i-a64-pinephone-1.X.dtb <br> 以下のパッケージを再インストールする。<br> sudo pacman -S linux-pinephone sudo pacman -S kmod libdrm mtdev ndctl libxdmcp powersupply wayland xorg-xprop zenity iio-sensor-proxy # 不要の可能性あり <br> 最後に、PinePhoneを再起動する。<br> sudo systemctl reboot <br> Allwinner Socのクロックの詳細を知りたい場合、/sys/kernel/debug/clk/clk_summaryファイルを確認する。<br> sudo cat /sys/kernel/debug/clk/clk_summary <br> オーバークロックに関する詳細は、[https://wiki.pine64.org/index.php/Overclocking PinePhoneの公式Wiki]を参照すること。<br> <br> 初期状態のGPUのクロックは、432[MHz]に設定されている。<br> 以下の例では、GPUのクロックを500[MHz]に設定している。<br> <br> GPUの安定性を確認するために、ベンチマークツール(glmark2-es2等)を実行すること。<br> <br><br> == エラー関連 == ==== アップデートエラー ==== <code>sudo apt upgrade</code>コマンドでエラーになる場合、以下のコマンドを実行する。<br> timedatectl set-ntp yes sudo systemctl restart systemd-timesyncd.service <br> ==== モデムマネージャ ==== Phoshにおいて、SIMカードを使用して通信(4G通信)を行うEG25モデムマネージャが停止する場合がある。<br> この時、メイン画面左上にあるモデムマネージャ(4G)のアイコンが消える。<br> <br> ===== 方法 1 ===== モデムマネージャを再起動するため、以下のコマンドを実行する。<br> sudo systemctl restart eg25-manager.service <br> もし、上記のコマンドが正常に実行された場合は、2〜3分後にモデムマネージャが再起動する。<br> <br> ===== 方法 2 ===== モデムマネージャを再起動するため、以下のコマンドを実行する。<br> sudo --askpass killall ModemManager sudo /usr/bin/ModemManager & <br> また、上記のコマンドを、~/.bashrcファイル等にエイリアスを追加してもよい。<br> vi ~/.bashrc <br> # ~/.bashrcファイル alias startmodem=' sudo --askpass killall ModemManager; sudo /usr/bin/ModemManager &' <br> ===== 方法 3 ===== モデムマネージャを数分ごとに確認して、停止している場合は自動的に再起動するSystemdサービスユニットを作成する。<br> <br> モデムマネージャが停止する時、/dev/ttyUSB2ファイルが自動的に削除されるため、このファイルが削除された時にSystemdサービスユニットを実行する。<br> sudo vi /etc/systemd/system/modem-test.timer <br> # /etc/systemd/system/modem-test.timerファイル [Unit] Description=Check presence of modem every minute [Timer] OnBootSec=180 OnUnitActiveSec=180 [Install] WantedBy=timers.target <br> sudo vi /etc/systemd/system/modem-test.service <br> # /etc/systemd/system/modem-test.serviceファイル [Unit] Description=Check if modem is present and restart eg25-manager if necessary ConditionPathExists=!/dev/ttyUSB2 [Service] Type=oneshot ExecStart=systemctl restart eg25-manager.service <br><br> == USBドック == Mobianにおいて、動作報告のあるUSBドックを以下に示す。<br> <br> * Anker PowerExpand+ *: HDMIポートを起動するコマンド *: <code>wlr-randr --output HDMI-A-1 --mode <外部ディスプレイの解像度></code> *: 注意 : 1080p以上だと不安定になることがある。 <center> {| class="wikitable" |- style="text-align: center; background-color:white;" | <yjshopping seller_id="ankerdirect">Anker PowerExpand+ 7in1 USB PD HDMI イーサネット microSD&SD 60W出力</yjshopping> |} </center> <br><br> __FORCETOC__ [[カテゴリ:PinePhone]]
PinePhoneの初期設定
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse