Ubuntu Weekly Recipe

第576回 GPD MicroPCにUbuntuをインストールする

この記事を読むのに必要な時間:およそ 8 分

GPD MicroPCのBIOS事情

画面が縦置きのままだと使いづらいので,まずはその対処を行います。これはより新しいカーネルをインストールすることで対応可能です。

  • 2019年4月26日以前のBIOSの場合:Kernel 5.6.0-rc5以降をインストールします
  • 2019年5月28日以降のBIOSの場合:Kernel 5.6.0-rc5以降にパッチを当てたものをインストールします

GPDのBIOSは伝統的にシステム関連の情報がまったく入っていませんでした。このためカーネル側でディスプレイ関連の情報に対してソフトウェア的な補正を行おうにも「GPDのデバイスである」ことがわからなかったのです。

これまでは「システム情報が初期値であり,BIOSのリリース日がこの日だったらおそらくGPDのはずだ」という無理やりな判断基準で補正を行っていました。つまりBIOSが更新されるたびにカーネルも修正する必要があったのです。そのため,GPD系のデバイスでUbuntuを動かす場合は特定のBIOSに固定する方法が一般的でもありました。

2019年5月28日版のBIOSから,晴れてシステム情報が登録されるようになります。

$ sudo dmidecode -t 0,1
Handle 0x0000, DMI type 0, 26 bytes
BIOS Information
        Vendor: American Megatrends Inc.
        Version: 4.09
        Release Date: 05/28/2019
        (中略)

Handle 0x0001, DMI type 1, 27 bytes
System Information
        Manufacturer: GPD
        Product Name: MicroPC
        (後略)

つまり今後は「Manufacturer: GPD」「Product Name: MicroPC」だけ確認すれば良く,BIOSが更新されても(これらの文字列がそのままであれば)引き続きMicroPC用の補正は有効になるということです。

なお,Kernel 5.6.0-rc5まではManufacture/Product Nameが「Default string」でマッチングしていたため,新しいBIOSでは補正が反映されません。そのためより新しいBIOSを使っているのであれば,GPD/MicroPCに対応したパッチが必要になるのです。このパッチが5.2のリリースに間に合うかどうかは不明です。もし間に合ったらUbuntu 19.10からは特に何もせずとも利用できる見込みです。

インストールされているBIOSは届いた時期によって異なるようです。上記文字列やBIOSのリリース日はBIOS画面のMainタブからでも確認できます。

MicroPC対応カーネルのインストール

さて,前置きが長くなりましたが,MicroPC対応カーネルをインストールしましょう。

初回起動時に表示されるオンラインアカウントの登録の画面はとりあえず無視して,Ctrl-Alt-Tで端末を開きます。まずはパッケージ一式を最新のものに更新しておきましょう。

$ sudo apt update
$ sudo apt full-upgrade

ここではあとの作業と一連の操作になるので端末で実行していますが,パッケージを更新する処理自体は,おそらく初回起動後に表示されているであろう「パッケージの更新ダイアログ」からでもかまいません。更新後の再起動をするかどうかは,どちらでも結構です。

パッケージを更新したら,カーネルをインストールします。前述のとおり2019年4月26日以前のBIOSであれば5.2.0-rc5以降のカーネルで問題ありません。テスト目的で提供されているMainlineカーネルを使うのが簡単でしょう。詳しいことは第524回「新しい開発中のカーネルをビルド&インストールする」を参考に,先日リリースされたばかりのv5.2-rc7をインスールしてみてください。最近有償ソフトウェアとなったukuuを使うという手もあります。

今回は2019年5月28日版のパッチも適用した自家製PPAを使うことにします。

$ sudo add-apt-repository ppa:cosmos-door/linux-gpd
$ sudo apt install \
  linux-image-unsigned-5.2.0-050200rc7gpd1-generic \
  linux-modules-extra-5.2.0-050200rc7gpd1-generic

とりあえず必要最低限なもののみを指定しています。使い方によっては他にもパッケージが必要になるかもしれません。詳しいことはPPAの詳細からパッケージ情報を確認してください※8⁠。

※8
Mainlineカーネルに合わせて作っているためバージョンが冗長です。またカーネルパッケージは,その利用方法からパッケージ名にもバージョン名が入ってしまいます。よって若干,入力が面倒です。

インストールが完了したら起動オプションからnomodesetを外して,safe graphicsモードをオフにします。

$ sudo sed -i "s/ nomodeset//g" /etc/default/grub
$ sudo sed -i "s/TIMEOUT=0/TIMEOUT=10/g" /etc/default/grub
$ sudo update-grub

何か問題があったときのために,GRUBのタイムアウトを長めの10秒まで伸ばしています。うまく起動できることを確認したら,0秒に戻してしまっても良いでしょう。

ここまでできたら再起動しましょう。GRUBでは自動的にインストールしたカーネルが選択されているはずですので,横置きの画面のままログイン画面に遷移するかと思います。

図3 きちんと横置きで表示される

画像

著者プロフィール

柴田充也(しばたみつや)

Ubuntu Japanese Team Member株式会社 創夢所属。数年前にLaunchpad上でStellariumの翻訳をしたことがきっかけで,Ubuntuの翻訳にも関わるようになりました。