VirtualBox(4) VirtualBoxにHaiku をインストール


## はじめに

Haiku (Haiku R1/Beta 1) のISO ファイルは UEFI ブートイメージでした。自分のマシンでは立ち上がらないので、「VirtualBox」を使うことにしました。

Ubuntu Budgie 20.04 に「VirtualBox」と「VirtualBox Extension Package」をインストール。ゲストOS にHaiku をインストールしました。

立ち上げて、「VirtualBox Guest Additions.iso」をインストールしたいところですが、Haiku はサポートされていないので、マウントはできてもインストールは出来ません。

その代わりに、設定で、マウス統合と解像度の変更はできました。


![h2.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489751/0efff458-5988-c10b-889d-8540284c9197.jpeg)
→Haiku 起動時の画面です。左から右に順番にアイコンが明るくなり、立ち上げがどのステップまで進んだかを表します。

上段のパネルが、VirtualBox マネージャのウィンドウタイトルと、メニューバーです。メニューの「仮想マシン」で、固まったときの強制的な「一時停止、リセット、電源オフ」が出来ます。

下段のパネルが仮想マシンのデバイス周りのステータスアイコンです。メニューバーの「デバイス」と連動しています。
「右Ctrl」とあるのは、現在のホストキーを表示しています。


![h3.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489751/2b213731-9a1f-3760-ce1d-c6c52e7a3d79.jpeg)
→左画面が「Haiku」のデスクトップで、右画面がホストOS の「Ubuntu Budgie 20.04」でNotepadqq エディタを使っているところです。左画面にマウスを持っていくと、「手」の形のマウスカーソルが動くようになります。

---

共有フォルダとクリップボードの共有は使えないので、USB メモリ (FAT) や、自分あてのG メールのファイル添付で、データの受け渡しをすることにしました。G Drive やOne Drive でも良さそうです。


すぐインストールしたい場合は、[Haiku のシステム要件 へジャンプ](https://qiita.com/FuRuYa7/items/6bd3bdce005f06da1769#haiku-%E3%81%AE%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E8%A6%81%E4%BB%B6)



参考:

- [VirtualBox(1) Lubuntu 19.10 にVirtualBox をインストール]
(https://qiita.com/FuRuYa7/items/c1d6ddaf0084870da628)

- [VirtualBox(3) VirtualBoxでUSBメモリを使う]
(https://qiita.com/FuRuYa7/items/2e3193e7d65cd37fcf95)

- [Virtualizing Haiku in VirtualBox（VirtualBoxでのHaikuの仮想化）]
(https://www.haiku-os.org/guides/virtualizing/virtualbox)


---
### Haiku について

オープンソース版の BeOS である「OpenBeOS」が改名して「 [Haiku](https://ja.wikipedia.org/wiki/Haiku_(%E3%82%AA%E3%83%9A%E3%83%AC%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0)) 」となったようです。

Haiku プロジェクトの「最初の目標」は、[BeOS](https://ja.wikipedia.org/wiki/BeOS) の最終版の [BeOS R5](https://en.wikipedia.org/wiki/BeOS_R5) とソース/バイナリ共に互換性のある「Haiku R1」をリリースすることです。（互換性があるのは32 bit 版のみ）

- Haiku には、BeOS の2001年当時に存在しなかった、x64 プロセッサ（64 bit）や最新のハードウェアのサポートなどが含まれています。

- x86（32 bit）に加えて、x86_64（64 bit）が追加されました。
→バイナリ互換性は32 bit のみ対応。64 bit はBeOS（GCC2）アプリケーションの実行はできませんが、32 bit イメージよりも安定しています。

- [HaikuPorts](https://github.com/haikuports) プロジェクトにより、Linux で使われている多くのアプリが移植されています。

- HaikuDepot パッケージマネージャの追加

→昔からのHaiku のネイティブアプリケーションと、Linux からHaiku に移植されたアプリケーション(HaikuPorts) を含んでおり、リポジトリが2つ登録されています。

- アプリケーションのインストール時に使われる、/system/ 階層、~/config/ 階層は通常は読み取り専用です。

→システムファイル自体は壊れにくいですが、カスタマイズはしにくいです。

- パッケージ化されたアプリか(packages)、パッケケージ化されていないか(non-packaged)で格納されるディレクトリは分かれます。

- パッケージは単に「アクティベート」化されているだけで、インストールされていません。

→Haiku のパッケージシステムは特殊なタイプの圧縮ファイルのシステムイメージで、カーネルコンポーネントの packagefs によって、インストール環境 (および、その後の起動ごと) にマウントされます。

- CPU のコア数の制限が、64に増えました。

- EFI ブートローダーは、デフォルトの「anyboot」イメージ (64 bit のみ) に含まれています。


---
#### BeOS の優れたところ

今では当たり前ですが、Linux やインターネットがそれほど流行っていなかった20年ほど前に、すでに将来を予想した設計（注1）だったことがすごいと思います。

注1:

1. マイクロカーネル（移植性）
2. マルチスレッド化（マルチプロセッサ対応）
3. モジュール化
4. 2TB までの64 bit のファイルシステム(BeFS)
5. 他のOS のファイルシステム(HFS、FAT) もサポート
6. TCP/IPのサポート
7. C++ を使ったAPI
8. 動的リンクライブラリ
9. POSIX 互換（Bash）
10. 国際化（UTF-8/Unicode）
11. R4で日本語入力対応 など。


参考:

- [Haikuプロジェクト公式サイト](http://www.haiku-os.org/) 

- [R1/beta1 – リリースノート（日本語）](http://www.jade.dti.ne.jp/~murai/haiku/b1_releasenotes.html) 

- [Haiku ユーザーガイド（日本語）](https://www.haiku-os.org/docs/userguide/jp/contents.html)

- [Haiku のスクリーンショット集](https://www.haiku-os.org/slideshows/haiku-1)

- [Art of BeOS Programming](http://www.stprec.co.jp/project/BeOSBook/) （Web 公開版 2006/08/16）
→BeOS R3 についてなので、現在のHaiku（BeOS R5 相当）とは開発環境がかなり異なりますが、参考になります。公開に感謝。


---
#### Haiku のシステム要件

##### 最小構成（32 ビット）

プロセッサ： Intel Pentium II、AMD Athlon
メモリ： 256MB
モニタ： 800x600
ストレージ： 3GB


##### 推奨構成（64 ビット）

プロセッサ： Intel Core i3、AMD Phenom II
メモリ： 2GB
モニタ： 1366x768
ストレージ： 16GB


---
#### ダウンロード:

- 正式な公開版: [Haiku release images](https://www.haiku-os.org/get-haiku/)

もしくは、

- 逐次、更新されている版: [nightly images](https://download.haiku-os.org/nightly-images/x86_64/)
	
Revision: 「hrev53689」が最新でした。クリックでソースの差分が見れます。

Anyboot ISO: 「us」をクリックすると、ISO イメージをダウンロードできます。
→haiku-master-hrev53689-x86_64-anyboot.zip

検証が不十分なので、うまく動くかはわかりません。
チェックサムを置いている場所が見つからないのがちょっと不安なところ。
	
→「nightly」イメージは、通常のリリースにあるバンドルソフトウェアを削って、ファイルサイズを小さくしています。


手順:

１. 公開版のHaiku のイメージをダウンロードする場合:

任意のミラーが選べます。
Mirror	Location: East Coast, United States
[64-bit zip](https://s3.wasabisys.com/haiku-release/r1beta1/haiku-r1beta1-x86_64-anyboot.zip)


２. チェックサムを確認:

```
$ sha256sum haiku-r1beta1-x86_64-anyboot.zip
297b1410dfd74f1a404c1d2d0e62beaee77ecde7711a71156e15f8d33f2899ed haiku-r1beta1-x86_64-anyboot.zip
```

３. ダウンロードしたzip を展開:

任意のフォルダに移動して、右クリック→「ここへ展開する」→「haiku-r1beta1-x86_64-anyboot.iso」が作成されます。

→「VirtualBox」で使うときは、.iso のままで使えます。

もし、ライブUSB メモリで立ち上がるのなら、下記のガイドが参考になります:

[Installation Guide]
(https://www.haiku-os.org/get-haiku/installation-guide/)


---
## Ubuntu Budgie 20.04 に VirtualBox をインストール

参考:

- [VirtualBox(1) Lubuntu 19.10 にVirtualBox をインストール]
(https://qiita.com/FuRuYa7/items/c1d6ddaf0084870da628)

- [Virtualizing Haiku in VirtualBox（VirtualBoxでのHaikuの仮想化）]
(https://www.haiku-os.org/guides/virtualizing/virtualbox)

---


```
$ cat /var/log/installer/media-info
Ubuntu-Budgie 20.04 LTS "Focal Fossa" - Alpha amd64 (20191125)

$ uname -r
5.3.0-24-generic
```


#### リポジトリのバージョンを確認:

```
$ apt list virtualbox
:
virtualbox/focal 6.1.0-dfsg-3build2 amd64
```

---
#### VirtualBox のインストール

```
$ sudo apt update
$ sudo apt install virtualbox
:
提案パッケージ:
  menu vde2 virtualbox-guest-additions-iso
以下のパッケージが新たにインストールされます:
  dkms libgsoap-2.8.91 libqt5opengl5 libsdl1.2debian libvncserver1 virtualbox virtualbox-dkms
  virtualbox-qt
:
dkms (2.8.1-4ubuntu1) を設定しています ...
virtualbox-dkms (6.1.0-dfsg-3build2) を設定しています ...
Building for 5.3.0-24-generic
Building initial module for 5.3.0-24-generic
:
DKMS: install completed.
:
```
→virtualbox に必要なカーネルモジュールをコンパイルするためにDKMS が必要です。
VirtualBox の GUI はvirtualbox-qt で提供。というわけで、どちらも一緒に入りました。


#### VirtualBox Extension Package のインストール

ライセンス絡みで抜いてあるプロプライエタリ・ソフトウェアによる機能を補完します。

```
$ sudo apt install virtualbox-ext-pack
:
以下のパッケージが新たにインストールされます:
  virtualbox-ext-pack
:
virtualbox-ext-pack を設定しています
Oracle reserves all rights not expressly granted in this license.
（オラクルは、このライセンスで明示的に付与されていないすべての権利を留保します。）
<了解>

→Tab キーで <了解> を選んで、Enter

virtualbox-ext-pack を設定しています
Do you accept the terms of the VirtualBox PUEL license ?
（VirtualBox PUELライセンスの条件に同意しますか？）
<はい> <いいえ>

→Tab キーで <はい> を選んで、Enter

Successfully installed "Oracle VM VirtualBox Extension Pack".
```

→インストール中にインターネットから、Extension Pack（拡張パック）がダウンロードされ、VirtualBox の機能を拡張してくれます。

拡張される機能:

- USB2.0 ホストコントローラ（EHCI)
- USB3.0 ホストコントローラ（xHCI）
- リモートデスクトップ機能（VRDP)
- ホストのウェブカメラパススルー機能
- Intel PXE boot ROM
- Linux ホストにおけるPCI パススルーの実験的サポート
- ディスクイメージのAES 暗号化

参考:

 [エクステンションパックの導入]
(https://vboxmania.net/%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%86%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%91%E3%83%83%E3%82%AF%E3%81%AE%E5%B0%8E%E5%85%A5/)


---
#### インストールされたかの確認:

```
$ apt list virtualbox
:
virtualbox/focal,now 6.1.0-dfsg-3build2 amd64 [インストール済み]

$ apt list virtualbox-ext-pack
:
virtualbox-ext-pack/focal,focal,now 6.1.0-1 all [インストール済み]
```


---
#### VirtualBox Extension Package が有効になったかの確認:

再起動してから確認


```
$ vboxmanage list extpacks
Extension Packs: 2
Pack no. 0:   VNC
Version:      6.1.0
Revision:     135406
Edition:      
Description:  VNC plugin module
VRDE Module:  VBoxVNC
Usable:       true 
Why unusable: 

Pack no. 1:   Oracle VM VirtualBox Extension Pack
Version:      6.1.0
Revision:     135406
Edition:      
Description:  Oracle Cloud Infrastructure integration, USB 2.0 and USB 3.0 Host Controller, Host Webcam, VirtualBox RDP, PXE ROM, Disk Encryption, NVMe.
VRDE Module:  VBoxVRDP
Usable:       true 
Why unusable: 
```
→2つのパックが有効になっていました。


---
#### VirtualBox が起動するかの確認:

メニュー →システムツール →VirtualBox 

→「Oracle VM VirtualBox マネージャー」が開きました。

「ようこそ VirtualBox へ!」表示。

![vb-welcome.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489751/2be3377e-8d46-a124-071c-535ca9f35982.jpeg)
ヘルプ→VirtualBox について→VirtualBox 6.1

VirtualBox グラフィカルユーザーインターフェース バージョン 6.1.0_Ubuntu r135406
 (Qt5.12.5)

ここまでで、VirtualBox が起動できるようになりました。


---
#### Ubuntu Budgie 20.04 で、パネルに「Icon Task List」を使っているときの問題

Plank ドックを削除して、パネルに「Icon Task List」をランチャーとして使っていたのですが、問題がありました。VirtualBox マネージャがパネルにアイコン化されません。

起動時の一瞬だけ表示して消えるので、パネルにアプリを登録できません。また、デスクトップにあるVirtualBox マネージャのウィンドウを最小化すると、アイコンがないので復帰できなくなります。

解決策:

デスクトップの空きで右クリック→Desktop Settings →Budgie デスクトップの設定→右パネル→「アプレット」タブ→「Icon Task List」
→アプレットの設定

Window grouping :オン　→いったん、オフにしてオンに戻します。→VirtualBox マネージャのアイコンが表示されました。すばやく、アイコンを右クリック→☆をクリックしてアプリを登録。
アプリを登録してしまえば、安心です。


---
#### 仮想マシンを作成します

１. メニュー →システムツール →VirtualBox として、VirtualBox を起動します。

２. 「新規」ボタンをクリック（または Ctrl + N）

３. 名前とオペレーティングシステム

ゲストOS がHaiku の場合:

```
名前: Haiku
マシンフォルダ: /home/USER_NAME/VirtualBox VMs
タイプ: Other
バージョン: Other/Unknown (64-bit)
```

「次へ」


４. メモリサイズ: 2048 MB →3072 MB（任意）

→仮想マシンに割り当てるホストの物理メモリの量を定義します。

メモリを増やすと仮想マシンのパフォーマンスが向上しますが、多すぎるとホストの速度が低下します。
（最低 256 MB）→Haiku の要求するメモリは少ないです。

「次へ」


５. ハードディスク: 「仮想ハードディスクを作成する」にチェック

→ハードディスクイメージを作成します。
イメージは物理ドライブの指定された場所に保存されます。

「作成」をクリック


６. ハードディスクのファイルタイプ: 「VDI (VirtualBox Disk Image)」にチェック

→他の仮想ソフトウェアで使用（共用）する必要がなければ、設定はそのままにします。

「次へ」


７. 物理ハードディスクにあるストレージ: 「可変サイズ」にチェック

→仮想ハードディスクの大きさを定義します。
ほとんどの場合、動的に割り当てられるデフォルトのオプションの使用で十分です。

- 可変サイズ
固定サイズを上限にして、使用した分だけ領域を消費します。

- 固定サイズ
作成に時間がかかりますが、高速です。

「次へ」


８. ファイルの場所とサイズ

仮想ハードディスクの場所:
/home/USER_NAME/VirtualBox VMs/Haiku/Haiku.vdi
（デフォルトそのまま）

仮想ハードディスクのサイズ（動的に拡大するファイルの最大サイズ）:
2.00 GB →10 GB

「作成」をクリック

最初の画面に戻りました。
左のツールの下に仮想マシン「Haiku（電源オフ）」のラベルが作成されました。


---
#### ゲストOS(Haiku) のハードウェアの構成を設定


「VirtualBox Guest Additions」はマウントできても実行できません。その代わり、設定により、ほとんどの機能を補完できます。クリップボードの共有ができないのが痛いところ。

参考:

[Additional Steps: 機能を補うための追加の手順]
(https://www.haiku-os.org/guides/virtualizing/virtualbox#part_additional)

左側の「Haiku（電源オフ）」が選ばれた状態で、「設定」ボタンをクリック。

---
１. 左側の「ディスプレイ」タブ→「スクリーン」タブ→ビデオメモリ：
9 MB →128 MB

仮想マシンに割り当てられたビデオメモリに割り当てられてるメモリを増やします。
GUI がスムーズになり、応答性が向上すると思われます。


---
２. 左側の「システム」タブ→「マザーボード」タブ→「ポインティングデバイス」:
「USBタブレット」に変更します。

デフォルトでは、ゲストOS との「マウス統合」はVirtualBox で無効です。
右Ctrl キーを押してホストOS とゲストOS とのマウスの接続を切り替える必要がありました。

この設定を行うと「マウス統合」が有効になり、どこにマウスがあるかで自動切り替えされます。


---
３. 左側の「システム」タブ→「プロセッサー」タブ→プロセッサー数:
1 CPU →2 CPU

デフォルトでは、プロセッサ（CPU コア）の数は 1つです。
パフォーマンスが向上するので、プロセッサの数を増やしました。
（パソコンに搭載しているCPUにより最大数は変わります）

設定が完了したら、「OK」をクリックしてメインウィンドウに戻ります。


---
４. VirtualBox の仮想マシンの（デフォルトの）ネットワークカードには、インターネットに接続できなくなる既知の問題があります。それを回避します。

例えば、「SoftwareUpdater」アプリ や「HaikuDepot」アプリでの「リポジトリの更新」で失敗するときは、ここを確認します。ブラウザの「WebPositive」アプリが使えるかを確認する方が早いかも…。

左側の「Haiku（電源オフ）」が選ばれた状態で、「設定」ボタンをクリック。

左の「ネットワーク」タブ→「アダプター 1」タブ
「ネットワークアダプタを有効化」にチェック
割り当て: NAT

「高度」をクリック→「アダプタータイプ」:
PCNet-FAST III(Am79C973)　←接続できなくなる問題があります。
↓
Intel PRO/1000 MT Deskop (82540EM)

設定が完了したら、「OK」をクリックしてメインウィンドウに戻ります。

これで、ネットワークサービスが正常に動作するはずです。

---
５. USB3.0 を使えるようにします。 

左側の「Haiku（電源オフ）」が選ばれた状態で、「設定」ボタンをクリック。

「USB コントローラーを有効化」にチェック
「USB 3.0 (xCHI) コントローラー」にチェック


---
６. クリップボードの共有を有効にします。 

左側の「一般」タブ→「高度」タブ
スナップショットの保存先: /home/USER_NAME/VirtualBox VMs/Haiku/Snapshots
クリップボードの共有: 無効 → 双方向
ドラッグ＆ドロップ: 無効

→設定はできますが、無効です。


---
#### Haiku のISO イメージをマウント

CD-ROM ドライブがないのに、CD-ROM イメージ(.iso) をマウントできるのは、すごいことです。おかげで、USB メモリに展開する手間が省けます。

左側の「Haiku（電源オフ）」が選ばれた状態で、「設定」ボタンをクリック。

左側の「ストレージ」タブ→ストレージデバイスのツリーでCD アイコンの「空」をクリック→光学ドライブ: IDE セカンダリ マスター の横にあるCD アイコンをクリックします。→Choose/Create Virtual Optical disk...（仮想光学ディスクファイル）を選択

→Haiku ISO イメージを保存した場所を開いて、

- Haiku 公開版なら: 「haiku-r1beta1-x86_64-anyboot.iso」

- nightly イメージなら: 「haiku-master-hrev53689-x86_64-anyboot.iso」

を選んで[開く]をクリック。

ストレージデバイスのツリーでCD アイコンが、「空」→指定した「.iso」名に変わりました。

「OK」をクリック



![h1.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489751/a520bd59-8a46-3e7a-bb2f-ba2fbfe5fde8.jpeg)
→最終的な設定画面。ISO イメージをマウントしています。
ただし、メモリは4GB に増やして、USB メモリのフィルターをかけています。

---
#### Haiku のインストール

１. 左側の「Haiku（電源オフ）」が選ばれた状態で、「起動」ボタンをクリックして、仮想マシンを実行します。
数秒後、Haiku のデスクトップ画面(GUI) が表示されます。

---
２. 「キーボードの自動キャプチャー機能が有効です。…」クリックして説明を確認します。
→有効・解除の切り替えは右Ctrl キーです。
「x」で閉じます。隣の吹き出しをクリックすると、次回以降表示しません。


---
３. 「ゲストOS でマウス統合機能がサポートされています。…」クリックして説明を確認します。
→右下のマウスのアイコンの形で有効か、解除されているかがわかります。
「x」で閉じます。


---
４. 「Welcome to Haiku!」が起動して、言語選択になります。
Language: 日本語
キーマップ: Japanese

- 「デスクトップを起動」→ライブ(CD) での動作が確認できます。
- 「インストーラーを実行」→他のメディアにインストールを実施できます。

→「インストーラーを実行」をクリック。
「Haiku インストーラーへようこそ」画面が表示されます。→「続ける」

「インストール可能なパーティションが見つかりません。DriveSetup を使って、パーティションを作成し、最低一つのパーティションをBe ファイルシステムで初期化してください。」 →「OK」


---
５. HDD 初期化

インストール元: Haiku - 1.07 GiB 　←ISO ファイル
インストール先: インストール先を選択

左下の「パーティションを設定…」をクリック

1行目のボリューム名: VBOX HARDDISK (10.00 GiB) を選択→右クリック
→フォーマット →Be File System… →続ける →ボリューム名を「Haiku-HD」に変更してから、「フォーマット」クリック→変更を書き込む →「OK」 →パーティションは正常にフォーマットされました。 →「OK」

左上の黄色い部分の□をクリックして閉じます。→画面が戻りました。


---
６. インストール

インストール元: Haiku - 1.07 GiB （nightly イメージのときは: 600 MiB）
インストール先: インストール先を選択 →「Haiku-HD - 10.00 GiB」を選択

「開始」をクリック
→VirtualBox 上でのHaiku のインストールは、20 秒もかからずにインストールは終了しました。

「再起動」をクリック。


---
#### デスクトップについて


![h4.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489751/d6047f96-22d3-03bc-475b-d9372d68d5eb.jpeg)


右上にパネルバーが3つ並んでいます。

- メニュー（青い葉のアイコン）
- システムトレイ
- ウィンドウリスト（起動したアプリが縦に並んで行きます）


1. 「メニュー」ボタンに相当するのは、右上の 1段目の（羽に見える）青い葉のアイコンです。

ここからアプリが開けます。（デスクトップ上で右クリックしてもアプリにたどれます。）
マウスでドラッグしてたどるか、クリックしてフォルダを開きながらたどるか、が選べます。

使った履歴（ドキュメント、フォルダ、アプリケーション）を覚えています。
上段がもっとも最近のもので、履歴は10個までみたい。

2. 右上のシステムトレイ（2段目）にあるアイコンは、
プロセッサ1、プロセッサ2、メモリ、ネットワーク、スピーカ、時計 で、クリックで詳細表示。

3. その下（3段目以降）がタスクトレイです。Tracher（ファイルマネージャ）は常に起動されています。
なぜなら、デスクトップを表示するのに使われているからです。
例えば、テキストエディタなら、使ったことのあるファイルまで指定して開けます。

そして、VirtualBox のウィンドウの右下にあるのが仮想マシン(Haiku) のデバイス周りのステータスアイコンです。

ウィンドウの開き方は、クリックしてウィンドウを開いていくやり方と、ドラッグして開いていくやり方があります。親フォルダを残さない設定もできるようです。


---
#### Haiku 公開版のデスクトップ:


![h6.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489751/41925037-7534-a7f2-822b-571b2785cd57.jpeg)


6つのアイコンが並んでいます。

- Haiku-HD（木の葉っぱが付いたアイコンです。）
- BeBook
- Home
- User Guide
- Welcom
- ごみ箱

→フォルダの階層は、Unix やLinux とはまったく異なります。

「Haiku-HD」フォルダは起動デバイス（ディスク）で、/boot/ です。
その下に system、home、trash 等があります。

「Home」フォルダは、/boot/home/ になります。
ファイルマネージャでは、余計なものは表示されません。詳しく見るならTerminal を使います。


---
#### nightly イメージのデスクトップ:


![h5.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489751/3f431da0-3d87-962f-964c-6f3eaa3d73dc.jpeg)

3つのアイコンが並んでいます。説明ガイドなどがありません。あっても英語ですが…。

- Haiku-HD（てんとう虫が取り付いたアイコンなのが気になります。）
- Home
- ごみ箱



---
#### nightly イメージ(hrev53689) では、シャットダウンで問題が発生しました。

```
/boot/system/servers/media_addon_server は、エラーのため続行できません。
Haiku はアプリケーションを終了し、後始末をします。
```

「終了」にチェック →「Oh no!」をクリック
→シャットダウン

hrev53689 はアンマウントに不具合がありました。
なので、以降は、公開版を使っています。


---
#### システム更新

デスクトップ画面が表示されたら、
メニュー（右上の青い葉）→Applications →SoftwareUpdater
「以下の変更が適用されます: (96)」 →「いますぐ更新」をクリック

更新が多いので、しばらく時間がかかりました。

→「いくつかの更新を完了するには再起動が必要かもしれません。」
→「終了」をクリック

メニュー（右上の青い葉）→シャットダウン →再起動

シャットダウンでの問題は発生しませんでした。

デスクトップ画面が表示されました。（ログイン画面とかはありません）


---
#### 一度使ったアプリ（、ドキュメント、フォルダ）は、記憶されています。

メニュー（右上の青い葉）→最近使ったアプリケーション→SoftwareUpdater

SoftwareUpdater が起動されました。
→更新はありません。
→「終了」をクリック

---
#### ウィンドウの背景を変更

メニュー（右上の青い葉）→Preferences →Screen →「背景を設定」をクリック
もしくは、メニュー（右上の青い葉）→Preferences →Backgrounds

Backgrounds が起動:
画像: artwork/HAIKU logo-white on blue-big.png (605x179)
→小さい文字も選べます: artwork/HAIKU logo-white on blue-normal.png (351x132)

配置: 手動
赤: 51
緑: 102
青: 152

→これは、タイトルだけの画像です。
左枠にある、X方向: 258、Y方向: 519 の値の変更で置く場所を変えられます。
解像度によって、好きな位置に配置できます。


---
#### Windows + 矢印キーでタイリング表示されません

Ubuntu Budgie 20.04 では、Windows + 矢印キーでウィンドウの半画面でのタイリング表示ができますが、
VirtualBox のウィンドウに対しては無効です。

ちなみに、Ubuntu Budgie 20.04 のパネルに「Icon Task List」を配置している場合は、VirtualBox マネージャとゲストOS のVirtualBox ウィンドウが開いていても、VirtualBox マネージャのアイコン（青いギザギザ）に、アプリ数を示す青い点がひとつだけです。アプリのアイコンの登録はできました。

アイコンのクリックを繰り返すことでどちらを表示するかが決まります。最小化はウィンドウの右上で行います。

何度か繰り返していたら、VirtualBox ウィンドウのアイコン（黄色い「？」、64表示）も表示されました。
こちらのアイコンからだと、通常表示と最小化を切り替えできます。アプリのアイコンの登録は☆が表示できないのでできませんでした。


---
#### フルスクリーン表示は、右Ctrl + F で切り替え

フルスクリーンといっても、余計なものが表示されないモードなだけです。
ウィンドウ枠、メニューバー、ステータスバーが表示されず、表示される中身は解像度の設定に左右されます。
外枠は黒色です。メニューバーにアクセスしたいときは、右Ctrl + Home キー 


---
#### VirtualBox のウィンドウの上部のメニューバーの表示: 

表示 →メニューバー →メニューバーの表示 →メニューバーが消えます。
（VirtualBox ウィンドウのメニューバーの再表示）
右Ctrl + Home キー →デスクトップにメニューダイアログが開きます
→表示 →メニューバー →メニューバーを表示


---
#### VirtualBox のウィンドウの下部のステータスバーの表示: 

表示 →ステータスバー →ステータスバーの表示
→ステータスバーのアイコンは、メニューバーのデバイスと連動しています。

ステータスバーの右に「ホストキー」は表示されています


---
#### ウィンドウ表示枠を広げて、元に戻したい時:

- VirtualBox のウィンドウの白い余白を消すには、表示→ウィンドウのサイズを調整→きれいに収まります。

ウィンドウの隅をマウスでドラッグしても、ウィンドウ枠が広がって白い余白が増えるだけです。解像度の変更が必要です。


---
#### 解像度を変更

メニュー（右上の青い葉）→Preferences →Screen で仮想マシンの解像度を変更できます。
ただし、設定できる解像度は決まっています。

```
600 x 400
640 x 480
800 x 600
1024 x 768 　←初期値
1152 x 864 　←フルHD 画面にて、はみ出さない広さ（バーの厚みが加わります）
1280 x 1024
1600 x 1200
```

VirtualBox ウィンドウの上段のタイトルバーとメニューバー、下段のステータスバー、ホストOS のパネルバーがあるので、設定する解像度よりも表示できる領域はさらに狭くなります。


---
#### 使いたい解像度を追加

手順:

１. メニュー（右上の青い葉）→シャットダウン →電源を切る →ゲストOS を閉じます。

２. VirtualBox を終了させます。

３. ゲストOS (Haiku) の解像度（ウィンドウのサイズ）の選択肢を増やすには、ホストを介して、カスタムVESA リソースを設定します。

ホストOS (Ubuntu Budgie 20.04) の端末にて操作:

```
$ VBoxManage setextradata "Haiku" "CustomVideoMode1" "1920x1080x32"
$ VBoxManage setextradata "Haiku" "CustomVideoMode2" "955x978x32"
```

画面半分の解像度の設定やり直し（何度もトライ）:

```
$ VBoxManage setextradata "Haiku" "CustomVideoMode2" "939x989x32"
```
→同じ番号に登録すれば、余計な解像度を追加してしまうことを防げます。

最終的に追加した解像度:

- 1920x1080x32（フル画面）
- 939x989x32（バー付きでの半画面）


４. Haiku を起動させると、「Screen」にて選択できる解像度が増え、最後に実行したコマンドの解像度に設定されているはずです。

いくら待っても、デスクトップ画面が青いままだったら:
左上で、仮想マシン→リセット

５. メニュー（右上の青い葉）→最近使ったアプリケーション →「Screen」で解像度を変更できます。

いつもは、画面半分の解像度（939 x 989）に設定して使っています。

- 全画面で使いたいときは、フル画面（1920 x 1080）に設定して、全画面（右Ctrl + F）にします。
もう一度押すと元の表示（タイトルバー付き画面）に戻ります。


---
#### コピーやペーストをLinux と同じキーにします

Haiku では、コピーやペーストのキーボードショートカットキーがLinux と違い、
Alt + C でコピー、Alt + V でペーストとなっています。

慣れたショートカットキーに変更:

メニュー（右上の青い葉）→Preferences →「Keymap」

- 左側のシステム: 「japanese」を選択します。
→ウィンドウを閉じれば日本語キーボードレイアウトが採用されます。

- 「ショートカットキースイッチをWindows/Linuxモードにする」ボタンをクリック。
→Ctrl + C でコピー、Ctrl + V でペーストとなります。
→「ショートカットキースイッチをHaiku モードにする」に表示が変わるので、もう一度押すと元に戻ります。

---
参考:

日本語キーボードの定義:

現在の日本語キーボードにある、「無変換」、「変換」、「ひらがな」の 3つのキーは無効です。半角/全角キーのみが有効です。BeOS 当時は色々なキーボードがあった頃で、まだ統一されていなかったからだろうと思います。（かろうじて、「ひらがな」キーの定義はありますが不十分みたい）

やはり、キーボードの種類で「Japanese」に、「jp-106」みたいなすべてのキーが定義されていないのは問題です。「Keymap」の定義はLinux の定義と違うので流用できませんし、すでにその「Keymap」の定義を元に多くのアプリが作られているので、簡単ではなさそうです。

試しに空いたコードをキーに定義して、日本語モードのときのキーをMozc 設定で定義してみると、日本語オンでの動きもうまく行きませんし、日本語モードオフのときに、そのキーを押すとゴミ（ひし形の？）が表示されてしまいます。たぶん、アプリ側でも対応されていないとダメっぽいです。

ちなみに、定義されている「ひらがな」キーで確認すると、やはり不具合が出ていました。
日本語オフ、もしくは「Mozc」がインストールされていない状態で「ひらがな」→「スペース」もしくは、「ひらがな」→「ひらがな」と押すと、ゴミ（ひし形の「？」）が入力されます。これが他のキーを定義しても起こるわけで、そのたびにゴミが発生するキーが増えてしまいます。

個人で定義するよりも、システムとして、「jp-106」の定義があると、それにアプリも追従するので、そちらの方が良さそうですね。


---
#### 個人データ用のフォルダを作成

個人データの保存先は「Home」配下か、デスクトップになると思います。散らばらないように、データ保存用のフォルダを作って、できるだけそこに保存するようにしました。

受け渡しやデータの一時保存のときに、フォルダごとコピーすれば良いので便利です。

デスクトップの「Home」アイコンをダブルクリック→空きを右クリック→新規フォルダ→名前を「My」にしました。この配下にフォルダを作りました。「Doc」、「Pic」、「DL」

---
ファイル操作 1:

「Print Screen」キーを押して、ホームにスクリーンショットを保存します。
「Home」アイコンをダブルクリック →screenshot1.png が見つかりました。

screenshot1.png を右クリック →次へ移動 →Home →My →Pic
「Pic」フォルダにscreenshot1.png が移動しました。

---
ファイル操作 2:

「Home」アイコンを押しっぱなし、→Home →My →Pic →screenshot1.png 
screenshot1.png が「ShowImage」アプリで開きます。
「Pic」フォルダで止めて離せば、「Pic」フォルダだけが開きます。このやり方だと、画面が散らばりません。

小さなテキストファイルなら、自分あてにG メールの添付ファイルで送信しています。



---
#### 端末 (Terminal)

メニュー（右上の青い葉）→Applications →「Terminal」

普通にシェル(Bash) が使えます。
変なプロンプト (~> ) だと思ったら、カレントパスを含んだプロンプトみたい。

```shell
~> pwd
/boot/home

~> cd /
/> 
```

---
端末 (Terminal) のフォントを変更:

設定→設定
フォント: 
Noto Mono - Regular
↓
Noto Sans Mono CJK JP - Regular →12
左上の黄色い部分の□をクリックして閉じます。

設定→デフォルトとして保存


---
マウスで貼り付けるなら、右クリックで貼り付け になります。
マウスの中央ボタンは右クリックと同じ機能に改修されて、貼り付けに使えます。
（StyledEdit でも使えると便利ですが、中央ボタンが使えるのはTerminal のみです。）

Ubuntu の端末と違って、マウスで選択しておいて、Ctrl+C とかのキー入力ができます。
テキストエディタに貼り付けるときに便利です。



---
#### テキストエディタ「StyledEdit」

メニュー（右上の青い葉）→Applications →「StyledEdit」


- 行番号は表示できません。
- デフォルトのフォントは「Noto Sans Regular 12」です。

---
フォントを変更:

そのままだと有効になりません。
Ctrl+A にて、すべて選択状態にします。
フォント: Noto Sans Mono CJK JP →Regular
サイズ: 12

デフォルトのフォントとサイズが決まっているワープロみたいな動きです。
選択している場所だけを対象にして、フォント、サイズ、色、太字、斜体、が指定できます。
Ctrl+A だと、それ以降も有効です。
なので、ファイルを開いた最初にフォントを指定すれば、そのファイル全体のフォントを決めれます。


---
キーボードの設定をしたので、Ctrl + C でコピー、Ctrl + V で貼り付けができました。
メニューの表示もすでに、Alt からCtrl を使うように変わっています。


---
マウスの中央ボタンは無効です。貼り付けに使えません。
マウスで貼り付けるなら、右クリック→コピー、右クリック→貼り付け になります。


---
ファイル保存:

ファイル →名前を付けて保存 →/boot/home/My/Doc/memo1.md →保存されました。


---
入力メソッド（Mozc またはCanna）のインストールにて:

半角/全角キーで日本語のオン/オフを切り替えできます。日本語オンでシステムトレイにオレンジの「あ」が表示されます。

日本語も、直接テキスト画面に表示されます。

ただし、日本語オフで「ひらがな」→「スペース」もしくは、「ひらがな」→「ひらがな」と押すと、ゴミ（ひし形の？）が入力されます。「ひらがな」にキー定義がされているみたい。


---
#### テキストエディタ「Pe」

構文強調表示は主にプログラマーと HTML ライターを対象としています。

メニュー（右上の青い葉）→Applications →「Pe」

- メニューは日本語化されていません。

- 行番号を表示する機能はありません。

- ウィンドウの左下に「現在行,カラム」が表示されます。

不思議と、Haiku アプリには行番号を表示するアプリはないみたい。

- マウスでのコピーとか貼り付けは勝手が違います。
Ctrl + C でコピー、Ctrl + V で貼り付けが楽です。


---
フォントを変更:

Window →Preferences →Editor 
Font: Noto Sans Mono CJK JP >Regular
Size: 12
→Apply


---
ファイル保存:

File →Save as... →/boot/home/My/Doc/memo2.md →保存されました。


---
入力メソッド（Mozc またはCanna）のインストールにて:

半角/全角キーで日本語のオン/オフを切り替えできます。日本語オンでシステムトレイにオレンジの「あ」が表示されます。

日本語は、入力バー（小さな長めの窓）で日本語に変換しEnter キーで確定されると、テキスト画面に入力されます。

ただし、日本語オフで「ひらがな」→「スペース」もしくは、「ひらがな」→「ひらがな」と押すと、ゴミ（ひし形の？）が直接テキスト画面に入力されます。「ひらがな」にキー定義がされているみたい。


---
#### システム更新

メニュー（右上の青い葉）→Applications →「HaikuDepot」

ツール →「リポジトリの更新」
ツール →「更新をチェック」→「いますぐ更新」をクリック→「いくつかの更新を完了するには再起動が必要かもしれません」表示→「終了」をクリック

メニュー（右上の青い葉）→シャットダウン→再起動


---
#### 入力メソッドの「Mozc」をインストール

メニュー（右上の青い葉）→Applications →「HaikuDepot」

「おすすめパッケージのみ表示」のチェックを外します。
「mozc」を検索窓に入力。
「mozc」を選択、「インストール」をクリックして、インストールします。

→状態が「有効」になれば、インストールされています。

再起動しなくても、インストールするだけでシステムトレイ（右上の 2段目）に「キーボード」アイコンが表示されました。

- 「キーボード」アイコンのクリック

- 半角/全角キー

- Alt + スペース または、Ctrl + スペース
（「ショートカットキースイッチをWindows/Linuxモードにする」が押されたかで変わります。）

のどれかを押すと、日本語オンになり、「キーボード」アイコンがオレンジ色の「あ」になり、デスクトップの左上（初期の位置）に、オレンジ色の「あ」、「スパナ」アイコンが乗ったパネルが表示されます。

「スパナ」をクリック→「Mozc 設定」で設定をカスタマイズできます。この辺りはLinux と同じです。
このパネルは好きな位置に変更でき、保持されます。


---
メニュー（右上の青い葉）→Applications →「StyledEdit」で、何か入力してみます。
ちゃんと日本語が入力できます。

---
メニュー（右上の青い葉）→Applications →「Pe」も、試してみます。
違いがわかります。

---
パッケージをインストールするときに使う「HaikuDepot」の検索窓に、日本語を入力してみます。
（使えるかは別にして…）

---
ブラウザ(WebPositive) でも日本語入力できます。

「＋」をクリックして新規タブを開きます。→URL 欄に「翻訳」Enter →Enter として下さい。
文字は表示されませんでしたが、Google 翻訳のページに飛びました。よく見ると、Google 検索の入力窓に「翻訳」の文字が入力されていました。

後は、左の欄をクリックすると、翻訳する日本語を入力できると思います。
こちらは、「入力バー」が表示されるタイプでした。


---
#### ブラウザで使うフォント「noto_serif_cjk_jp」をインストール

メニュー（右上の青い葉）→Applications →「HaikuDepot」

「おすすめパッケージのみ表示」のチェックを外します。
「noto_serif_cjk_jp」を検索窓に入力。
「noto_serif_cjk_jp」を選択、「インストール」をクリックして、インストールします。

→状態が「有効」になれば、インストールされています。


---
#### ブラウザ「WebPositive」

メニューは日本語化されています。

デスクトップの「Welcome」をダブルクリック →[Haiku User Guide（英語）](file:///boot/systemu/documentation/welcome/welcom_en.html) がブラウザで開きます。
HAIKU の下のEnglish にマウスを持っていって「日本語」をクリック→[日本語表示](file:///boot/systemu/documentation/welcome/welcom_jp.html) に変わりました。

→日本語のページを開いてみると、リンク（赤色）のタイトルに日本語を含む部分が、横につぶれたり、含まれている日本語が表示されなかったりします。

メニューバーの「ウィンドウ」→設定→「フォント」タブ

```
: Noto Sans
: Noto Serif
: Noto Sans
: Noto Mono
標準フォントサイズ: 14
等幅フォントサイズ: 14
```

→左の設定の項目名が表示されていません。おかしいと思います。
たぶん、Noto Mono が日本語対応のNoto Mono CJK JP に変更できないからだと思われます。

↓
フォントを日本語対応に変更:

```
: Noto Sans CJK JP
: Noto Serif CJK JP 　←（インストールしたフォント）
: Noto Sans CJK JP
: Noto Mono 　←（Noto Mono CJK JP にしたいけど、固定みたいで変更できず…）
標準フォントサイズ: 14
等幅フォントサイズ: 14
```
「適用」をクリック→「WebPositive」を再起動

→Noto Mono が変更できないからか、設定の項目名が表示されないのは治らない（？）けど、
リンク（赤色）のタイトルに日本語を含んでいても、ちゃんと日本語が表示されます。


#### 背景画像の変更

- デスクトップで右クリック →アドオン →「Background」

初期値: 
HAIKU logo - White on blue-big.png
画像なしの場合: 赤: 51、緑: 102、青: 152

- 画像ファイルをダブルクリック →ビューアー（Showimage）→その上で右クリックして「デスクトップの背景にする...」


---
#### 参考: 最新のプロセッサ (AMD Ryzen) にHaiku が対応

多くのコアを持つ最新のプロセッサ (AMD Ryzen) にHaiku が対応したという記事を見つけました。

[Haiku monthly activity report - 03/2017]
(https://www.haiku-os.org/blog/pulkomandy/2017-04-03_haiku_monthly_activity_report_march_2017/)
→Kallisti5 added support for AMD Ryzen CPUs.

システム自体がマルチスレッド化されているので、最近のCPU に合うかもしれません。また、使うコア数を指定できるVirtualBox にも合っていそうです。

参考:
（AMD Ryzen 9 3900X 12 Core 使用例）

前前前Ryzen (その 3) の巻
(https://mtzatulog.blogspot.com/2019/09/ryzen-3.html?showComment=1568243027188#c6239677647131544001)

→プロセッサ数 24 とは、半端ないです。UEFI でのUSB メモリで立ち上げてみたいです。


---
### あとがき

インストールが速いです。そしてインストール元を指定してインストールできます。インストールの概念が違うようです。どちらかというとシステムの複製です。

なので、インストールでシステムが「継承」されます。システム設定とか、インストールしていたアプリがすぐに使える状態になります。

GitHub でいうブランチみたい。当然ながらインストール元が大きいと、インストールに時間はかかります。




（[次の投稿に続く]
(https://qiita.com/FuRuYa7/items/80d4f549504c00449e8a)）


---

今までの**投稿一覧**は 「[ここ](https://qiita.com/FuRuYa7/items/f82312cd7670408dfa8b#%E6%8A%95%E7%A8%BF%E4%B8%80%E8%A6%A7) 」


-