RaspberryPi4にUbuntu20.04LTSのデスクトップ環境を構築(+日本語化)

#はじめに
※備忘録として手順を残したものであり、誤情報を含む可能性があります。

この記事は**「ラズパイでUbuntu20.04LTSをデスクトップ環境で使いたい」**という人向けです。

前回は**[ラズパイにUbuntuDesktop20.10のインストールする記事](https://qiita.com/Akatsuki1024b/items/86f0cde64d3d2cba57cb)**を書きましたが、
今回はそれとは別に**RaspberryPi4にUbuntu20.04LTSのデスクトップ環境を構築**していきます。
**どちらもラズパイでUbuntuをデスクトップ環境で使えるようにするもの**ですが、
仕様や難易度等々が違います。

 - **今回**の記事がオススメの人
    - Ubuntuをデスクトップ環境で使いたい。
    - **LTS**(最低5年間のサポート)のものを使いたい。<br>
      (Ubuntu20.10は2021年1月までの最低9か月間しかサポート予定ではない)
    - **情報が豊富**なものを使いたい。<br>
      (Ubuntu20.10はリリースして間もないので情報が少ない)<br><br>
 - **前回**の記事がオススメの人 ([RaspberryPi4 に Ubuntu Desktop 20.10 をインストール](https://qiita.com/Akatsuki1024b/items/86f0cde64d3d2cba57cb))
    - Ubuntuをデスクトップ環境で使いたい。
    - あまり知識はないけどとにかく**簡単に**インストールしてラズパイでUbuntuを使ってみたい。

前回の方法と比べて**今回の方法は少し難しめ**です。
今回の記事をさらっと読んでみて「無理そう…」と思ったら、前回の方法でUbuntuを入れてみてLinuxやコマンド操作に慣れてから再チャレンジするのもありかもですね。
(というかもし全くの初心者ならRaspberryPiOSから始めるのがいいと思います)

#準備したもの
- [LABISTS RaspberryPi4B (4GB) スターターキット]([LABISTS Raspberry Pi 4...](https://www.amazon.co.jp/gp/product/B082VVBKRP/))
    - このセットを買わなくても、ラズパイ4本体と電源アダプタ・microHDMIケーブル・SDカード等があれば大丈夫です。
- PC(Windows10)
- ディスプレイ、キーボード、マウス
- (LANケーブル)
    - なくてもできますがあった方が簡単です
 
#手順
「ラズパイにUbuntu20.04LTSのデスクトップ環境を～」と言いましたが、
Ubuntu20.10より前のバージョンはラズパイが正式にUbuntuDesktopに対応していないため、
今回は **"UbuntuServer20.04LTS" + "UbuntuMATEデスクトップ環境"** という形になります。

ややこしそうですが基本的に以下を順にやっていけば大丈夫だと思います。


##1. Raspberry Pi Imagerをインストール
まず、PCで[Raspberry Pi Imager ダウンロードページ](https://www.raspberrypi.org/downloads/)にアクセス。
"Download for Windows"をクリックします。
ダウンロードされたインストーラを起動して、「Install」「Finish」をクリック。
そのままRaspberry Pi Imagerが起動すると思います。

##2. Raspberry Pi ImagerでSDカードに書き込み
Raspberry Pi Imagerが起動したらOSとSDカードを選択して書き込みます。
PCにSDカードを挿したあと、
・"CHOOSE OS" > "Ubuntu" > "Ubuntu Server 20.04.1 LTS (RPi 3/4)"
・"CHOOSE SD CARD" > "書き込みたいSDカード"
を選択。
"WRITE"をクリックすると書き込みが始まります。
私は書き込み終わるのに1時間かかりました。気長に待ちましょう。
しばらく経つと、無事書き込みが成功した旨のメッセージが表示されます。
![Raspberry Pi Imager v1.4 2020_11_14 14_07_05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/ef0afa7d-eb56-aa3c-fef9-78cc5281f521.png)

##3. RaspberryPi4でUbuntuServerを起動 / ログイン
SDカードに書き込みが終わったら、ラズパイにそのSDカードを挿します。
続いて
・電源アダプタ
・ディスプレイ(microHDMIケーブル)
・キーボード
・マウス
・(LANケーブル)
も繋いだ後、電源を入れます。

黒い背景に白い文字がたくさん表示されたあと、

```
Ubuntu login: 
```
と表示されたらOKです。

アカウント名「ubuntu」、パスワード「ubuntu」でログインします。
するとパスワードの変更を求められるので新しいパスワードを入力します。
上手くいくと、下のように「ubuntu@ubuntu:~$」と表示されます。

```
Ubuntu login: ubuntu
Password: ubuntu

You are required to change your password immediately (administrator enforced)
Changing password for ubuntu.
Current password: ubuntu
New password: "新しいパスワード"
Retype new password: "新しいパスワード"
Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-1015-raspi aarch64)
:
: (省略)
:
ubuntu@ubuntu:~$
```

##4. (WiFiの設定)
LANケーブルを繋いでいるならこの項目は飛ばしてください。

LANケーブルを繋がない場合、WiFi接続する必要があります。
もしつまずくとしたらこの**WiFiの設定でつまずく可能性が1番高い**です。
できれば**有線接続することをおすすめ**します。

/etc/netplan に 99-cloud-init.yaml を vi で作成/編集していきます。

vi の使い方を知らない人は [こちらのサイト](https://eng-entrance.com/linux-command-vi) がわかりやすくまとめられています。
とりあえず iキー(挿入) / xキー(1文字削除) / :wqキー(保存して終了) / :q!キー(保存せず終了) がわかっていればなんとか編集できると思います。

また、この段階ではUSキーボード配列になっているためJISキーボードでそのまま入力しようとすると上手くいきません。
[こちらのサイト](http://www.nagasaki-gaigo.ac.jp/toguchi/pc/multilingual/keyboard_us_jis.htm) のように特に記号の配置が違います。対応するキーを押しましょう。
今回使うものの中では : くらいでしょうか。キーボードの + を押すと : が入力されます。
(私はキーボードの設定を行わずにこの項を進めましたが、設定変更した方が良かったかもですね)

まず、vi で 99-cloud-init.yaml を開きます。

```
ubuntu@ubuntu:~$ sudo vi /etc/netplan/99-cloud-init.yaml
```
開けたら下の内容を入力してください。

```
network:
    ethernets:
        eth0:
            dhcp4: true
            optional: true
    version: 2
    wifis:
        wlan0:
            dhcp4: true
            optional: true
            access-points:
                "SSID名":
                    password: "パスワード"
```         
:wq で保存して終了したら設定を適用して再起動しましょう。

```
ubuntu@ubuntu:~$ sudo netplan apply
ubuntu@ubuntu:~$ sudo reboot
```



##5. ubuntu-mate-desktop をインストール
システムのアップデートしておきます。
もし error やら failed やら Not Found やらの文字が見えたらネットワークの設定ができてない可能性が高いです。

```
ubuntu@ubuntu:~$ sudo apt update
ubuntu@ubuntu:~$ sudo apt full-upgrade -y
```
アップデートが成功したら一旦再起動しましょう。

```
ubuntu@ubuntu:~$ sudo reboot
```
再度ログインした後、下のコマンドでデスクトップ環境をインストールします。
デスクトップ環境は、Lubuntu・Kubuntu・Xubuntuなどの種類があるみたいですが、
今回はUbuntuMATEにしました。
ちなみに MATE の読み方は「マテ」です。

```
ubuntu@ubuntu:~$ sudo apt install ubuntu-mate-desktop
```
途中、"gdm3" か "lightdm" か聞かれます。
先駆者に倣って私は "gdm3" を選択しました。
数十分放置したあとインストールが終わったら再起動します。

```
ubuntu@ubuntu:~$ sudo reboot
```

##7. UbuntuMATEを選択してログイン
再起動するとログイン画面が表示されます。
パスワードを入力する前に、右下の歯車マークをクリックして"MATE"を選択。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/6ee7dd49-f0f3-722c-d5d0-563c209b98ae.png)
ログインすると下のようなデスクトップ画面が表示されると思います。
もしデスクトップ画面が真っ青だったらおそらく"MATE"を選択し忘れています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/fb46d42f-0926-5761-8393-007bde0a724b.png)
以上で無事RaspberryPi4にUbuntu20.04LTSのデスクトップ環境を構築するところまでできました。
おつかれさまです。


##8. 日本語化
おそらくこの記事を読んでる人は日本語で使いたい人がほとんどだと思うので、
日本語化の手順も書こうと思います。

###8.1. Language Support
左上のMenu > Preferences > Language Support を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/7e7158f5-8bf1-14fe-cd90-b03450e166c7.png)
Install / Remove Languages... をクリックし、
Japanese にチェックを入れて Apply を押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/26a0530b-2da6-2a89-4c27-a6a1719f6012.png)
Language for menus and windows: の欄に日本語が追加されるので、
ドラッグして English の上に持っていきます。
その後 Apply System-Wide をクリック。
Keyboard input method system: も fcitx に変更します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/e940de64-8fcb-2a11-27a7-a664c044eb1c.png)
次に Regional Formats のタブを開き、Dislay numbers... を日本語に変更してこちらも Apply System-Wide。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/5c44082a-725b-1bbf-0ef6-7c77a247da15.png)
設定を適用するために再起動します。上手く設定できていればメニューの文字が日本語になっているはずです。
再起動した際、デスクトップやドキュメントのフォルダ名を日本語にするかどうか聞かれます。
フォルダ名が日本語なのは嫌なので "古い名前のままにする" を選択しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/25a9d730-dc4b-41b0-fa46-0aca7dd5e3a2.png)

### 8.2. キーボード
デフォルトのままだとUSキーボードなので日本語キーボードに変更します。

右上キーボードマーク > 現在の入力メソッドの設定 を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/6b030b50-11f3-8332-d693-be2843908284.png)
左下の+マークを押して、"キーボード-日本語"を追加します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/fffec85c-4011-16aa-164d-9165896905d6.png)
"キーボード-日本語"を一番上に移動させます。"キーボード-英語"は削除して構いません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/b17a403f-431c-bd14-0a76-b412d2175060.png)

### 8.3. 時間
タイムゾーンを日本に変更して日本の時間に合わせます。

メニュー > 設定 > Time And Date Manager を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/b3c5aa03-2f0f-0f6e-b134-f52568ee8026.png)
編集をクリックしてタイムゾーンを日本にします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/691532/0ffa54c1-44e3-24df-0fdd-2b7350be5b22.png)
右上の時間が現在の日本の時間になっていたらOKです。


## 9. おまけ(chromiumのインストール)
せっかくなのでここで終わる前に何かやってみましょう。
試しにchromiumをインストールしてみます。
chromiumはGoogle Chromeのベースになっているオープンソースのウェブブラウザです。

メニューから探すか Ctrl+Alt+T で"MATE端末"を開きます。

```
ubuntu@ubuntu:~$ sudo apt install chromium-browser
```
でインストール。

```
ubuntu@ubuntu:~$ chromium
```
でchromiumが開けます。




#おわりに
今回は、RaspberryPi4にUbuntu20.04LTSのデスクトップ環境を構築していきました。
今後はROSをインストールしていろいろ遊んでみようかなと思っています。
当記事でもし大幅に間違えているところがあればご指摘いただけると幸いです。




#参考にさせていただいたもの
[第624回　Raspberry Pi 4にデスクトップ版Ubuntuをインストール](https://gihyo.jp/admin/serial/01/ubuntu-recipe/0624)
[Raspberry Pi 4とUbuntu Server+デスクトップのインストール](https://raspida.com/rpi4b-ubuntuserver)
[Raspberry Pi 4のOSをデスクトップPCとして使うためにUbuntuMATEをインストールしてみた](https://raspida.com/ubuntumate-on-rpi4b)
[Ubuntu Server(Raspberry Pi)のWifi設定〜リモート接続](https://qiita.com/Roy_F/items/1637a67376ec7c855164)
[【Ubuntu】 /etc/netplan/50-cloud-init.yamlを編集するの止めろ](https://qiita.com/yas-nyan/items/9033fb1d1037dcf9dba5)
[viコマンドについて詳しくまとめました 【Linuxコマンド集】](https://eng-entrance.com/linux-command-vi)
[USキーボードと日本のキーボードの違い](http://www.nagasaki-gaigo.ac.jp/toguchi/pc/multilingual/keyboard_us_jis.htm)
[Live USB『Ubuntu MATE 18.10』日本語化も簡単…設定も保存可能！](https://report.hot-cafe.net/ubuntumate-1810-liveusb-6659)