====== ASUS ROG Flow X13 にLinux(Mint20.2)をインストールする💻 ======
いつも使っているLenovoのラップトップがいつ壊れてもおかしくない状態になったので,**ASUSのROG Flow X13 GV301QE**(①13.4in-タッチパネルディスプレイWUXGA 120Hz,②16G-MEM, ③512G-SSD, ④Ryzen 5900, ⑤NVIDIA GeForce RTX3050Ti),⑥吸気口:背面,⑦ペンの対応:MPP2(Microsoft Pen Protocol 2.0)を調達した.
いつもだとWindowsを消去してしまうのだが,Windows Subsystem for Linux 2(WSL2)を試したかったので,Window/Linuxのデュアルブート構成にした.
This page was last edited at: ~~LASTMOD~~
{{METATOC}}
===== Linuxのインストール準備 =====
このPCの場合,最初にWindowsでBitLockerというのを無効化してから,セキュアブートを無効にする必要があった.
==== Windowsで「BitLocker」の無効化=====
- Win10を起動したら,「スタートボタン」を右クリックし,「設定」→「更新とセキュリティ」に進む
- 左側の「デバイスの暗号化」を選び,更に「オフ」にするをクリックすると,暗号化解除がはじまる(暫く待つ).
- Windowsをシャットダウンする
===== BIOSの設定変更と,USBでLinuxの起動 =====
- F2を押しながら,電源ON
- BIOS画面になったら,F7を押し,アドバンストモードに変更
- 「Security」タブを開き,「Secure Boot」→「Secure Boot Control」を Disabled にする.
- F10を押して,「Save」して,PCを再起動.
- 無事にWindowsが起動することを確認し,シャットダウンする.Windowsが起動せず,「BitLocker回復画面」とかいわれた場合は,セキュアブートを有効に戻して,Windowを起動し,BitLockerを無効化してみる.
- LinuxのインストールUSBを挿入し,F2を押しながら,電源ON
- BIOS画面になったら,F8を押し,BootMenuで USBメモリを 選ぶと,USBメモリからLinuxが起動する
===== Linuxのインストール =====
- Linuxデスクトップのインストーラアイコンをクリックし,言語やキーボード選択などを行う.
- 「Windows Boot Managerがインストールされています」と表示されたら,「Linux Mintを Windows Boot Manager とは別にインストール」を選択する.
- パーティションを切り分ける画面に成るので,Linuxで使う領域をWindowsから削り取る.
- Windowsに150GB(初期状態で50GB分は利用中),Linux側に340GB割り当てた.
- 後はそのまま普通にインストールすれば終了
===== Win10/Linuxの起動の切り替え方法 =====
PCの電源をいれるとGrubの画面になって,Linux/Windowsが選べるようになっていた.これは楽でいい.
===== Linux環境の整備 =====
==== inxiでシステム構成の確認 ====
$ sudo inxi -Fxzm
System:
Kernel: 5.14.9 x86_64 bits: 64 compiler: N/A Desktop: MATE 1.26.0
Distro: Linux Mint 20.3 Una base: Ubuntu 20.04 focal
Machine:
Type: Laptop System: ASUSTeK product: ROG Flow X13 GV301QE_GV301QE v: 1.0
serial:
Mobo: ASUSTeK model: GV301QE v: 1.0 serial:
UEFI: American Megatrends LLC. v: GV301QE.407 date: 05/31/2021
Battery:
ID-1: BAT0 charge: 4.5 Wh condition: 55.6/62.0 Wh (90%)
model: ASUSTeK ASUS Battery status: Charging
Device-1: hid-0018:04F3:2C82.0001-battery model: ELAN9008:00 04F3:2C82
charge: N/A status: N/A
Memory:
RAM: total: 15.05 GiB used: 2.58 GiB (17.1%)
Array-1: capacity: 32 GiB slots: 2 EC: None max module size: 16 GiB
note: est.
Device-1: DIMM 0 size: 8 GiB speed: 4266 MT/s type: LPDDR4
Device-2: DIMM 0 size: 8 GiB speed: 4266 MT/s type: LPDDR4
CPU:
Topology: 8-Core model: AMD Ryzen 9 5900HS with Radeon Graphics bits: 64
type: MT MCP arch: Zen 3 L2 cache: 4096 KiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
bogomips: 105400
Speed: 1135 MHz min/max: 1200/3300 MHz Core speeds (MHz): 1: 1134 2: 1133
3: 1135 4: 1135 5: 1135 6: 1135 7: 1297 8: 1297 9: 1149 10: 1197 11: 1196
12: 1134 13: 1297 14: 1178 15: 1201 16: 1297
Graphics:
Device-1: NVIDIA vendor: ASUSTeK driver: nvidia v: 470.103.01
bus ID: 01:00.0
Device-2: AMD vendor: ASUSTeK driver: amdgpu v: kernel bus ID: 04:00.0
Display: server: X.Org 1.20.13
driver: amdgpu,ati,modesetting,nouveau,nvidia unloaded: fbdev,vesa
resolution: 1920x1200~120Hz
OpenGL: renderer: NVIDIA GeForce RTX 3050 Ti Laptop GPU/PCIe/SSE2
v: 4.6.0 NVIDIA 470.103.01 direct render: Yes
Audio:
Device-1: AMD driver: snd_hda_intel v: kernel bus ID: 04:00.1
Device-2: AMD Raven/Raven2/FireFlight/Renoir Audio Processor
vendor: ASUSTeK driver: N/A bus ID: 04:00.5
Device-3: AMD Family 17h HD Audio vendor: ASUSTeK driver: snd_hda_intel
v: kernel bus ID: 04:00.6
Sound Server: ALSA v: k5.14.9
Network:
Device-1: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel port: e000
bus ID: 02:00.0
IF: wlp2s0 state: up mac:
IF-ID-1: docker0 state: down mac:
IF-ID-2: ppp0 state: unknown speed: N/A duplex: N/A mac: N/A
Drives:
Local Storage: total: 476.94 GiB used: 217.56 GiB (45.6%)
ID-1: /dev/nvme0n1 vendor: Western Digital
model: PC SN530 SDBPTPZ-512G-1002 size: 476.94 GiB
Partition:
ID-1: / size: 310.52 GiB used: 217.52 GiB (70.1%) fs: ext4
dev: /dev/nvme0n1p7
Sensors:
System Temperatures: cpu: 63.0 C mobo: N/A
Fan Speeds (RPM): cpu: 3600
GPU: device: nvidia screen: :0.0 temp: 56 C device: amdgpu temp: 57 C
Info:
Processes: 412 Uptime: 33m Init: systemd runlevel: 5 Compilers: gcc: 9.3.0
Shell: bash v: 5.0.17 inxi: 3.0.38
==== システムのアップグレード,基本ツールの導入,Grubの設定 ====
-「ソフトウェアソース」を起動し,近くのミラーサイト(JAIST)に設定
- sudo apt-get update
- sudo apt-get dist-upgrade
- sudo apt-get install zsh vim openssh-server terminator git
- sudo vi /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="
- sudo apt-get install grub2-theme-mint
- ↑ grub2の画面に背景を付けたい時
- sudo update-grub
==== VPNクライアントの導入 ====
$ sudo apt-get install openfortivpn
$ cd /tmp
$ wget https://apt.iteas.at/iteas/pool/main/o/openfortigui/openfortigui_0.9.4-1_amd64_focal.deb
$ sudo dpkg -i openfortigui_0.9.4-1_amd64_focal.deb
==== sshサーバ上のファイルをマウントできるようにする ====
$ sudo apt-get install sshfs
$ sudo vi /etc/fuse.conf
#user_allow_other
を
user_allow_other
に書き換える
もしかしたら, sudo gpasswd -a ${USER} fuse とすれば /etc/fuse.conf の編集は不要かも.
==== NVIDIAドライバの導入・動作確認 ====
=== Mintの標準パッケージ(ドライババージョンによってはログインしようとするとmarcoが落ちるバグが・・・) ===
nvidia-driver-470は動くが,nvidia-driver-495以降はXサーバのバグ?に引っかかって,ログインしようとするとmarcoが落ちて,ログインマネージャ画面に戻されてしまう.
- https://ubuntu-mate.community/t/can-anyone-here-upgrade-to-nvidia-driver-510-without-login-problems/25147
- https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-510/+bug/1960621
- https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-510/+bug/1960621/comments/15
* 回避方法①
(コンソールログインして)
$ sudo prime-select on-demand
(ここで on-demandでなくnvidiaとするとログインできない)
$ sudo service lightdm restart
あとはGUIでログインする
* 回避方法②・・・ marcoをやめてmetacityにする
$ gsettings get com.linuxmint.desktop mate-window-manager
'marco-composite'
$ gsettings set com.linuxmint.desktop mate-window-manager 'metacity-composite'
* 回避方法③・・・ nvidia-driver-470に戻す
(コンソールログインして)
$ sudo apt-get purge "*nvidia*"
$ sudo apt-get install nvidia-driver-470
-「ドライバマネージャ」を立ち上げて,nvidia-driver-XXXを選んで,再起動するだけでよかった.
- あるいは
$ sudo ubuntu-drivers list
nvidia-driver-450-server, (kernel modules provided by linux-modules-nvidia-450-server-generic-hwe-20.04)
nvidia-driver-470-server, (kernel modules provided by linux-modules-nvidia-470-server-generic-hwe-20.04)
nvidia-driver-418-server, (kernel modules provided by linux-modules-nvidia-418-server-generic-hwe-20.04)
nvidia-driver-470, (kernel modules provided by linux-modules-nvidia-470-generic-hwe-20.04)
nvidia-driver-510, (kernel modules provided by linux-modules-nvidia-510-generic-hwe-20.04)
$ sudo apt-get install nvidia-prime-applet nvidia-driver-470
$ sudo apt-get install nvidia-prime-applet
- GPUの動作確認のために以下を導入
- sudo apt-get install supertuxkart astromenace
- SuperTuxKartは最初はCPUしか使われてなかったが,何故かGPUを使うようになった.よかったよかった.
=== Ubuntu PPA(そもそも,PPAでnvidiaドライバをいれるのはトラブルのもとになるので非推奨) ===
Kernel-5.14系にしたときに,NvidiaDriverも470.74以降にしたほうがいよいかなと思った.PPAには470.74があがっているようだったので,PPAからいれてみた.
https://9to5linux.com/nvidia-470-74-graphics-driver-brings-support-for-linux-kernel-5-14-firefox-improvements
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0 ==
modalias : pci:v000010DEd000025A0sv00001043sd0000148Cbc03sc02i00
vendor : NVIDIA Corporation
driver : nvidia-driver-460-server - distro non-free
driver : nvidia-driver-470 - third-party non-free recommended
driver : nvidia-driver-470-server - distro non-free
driver : nvidia-driver-460 - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
$ sudo apt install nvidia-driver-470
$ sudo reboot
ちなみにPPAをやめるときは.
$ sudo add-apt-repository --remove ppa:graphics-drivers/ppa
$ sudo rm /etc/apt/sources.list.d/graphics-drivers-ppa-focal.list
(うまく消えないときは手動で)
$ sudo apt-get update
$ sudo apt-get purge nvidia-driver-470
うまく消せないときは
$ sudo apt-get purge "*nvidia*"
==== バッテリを満充電にはしない(充電の上限を80%にする) ====
$ cat /sys/class/power_supply/BAT0/status
Charing/ Not charging/ Discharging などが表示される
$ cat /sys/class/power_supply/BAT0/model_name
ASUS Battery
$ cat /sys/class/power_supply/BAT0/capacity
49 (バッテリ残量)
$ cat /sys/class/power_supply/BAT0/charge_control_end_threshold
100 (充電の上限,60%,80%,100%から選択)
$ sudo crontab -e
@reboot /bin/sleep 10; /bin/echo 80 > /sys/class/power_supply/BAT0/charge_control_end_threshold
===== 重要なトラブルシューティング =====
==== slackや,EdgeでDokuwikiの編集画面での日本語入力がおかしくなるようなら,fcitx→ibusにするとよい ====
勝手に改行されたりする場合は, fcitx → ibus に切り替えるとうまくいくようになりました.
$ sudo apt-get install ibus-mozc
$ mintlocale-im
で,日本語を ibus にして,再ログイン後
$ ibus-setup
で,入力メソッドとして「日本語Mozc」を追加する必要があります.また,句読点についてはibus/fcitx関係なく以下で設定する必要があります.
$ /usr/lib/mozc/mozc_tool -mode=config_dialog
* ibusのトレイアイコンの「あ/A」の色はデフォルトでは青っぽい色(#415099)で見にくいので適宜変更するとよい.
$ gsettings set org.freedesktop.ibus.panel xkb-icon-rgba '#F17049'
(オレンジ色)
* ibus-setupでは,**プロパティパネル→「自動的に隠す」**にしておくと,入力箇所に小さなウィンドウが現れて入力モードが把握しやすい.ただし,デフォルトでは10秒経過しないと消えないので少々イライラする.ということで以下のように0.35秒で消えるようにするとよいかも.
$ gsettings set org.freedesktop.ibus.panel auto-hide-timeout 350
(これはibusを再起動しないと反映されないので注意)
==== BIOSを4.07 → 4.09 (BIOS GV301QE.409 01/27/2022)にしたらLinuxが起動しなくなった・・・起動はするようにはなったが深刻なことに ====
いつの間にか,BIOS 4.11 が出ていて,それに変更することで新しいカーネルでも起動するようになりましたー!(2022, 6/13)
BIOSをアップデートした際に,無効にしてあったSecureBootが再び有効になったようで,
error: /boot/vmlinuz-5.xx.xx has invalid signature.
error: you need to load the kernel first.
となった.これにはすぐに気がついたのでSecureBootを切ったところ,今度はBoot時にLinuxを選んでも真っ黒な画面になり,すぐにrebootがかかるようになった.どうやらカーネルをRAMにロードする所(最初の最初)で引っかかっているように思われた.
これは流石にやばいとおもっていろいろ試した所,"acpi=off"を起動オプションに付けたらLinuxが起動し("dis_ucode_ldr"というのもあるようだが,それは付けなくても大丈夫だった).
とりあえずログインするとなんだかカクカクする.CPUの負荷が高くておかしいと思い **dmesg -w** で確認すると,nvidiaのモジュールが見つからないというログがどしどし出力されているようだった.どうもnvidiaのビデオまわりのトラブルのようだったので,primeの設定でAMDプロファイルに切り替えてリブートするとカクつきが収まった.
$ sudo /etc/default/grub
... acpi=off
$ sudo update-grub2
$ sudo prime-select intel
$ sudo reboot
$ sudo inxi -M
Machine:
Type: Laptop Mobo: ASUSTeK model: GV301QE v: 1.0 serial: 6515MC02I8
UEFI: American Megatrends LLC. v: GV301QE.409 date: 01/27/2022
"acpi=off"だと起動はするようになったものの,**タッチパッドが効かない**し,**シャットダウン時に電源が切れなくなった**.しかもシングルコアプロセッサとして動作する模様.ファームウェア4.07に戻そうにもASUSのページにあるのは4.08と4.09だけ・・・.これは暫く辛い・・・.
4.08にしても症状は変わらず...
同じように困っている人 → https://www.reddit.com/r/FlowX13/comments/t98b7g/help_with_bios_rollback/
=== 試したこと: grub → systemd-boot にしてみた ...変わらないので元に戻した===
ブートローダをsystemd-bootにしたら
== systemd-boot にする ==
$ sudo -i
$ bootctl install
(/boot/efi/loader/loader.conf が生成される)
$ vi /boot/efi/loader/loader.conf
timeout 10
default mint
$ blkid
(mintが入っているパーティションIDを調べる)
$ vi /boot/efi/loader/entries/mint.conf
title mint
linux /vmlinuz
initrd /initrd.img
options root=UUID=9c49c930-3d7b-4881-8621-2ee84131a6a6 rw
$ cp -f /boot/vmlinuz-5.17.0-rc7 /boot/efi/vmlinuz
$ cp -f /boot/initrd.img-5.17.0-rc7 /boot/efi/initrd.img
$ bootctl list
Boot Loader Entries:
title: mint (default)
id: mint.conf
source: /boot/efi/loader/entries/mint.conf
linux: /vmlinuz
initrd: /initrd.img
options: root=UUID=9c49c930-3d7b-4881-8621-2ee84131a6a6 rw
$ sudo reboot
ここでリブートすると,選択画面が現れるので mint を選ぶとよい.
オプションを追加したいときは e をタイプして, acpi=off などをつけるよい
acpi=offをつけないと起動しなかった・・・BIOSがおかしいのではないかと思う.
== systemd-boot をやめて,grubに戻す ==
効果が無かったので元に戻すことにした
$ sudo bootctl remove
$ cd /boot/efi
$ sudo rm initrd.img vmlinuz
=== 試したこと:USBメディアで起動できるか確認...あ!起動するぞ・・・あれ?でも ===
ACPIのエラーが最初に出るものの,Linux Mint 20.2 xfce版は無事起動し,マルチコアで可動していることが確認できた.ってことはインストールしなおせば復活するということだろうか?
Linux Mint 20.3は起動したが,いつのまにか固まった.
=== 【解決】どうやら,Ryzen特有の問題らしい...カーネルを5.11にしてみると無事起動した ★★★★===
5.8は起動途中で固まり,5.13, 5.15, 5.16, 5.17はすぐにリブートされる.
で,5.11が無事起動した..
https://wiki.gentoo.org/wiki/Ryzen#Random_reboots_with_mce_events
https://wiki.archlinux.org/title/Ryzen#Random_reboots
(他にも,idle=nomwait や processor.max_cstate=5 を付けるのもよいらしい.今は付けてないけど)
===== トラブルシューティング =====
==== テキストファイルアイコンがプレビューされない ====
https://github.com/mate-desktop/caja/issues/1047 にあるように,Ubuntu18以降はcajaだけでなくnemoなどでもプレビューされなくなっているようで,原因はgtkが新しくなってその機能が削除されたためらしいです.しばらくは期待できないでしょう.
https://bugs.launchpad.net/ubuntu/+source/caja/+bug/1787368
==== Nvidiaドライバが有効にならない...→Windowsで「エコモード」にしていないかをチェック! ====
primeアプレットが起動しなかったり,Mintのドライバマネージャが「Nvidia GPU」を検出しないときがあります.
ASUS のROGシリーズPCにプリインストールされているWindowsアプリ「Armoury crate」(アーマリークレート?)を起動して**エコモード**にされていないかをチェックして下さい.エコモードだと「Nvidia GPU(ディスクリートGPU)」への電力が切断されて認識されなくなります(エコーモードの場合だとWindows版の「Nvidia Control Panel」アプリも起動しません).
{{:研究室:pcのセットアップ:スクリーンショット_2022-08-03_231923.png}}
== 「エコモード」にされているとAMDのGPUしか見えない ==
$ inxi -Gx
Graphics:
Device-1: AMD Cezanne vendor: ASUSTeK driver: amdgpu v: kernel
bus-ID: 08:00.0
Device-2: IMC Networks USB2.0 HD UVC WebCam type: USB driver: uvcvideo
bus-ID: 3-4:3
Display: x11 server: X.Org v: 1.21.1.3 driver: X:
loaded: amdgpu,ati,modesetting unloaded: fbdev,vesa gpu: amdgpu
resolution: 1920x1200~120Hz
OpenGL: renderer: AMD RENOIR (LLVM 13.0.1 DRM 3.40 5.11.0-46-generic)
v: 4.6 Mesa 22.0.1 direct render: Yes
$
== 「スタンダード」か「最適化」モードのときはどちらのGPUも見える ==
$ inxi -Gx
Graphics:
Device-1: NVIDIA GA107M [GeForce RTX 3050 Ti Mobile] vendor: ASUSTeK
driver: nvidia v: 515.48.07 bus-ID: 01:00.0
Device-2: AMD Cezanne vendor: ASUSTeK driver: amdgpu v: kernel
bus-ID: 08:00.0
Device-3: IMC Networks USB2.0 HD UVC WebCam type: USB driver: uvcvideo
bus-ID: 3-4:3
Display: x11 server: X.Org v: 1.21.1.3 driver: X:
loaded: amdgpu,ati,modesetting,nouveau,nvidia unloaded: fbdev,vesa
gpu: amdgpu resolution: 1920x1200~120Hz
OpenGL: renderer: AMD RENOIR (LLVM 13.0.1 DRM 3.42 5.15.0-41-generic)
v: 4.6 Mesa 22.0.1 direct render: Yes
==== キーバインド関係 ====
=== ウィンドウの移動は Ubuntu風に SUPER +ドラッグ にしたいんだけど ===
$ gsettings get org.mate.Marco.general mouse-button-modifier
''
$ gsettings set org.mate.Marco.general mouse-button-modifier ''
$ gsettings get org.mate.Marco.general mouse-button-modifier
''
=== スクリーンキャプチャはUbuntu風に SHIFT + PRNTSCR にしたいんだけど ===
$ gsettings get org.mate.Marco.global-keybindings run-command-screenshot
'Print'
$ gsettings set org.mate.Marco.global-keybindings run-command-screenshot 'Print'
gsettings get org.mate.Marco.global-keybindings run-command-screenshot
'Print'
==== プロキシ環境下でsshを使って,github上の自分のリポジトリを操作できますか? =====
$ sudo apt-get install connect-proxy
$ cat ~/.gitconfig
.
.
.
[url "github:"]
InsteadOf = https://github.com/
InsteadOf = git@github.com:
.
.
.
$ cat ~/.ssh/config
.
.
.
Host github
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
Host github.com
User git
HostName ssh.github.com
Port 443
IdentityFile ~/.ssh/id_rsa
ProxyCommand connect -H http://wwwproxy.kanazawa-it.ac.jp:8080 %h %p
.
.
.
としておいて,
としておいて,
$ ssh -T git@github.com
Hi takago! You've successfully authenticated, but GitHub does not provide shell access.
Connection to ssh.github.com closed.
↑でOK
あとは
$ git clone ssh://github.com/ユーザ名/リポジトリ名.git
で取得できる(プロキシ環境でない場合は ProxyCommandをコメントアウトすればOK)
==== コマンド操作でGPUを切り替えられますか?...prime-selectコマンド =====
例えば,ドライバが問題でウィンドウシステムにログインできないときであっても,GPUを切り替えればログインできたりする
$ sudo prime-select
Usage: /usr/bin/prime-select nvidia|intel|on-demand|query
$ sudo prime-select query
nvidia
$ sudo prime-select on-demand
$ sudo service lightdm restart
==== あれ,mp4動画ファイルのサムネイルがうまく表示されないんだけど・・・ ====
動画ファイルからサムネイルを生成するプログラムに問題があるようで,特定の動画ファイルからメタデータを抜き出した時にトラブってサムネイルを作れなくなってしまう感じです.そうなるとそれ以降,他のビデオのサムネイルも表示できなくなるようです.
対策としては,①問題のあるビデオからメタデータから取り除く,或いは②サムネイラーを変更する,でよさそうです.
=== 問題のあるビデオからメタデータから取り除く方法(非推奨)===
やはりビデオからメタデータを消すというのはあまりよくないと思います・・・・
$ ffmpeg -i in.mp4 -map_metadata -1 -c:v copy -c:a copy out.mp4
あとは2種のキャッシュを消せば直った.
$ killall caja
$ rm -fr ~/.cache/thumbnails/ ~/.cache/gstreamer-1.0/
$ caja . &
=== メディアファイル用サムネイラーを変更(推奨)★★★★ ===
サムネイラーを ffmpegthumbnailer に切り替えると良いようです.
$ sudo apt-get install ffmpegthumbnailer
$ sudo apt-get purge xplayer-thumbnailer
あとは2種のキャッシュを消せば直った.
$ killall caja
$ rm -fr ~/.cache/thumbnails/ ~/.cache/gstreamer-1.0/
$ caja . &
==== XBOX360 Wirelesss コントローラをつなぎたいんだけど・・・ ====
=== xpadneo その①===
そのままだとBluetoothが connect/disconnect loopに陥るので xpadneo を使うとよいらしい
$ cd /tmp
$ git clone https://github.com/atar-axis/xpadneo.git
$ cd xpadneo
$ sudo ./install.sh
$ sudo bluetoothctl
( 背面の ))) ボタンを長押しして,ペアリングモードにする)
[bluetooth]# scan on
...
Device F4:6A:D7:93:61:55 Xbox Wireless Controller
[bluetooth]# scan off
[bluetooth]# pair F4:6A:D7:93:61:55
Attempting to pair with F4:6A:D7:93:61:55
[agent] Accept pairing (yes/no): yes
[CHG] Device F4:6A:D7:93:61:55 Paired: yes
Pairing successful
[bluetooth]# trust F4:6A:D7:93:61:55
[CHG] Device F4:6A:D7:93:61:55 Trusted: yes
Changing F4:6A:D7:93:61:55 trust succeeded
[bluetooth]# connect F4:6A:D7:93:61:55
Attempting to connect to F4:6A:D7:93:61:55
Connection successful
[bluetooth]# quit
最初,xpadneoをいれてもconnect/disconnect loopに陥ったが,
試しにUSBケーブルでWindowsPCに接続し,コントローラのファームウェアを 5.9.2709 に上げたら,connect/disconnect loopに陥らなくなった!
* Linuxを再起動しても大丈夫だった.
* ただ他のPCとペアリングしたりすると場合は,ペアリングリストから一度削除しないとconnect/disconnect loopになるようなので注意する(削除してやり直せば大丈夫)
=== xpadneo その② ===
適用はしていないが,xpadneoについては,こんな情報もあったので念の為書いておく.
https://www.reddit.com/r/linux_gaming/comments/smxqm2/how_to_use_xpadneo_with_an_xbox_series_controller/
$ sudo vi /etc/bluetooth/main.conf
[General]
Privacy = device
JustWorksRepairing = always
Class = 0x000100
FastConnectable = true
[LE]
MinConnectionInterval=7
MaxConnectionInterval=9
ConnectionLatency=0
$ sudo vi /etc/bluetooth/input.conf
.
.
.
UserspaceHID=true
.
.
.
$ sudo reboot
==== Bluetooth接続したLogicool M590マウスが定期的に止まるんだけど ====
=== 対策その① ===
pairだけでなく,trust と unblock が必要らしい
[[https://wiki.archlinux.org/title/Bluetooth_mouse#Problems_with_the_Logitech_BLE_mouse_(M557,_M590,_anywhere_mouse_2,_etc)
|情報源]]
$ bluetoothctl
(マウス上面の●ボタンを長押しして,ペアリングモードにする)
[bluetooth]# devices
[bluetooth]# pair D7:AA:D6:14:B3:81
[bluetooth]# trust D7:AA:D6:14:B3:81
[bluetooth]# connect D7:AA:D6:14:B3:81
[bluetooth]# unblock D7:AA:D6:14:B3:81
[bluetooth]# info D7:AA:D6:14:B3:81
Device D7:AA:D6:14:B3:81 (random)
Name: M585/M590
Alias: M585/M590
Appearance: 0x03c2
Icon: input-mouse
Paired: yes ← 注目
Trusted: yes ← 注目
Blocked: no ← 注目
Connected: yes
LegacyPairing: no
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Battery Service (0000180f-0000-1000-8000-00805f9b34fb)
UUID: Human Interface Device (00001812-0000-1000-8000-00805f9b34fb)
UUID: Vendor specific (00010000-0000-1000-8000-011f2000046d)
Modalias: usb:v046DpB01Bd0011
[bluetooth]# quit
$
=== 対策その② ===
対策その①で頻繁に止まる問題はあまり起きなくなったけれど,**ログインする度に3秒ほどマウスが止まる**のでとても気になる(画面上部のBlueToothアイコンを見ている感じだと,ペアリングが一度切れて,もう一度ペアリングされるような挙動).
そこで以下のようにサスペンドしないに設定すると切れなくなった.
$ echo "options btusb enable_autosuspend=0" | sudo tee /etc/modprobe.d/disable_btusb-autosuspend.conf
(あたらしいファイルを作成)
直ったと思ったら,ログイン時,また使用中にときたま切れるようになった・・・
=== 対策その③ ===
①と②に加えて,次の部分を書いてみた.ログイン時はやっぱり一時止まるけど,使用中は大丈夫かも・・・
$ sudo vi /etc/bluetooth/input.conf
.
.
.
UserspaceHID=true
.
.
.
$ sudo reboot
==== Windowsを起動すると時間(時刻)が9時間ずれてしまう ====
以下のコマンドをLinuxで入力してから,時間合わせを行ってみて下さい.
$ sudo hwclock -D --systohc --localtime
==== xournalでキー入力できないんだけど・・・ ====
preferences→InputSystem→**Asus Keyboard(mouse)**を「Mouse+Keyboard Combo」にするとOK.
https://github.com/xournalpp/xournalpp/issues/3203
==== marco-1.24(Mint Mate標準ウィンドウマネージャ) が突然落ちるんですけど・・・marco→metacityに切り替える ====
以前から,気になっていたこの現象・・・「ALT+ESCを押しながら,マウスクリックを押すと確実に落ちる」ということが判明.
* https://github.com/mate-desktop/marco/issues/692
* https://github.com/mate-desktop/marco/issues/617
* https://forums.linuxmint.com/viewtopic.php?t=354845
ビルドするのが面倒なので,mintdesktop コマンドを起動して,「marco(コンポジット)」 → 「metacity(コンポジット)」にして回避することにした.
Mint20.3にアップグレードすると marco-1.26 になるが同じ問題がおきる.ただ,ソースコードを一部変更すると解決する.
==== スタイラスペン(ASUS SA201H)」を使ったときのトラブル・・・ ====
ROG Flow X13はI2CのELAN techのタッチスクリーンがついてます.これにASUS SA201H(MPP 2.0対応ペン)を使ってみました.
=== 「キーボードのバッテリー残量が少ない」と警告される → upowerにパッチをあてることでとりあえず解決===
SA201Hで画面にさわったとたん(つまり,認識されたタイミングで),↑が表示されます.放置しても大丈夫ですが,気持ち悪い.
upower --dump
Device: /org/freedesktop/UPower/devices/keyboard_hid_0018o04F3o2C82x0001_battery
native-path: hid-0018:04F3:2C82.0001-battery
model: ELAN9008:00 04F3:2C82
power supply: no
updated: 2021年10月01日 18時00分56秒 (4 seconds ago)
has history: yes
has statistics: yes
keyboard
present: yes
rechargeable: yes
state: discharging
warning-level: critical <------------------- これ
percentage: 1% <------------------- これ
icon-name: 'battery-caution-symbolic'
History (charge):
1633078856 1.000 discharging
1633078810 0.000 unknown
History (rate):
1633078810 0.000 unknown
.
.
.
Daemon:
daemon-version: 0.99.11
on-battery: yes
lid-is-closed: no
lid-is-present: yes
critical-action: HybridSleep
探してたら,マウスで似たような症状がおきていて困っている人がいて,その人の場合は upowerdにパッチをあてて
回避していたので,その人が作ったパッチを使ったらうまくいった(根本的な解決ではないけど,インジケータで警告されつづける不愉快さからは開放される).
https://wrgms.com/disable-mouse-battery-low-spam-notification/
ここではその人が作ったスクリプトではなく,パッチあてたDebianパッケージを作ることにした.
$ sudo apt-get install devscripts
$ sudo apt-get build-dep upower
$ mkdir /tmp/work
$ cd /tmp/work
$ apt-get source upower
$ cd upower-0.99.11
$ vi src/up-device.c +63
(コードの修正)
UpExportedDevice *skeleton = UP_EXPORTED_DEVICE (device);
+ /* Disable warning notifications for wireless mice with rechargeable batteries */
+ int type = up_exported_device_get_type_ (skeleton);
+ int state = up_exported_device_get_state(skeleton);
+ if ( (type == UP_DEVICE_KIND_MOUSE || type == UP_DEVICE_KIND_KEYBOARD) && (state == UP_DEVICE_STATE_DISCHARGING) ) {
+ warning_level = UP_DEVICE_LEVEL_NONE;
+ up_exported_device_set_warning_level (skeleton, warning_level);
+ return;
+ }
/* Not finished setting up the object? */
if (device->priv->daemon == NULL)
return;
$ dpkg-source --commit
①パッチファイル名を何するかと問われるので,force-silent.patch
②エディタが自動的開き,変更箇所を書くように言われるが,エディタをすぐに閉じる
$ DEB_BUILD_OPTIONS=nocheck debuild -us -uc -d -j4
$ cd ..
$ sudo dpkg -i libupower-glib3_0.99.11-1build2_amd64.deb upower_0.99.11-1build2_amd64.deb gir1.2-upowerglib-1.0_0.99.11-1build2_amd64.deb
パッケージが更新されないように固定しておく.
$ sudo vi /etc/apt/preferences
Package: upower
Pin: version 0.99.11-1build2
Pin-Priority: -1
=== xournalでSA201Hを使ってしまうと,タッチスクリーンがピンチやスクロール以外が効かなくなる → xinputでdisable/enableすると復活 ===
どうやら,xournalを使い終わるとピンチやスクロール以外が機能しなくなるようです(ときどきペンの上のボタン(右クリックボタン)を押すとおかしくなるような気がします).
以下のようにxinputでタッチスクリーンを一度disableにしてから,enableに戻すと画面タッチでクリックなどが復活できました.
$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Asus Keyboard id=10 [slave pointer (2)]
⎜ ↳ ELAN1201:00 04F3:3098 Mouse id=15 [slave pointer (2)]
⎜ ↳ ELAN9008:00 04F3:2C82 Stylus Pen (0) id=19 [slave pointer (2)] ... スタイラスペンを画面につけると登場
⎜ ↳ ELAN9008:00 04F3:2C82 Stylus Eraser (0) id=20 [slave pointer (2)] ... スタイラスペンのボタンを押すと登場
⎜ ↳ ELAN1201:00 04F3:3098 Touchpad id=16 [slave pointer (2)] ... タッチパッド
⎜ ↳ ELAN9008:00 04F3:2C82 id=13 [slave pointer (2)] ... これがタッチスクリーン
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Asus Wireless Radio Control id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ Asus Keyboard id=11 [slave keyboard (3)]
↳ USB2.0 HD UVC WebCam: USB2.0 HD id=12 [slave keyboard (3)]
↳ ELAN9008:00 04F3:2C82 Stylus id=14 [slave keyboard (3)] .... ここにもスタイラスペンが・・・
↳ Asus WMI hotkeys id=17 [slave keyboard (3)]
↳ Asus Keyboard id=18 [slave keyboard (3)]
$ xinput disable 13
(xinput disable "ELAN9008:00 04F3:2C82" でもよい)
$ xinput enable 13
(xinput enable "ELAN9008:00 04F3:2C82" でもよい)
==== 画面解像度が変わるとタッチパネルやスタイラスペンの位置がずれるんだけど ====
1920x1200というフル表示のときは問題ないのだけれども,プロジェクタなどにつないで1920x1080に画面表示サイズが変わるとタッチ位置がずれてくる(スタイラスペンも同じ).あとマルチスクリーン化どうかも関係するので注意.
以下のように解像度変更に合わせて
=== 1920x1200のとき ===
$ xrandr --output "eDP-1-0" --mode 1920x1200
$ xinput --set-prop "ELAN9008:00 04F3:2C82" --type=float "libinput Calibration Matrix" 1 0 0 0 1 0 0 0 1
$ xinput --set-prop "ELAN9008:00 04F3:2C82 Stylus Pen (0)" --type=float "libinput Calibration Matrix" 1 0 0 0 1 0 0 0 1
$ xinput --set-prop "ELAN9008:00 04F3:2C82 Stylus" --type=float "libinput Calibration Matrix" 1 0 0 0 1 0 0 0 1
=== 1920x1080のとき ===
$ xrandr --output "eDP-1-0" --mode 1920x1080
$ xinput --set-prop "ELAN9008:00 04F3:2C82" --type=float "libinput Calibration Matrix" 1 0 0 0 1.11 -0.05 0 0 1
$ xinput --set-prop "ELAN9008:00 04F3:2C82 Stylus Pen (0)" --type=float "libinput Calibration Matrix" 1 0 0 0 1.11 -0.05 0 0 1
$ xinput --set-prop "ELAN9008:00 04F3:2C82 Stylus" --type=float "libinput Calibration Matrix" 1 0 0 0 1.11 -0.05 0 0 1
==== 授業中に,slackのメッセージがNotificaionに表示されて困るんですけれど → 「インジケータアプレット」をいれろ ====
$ sudo apt-get install indicator-notifications
あとは,パネルに「インジケータアプレット」を追加し,郵便ポストみたいのを左クリックし,「Settings...」へとすすみ,「Enable No disturb」にチェックをいれるとOK.
試しに,次のコマンドで notification を手動で送って試してみるとよい.
$ zenity --notification --text="火災が発生しました"
==== あれ・・・・内蔵スピーカーが鳴らないぞ ★解決★====
①HDMI出力の音声,②ヘッドフォンジャックの音は鳴るが,③内蔵スピーカーが鳴らない・・・
https://wiki.archlinux.org/title/Laptop/ASUS の ROG Flow X13 (GV301QE-K6149T)
のところに
Speakers silent (probably fixable), phone jack works
と書いてあり,確かにそのとおりだった.
=== 成功メモ ===
新しいカーネルで対応した.どうやらオーディオチップの識別番号が新しくなったためだった(Windowsで確認した).
{{:研究室:pasted:20210925-152612.png?300}}
[[研究室:カーネルパッケージのビルド]]を参照.
=== 失敗メモ① ===
https://wiki.archlinux.org/title/Laptop/ASUS によれば,X13 (GV301QH)だと以下がうまくいくそうなので試したみた.
$ git clone https://github.com/CO-1/asus-flow-x13-linux
$ cd asus-flow-x13-linux/
$ make
$ sudo dkms install .
$ dkms status
asus-flow-x13, 1.0, 5.11.0-22-generic, x86_64: installed
nvidia, 460.80, 5.11.0-22-generic, x86_64: installed
nvidia, 460.80, 5.4.0-77-generic, x86_64: installed
$ sudo reboot
って音がならない・・・.X13 GV301QEではだめかぁ・・・ガクッ
仕方がないので元に戻す.
$ sudo dkms remove asus-flow-x13/1.0 -k 5.11.0-22-generic
$ dkms status
nvidia, 460.80, 5.11.0-22-generic, x86_64: installed
nvidia, 460.80, 5.4.0-77-generic, x86_64: installed
=== 失敗メモ② ===
https://www.linux.org/threads/solved-asus-zenbook-15-ux534f-realtek-hd-audio-problem.27384/ でファーストブートを切ったらうまく行ったという情報があったので試してみた・・・
- BIOSでFastBootに無効にして,Windowsを起動する
- Windowsの電源設定でFastBoot(高速スタートアップ)を無効にして,完全にシャットダウン
- https://pc-karuma.net/windows-10-enable-disable-fast-startup/
- Linuxを起動して確認
でも,だめだった・・・
=== 失敗メモ③ ===
https://askubuntu.com/questions/1276428/no-sound-alc294-asus-rog-strix-512-ubuntu-20-04-01
Asus ROG G17で,以下の方法でなったということで試したがだめだった.
/etc/modprobe.d/alsa-base.conf に追記
options snd-hda-intel model=asus-zenbook
=== 失敗メモ④ ===
hdajackretask でピンアサインを変えてみようと思ったが駄目だった.
$ sudo apt install alsa-tools-gui
$ hdajackretask
Realtek ALC294のピン設定を変えようと思ったが,「Apply」ボタンを押すと
/sys/class/sound/hwC0D0/reconfig : Device or resource is busy
となって変更できなかった.
==== あれ,タッチパッドで右クリックが効かないぞ?? ★解決★====
いろいろ試した所,標準では1本指でタップでクリック(tap-to-click), 2本指タップ で右クリックになっていることに気がついた.これってMacbookにLinuxをいれたときも同じだったなぁと思い出す.
== タッチパッドの下部のクリックを有効にする ==
使い辛いのでタッチパッドの左下や右下をタップすると左右クリックになるようにする.
- 次のコマンドを実行
$ sudo apt-get install xserver-xorg-input-synaptics
$ sudo reboot
これでタッチパッドの下の方を押すと左右のクリックになった.よかったよかった.
== tap-to-clickを切りたいとき ==
- システム→設定→ハードウェア→マウス→タッチパッドで**「タッチパッドでのマウスクリックを有効にする」**のチェックを外す.
ちなみに上のような設定をしていても,以下のコマンドを叩くと一時的にtap-to-clickが効くのでそれはそれで便利だったりする.
$ synclient TapButton1=1
(xinput で「Synaptics Tap Action」を設定してくれてるみたい)
==== あれ,BIOSアップデートしたら,「invalid signature」とかで起動しなくなったぞ ★解決★====
BIOSアップデートしたら
error: /boot/vmlinuz-5.14.5 has invalid signature
error: you need to load the kernel first.
Press any key to continue...
となって起動しなくなった.Mintのパッケージのカーネルを選ぶ時どうするのだが,自分でビルドしたカーネルが起動しない.
BIOSをもう一度みたら,Secure Boot が「Enabled」に戻っていたので,改めて「Disbaled」にしたら,無事起動するようになりました.どうやらBIOSアップデートの影響で元に戻ったみたいです.
==== あれ,Qt5でウィジェットの背景色の指定が無視されるんだけど? ====
PD3や出欠管理用に作ったGUIでボタンの色がおかしい」ときがあります.そのときは以下のコマンドでQt5のConfiguration Tool を起動し,"Gtk2"→"Fusion"にしてみてください.
$ qt5ct
それでも駄目な場合は,ウィンドウテーマを変えてみると良い.
==== あれ,Terminatorが思ったように動かないぞ・・・ ====
なんだかいつものように作業がすすまないと思ったら・・・
=== 修正1(ドラッグでコピー,真ん中ボタンでペーストが聞かなくなったのを直す) ===
* 参考 https://github.com/gnome-terminator/terminator/issues/24
$ sudo vi /usr/share/terminator/terminatorlib/terminal.py +922
...
## use_primary = (display_manager() != 'WAYLAND') ## ①コメントアウト
if self.config['putty_paste_style']:
middle_click = [self.popup_menu, (widget, event)]
## right_click = [self.paste_clipboard, (use_primary, )] ## ②コメントアウト
right_click = [self.paste_clipboard, (True, )] ## ③挿入する
else:
## middle_click = [self.paste_clipboard, (use_primary, )] ## ④コメントにする
middle_click = [self.paste_clipboard, (True, )] ## ⑤挿入する
right_click = [self.popup_menu, (widget, event)]
...
$ sudo rm /usr/share/terminator/terminatorlib/__pycache__/terminal.cpython-38.pyc
(キャッシュを消さないと効果がないので注意)
$ sudo terminator
(pycを作り直すだけなので,すぐ終了)
$ sudo terminator
(全てのterminator を終了させる)
=== 修正2(別のアプリケーションから,テキストをドラッグでペーストできなくなったのを直す) ===
* 参考 https://gitlab.gnome.org/GNOME/vte/-/issues/201
* 参考 https://bugzilla.redhat.com/show_bug.cgi?id=1574662
* 参考 https://bugzilla.redhat.com/show_bug.cgi?id=1830452
$ sudo vi /usr/share/terminator/terminatorlib/terminal.py +1100
if info == self.TARGET_TYPE_MOZ:
## txt = txt.decode('utf-16').encode('utf-8') ## ①コメントアウト
txt = txt.decode('utf-16') ## ②追記
txt = txt.split('\n')[0]
else: ## ③追記
txt = txt.decode() ## ④追記
$ sudo vi /usr/share/terminator/terminatorlib/terminal.py +1520
def feed(self, text):
"""Feed the supplied text to VTE"""
## self.vte.feed_child(text, len(text)) ## ①コメントアウト
self.vte.feed_child_binary(text.encode(self.vte.get_encoding())) ## ②追記
$ sudo rm /usr/share/terminator/terminatorlib/__pycache__/terminal.cpython-38.pyc
(キャッシュを消さないと効果がないので注意)
$ sudo terminator
(pycを作り直すだけなので,すぐ終了)
$ sudo killall terminator
(全てのterminator を終了させる)
=== 修正3(GUIメニューから起動すると「起動中です」+「グルグルアイコン」で時間がかかる) ===
StartupNotifyを無効にすると,「起動中です」が表示されなくなり,グルグルアイコンも表示されなくなってスッキリします.
$ sudo sed -i 's/StartupNotify=true/StartupNotify=false/g' /usr/share/applications/terminator.desktop
=== cajaで暗号化できるようにする ===
$ sudo apt install seahorse caja-seahorse
===== 日本語の入力と表示の改善 =====
$ sudo apt-get -y install fcitx fcitx-mozc
$ sudo apt-get install fonts-inconsolata fonts-ipafont fonts-noto fonts-dejavu
$ sudo apt-get purge fonts-droid-fallback
(↑のフォントだと中国語みたいのが表示されるので消す)
$ sudo vi /etc/fonts/local.conf
Ryumin
Hiragino Mincho ProN W3
IPAMincho
GothicBBB
Hiragino Kaku Gothic ProN W3
IPAGothic
sans-serif
Dejavu Sans Condensed
Hiragino Kaku Gothic ProN W3
Noto Sans CJK JP
IPAPGothic
serif
Dejavu Serif Condensed
Hiragino Mincho ProN W3
Noto Serif CJK JP
IPAPMincho
monospace
Inconsolata
Noto Sans Mono CJK JP
===== VirtualBoxを公式サイトから導入 =====
$ sudo apt-get purge "virtualbox*"
$ wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
$ wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
$ echo "deb [arch=amd64] http://download.virtualbox.org/virtualbox/debian focal contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
$ sudo apt update && sudo apt upgrade
$ sudo apt-get install virtualbox-6.1
$ cd /tmp
$ wget https://download.virtualbox.org/virtualbox/6.1.32/Oracle_VM_VirtualBox_Extension_Pack-6.1.32.vbox-extpack
$ sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-6.1.32.vbox-extpack
$ sudo gpasswd -a ${USER} vboxusers
===== その他 =====
==== Wine-7.0をいれてみた ====
$ sudo apt-get install ttf-mscorefonts-installer
$ sudo dpkg --add-architecture i386
$ wget -nc https://dl.winehq.org/wine-builds/winehq.key
$ sudo apt-key add winehq.key
$ sudo add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main'
$ sudo apt update
$ sudo apt install --install-recommends winehq-stable winetricks
$ wine --version
wine-7.0
$ winecfg
(GUIが立ち上がり,monoがないとかいわれるので「インストール」する)
$ winetricks fakejapanese
== Windowsアプリのインストール ==
Windows用のexeファイルをクリックすればOK(あるいは右クリックで実行).
昔買った「爆発的シリーズ1480」や「WinSCP」は動作した.
== Windowsアプリのインストール ==
$ wine uninstaller
==== 出席確認システムの用意 ★★ ====
Sony RC-S380でNFCカードリーダで出席を読み取る.
$ sudo modprobe -r port100
$ sudo sh -c 'echo blacklist port100 >> /etc/modprobe.d/blacklist-nfc.conf'
(カードリーダをつなぐと,port100カーネル空間ドライバの方がロードされてしまうので,それをやめさせる)
$ sudo sh -c 'echo SUBSYSTEM==\"usb\", ACTION==\"add\", ATTRS{idVendor}==\"054c\", ATTRS{idProduct}==\"06c3\", GROUP=\"plugdev\" >> /etc/udev/rules.d/nfcdev.rules'
(一般ユーザでも使えるようにする)
$ sudo udevadm control --reload-rules
(RC-S380を挿し直す)
必要なパッケージを導入する.
$ sudo apt-get install git python3-setuptools python3-qtpy python3-pygame
QT5のボタンなどの色が正しく表示されるようにする.
$ qt5ct &
("Gtk2"→"Fusion"にする)
ユーザ空間ドライバを導入する.
$ cd /tmp
$ git clone https://github.com/nfcpy/nfcpy.git
$ cd nfcpy
$ sudo python3 setup.py install
(/usr/local/lib/python3.8/ に導入される)
あとは出席調査システム(nfc-attendance)を導入すればOK.
==== Microsoft Ege ====
[[https://www.microsoft.com/ja-jp/edge]]
==== LibreOffice-7 ====
$ sudo add-apt-repository ppa:libreoffice/ppa
$ sudo apt-get update
$ sudo apt-get install libreoffice-l10n-ja libreoffice libreoffice-gtk3 libreoffice-gnome libreoffice-style-colibre libreoffice-style-elementary
==== TeX ====
=== 本体 ===
$ sudo apt-get -y install ptex-base texlive-lang-japanese texlive-binaries latexmk latex2html texlive-latex-extra texlive-humanities texlive-fonts-extra dvipng foiltex texlive-extra-utils lmodern
=== plistingsを入れる ===
$ sudo wget --no-proxy http://zeus.info.kanazawa-it.ac.jp/~takago/mint/plistings.sty -O /usr/share/texlive/texmf-dist/tex/platex/base/plistings.sty
$ sudo mktexlsr
=== minitocの文字化け修正 ===
$ sudo wget --no-proxy http://zeus.info.kanazawa-it.ac.jp/~takago/mint/japanese6.mlo -O /usr/share/texlive/texmf-dist/tex/latex/minitoc/japanese6.mlo
$ sudo mktexlsr
=== 原の味は埋め込む ===
$ sudo kanji-config-updmap-sys --jis2004 haranoaji
=== TexStudio ===
$ sudo apt-get -y install texlive-extra-utils texstudio texstudio-l10n
TexStudioは [[研究室:レポートや論文の作成:texstudioの使い方]] に沿って設定する
==== tgif/GhostScript ====
=== 面倒なのでスクリプトでいれてしまう ===
$ cd /tmp
$ wget http://zeus.info.kanazawa-it.ac.jp/~takago/tgif/install-tgif.sh
$ chmod +x install-tgif.sh
$ sudo ./install-tgif.sh
=== tgifで出力するPDFのフォントを原の味にする ===
sudo -i
cd /usr/share/ghostscript/`gs --version`/Resource/CIDFont
cp /usr/share/texlive/texmf-dist/fonts/opentype/public/haranoaji/HaranoAjiMincho-Regular.otf HaranoAjiMincho-Regular
cp /usr/share/texlive/texmf-dist/fonts/opentype/public/haranoaji/HaranoAjiGothic-Regular.otf HaranoAjiGothic-Regular
cd /usr/share/ghostscript/`gs --version`/Resource/Font
echo -e "/Ryumin-Light-EUC-H\n/EUC-H /CMap findresource\n[/HaranoAjiMincho-Regular /CIDFont findresource]\ncomposefont pop" > Ryumin-Light-EUC-H
echo -e "/Ryumin-Light-EUC-V\n/EUC-V /CMap findresource\n[/HaranoAjiMincho-Regular /CIDFont findresource]\ncomposefont pop" > Ryumin-Light-EUC-V
echo -e "/Ryumin-Light-H\n/H /CMap findresource\n[/HaranoAjiMincho-Regular /CIDFont findresource]\ncomposefont pop" > Ryumin-Light-H
echo -e "/Ryumin-Light-V\n/V /CMap findresource\n[/HaranoAjiMincho-Regular /CIDFont findresource]\ncomposefont pop" > Ryumin-Light-V
echo -e "/GothicBBB-Medium-EUC-H\n/EUC-H /CMap findresource\n[/HaranoAjiGothic-Regular /CIDFont findresource]\ncomposefont pop" > GothicBBB-Medium-EUC-H
echo -e "/GothicBBB-Medium-EUC-V\n/EUC-V /CMap findresource\n[/HaranoAjiGothic-Regular /CIDFont findresource]\ncomposefont pop" > GothicBBB-Medium-EUC-V
echo -e "/GothicBBB-Medium-H\n/H /CMap findresource\n[/HaranoAjiGothic-Regular /CIDFont findresource]\ncomposefont pop" > GothicBBB-Medium-H
echo -e "/GothicBBB-Medium-V\n/V /CMap findresource\n[/HaranoAjiGothic-Regular /CIDFont findresource]\ncomposefont pop" > GothicBBB-Medium-V
==== vokoscreen/flameshot/pdftk/impressive/xournalpp ====
デスクトップのビデオキャプチャ,スクリーンショット,プレゼン用のツールをいれる
$ sudo apt-get install pdftk vokoscreen flameshot
$ cd /tmp
$ wget http://launchpadlibrarian.net/482591318/impressive_0.13.0~beta2-1_all.deb
$ sudo gdebi impressive_0.13.0\~beta2-1_all.deb
$ sudo add-apt-repository -y ppa:andreasbutti/xournalpp-master
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --keyserver-options http-proxy=http://wwwproxy.kanazawa-it.ac.jp:8080 --recv-keys 3792668434113B848B7A7EBF6AEB0CDA354C702D
$ sudo apt update
$ sudo apt install xournalpp
===== ユーザごとに設定 =====
==== tgifでXフォントが見えるようにしておく ====
$ wget --no-proxy http://zeus.info.kanazawa-it.ac.jp/~takago/mint/dot.xsessionrc -O ~/.xsessionrc
$ source ~/.xsessionrc
$ xset fp rehash
==== 日本語フォルダだと扱いにくいので英語に直す.====
$ LC_ALL=C xdg-user-dirs-update --force
==== 句読点を「,.」に変更する/スペースは半角にする ====
$ /usr/lib/mozc/mozc_tool -mode=config_dialog
* 「句読点」を全角の「,.」に切り替えて下さい.
* 「スペースの入力」を「半角」に切り替えて下さい.
==== Tips ====
=== Thunderbirdが異様に重いんですけど・・・・ ===
IMAPにしたらステータスバーがずーっと動いていて遅い・・・
「表示」→「添付を本文に表示する」を 無効 にすると動作が軽くなった.すばらしい
=== Thunderbirdで巨大なファイルをメールで送りたいんですけど・・・・ ===
- Dropboxのアカウントを作る
- Thunderbirdに「Filelink Provider for Dropbox」というアドオンをいれる.
- アドオンをいれたら,「編集」→「設定」→「添付ファイル」で Dropboxを有効化すると,標準で5MB以上のファイルはDropbox上のファイルリンクを送るようになる.
* (メーラーに5MBを超えるファイルをドロップすると,自動的にDropboxにアップロードされて,そのリンクが本文に貼り付けられる)
===== ★★★ Mint20.3 にアップグレードする ★★★ =====
==== 20.2→20.3の方法====
$ sudo apt update && sudo apt upgrade -y
$ sudo sed -i 's/uma/una/g' /etc/apt/sources.list.d/official-package-repositories.list
$ sudo apt update && sudo apt upgrade -y
あれ?zipのアーカイバが消えた・・・と思ったらengranpaの更新を無効にしていたからであった.
$ sudo mv /etc/apt/preferences /etc/apt/preferences.bak
$ sudo apt-get install engrampa
$ sudo dpkg --purge --force-depends p7zip-full
$ cat /var/lib/dpkg/status | grep -n "p7zip-full" | grep Depends
6931:Depends:....., p7zip-full, .....
$ sudo sed -i -e "6931s/ p7zip-full,//g" /var/lib/dpkg/status
(6931行めに含まれる " p7zip-full,"を削除)
$ sudo mv /etc/apt/preferences.bak /etc/apt/preferences
=== デスクトップをクラシックなテーマにする ===
$ sudo apt-get install darkmint-gtk-theme mint-themes-legacy
==== marco-1.26が落ちないようにする ====
marco-1.26になっても,残念ながらalt+escを押しながらマウスクリックすると,marcoがフリーズするバグが残っている.ただ,以下のパッチをあてると落ちなくなったので,その方法を残しておく(同じパッチを1.24に当ててもダメだけど,1.26なら効果があるもよう).
https://github.com/mate-desktop/marco/pull/700
$ sudo apt install devscripts
$ sudo apt-get build-dep marco
(ソースコードリポジトリを有効にしてないとエラーになるので注意)
$ cd /tmp
$ apt-get source marco
(ここで1.26ではなく,1.24がダウンロードされてしまう場合はソースコードリポジトリを一旦無効にして,再び有効にするとよい)
$ cd marco-1.26.0/
$ vi src/core/display.c +1618
if (ok1 && popup_widget != NULL)
{
+ GdkWindow * window=gtk_widget_get_window (popup_widget);
+ if (window == NULL)
+ return FALSE;
Window popup_xid = gdk_x11_window_get_xid (gtk_widget_get_window (popup_widget));
gboolean ok2 = XTranslateCoordinates (display->xdisplay,
$ dpkg-source --commit
dpkg-source: info: 'dpkg-source --commit' is not supported by the source format '3.0 (native)'
(↑このコマンドは実行する必要はなくなった?)
$ DEB_BUILD_OPTIONS=nocheck debuild -us -uc -d -j4
This package has a Debian revision number but there does not seem to be
an appropriate original tar file or .orig directory in the parent directory;
(expected one of marco_1.26.0.orig.tar.gz, marco_1.26.0.orig.tar.bz2,
marco_1.26.0.orig.tar.lzma, marco_1.26.0.orig.tar.xz or marco-1.26.0.orig)
continue anyway? (y/n) y
$ sudo dpkg -i ../marco_1.26.0-1mint1_amd64.deb ../marco-common_1.26.0-1mint1_all.deb ../libmarco-dev_1.26.0-1mint1_amd64.deb ../libmarco-private2_1.26.0-1mint1_amd64.deb
$ marco --replace --composite &
==== 気になった所 ====
- FN+F10でタッチパッドを有効・無効を切り替えると,TOFUが出るようになった.
==== 追加で導入(配布用の仮想マシン) ====
$ sudo apt-get install wcalc pdfarranger
$ sudo apt-get install strace uftrace kernelshark trace-cmd sysstat
$ qt5ct
(gtk2からfusionに直す)
$ simhの新しいものをいれる
vscodeのオープンソース版codium https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo
$ wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \
| gpg --dearmor \
| sudo dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg
$ echo 'deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs vscodium main' \
| sudo tee /etc/apt/sources.list.d/vscodium.list
$ sudo apt update
$ sudo apt install codium
codiumを含めての配布はやめることにした(理由:codiumだとMicrosoft製のC/C++やMakefileプラグインが取り込めないようになっていた.これだとcodiumにする意味がない).
===== Tips =====
==== Terminatorのテーマを増やしたい ====
https://github.com/EliverLara/terminator-themes を参照
$ mkdir -p $HOME/.config/terminator/plugins
$ wget https://git.io/v5Zww -O $HOME"/.config/terminator/plugins/terminator-themes.py"
すべてのterminatorをクローズしてから,terminatorを一つ起動し,次の設定を行う.
{{:研究室:pcのセットアップ:pasted:20220819-193608.png}}
あとは右クリックするとThemeというのが選べる.Monokai Vividや3024 Dayといったテーマあたりがよいかも
==== TeXStudioの最新版を使いたい ====
https://www.texstudio.org/ をみるとPPA版が紹介されていたのでそれをいれるとよい.
$ sudo add-apt-repository ppa:sunderme/texstudio
$ sudo apt update
$ sudo apt install texstudio
==== antigenをつかってzshのカスタマイズを楽にする ====
git docker condaなどでらくしたいときが多い
$ sudo apt-get install zsh zsh-antigen
$ vi ~/.zshrc
ANTIGEN=/usr/share/zsh-antigen/antigen.zsh
if [[ -f "$ANTIGEN" ]]; then
source "$ANTIGEN"
antigen use oh-my-zsh
antigen bundle git
antigen bundle docker
antigen bundle esc/conda-zsh-completion
antigen apply
autoload -Uz compinit
compinit conda
fi
を冒頭にいれておけばよい.
$ source ~/.zshrc
Mint 21などでは問題ないが,Mint20.3などでは
/usr/share/zsh-antigen/antigen.zsh:748: command not found: -antigen-env-setup
と表示される可能性がある.その場合は以下を実行して関連ファイルを上書きするとよい
$ curl -L git.io/antigen |sudo tee /usr/share/zsh-antigen/antigen.zsh
パッケージングのバグについては,以下に記されている
https://www.mail-archive.com/ubuntu-bugs@lists.ubuntu.com/msg5908138.html
==== Nvidiaドライバ使用時に blender(flatpak 版)が起動しない ====
情報源 https://blender.stackexchange.com/questions/186018/blender-cuda-flatpack
$ flatpak install flathub org.blender.Blender
で最新版の blender をいれても動かないことに気が付きました.
これは
$ prime-select query
nvidia
な感じで,nvidiaドライバをつかっていると flatpakでいれたblenderが起動しないことに気が付きました.どうやら,nvdiaドライバのflatpakでいれないといけないようです.
$ flatpak install org.freedesktop.Platform.GL.nvidia-515
Looking for matches…
Similar refs found for ‘org.freedesktop.Platform.GL.nvidia-515’ in remote ‘flathub’ (system):
1) runtime/org.freedesktop.Platform.GL.nvidia-515-49-05/x86_64/1.4
2) runtime/org.freedesktop.Platform.GL.nvidia-515-49-06/x86_64/1.4
3) runtime/org.freedesktop.Platform.GL.nvidia-515-43-04/x86_64/1.4
4) runtime/org.freedesktop.Platform.GL.nvidia-515-48-07/x86_64/1.4
5) runtime/org.freedesktop.Platform.GL.nvidia-515-57/x86_64/1.4
Which do you want to use (0 to abort)? [0-5]: 1
$ flatpak list | grep nvidia
nvidia-515-49-05 org.freedesktop.Platform.GL.nvidia-515-49-05 1.4 system
これでblenderが起動しました.
==== Prospect Mail (OutlookをLinuxデスクトップアプリとして使えるようにするelectronアプリ ====
https://www.linuxfordevices.com/tutorials/linux/install-outlook-on-linux
$ wget https://github.com/julian-alarcon/prospect-mail/releases/download/v0.4.0/prospect-mail_0.4.0_amd64.deb
$ dpkg -i prospect-mail_0.4.0_amd64.deb
==== logicool(ロジクール)のUnifyingを使う ====
$ sudo apt-get install solaar solaar-gnome3
$ cd /tmp
$ wget https://raw.githubusercontent.com/pwr/Solaar/master/rules.d/42-logitech-unify-permissions.rules
$ cat 42-logitech-unify-permissions.rules
$ sudo cp 42-logitech-unify-permissions.rules /etc/udev/rules.d/
(ログインしなおせばGUIのアイコンがタスクトレイでてくる)
$ sudo solaar show
Unifying Receiver
Device path : /dev/hidraw4
USB id : 046d:c52b
Serial : BCC49B1A
Firmware : 12.11.B0032
Bootloader : 04.16
Other : AA.AA
Has 1 paired device(s) out of a maximum of 6.
Notifications: wireless, software present (0x000900)
Device activity counters: 1=139
1: M585/M590 Multi-Device Mouse
Codename : M585/M590
Kind : mouse
Wireless PID : 406B
Protocol : HID++ 4.5
Polling rate : 8 ms (125Hz)
Serial number: D1C0F392
Bootloader: BOT 48.01.B0002
Firmware: MPM 05.10.B0011
Other:
...
==== BlueToothでファイル転送するには(失敗時の原因のしらべ方) ====
普通にPCやAndroidなどとペアリングすればファイル送信が相互にできる.ただし,Androidにファイルに送るときはメディアタイプが不明だとエラーになるので注意する(PDFなどはOK).
Androidからの送信は,共有ボタンでBlueToothを選べばOKで,PC側のダウンロードフォルダに格納される.
Linuxからのファイル送信エラーになったときは,画面には単にファイル送信エラーとしか表示されないが,以下のコマンドを入力することで原因を特定できる可能性がある.
$ journalctl -r -t obexd
1月 17 09:45:22 rosemarie obexd[2043]: Transfer(0x55910eda9f10) Error: Unsupported Media Type
情報源 https://askubuntu.com/questions/1240663/bluetooth-file-transfer-there-was-an-error
==== 指紋認証を行う(・・・一応動くが不安定な感じ.おすすめできない) ====
Mint20.3だと,libfprintは 1.90.2 らしい.
=== セットアップと指紋の登録・照合テスト ===
https://askubuntu.com/questions/1049526/fingerprint-activation-on-ubuntu-18-04
$ lsusb
Bus 003 Device 002: ID 04f3:0c6e Elan Microelectronics Corp. ELAN:Fingerprint
$ sudo apt install fprintd libpam-fprintd libfprint-2-2
== 指紋の登録 ==
$ sudo fprintd-enroll $USER
Using device /net/reactivated/Fprint/Device/0
Enrolling right-index-finger finger.
(指紋認証器に,右指を根本から指先にかけて,すーっとスライドさせる)
Enroll result: enroll-stage-passed
(指紋認証器に,右指を根本から指先にかけて,すーっとスライドさせる)
Enroll result: enroll-stage-passed
(指紋認証器に,右指を根本から指先にかけて,すーっとスライドさせる)
Enroll result: enroll-stage-passed
(指紋認証器に,右指を根本から指先にかけて,すーっとスライドさせる)
Enroll result: enroll-stage-passed
Enroll result: enroll-completed
たまに動かなくなる?とても不安定におもわれる.
== 認証テスト ==
$ fprintd-verify
Using device /net/reactivated/Fprint/Device/0
Listing enrolled fingers:
- #0: right-index-finger
Verify started!
Verifying: right-index-finger
Verify result: verify-match (done)
verify-matchに鳴らない場合は,enrollからやり直してみると良い.そんなに精度がよくない・・・
== ユーザごとの登録状況をみる ==
$ fprintd-list $USER
found 1 devices
Device at /net/reactivated/Fprint/Device/0
Using device /net/reactivated/Fprint/Device/0
Fingerprints for user takago on ElanTech Fingerprint Sensor (swipe):
- #0: right-index-finger
=== lightdmや画面ロックで指紋認証が有効にしたいとき(←認証精度が悪いので奨められない) ===
$ sudo pam-auth-update
[*] Fingerprint authentication
ここをチェックすると,lightdmログインや,画面ロック解除も指紋認証になる(/etc/pam.d/common-auth に指紋認証エントリが書き込まれる模様)
指紋認証はWindowsほどスムーズに行かないのでイライラするので↑をやめた.基本的にパスワードだけでよい.
いちおうlighgtdmではESCを2回タイプすると,指紋認証をスキップして,パスワード認証になるみたいだが・・・それもバカバカしい
=== policykit で指紋認証を行う ===
デスクトップアプリでいちいちパスワードを求めてくるものがあります(←policykitを使っているウィンドウアプリ)が,それを指紋認証で済ませることができるようになります
(指紋認証に失敗するとパスワードになる).
auth sufficient pam_fprintd.so
を /etc/pam.d/polkit-1 の上の方に書いておくとまずは指紋認証,失敗するとパスワード認証になる.
==== ASUSのUSB外付けディスプレイを使う ====
こういうのはDisplayLinkのチップを使っていると思っていたが,接続するとやはりDisplaylinkとdmesgで表示された.
DisplayLinkは最近Linuxのドライバを提供しているので,それをいれたところ映るようになった.
https://synaptics.com/products/displaylink-graphics/downloads/ubuntu
(旧版が入っている場合は,まずはアンインストールする必要がある)
$ sudo displaylink-installer uninstall
$ sudo reboot
$ cd /tmp
(ここにダウンロードしたZIPファイルをおく)
$ unzip "DisplayLink USB Graphics Software for Ubuntu (Beta)5.5 Beta-EXE.zip"
$ ssh localhost
(↑をしておかないと logname でSESSIONがないなどという謎エラーが表示される)
$ chmod +x displaylink-driver-5.5.0-beta-59.118.run
$ sudo ./displaylink-driver-5.5.0-beta-59.118.run
$ sudo reboot
USBハブ経由では電力供給できないことがあるので,PC本体のUSBポートに接続するとよい.
あとはディスプレイの設定で「ON」を選べば使えた(デフォルトは「OFF」になっているので注意).
- ディスプレイのUSBケーブルはログインしてからつないだほうがよいみたい(そうしておかないとログイン時に固まるかも・・・).
- Version5.5になってから安定した(接続後して30秒の間はカクカクすることもあった).
==== RichoのThetaVを使う ====
以前はLinuxではThetaVのH264ビデオを読みだせなかったが,最近はRichoが読み出せるようにライブラリ(libusb+v4l2loopbackベース)を出している.
v4l2loopbackモジュールを予め入れておく必要がある.
(Mint19の場合はパッケージ版は古くて動かないので,gitから取ってきたものを使うとよい).
$ sudo apt-get install cmake libusb-1.0-0-dev libjpeg-dev
$ sudo apt-get install v4l2loopback-dkms v4l2loopback-utils
$ cd /tmp
$ git clone https://github.com/ricohapi/libuvc-theta
$ cd libuvc-theta/
$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install
$ cd /tmp
$ sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
$ git clone https://github.com/ricohapi/libuvc-theta-sample.git
$ cd libuvc-theta-sample/gst
$ make
ThetaVをUSBケーブルでPCにつないで,「Live」モードに切り替える(本体横のモードボタンを何回かおす)
$ ./gst_viewer
(Mint20だとうまく表示されるが,Mint19だとThetaVからの読み出しは始まるもののウィンドウが描画されない)
(自分のプログラムから映像を使いたい時や,Mint19では以下のようにすると映像が見れる)
$ sudo modprobe v4l2loopback video_nr=2
(仮想カメラ /dev/video2 の作成)
$ ./gst_loopback
(こうすると /dev/video2にビデオを書き込んでくれる)
$ (別の端末で)ffplay /dev/viode2
/dev/video2をOpenCVから読み出せばよい