Skip to content

Commit 067f515

Browse files
committed
Merge branch 'alteriso-3.1-docs' into dev
2 parents 25335b6 + 280feca commit 067f515

File tree

10 files changed

+73
-35
lines changed

10 files changed

+73
-35
lines changed

default.conf

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,15 +297,13 @@ dependence=(
297297
"alterlinux-keyring"
298298
"arch-install-scripts"
299299
"curl"
300-
"cmake"
301300
"dosfstools"
302301
"git"
303302
"libburn"
304303
"libisofs"
305304
"lz4"
306305
"lzo"
307306
"make"
308-
"ninja"
309307
"pyalpm"
310308
"squashfs-tools"
311309
"libisoburn"

docs/jp/AUR.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,18 @@
11
## AURについて
22
AlterISO 3ではAURのパッケージをビルドに含めることができます。公式パッケージのインストールが終わった後、chrootでビルド用の一般ユーザーが作成されてビルドされます。初期のAlter ISO3では`makepkg`を使用してインストールを行っていましたが、現在は`yay`を使用してインストールされます。
33

4+
## yayについて
5+
yayは最も使用されているAURヘルパーです。AlterISOはまず一時的な一般ユーザーを作成した後、yayをmakepkgでビルドしてインストールします。
6+
全てのAURパッケージはyayコマンドを利用してインストールされます。それにより高度な依存関係の解決を行うことができます。
7+
48
## AURビルドを無効化する
59
チャンネルの`config.<arch>`かビルド時に`--noaur`を指定することでAURのビルドをスキップできます。
6-
`config.<arch>`に以下を追記して下さい。
10+
`config.<arch>`に以下を追記して下さい。
11+
AURビルドを無効化すると一部のパッケージがインストールされなくなり、その後のプロセスで予期せぬエラーが発生する可能性があります。
12+
(例えば`gnome`チャンネルではGnome拡張機能の大半をAURからインストールします。)
713

814
```bash
915
# Do not install the AUR package.
1016
noaur=true
1117
```
18+
AURからのインストールを無効化すると、その後の`PKGBUILD`からのパッケージのインストールのための依存関係をインストールできず、エラーが発生する場合があります。(デフォルトで設定されているCalamaresはAURのパッケージを依存関係に含んでいます。)エラーが発生する場合には`--nopkgbuild`も一緒に指定することでこのエラーを回避できます。

docs/jp/BUILD.md

Lines changed: 24 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,18 @@
22
ビルドは実機のArch Linuxを利用する方法とDocker上でビルドする方法があります。
33
Dockerでビルドする方法は[この手順](DOCKER.md)を参照してください。
44

5-
実機でビルドする場合は、必ずOSがArch LinuxかAlter Linuxでなければなりません。
5+
実機でビルドする場合は、OSがArch LinuxかAlter Linuxでなければなりません。
6+
(Manjaroや他のディストリビューションでも必要なコマンドをインストールすれば理論上は可能ですが動作は保証されません。)
67
以下では実機でビルドする方法を解説します。
78

89
ArchやAlter上で直接ビルドする場合、ビルドはいくつかの方法で行うことができます。
910

11+
## アーキテクチャについて
12+
現在Alter Linuxは主に`i686``x86_64`をサポートしています。限定的に`i486`のサポートも行っています。
13+
また、現在`aarch64`のサポートもテストされています。
14+
ビルドを行うホスト環境と互換性のあるアーキテクチャでしかビルドできませんので十分注意してください。
15+
(x86_64上でi686のビルドはできますがaarh64上でi486のビルドを行うといったことはできません。)
16+
1017
### 準備
1118

1219
ソースコードを取得します。
@@ -25,12 +32,7 @@ sudo ./tools/keyring.sh --alter-add --arch32-add
2532
ビルドに必要なパッケージをインストールします。
2633

2734
```bash
28-
sudo pacman -S --needed git make ninja arch-install-scripts squashfs-tools libisoburn dosfstools ninja cmake pyalpm
29-
git clone https://aur.archlinux.org/yay.git
30-
cd yay
31-
makepkg -siAcC
32-
cd ..
33-
rm -rf yay/
35+
sudo pacman -S --needed curl dosfstools git libburn libisofs lz4 lzo make pyalpm squashfs-tools libisoburn xz zlib zstd qt5-base
3436
```
3537

3638
### TUIを使用する
@@ -41,10 +43,10 @@ make menuconfig
4143
```
4244

4345
### GUIを使用する
44-
GUIで設定を行ってビルドできます。
46+
GUIで設定を行ってビルドできます。GUIには`python-gobject`が必須です。
4547

4648
```bash
47-
python ./build-wizard.py
49+
python ./tools/build-helper.py
4850
```
4951

5052
### ビルドウィザードを使用する
@@ -55,7 +57,7 @@ bashで書かれていますのでターミナルから実行してください
5557
ウィザードの使い方の詳細は[公式ブログ](https://blog.fascode.net/2020/04/17/build-alterlinux/)で紹介しています。
5658

5759
```bash
58-
./wizard.sh
60+
sudo make wizard
5961
```
6062

6163
### 手動でオプションを指定してビルドする
@@ -69,6 +71,7 @@ sudo ./build.sh [options] [channel]
6971
### build.shの使い方
7072

7173
主なオプションは以下のとおりです。完全なオプションと使い方は`./build -h`を実行して下さい。
74+
(以下のオプション以外にもデバッグ用の様々なオプションが用意されています。)
7275

7376
用途 | 使い方
7477
--- | ---
@@ -82,24 +85,27 @@ sudo ./build.sh [options] [channel]
8285
出力先ディレクトリを指定する| -o [dir]
8386
作業ディレクトリを指定する | -w [dir]
8487

88+
また引数では設定できない細かい挙動を変更する方法もあります。詳しくは[CONFIG.md](CONFIG.md)を参照してください。
89+
8590
####
8691
以下の条件でビルドするにはこのようにします。
8792

8893
- Plymouthを有効化
8994
- 圧縮方式は`gzip`
90-
- カーネルは`linux-lqx`
95+
- カーネルは`linux-lts`
9196
- パスワードは`ilovearch`
97+
- チャンネルは`xfce`
9298

9399
```bash
94-
./build.sh -b -c "gzip" -k "lqx" -p 'ilovearch' xfce
100+
./build.sh -b -c "gzip" -k "lts" -p 'ilovearch' xfce
95101
```
96102

97103

98104
### 注意事項
99105
#### チャンネルについて
100106
チャンネルは、インストールするパッケージと含めるファイルを切り替えます。
101107
この仕組みにより様々なバージョンのAlter Linuxをビルドすることが可能になります。
102-
2020年8月17日現在でサポートされているチャンネルは以下のとおりです
108+
2021年5月07日現在でサポートされているチャンネルは以下のとおりです
103109
完全なチャンネルの一覧は`./build.sh -h`を参照して下さい。
104110

105111
名前 | 目的
@@ -111,19 +117,21 @@ i3 | i3とカスタマイズ可能なpolybarを搭載したrelengを除いて最
111117
lxde | LXDEと最小限のアプリケーションのみが入っている軽量なチャンネル
112118
plasma | PlasmaとQtアプリを搭載した現在開発中のチャンネル
113119
releng | 純粋なArchLinuxのライブ起動ディスクをビルドできるチャンネル
120+
serene | Serene Linuxを移植したチャンネル
114121
xfce | デスクトップ環境にXfce4を使用し、様々なソフトウェアを追加したデフォルトのチャンネル
115122
xfce-pro | xfceチャンネルのウィンドウマネージャを変更し、多くのソフトを追加したチャンネル
116123

117124

118125
#### カーネルについて
119126
`i686`アーキテクチャと`x86_64`アーキテクチャでは共にArchLinuxの公式カーネルである`linux``linux-lts``linux-zen`をサポートしています。
120-
また`x86_64`では公式カーネルに加えて以下のカーネルをサポートしています。
121-
カーネルの説明は[ArchWiki](https://wiki.archlinux.jp/index.php/%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB)を引用しています。
127+
また`x86_64`では公式カーネルに加えて以下ようなカーネルをサポートしています。
128+
カーネルの説明は[ArchWiki](https://wiki.archlinux.jp/index.php/%E3%82%AB%E3%83%BC%E3%83%8D%E3%83%AB)を引用しています。
129+
AlterISO3からは非公式なカーネルはyayによりコンパイル、インストールされます。カーネルのコンパイルに時間がかかる場合が有るので注意してください。
130+
この一覧に無いカーネルもサポートしています。完全な一覧は`./build.sh -h`を参照して下さい。
122131

123132
名前 | 特徴
124133
--- | ---
125134
ck | linux-ck にはシステムのレスポンスを良くするためのパッチが含まれています。
126-
lts | coreリポジトリにある長期サポート版 (Long term support, LTS) の Linux カーネルとモジュール。
127135
lqx | デスクトップ・マルチメディア・ゲーム用途に Debian 用の設定と ZEN カーネルソースを使ってビルドされたディストロカーネル代替
128136
rt | このパッチを使うことでカーネルのほとんど全てをリアルタイム実行できるようになります。
129137
zen-letsnote | Let's Noteでサスペンドの問題が発生しないようにパッチを当てた`linux-zen`カーネル(Alter Linux独自)

docs/jp/CHANNEL.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ AlterISO 2の複数アーキテクチャ対応により大幅に仕様が変更
1111

1212

1313
# ドキュメントの見方
14-
`<arch>`はビルド時のアーキテクチャ名、`<locale>`は言語名、`<ch_name>`はチャンネル名に置き換えてください
14+
`<arch>`はビルド時のアーキテクチャ名、`<locale>`は言語名、`<ch_name>`はチャンネル名、`<md_name>`はモジュール名に置き換えてください
1515

1616

1717
# スクリプトにチャンネルを認識させる
@@ -153,6 +153,9 @@ Plymouthを強制的に無効化したい場合は`exclude`ではなく各チャ
153153

154154
また、`exclude`はパッケージを削除するわけではないため依存関係によってインストールされるパッケージを除外することはできません。
155155

156+
#### additional_exclude_pkg
157+
もしビルドに失敗するなどの理由で一時的にインストールしたくないパッケージが存在する場合、`custom.con`を使用して`additional_exclude_pkg`配列を設定することでそのパッケージのインストールを除外することができます。
158+
156159

157160
### excludeの適用されるタイミング
158161
`exclude`はパッケージが全て読み込まれた後に適用されます。
@@ -191,18 +194,20 @@ PNG形式の画像で640x480の画像を配置してください。この変更
191194
既存のビルド設定を上書きするスクリプトです。かならずシェルスクリプトの構文で記述して下さい。
192195
雛形が`build.sh`と同じ階層に設置してあります。
193196
各チャンネルのディレクトリに配置された設定ファイルは**引数による設定さえ**上書きしてしまうため、最小限の必須項目のみを記述するようしてください。(例えばPlymouthのテーマ名やパッケージ名など)
197+
引数によって変更可能な変数をこのファイルで設定することは推奨されていません。
194198

195199
### 警告
196200
スクリプト内では変数のスコープを明示しないでください。また、変数定義以外の処理を記述すると思わぬ動作につながる場合はあります。
197201

198202

199203
### アーキテクチャごとの設定と優先順位
200-
`channels/<ch_name>/config.any`が読み込まれた後`channels/<ch_name>/config.<arch>`が読み込まれます。
204+
`channels/<ch_name>/config.any`が読み込まれた後`channels/<ch_name>/config.<arch>`が読み込まれます。
205+
このアーキテクチャの優先順位はモジュールにおいても共通です。
201206

202207

203208
## architecture
204209
そのチャンネルで利用可能なアーキテクチャの一覧です。`#`はコメントとして扱われます。
205-
AlterISO 3は現在`x86_64``i686`アーキテクチャのみをサポートしています
210+
チャンネル内でカーネル設定ファイルやpacman設定ファイルなどを適切に設定することでアーキテクチャを独自で定義することも可能です
206211

207212
## kernel_list-<arch>
208213
使用可能なカーネルの一覧を記述します。このファイルが存在しない場合、対応している全てのカーネルを使用可能です。
@@ -228,4 +233,12 @@ rt
228233
## over_isofs
229234
`over_isofs`ディレクトリ内でビルドされるISOファイルの`/`にファイルを上書きします。
230235
`airootfs`と似ていますが`over_isofs`ではビルドされるイメージファイル内のファイルを直接操作することができます。
231-
既存のファイルを上書きしてしまうとブートできなくなる可能性があるので注意して下さい。
236+
既存のファイルを上書きしてしまうとブートできなくなる可能性があるので注意して下さい。
237+
`over_isofs`はsquashfsの作成が終わった後にisoファイルを作成する直前で上書きされます。
238+
239+
## pkgbuild.any pkgbuild.<arch>
240+
チャンネルディレクトリ内に`pkgbuild.any(arch)/任意のディレクトリ名/PKGBUILD`を配置するとmakepkgによってビルドし、インストールされます。
241+
依存関係もpacmanによって自動的にインストールされますが、注意が必要です。
242+
自動的にインストールされる依存関係はあくまでArch Linuxの公式リポジトリに存在しているものだけです。
243+
依存しているパッケージが一つでもAUR上に存在している場合は、その依存パッケージをAURのパッケージリストに書かなければなりません。
244+
また、PKGBUILDを格納するディレクトリ名は絶対に重複しないようにしてください。

docs/jp/CHANNEL_2_to_3.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,10 @@ AlterISO3では様々な新機能が追加されました。そしてそれと
2121
以前の`japanese`変数は意味を成しません。AlterISO3では言語名を`locale_name`変数で行っています。
2222
特定の言語を強制的に使用させたい場合は、`-l`オプションで指定する言語名を`locale_name`変数で指定して下さい。
2323

24+
### モジュールについて
25+
AlterISO 3.1用に開発する場合はモジュール一覧も定義する必要があります。
26+
詳細は後ほど追記します。
27+
2428
#### 詳細設定を行う
2529
AlterISO3は`locale_name`の値を元にいくつかの変数を`system/locale-<arch>`から参照します。
2630
チャンネルの`config`ファイルでは変数を上書きできるので、これらを詳細に書き換えることができます。

docs/jp/CONFIG.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,25 @@ alterisoではビルドに様々な設定が存在しています。
1111
変更できる値の完全な一覧は`default.conf`にかかれています。
1212
設定を別ファイルにコピーして変更する際はそのコメントも一緒にコピーすることを推奨します。
1313

14+
# custom.confについて
15+
`custom.conf``defaulf.conf`を上書きするために使用されます。
16+
デフォルト値を書き換えたい場合やよく使用するビルド設定はこのファイルに記述しておくと楽です。
17+
また、`build.sh`の引数で変更できない細かい設定を変更することもできるようになります。
18+
19+
# モジュールについて
20+
モジュールの設定ファイルは、モジュールが設定された順番で読み込まれます。つまり`config`で配列の後ろのほうに記述したモジュールほど優先順位が高くなります。
21+
1422
# 読み込まれるファイル一覧
1523
上から順番に読み込まれます。`<arch>``<ch_name>`はそれぞれアーキテクチャとチャンネル名に置き換えてください。
16-
同じ変数が設定されていた場合、設定ファイルが読み込まれるごとに上書きされます。
24+
同じ変数が設定されていた場合、設定ファイルが読み込まれるごとに上書きされます。
1725

1826
ファイルパス | 備考
1927
--- | ---
2028
default.conf | 全ての値がここで設定されます(必須)
29+
custom.conf
2130
channels/share/config.any |
2231
channels/share/config.<arch> |
2332
channels/<ch_name>/config.any |
2433
channels/<ch_name>/config.<arch> |
34+
modules/<md_name>/config.any |
35+
modules/<md_name>/config.<arch> |

docs/jp/KERNEL.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
## カーネルの設定ファイルについて
2-
32
AlterISOは様々なカーネルをサポートしています。カーネルは各アーキテクチャごとの設定ファイルで定義されます。
3+
ここではAlterISOに新しいカーネルのサポートを追加する方法を説明します。
4+
AlterISO全体ではなくチャンネル内部でのみ追加する方法は[チャンネルで独自に新しいカーネルをサポートする](ORIGINAL_KERNEL.md)を参照してください。
45

56

67
### 1.リポジトリを作成する
7-
リポジトリには2種類のパッケージを追加する必要があります。カーネル本体とheadersパッケージです。
8-
`build.sh`はカーネルをpacmanを利用してインストールしようとします。もしあなたが公式リポジトリに無いカーネルを追加したい場合はまずはpacmanのリポジトリを作成してください。
9-
カーネルのパッケージをAURからビルドすることはできません。(`pacstrap`で初期の段階でインストールされるため。)
8+
AlterISO3ではカーネルをAURからインストールすることはできなかったため、リポジトリを構築する必要がありました。3.1からはAURによるカーネルパッケージリストがサポートされたため、その必要はなくなっています。
109

1110

1211
### 2.カーネル設定ファイルを構成する

docs/jp/LANG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,4 @@ ArchLinux32とArchLinuxでは文字列が異なるので注意してください
4444
ライブ環境のタイムゾーンの設定です。`/usr/share/zoneinfo`以下のパスを記述して下さい。
4545

4646
## fullname
47-
その言語のフルネームです。ビルド時のメッセージ等に使用されます。
47+
その言語のフルネームです。ビルド時のメッセージ等に使用されます。

docs/jp/ORIGINAL_KERNEL.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ AlterISO3ではカーネルに関する処理が大幅に変更され、チャ
44

55
## 追加したいカーネルの情報を把握する
66
カーネルを追加するにはいくつかの設定ファイルを編集する必要があります。
7-
それぞれの設定ファイルの詳細については[CHANNEL.md](./CHANNEL.md)を参考にして下さい。
7+
それぞれの設定ファイルの詳細については[KERNEL.md](./KERNEL.md)を参考にして下さい。
88

99
カーネルを設定するには以下の情報が必要です。
1010
- カーネルのパッケージ名
@@ -17,6 +17,7 @@ AlterISO3ではカーネルに関する処理が大幅に変更され、チャ
1717
- カーネルの略称(他のカーネルと重複しない名前ならなんでもOK)
1818

1919
## カーネル設定ファイルを作成する
20+
もしチャンネルディレクトリに`kernel-<arch>`というファイルがある場合は`/system/kernel-<arch>`の代わりにそのファイルが参照されます。
2021
カーネルの情報を`/system/kernel-<arch>`を参考に作成して下さい。その後作成した設定ファイルをチャンネル内に配置して下さい。
2122
ビルドスクリプトは、`/system/kernel-<arch>`の代わりにチャンネル内の設定ファイルを使用します。
2223
その設定ファイル内の記述されているカーネルしか使用できなくなるので、`/system/kernel-<arch>`で既に設定されているカーネルも記述して下さい。

0 commit comments

Comments
 (0)