Linux あれこれ

Linux 関連(一部 Windows11 )の備忘録です。

Fedora 32 Cinnamon をUSBメモリにインストール〈H78〉

登録日: 2020-08-22 更新日: 2020-09-08

以前、基本の「Fedora Workstation 32」(GNOME) を インストール しましたが、自分のPC だと新しいカーネル 5.7 に更新すると不調で使えなくなりました。

Fedora Workstation 32」の「Cinnamon デスクトップ」をインストールしてみました。 「Cinnamon (Software ...)」セッションだとカーネル 5.7 での不調が回避できそう なので確認しました。

-

「目次」

-

Fedora 32 Cinnamon のデスクトップ画面:

→シンプルです。下のパネルはLinux Mint と同じくらい細くて画面を広く使えます。

-


Cinnamon の 3つのセッション

ログイン画面にて、窓にある丸いアイコンをクリック

デスクトップ環境を選択してください:

Cinnamon
Cinnamon (Software Renderin...)
Open box

→選択して、ログイン

自分のPC では、カーネル「5.7」にアップすると、Cinnamon セッションですべてのアプリが起動できなくなりました。 Cinnamon (Software ...) では動きました。見た目は同じですが、少し重たいです。

-

インストール時のカーネル「5.6」を残しておくと安心です。(今回のインストール手順)

-


Fedora について

Fedora では、いろいろな環境が提供されています。これも利点。

-


Fedora 32 Workstation

→基本となる「GNOME デスクトップ環境 」です。

-


Fedora Spins

Fedoraコミュニティによる、「GNOME 以外のデスクトップ環境」が提供されています。

  1. Fedora KDE Plasma Spin

  2. Fedora Xfce Spin

  3. Fedora LXQt Spin

  4. Fedora MATE Compiz Spin ←MATE + Compiz Fusion 3Dウィンドウマネージャ

  5. Fedora Cinnamon Spin  ←( 今回のインストールGnome 3 の代替として人気

  6. Fedora LXDE Spin

  7. Fedora SoaS Spin (Sugar on a Stick)

-


インストールした直後のカーネル:

$ uname -r
5.6.6-300.fc32.x86_64

→残しておくべきカーネル

-

システム更新にて:

2020-08-24 現在:

$ uname -r
5.7.16-200.fc32.x86_64

→この新しいカーネル「5.7」は自分のPC では問題が発生しました。 更新の前に予防策が必要です。

フォーラム等で問題視されていないので、こちらのPC の固有の問題と思われます。

-

使用しているPC :

古めのPC(Intel Celeron 2955U: 第4世代)です。

  1. Lubuntu のライブUSB メモリのBIOS 立ち上げで、gfxboot のところで「Graphics initalization failed」になります。 Tab キー後に「live」入力が必要です。

  2. Fedora 32 のライブUSB メモリのBIOS 立ち上げで、「Enter」キーで進むと「画面真っ暗」になります。 Tab キー後にブートコマンドの編集(一部の削除)が必要です。

これが原因かはわかりませんが、同じような現象のPC だと発生しそうです。注意。

-


ダウンロード

1. イメージファイルのダウンロード

Fedora 32 Cinnamon デスクトップのダウンロード

-

2. イメージファイルの検証で使う CHECKSUM ファイルをダウンロード

Verify 64bit! 」 を右クリックして、「名前を付けてリンク先を保存」

-

3. ダウンロードした、Fedora のCHECKSUM ファイルを、先程のイメージの保存場所と同じフォルダーに保存します。

$ cd ~/ダウンロード/Fedora-spins-Cinnamon/

$ ls -1                                 
Fedora-Cinnamon-Live-x86_64-32-1.6.iso
Fedora-Spins-32-1.6-x86_64-CHECKSUM

-

4. Fedora のGPG 鍵をインポート:

$ curl https://getfedora.org/static/fedora.gpg | gpg --import
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10955  100 10955    0     0  17842      0 --:--:-- --:--:-- --:--:-- 17813
gpg: 鍵EF3C111FCFC659B9:"Fedora (30) <fedora-30-primary@fedoraproject.org>"変更なし
gpg: 鍵50CB390B3C3359C4:"Fedora (31) <fedora-31-primary@fedoraproject.org>"変更なし
gpg: 鍵6C13026D12C944D0:"Fedora (32) <fedora-32-primary@fedoraproject.org>"変更なし
gpg: 鍵3B49DF2A0608B895:"EPEL (6) <epel@fedoraproject.org>"変更なし
gpg: 鍵6A2FAEA2352C64E5:"Fedora EPEL (7) <epel@fedoraproject.org>"変更なし
gpg: 鍵21EA45AB2F86D6A1:"Fedora EPEL (8) <epel@fedoraproject.org>"変更なし
gpg: 鍵7BB90722DBBDCF7C:"Fedora (iot 2019) <fedora-iot-2019@fedoraproject.org>"変更なし
gpg:           処理数の合計: 7
gpg:               変更なし: 7

→少し前にFedora 32 のISO イメージをダウンロードして、GPG 鍵のインポートをしたので、「変更なし」と表示されました。 初めてなら「インポート」と表示されます。

-

ここ で、GPGキーの詳細を確認できます。

現行のキーはこちら:

Fedora 32
id:

4096R/12C944D0 2019-08-12

Fingerprint:

97A1 AE57 C3A2 372C CA3A 4ABA 6C13 026D 12C9 44D0 ←(注目2)

-

5. CHECKSUM ファイルが有効か、CHECKSUMファイル自身を検証:

チェックサムの改ざんがあるとお手上げなので、まずはこちらを確認。

$ gpg --verify-files *-CHECKSUM

gpg: 2020年04月25日 01時58分26秒 JSTに施された署名
gpg:                RSA鍵6C13026D12C944D0を使用                  ←(注目)
gpg: "Fedora (32) <fedora-32-primary@fedoraproject.org>"からの正しい署名 [不明の]  ←(注目)
gpg: *警告*: この鍵は信用できる署名で証明されていません!
gpg:       この署名が所有者のものかどうかの検証手段がありません。
 主鍵フィンガープリント: 97A1 AE57 C3A2 372C CA3A  4ABA 6C13 026D 12C9 44D0 ←(注目2)

「Fedora (32) <fedora-32-primary@fedoraproject.org>"からの正しい署名」 となっていれば OK。さらにフィンガープリントの値(注目2)も確認するとベスト。

パッケージ署名鍵:

Fedora Project が公開するそれぞれの安定版 RPM パッケージは、GPG で署名されています。 そのパッケージが、Fedora Project によって提供されたもので、改ざんされていないことを確認できます。

-

6. CHECKSUM ファイルは以下のキーの内の1つから適切な署名を持っている必要があります:

    12C944D0 - Fedora 32 ←(注目)
    3C3359C4 - Fedora 31
    CFC659B9 - Fedora 30
    DBBDCF7C - IOT 2019

項番5. の段階では、gpg の鍵を作成していないので「この鍵は信用できる署名で証明されていません!」と表示されます。

下記の操作でgpg の鍵を作成できますが、作るのは面倒なので、ダウンロードの回数が少ないのならパス。

$ gpg --gen-key

-

7. ダウンロードしたイメージのチェックサムが同じかを検証:

$ sha256sum -c *-CHECKSUM
:
Fedora-Cinnamon-Live-x86_64-32-1.6.iso: 完了  ←(この行が「完了」表示ならば、チェックサムは同じです)

→残りの6つのファイルの定義は、ファイルがないので警告メッセージが表示されます。それらは無視。

-

参考:

sigファイルの電子署名を確認する方法

-


インストール

-

1. 事前作業

インストールがスムーズに行くように「インストール先となるUSB メモリをパーティションがない状態」にしておきます。

今回は fat32 でフォーマットした64GB を使いました。ドライブを間違えないように注意。

-

Fedora 32 GNOME で作業した場合:

Windows」キー →一番下の「Show Applications」→「Disks」で検索→「Disks」アプリを起動

左側で、63GB(/dev/sdc) をクリック→fat がひとつであることを確認。(重要)

「■」(四角)をクリックしてアンマウント→「▶」(三角)に変わります。

「ー」→「Delete」でパーティションを削除→すべて「FreeSpace」にします。(つまり、何もない状態)

右上の「x」でウィンドウを閉じます。

-


2. ライブUSB メモリで立ち上げ

ブート選択画面が表示されます。

  Fedora-Cinnamon-Live 32

Start Fedora-Cinnamon-Live 32
:

→自分のPC だと、メニューは中途半端な表示で、「Enter」キーで進むと「画面真っ暗」になりました。

下記の操作で、回避できました:

「Tab」キーを押します。(ブートコマンドの編集モード)

> vmlimz initrd=initrd.img root=live:CDLABEL=Fedora-Cinn-Live-32-1-6 rd.live.img rd.live.check quiet

↓ カーソルは行末です。「BS」キーを20回押します。

> vmlimz initrd=initrd.img root=live:CDLABEL=Fedora-Cinn-Live-32-1-6 rd.live.img

修正後に「Enter」キー

画面真っ暗から30秒ほどで、メッセージが流れて立ち上がりました。

-


3. デスクトップ画面が表示されます。

-


4. インストール先になるUSB メモリ(パーティションなし)を挿します。

-


5. インストールアプリを立ち上げます

デスクトップにある「Install to Hard Drive」アイコンをダブルクリック

Fedora 32へようこそ」画面表示

-

同じインストーラのはずですが、テキパキ動いて、クールに感じます。

-


6. 言語:

  • 日本語(Japanese)→日本語(日本)

→「続行」

-


7. インストール概要: (自動で入力されているので確認)

  • 地域設定

  キーボード(K)  日本語

  時刻と日付(T)  アジア/東京 タイムゾーン

-

  • システム

  インストール先(D)  ディスクが選択されていません

-

  • ネットワークとホスト名(N)  有線(enp1s0)で接続されました

-

  • ユーザの設定

  root パスワード(R):  root アカウントは無効になっています

  ユーザの作成(U) ユーザは作成されません

-


8. 「インストール先(D)」をクリック

  • バイスの選択 今回は「sdc」を選択

  • ストレージの設定

  「自動構成」→「カスタム」にチェック

→自動構成にすると、LVM フォーマットになります。(マウントが難しくて融通が効きません)

-

画面左下の青色の「完全なディスク要約とブートローダー」をクリック

  • 選択したディスク

  sdc にて「ブート」にチェックあり ←確認

→「閉じる」

→左上の「完了」をクリック

-


9. 「手動パーティション設定 」画面

→左下の「+」をクリック

  マウントポイント「/」を選んで、「マウントポイントの追加」をクリック

画面右側にて、

→右下の「設定を更新」をクリック

→左上の「完了」をクリック

→再度、「完了」をクリック

「変更の概要」が表示 →「変更を許可する」をクリック

-


10. 「インストール概要: 」画面に戻りました。

  • システム

  インストール先(D)  ストレージ設定チェックに警告(←スワップ領域の指定がないからですが、作りません)

-

  • ユーザの設定

  ユーザの作成(U) をクリック

  • フルネーム: (任意)英字

  • ユーザ名: (任意)英字(ユーザー名はホームフォルダの名前にもなります)

「このユーザーを管理者にする」にチェック

-

  • パスワード:(任意)

  • パスワードの確認:(任意)

→左上のユーザの作成「完了」をクリック

-


11. 「インストール概要: 」画面に戻りました。

各項目にオレンジ色の警告がないことを確認

-


12. 画面右下の「インストールの開始」をクリック

「インストールの進行状況」を表示

  ステータスバーが伸びていきます。

-


13. 「完了しました!」表示

→「終了」

-

14. Menu →「電源」ボタン→「Shutdown」→電源オフされます

-

15. ライブUSB メモリだけを抜いて、電源オン

ブート選択画面:

Fedora (5.6.6-300.fc32.x86_64) 32 (Thirty Two)
Fedora (0-rescue-af6cee91f78a45979383182dabb25035) 32 (Thirty Two)


   Use the  and  keys to change the selection.
   Press 'e' to edit the selected item, or 'c' for a command prompt.
The selected entry will be started automatically in 3s.

→3 秒後に一番上の (5.6.6-300) が選ばれます。

ログイン画面 →設定したパスワード入力

-


16. 「初期セットアップ」画面が表示され、すぐ消えました

-


17. デスクトップ画面が表示されました

-

-

システムのバージョンの確認:

$ cat /etc/fedora-release
Fedora release 32 (Thirty Two)

$ cat /etc/redhat-release
Fedora release 32 (Thirty Two)

$ uname -r
5.6.6-300.fc32.x86_64

$ uname -a
Linux localhost.localdomain 5.6.6-300.fc32.x86_64 #1 SMP Tue Apr 21 13:44:19 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

日本語化の確認:

$ locale
LANG=ja_JP.UTF-8
LC_CTYPE="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_PAPER="ja_JP.UTF-8"
LC_NAME="ja_JP.UTF-8"
LC_ADDRESS="ja_JP.UTF-8"
LC_TELEPHONE="ja_JP.UTF-8"
LC_MEASUREMENT="ja_JP.UTF-8"
LC_IDENTIFICATION="ja_JP.UTF-8"
LC_ALL=

$ date
2020年  8月 21日 金曜日 06:51:10 JST

$ ls
ダウンロード  デスクトップ  ビデオ  画像
テンプレート  ドキュメント  音楽    公開

-


システム更新の前に、立ち上げ時のカーネル選択メニューの保持数を増やしておきます

システム更新があれば、カーネルが新しい「5.7」にアップするはずです。 自分のPC で「5.7」はアプリが起動できない問題があります。

デフォルトだと 3回の更新で一番古いカーネルは削除されます。 最初から動いているカーネルが削除されないように、「Fedora 32」をインストールしたらすぐに、 立ち上げ時の選択メニューの保持数を増やしました。

インストール時のカーネル:

$ uname -r
5.6.6-300.fc32.x86_64

-

立ち上げ時のメニューの保持数を増やします:

$ sudo nano /etc/dnf/dnf.conf

下記の行を修正:

installonly_limit=3

↓ 数字を増やします:

installonly_limit=10

Ctrl+O 保存、 Ctrl+X 閉じる

確認:

$ cat /etc/dnf/dnf.conf
[main]
gpgcheck=1
installonly_limit=10
clean_requirements_on_remove=True
best=False
skip_if_unavailable=True

→保存される数を多めに増やしました。これだけあれば大丈夫でしょう。 カーネル更新が多いときは、下記の「OSのバージョンを上げない設定」にします。

-

再起動

-


参考: OSのバージョンを上げない設定にする場合:

参考:

アップデートの適応

バージョンが変わらないように、カーネルをパッケージ検索から除外します。

-

OSのバージョンを上げない設定:
$ sudo nano /etc/dnf/dnf.conf

↓ 下記の行を追加:

exclude=kernel*

Ctrl+O 保存、 Ctrl+X 修了

確認:

$ cat /etc/dnf/dnf.conf
[main]
gpgcheck=1
installonly_limit=10
clean_requirements_on_remove=True
best=False
skip_if_unavailable=True
exclude=kernel*

→今回は、保存される数を増やしているので、更新の頻度が少なくなれば、停止は解除できますが、くれぐれも削除されないように注意。途中の不要なバージョンは削除できません。( *.fc32.x86_64.conf を conf-ORG にでもすれば出来そう…リスクあり)

-

再起動

-


参考: コンピュータ名

参考:

ちなみに、システムのインストール時には「コンピュータ名」を聞いてきません。 「コンピュータ名」はローカルドメイン名の「localhost.localdomain」が使われています。へたすると全部のパソコンとか、USB メモリで、コンピュータ名が同じになるわけです。

$ uname -n
localhost.localdomain

これがLVM2 でフォーマットした場合に、後で、同じfedora のフレーバーのUSB メモリをマウントできない原因になります。自動でパーティションを作ると、デフォルトのLVM2 で作られ、仮想のボリューム名にコンピュータ名「localhost.localdomain」が使われるので、母艦と同じ名前だと、マウントで拒否されます。

LVM2 のボリュームのマウント作業は面倒ですが、 Fedora 以外の他のManjaro GNOME 等でマウントすればOK です。

-


日本語入力の設定

  • インストールしただけで、「日本語(かな漢字)」(ibus-kkc) が有効で、日本語入力ができます。

システムトレイの「あ」が白色で大きくなり、見やすくなりました。

IMEオン/オフの切り替えは、デフォルトで「Windows + space」に設定されていますが、パネルのWindow list にあるアプリの吹き出しが開いてしまいます。機能がかぶっているようです。

-

IMEオン/オフのキー(トグル)の割当を変更:

「JA」または、「あ」を右クリック→設定→「IBusの設定」画面

-

「一般」タブ:

「次の入力メソッド: Super + space」の右にある「…」をクリック

「Super」のチェックを外して、「Super + space」を2回クリック→「半角/全角」キーを押します。

→「Zenkaku_Hankaku」に変わりました。

→「OK」

  • 「半角/全角」キーで、「JA」、「あ」の切り替えができます。

-

個人的に、日本語オン/オフを別々のキーに割り当て:

「JA」または、「あ」を右クリック→設定→「IBusの設定」画面

-

「入力メソッド」タブ:

「日本語 - かな漢字」をクリック→設定→「かな漢字変換の設定」画面→「ショートカット」タブ

左側のタブを選択しながら、設定していきます:

1. ひらがな:

「元の候補  Muhenkan」を「-」で削除
「カタカナ入力モードに変更  Hiragana katakana」を「-」で削除

2. カタカナ:

「元の候補  Muhenkan」を「-」で削除

3. 半角カタカナ:

「元の候補  Muhenkan」を「-」で削除

4. 英数:

「元の候補  Muhenkan」を「-」で削除

5. 全角英数:

「元の候補  Muhenkan」を「-」で削除

6. ひらがな:

「+」で「英数入力モードに変更」を選び「追加」をクリック

「英数入力モードに変更  無効」の「無効」をクリック →「無変換」キーを押す
↓
「英数入力モードに変更  Muhenkan」になります

7. カタカナ:

「+」で「英数入力モードに変更」を選び「追加」をクリック

「英数入力モードに変更  無効」の「無効」をクリック →「無変換」キーを押す
↓
「英数入力モードに変更  Muhenkan」になります

8. 半角カタカナ:

「+」で「英数入力モードに変更」を選び「追加」をクリック

「英数入力モードに変更  無効」の「無効」をクリック →「無変換」キーを押す
↓
「英数入力モードに変更  Muhenkan」になります

9. 英数:

「+」で「英数入力モードに変更」を選び「追加」をクリック

「英数入力モードに変更  無効」の「無効」をクリック →「無変換」キーを押す
↓
「英数入力モードに変更  Muhenkan」になります

10. 全角英数:

「+」で「英数入力モードに変更」を選び「追加」をクリック

「英数入力モードに変更  無効」の「無効」をクリック →「無変換」キーを押す
↓
「英数入力モードに変更  Muhenkan」になります

11. 直接入力:

「+」で「英数入力モードに変更」を選び「追加」をクリック

「英数入力モードに変更  無効」の「無効」をクリック →「無変換」キーを押す
↓
「英数入力モードに変更  Muhenkan」になります

→「閉じる」


12. ログアウト →ログイン

-

→これで、画面右上の「あ」のインジケータを見なくて入力できます。

- 入力メソッドのオン/オフ: 「半角/全角」キーでトグル操作

- (日本語オン): 「ひらがな」キー を押してから入力

- (日本語オフ): 「無変換」キーを押してから入力(Enter で確定が必要)


- (日本語オン/オフ): 「半角/全角」キーのトグル

- (英数 大文字/小文字): 「英数」キーのトグル(Enter で確定が必要)

→「端末」アプリを使う時は注意です。

「半角/全角」キーで「あ」の表示を消しておくと、Enter での確定が要りません。

-


ibus-kkc の辞書登録

あまりに誤変換が多いので、辞書を鍛えることにしました。

ibus-kkcの単語登録

辞書登録の方法:

SKK の辞書が使われています。SKK と同じように、辞書語登録に別のソフトが要りません、品詞の指定も要りません。 GNOME で辞書登録するには、GENOME クラッシックで行います。

1. 「登録したい単語」を表示させます

2. 「登録したい単語」を選択して「Alt+R」

3. すぐに続けて「とうろくしたいたんご」という読みを入力

4. 変換操作にて(一発で)「登録したい単語」が出るので確定

5. 誤変換が登録されて表示されるときは「Ctrl+Backspace」で、その登録を削除できます。

-

登録された単語はSKK と同じくテキストファイルとして保存されます

保存される場所:

$ ls -1 ~/.config/ibus-kkc/dictionary/
segment
sentence

2つがペアです:

$ cat ~/.config/ibus-kkc/dictionary/segment
$ cat ~/.config/ibus-kkc/dictionary/sentence

ただのテキストファイルです。 鍛えた辞書は、使いまわしができます。

-


現在の入力メソッド関連のパッケージを確認:

ibus-kkc で必要なパッケージ:

$ dnf list ibus-*
:
インストール済みパッケージ
ibus-gtk2.x86_64                       1.5.22-7.fc32                    @updates
ibus-gtk3.x86_64                       1.5.22-7.fc32                    @updates
ibus-kkc.x86_64                        1.5.22-13.fc32                   @fedora 
ibus-libs.x86_64                       1.5.22-7.fc32                    @updates
ibus-setup.noarch                      1.5.22-7.fc32                    @updates

-

現在入っているパッケージ:

$ dnf list ibus-*
:
インストール済みパッケージ
ibus-cangjie.noarch                   2.4-19.fc32                      @anaconda
ibus-cangjie-engine-cangjie.noarch    2.4-19.fc32                      @anaconda
ibus-gtk2.x86_64                      1.5.22-7.fc32                    @updates 
ibus-gtk3.x86_64                      1.5.22-7.fc32                    @updates 
ibus-hangul.x86_64                    1.5.3-2.fc32                     @anaconda
ibus-kkc.x86_64                       1.5.22-13.fc32                   @anaconda
ibus-libpinyin.x86_64                 1.11.92-1.fc32                   @anaconda
ibus-libs.x86_64                      1.5.22-7.fc32                    @updates 
ibus-libzhuyin.x86_64                 1.9.1-3.fc32                     @anaconda
ibus-m17n.x86_64                      1.4.3-1.fc32                     @updates 
ibus-setup.noarch                     1.5.22-7.fc32                    @updates 
ibus-typing-booster.noarch            2.9.5-1.fc32                     @updates 

→日本以外の国の変換エンジンも含まれています。追加された「Cangjie」は香港とマカオの一部で使われているみたい。

-

不要なパッケージを削除:

$ sudo dnf remove ibus-cangjie ibus-cangjie-engine-cangjie ibus-hangul ibus-libpinyin ibus-libzhuyin ibus-m17n ibus-typing-booster
:
削除中:
 ibus-cangjie                 noarch  2.4-19.fc32              @anaconda  117 k
 ibus-cangjie-engine-cangjie  noarch  2.4-19.fc32              @anaconda  3.8 k
 ibus-hangul                  x86_64  1.5.3-2.fc32             @anaconda  204 k
 ibus-libpinyin               x86_64  1.11.92-1.fc32           @anaconda  2.9 M
 ibus-libzhuyin               x86_64  1.9.1-3.fc32             @anaconda   28 M
 ibus-m17n                    x86_64  1.4.3-1.fc32             @updates   156 k
 ibus-typing-booster          noarch  2.9.5-1.fc32             @updates   3.3 M
未使用の依存関係の削除:
 cldr-emoji-annotation        noarch  37.0_13.0_0_1-1.fc32     @updates    63 M
 gdouros-symbola-fonts        noarch  10.24-6.fc32             @anaconda  3.8 M
 kyotocabinet-libs            x86_64  1.2.77-3.fc32            @anaconda  1.1 M
 libcangjie                   x86_64  1.3-13.fc32              @anaconda   30 k
 libcangjie-data              noarch  1.3-13.fc32              @anaconda  7.6 M
 libhangul                    x86_64  0.1.0-21.fc32            @anaconda  6.4 M
 libpinyin                    x86_64  2.3.0-3.fc32             @anaconda  1.1 M
 libpinyin-data               x86_64  2.3.0-3.fc32             @anaconda   36 M
 libzhuyin                    x86_64  2.3.0-3.fc32             @anaconda  1.0 M
 m17n-db                      noarch  1.8.0-9.fc32             @anaconda  1.9 M
 m17n-lib                     x86_64  1.8.0-7.fc32             @anaconda  462 k
 python3-canberra             noarch  0-0.23.git88c53cd.fc32   @anaconda   52 k
 python3-cangjie              x86_64  1.2-21.fc32              @anaconda  228 k
 python3-enchant              noarch  2.0.0-11.fc32            @anaconda  429 k
 unicode-ucd                  noarch  13.0.0-1.fc32            @anaconda   33 M

-

確認:

$ dnf list ibus-*
:
インストール済みパッケージ
ibus-gtk2.x86_64                       1.5.22-7.fc32                    @updates
ibus-gtk3.x86_64                       1.5.22-7.fc32                    @updates
ibus-kkc.x86_64                        1.5.22-13.fc32                   @anaconda
ibus-libs.x86_64                       1.5.22-7.fc32                    @updates
ibus-setup.noarch                      1.5.22-7.fc32                    @updates

-

ログアウト→ログインして、日本語入力できるか、単語登録できるかを確認。

-


ついでに、使われないだろうフォントも削除:

$ sudo dnf remove lohit-assamese-fonts lohit-bengali-fonts lohit-devanagari-fonts lohit-gujarati-fonts lohit-kannada-fonts lohit-odia-fonts lohit-tamil-fonts lohit-telugu-fonts

-

$ sudo dnf remove google-noto-sans-sinhala-vf-fonts

-

$ sudo dnf remove aajohan-comfortaa-fonts jomolhari-fonts khmeros-base-fonts khmeros-fonts-common sil-abyssinica-fonts sil-padauk-fonts sil-mingzat-fonts sil-nuosu-fonts smc-meera-fonts thai-scalable-fonts-common thai-scalable-waree-fonts

-


最終確認:

$ dnf list *fonts*
:
インストール済みパッケージ
abattis-cantarell-fonts.noarch                0.201-2.fc32             @anaconda
adobe-source-code-pro-fonts.noarch            2.030.1.050-8.fc32       @anaconda
compat-f32-dejavu-sans-fonts.noarch           2.37-8.fc32              @updates 
compat-f32-dejavu-sans-mono-fonts.noarch      2.37-8.fc32              @updates 
compat-f32-dejavu-serif-fonts.noarch          2.37-8.fc32              @updates 
dejavu-sans-fonts.noarch                      2.37-8.fc32              @updates 
dejavu-sans-mono-fonts.noarch                 2.37-8.fc32              @updates 
dejavu-serif-fonts.noarch                     2.37-8.fc32              @updates 
fonts-filesystem.noarch                       2.0.3-1.fc32             @anaconda
google-crosextra-caladea-fonts.noarch         1.002-0.14.20130214.fc32 @anaconda
google-crosextra-carlito-fonts.noarch         1.103-0.12.20130920.fc32 @anaconda
google-droid-sans-fonts.noarch                20200215-3.fc32          @anaconda
google-noto-cjk-fonts-common.noarch           20190416-6.fc32          @anaconda
google-noto-emoji-color-fonts.noarch          20200723-1.fc32          @updates 
google-noto-fonts-common.noarch               20181223-7.fc32          @anaconda
google-noto-sans-cjk-ttc-fonts.noarch         20190416-6.fc32          @anaconda
google-noto-sans-fonts.noarch                 20181223-7.fc32          @anaconda
google-noto-sans-gurmukhi-fonts.noarch        20181223-7.fc32          @anaconda
julietaula-montserrat-fonts.noarch            1:7.210-1.fc32           @updates 
liberation-fonts-common.noarch                1:2.1.0-1.fc32           @anaconda
liberation-mono-fonts.noarch                  1:2.1.0-1.fc32           @anaconda
liberation-sans-fonts.noarch                  1:2.1.0-1.fc32           @anaconda
liberation-serif-fonts.noarch                 1:2.1.0-1.fc32           @anaconda
libreoffice-opensymbol-fonts.noarch           1:6.4.5.2-5.fc32         @updates 
paktype-naskh-basic-fonts.noarch              5.0-2.fc32               @anaconda
paratype-pt-sans-fonts.noarch                 20141121-10.fc32         @anaconda
powerline-fonts.noarch                        2.8-1.fc32               @updates 
stix-fonts.noarch                             2.0.2-3.fc32             @anaconda
urw-base35-bookman-fonts.noarch               20170801-14.fc32         @anaconda
urw-base35-c059-fonts.noarch                  20170801-14.fc32         @anaconda
urw-base35-d050000l-fonts.noarch              20170801-14.fc32         @anaconda
urw-base35-fonts.noarch                       20170801-14.fc32         @anaconda
urw-base35-fonts-common.noarch                20170801-14.fc32         @anaconda
urw-base35-gothic-fonts.noarch                20170801-14.fc32         @anaconda
urw-base35-nimbus-mono-ps-fonts.noarch        20170801-14.fc32         @anaconda
urw-base35-nimbus-roman-fonts.noarch          20170801-14.fc32         @anaconda
urw-base35-nimbus-sans-fonts.noarch           20170801-14.fc32         @anaconda
urw-base35-p052-fonts.noarch                  20170801-14.fc32         @anaconda
urw-base35-standard-symbols-ps-fonts.noarch   20170801-14.fc32         @anaconda
urw-base35-z003-fonts.noarch                  20170801-14.fc32         @anaconda
xorg-x11-fonts-ISO8859-1-100dpi.noarch        7.5-24.fc32              @anaconda
xorg-x11-fonts-misc.noarch                    7.5-24.fc32              @anaconda
利用可能なパッケージ
:

LaTeX 関連を使わないなら、「urw-base35」のフォントも削除できます。

-


GNOME 端末」の起動時のウィンドウサイズを設定:

横幅がせまくて、縦が長い方が、投稿に利用するには使いやすいです。 広く使いたいときは、画面の右端もしくは上端にでもぶつければ OK

編集→設定→「名前なし」タブ→「文字」タブ→文字の外観

起動時の端末サイズ: 80 列  24 列
↓
起動時の端末サイズ: 80 列  48 列

-


「xed」で挿入する時刻のフォーマットを設定:

編集→設定 →「プラグイン 」タブ→「日付/時刻の挿入」を選択→設定

「その他」にチェック

%Y-%m-%d %H:%M

→「閉じる」

結果:

編集→「日付/時刻の挿入」

2020-08-21 20:49

-


「pluma」のインストール

Mate デスクトップ環境の標準テキストエディタ。ほぼ「gedit」や「xed」と同じ機能で、昔からのメニューバー表示。軽いのでメイン使用できそう。gedit と同じテーマファイルが使えます。テーマファイルの置き場所は自由。アイコンまで同じ。

$ sudo dnf install pluma

$ pluma --version
pluma - Version 1.24.0

→日本語入力できます。

-

挿入する時刻のフォーマットを設定するやり方は「xed」と同じです。


「kolourpaint」のインストール

個人的によく使う画像加工処理ソフトです。画像を右クリックして起動することが多いです。

$ sudo dnf install kolourpaint

→こちらもQt アプリ。依存でたくさんのパッケージが入りました。 日本語フォントを選べば日本語入力できます。

-


「qpdfview」のインストール

個人的によく使うPDF ビュワーです。 表紙付きの見開きで、読む方向を指定できるのが利点。この機能があるビュワーは少ないです。

$ sudo dnf install qpdfview

→こちらもQt アプリ。メニューは日本語化されていません。 こちらの場合は、メニューは日本語化したほうが使いやすいです。

日本語化は こちら

-


Fedora でゲーム

マインスイーパ

A classic Minesweeper game

$ sudo dnf install kmines
:
インストール:
 kmines                 x86_64       19.12.2-1.fc32         fedora        1.0 M
依存関係のインストール:
 kf5-kdeclarative       x86_64       5.70.0-2.fc32          updates       295 k
 kf5-kdnssd             x86_64       5.70.0-1.fc32          updates        99 k
 kf5-knewstuff          x86_64       5.70.0-1.fc32          updates       777 k
 kf5-kpackage           x86_64       5.70.0-1.fc32          updates       214 k
 libkdegames            x86_64       19.12.2-1.fc32         fedora        6.2 M
 openal-soft            x86_64       1.19.1-5.fc32          fedora        548 k

-

ソリティアクロンダイク

A collection of card games

$ sudo dnf install aisleriot
:
インストール:
 aisleriot         x86_64         1:3.22.9-3.fc32          fedora         5.8 M

-


LibreOffice の日本語化:

インストール状態の確認:

$ dnf list libreoffice*
:
インストール済みパッケージ
libreoffice-calc.x86_64                             1:6.4.6.2-1.fc32    @updates
libreoffice-core.x86_64                             1:6.4.6.2-1.fc32    @updates
libreoffice-data.noarch                             1:6.4.6.2-1.fc32    @updates
libreoffice-emailmerge.x86_64                       1:6.4.6.2-1.fc32    @updates
libreoffice-graphicfilter.x86_64                    1:6.4.6.2-1.fc32    @updates
libreoffice-gtk3.x86_64                             1:6.4.6.2-1.fc32    @updates
libreoffice-help-en.x86_64                          1:6.4.6.2-1.fc32    @updates
libreoffice-impress.x86_64                          1:6.4.6.2-1.fc32    @updates
libreoffice-langpack-en.x86_64                      1:6.4.6.2-1.fc32    @updates
libreoffice-math.x86_64                             1:6.4.6.2-1.fc32    @updates
libreoffice-ogltrans.x86_64                         1:6.4.6.2-1.fc32    @updates
libreoffice-opensymbol-fonts.noarch                 1:6.4.6.2-1.fc32    @updates
libreoffice-pdfimport.x86_64                        1:6.4.6.2-1.fc32    @updates
libreoffice-pyuno.x86_64                            1:6.4.6.2-1.fc32    @updates
libreoffice-ure.x86_64                              1:6.4.6.2-1.fc32    @updates
libreoffice-ure-common.noarch                       1:6.4.6.2-1.fc32    @updates
libreoffice-writer.x86_64                           1:6.4.6.2-1.fc32    @updates
libreoffice-x11.x86_64                              1:6.4.6.2-1.fc32    @updates

日本語化をインストール:

$ sudo dnf install libreoffice-langpack-ja libreoffice-help-ja
:
インストール:
 libreoffice-help-ja               x86_64   1:6.4.6.2-1.fc32    updates   4.9 M
 libreoffice-langpack-ja           x86_64   1:6.4.6.2-1.fc32    updates   679 k
依存関係のインストール:
 autocorr-ja                       noarch   1:6.4.6.2-1.fc32    updates    76 k
 langpacks-core-font-ja            noarch   3.0-3.fc32          fedora    9.4 k
 langpacks-core-ja                 noarch   3.0-3.fc32          fedora    9.5 k
弱い依存関係のインストール:
 glibc-langpack-ja                 x86_64   2.31-4.fc32         updates   409 k
 google-noto-serif-cjk-ttc-fonts   noarch   20190416-6.fc32     fedora    108 M
 langpacks-ja                      noarch   3.0-3.fc32          fedora    9.5 k
 man-pages-ja                      noarch   20190815-2.fc32     fedora    5.5 M

英語のヘルプを削除:

$ sudo dnf remove libreoffice-help-en

-


Visual Studio Code のインストール

Visual Studio Code(略して VSCode )は、マイクロソフトが開発したオープンソース(MITライセンスでライセンス)のテキストエディタです。

Fedora でインストールするには、キーとリポジトリの追加が必要です:

$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

$ sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'

$ sudo dnf check-update
Visual Studio Code                              2.2 MB/s | 5.5 MB     00:02    

インストール:

$ sudo dnf install code
:
インストール済み:
  code-1.48.2-1598353576.el7.x86_64

→「Cinnamon (Software Renderin...)」セッションで使えます。

-


Visual Studio Code の日本語化:

Visual Studio Code の日本語化だけでなく、「Python 拡張機能」のインストールも行うときは、下記も行っておきます。

-

python プログラムファイルを作成:
$ echo 'print("Hello world!")'  > ~/ドキュメント/hello.py

$ cat ~/ドキュメント/hello.py
print("Hello world!")

→「~/ドキュメント/hello.py」

-

インストール手順:

Visual Studio Code の日本語化」、に続いて、必要なら「Python 拡張機能」のインストールを行います。 開くPython プログラムファイルは上記で作成した「~/ドキュメント/hello.py」を指定します。

下記の手順を参照:

Fedora 32 「Python Classroom」Lab をUSBメモリにインストール〈H77〉

Visual Studio Code の日本語化:

-


システム更新

いくら待っても、システム更新は自動では来ません。 Fedora の場合は、更新の頻度が多くてリスクも高いので、正解かもしれません。

最新のカーネル更新への対策として、立ち上げ時のカーネル選択メニューの保存数を増やしました。 これなら安全なので、インストール直後の更新はやっておくことにしました。

もし、おかしくなったときは「Cinnamon(Software...)」セッションで動くかを確認します。 それでダメなら、元のカーネルを選んで立ち上げればいいだけです。

-

システム更新を、コマンドで行うか、GUI で行うかも、確認します。

-

GUI でのシステム更新の操作を確認:

Menu →システム管理 →「dnfdragora-updater」→右下にオレンジの箱アイコンが表示→左クリックにて、メニュー表示→「dnfdragora のダイアログを開く」

「ソフトウェアの管理-dnfdragora」画面表示:

→しばらくすると、更新される一覧が表示されました。

一覧のパッケージについての説明が表示されますが、英語なのでさっぱりです。

  • ちなみに、「dnfdragora-updater」は起動すると常駐しました。次回からは更新があるかが報告されます。

-

追記 1: カーネルの更新 (5.7.15-200) は、やっぱり来ていました。

kernel  5.7.15  200.fc32  x86_64  更新可能

最初から全部のパッケージが選択されていません。更新したいパッケージを選んで更新できる作りです。 すべてを適用したいときは、ウィンドウの下に「すべて選択」があります。

これなら、「すべて選択」→「kernel」のチェックだけを外す→「適用」で、カーネルだけ除外してのシステム更新ができそうです。

-

システム更新のメッセージを確認したいので、コマンドで実施:

$ sudo dnf update
[sudo] USER_NAME のパスワード:
メタデータの期限切れの最終確認: 0:20:01 時間前の 2020年08月21日 11時16分19秒 に実施しました。
依存関係が解決しました。
================================================================================
 Package                        Arch   Version                    Repo     Size
================================================================================
インストール:
 kernel                         x86_64 5.7.15-200.fc32            updates  24 k    ←(カーネル更新です)
 kernel-modules                 x86_64 5.7.15-200.fc32            updates  29 M
 kernel-modules-extra           x86_64 5.7.15-200.fc32            updates 2.0 M
アップグレード:
 ImageMagick                    x86_64 1:6.9.11.27-1.fc32         updates 163 k
:
 cairo                          x86_64 1.16.0-8.fc32              updates 712 k
 cairo-gobject                  x86_64 1.16.0-8.fc32              updates  19 k
 cinnamon                       x86_64 4.6.7-1.fc32               updates 1.7 M
 cinnamon-control-center        x86_64 4.6.2-1.fc32               updates 1.8 M
 cinnamon-control-center-filesystem
                                x86_64 4.6.2-1.fc32               updates 8.5 k
 cinnamon-desktop               x86_64 4.6.4-1.fc32               updates 264 k
 cinnamon-menus                 x86_64 4.6.1-1.fc32               updates  68 k
 cinnamon-screensaver           x86_64 4.6.0-1.fc32               updates 229 k
 cinnamon-session               x86_64 4.6.2-1.fc32               updates 174 k
 cinnamon-settings-daemon       x86_64 4.6.4-1.fc32               updates 590 k
 cinnamon-themes                noarch 1:1.8.6-1.fc32             updates 665 k
 cinnamon-translations          noarch 4.6.2-1.fc32               updates 3.7 M
 cjs                            x86_64 1:4.6.0-1.fc32             updates 299 k
:
 xapps                          x86_64 1.8.8-1.fc32               updates 5.2 M
 xed                            x86_64 2.6.2-1.fc32               updates 2.4 M
 xorg-x11-drv-ati               x86_64 19.1.0-1.fc32              updates 175 k
 xorg-x11-server-utils          x86_64 7.7-35.fc32                updates 191 k
 xreader                        x86_64 2.6.4-1.fc32               updates 1.2 M
 xxhash-libs                    x86_64 0.8.0-1.fc32               updates  41 k
 yum                            noarch 4.2.23-1.fc32              updates  47 k
依存関係のインストール:
 flatpak-selinux                noarch 1.6.5-1.fc32               updates  23 k
 flatpak-session-helper         x86_64 1.6.5-1.fc32               updates  77 k
 gnome-desktop3                 x86_64 3.36.4-1.fc32              updates 576 k
 graphene                       x86_64 1.10.2-1.fc32              updates  64 k
 kernel-core                    x86_64 5.7.15-200.fc32            updates  33 M
 libappstream-glib              x86_64 0.7.17-1.fc32              fedora  335 k
 libpasswdqc                    x86_64 1.4.0-1.fc32               updates  42 k
     置き換え  passwdqc-lib.x86_64 1.3.0-16.fc32
 libstemmer                     x86_64 0-14.585svn.fc32           fedora   84 k
 libwpe                         x86_64 1.6.0-1.fc32               fedora   26 k
 low-memory-monitor             x86_64 2.0-4.fc32                 fedora   34 k
 pam_passwdqc                   x86_64 1.4.0-1.fc32               updates  17 k
 passwdqc-utils                 x86_64 1.4.0-1.fc32               updates  21 k
 pipewire-libs                  x86_64 0.3.10-1.fc32              updates 848 k
 python3-beautifulsoup4         noarch 4.9.1-1.fc32               updates 203 k
 python3-soupsieve              noarch 1.9.2-4.fc32               fedora   67 k
 wpebackend-fdo                 x86_64 1.6.0-1.fc32               fedora   36 k
 xdg-desktop-portal             x86_64 1.7.2-2.fc32               updates 434 k
弱い依存関係のインストール:
 fips-mode-setup                noarch 20200619-1.git781bbd4.fc32 updates  19 k
 flatpak                        x86_64 1.6.5-1.fc32               updates 1.5 M
 p11-kit-server                 x86_64 0.23.20-1.fc32             fedora  189 k
 pipewire                       x86_64 0.3.10-1.fc32              updates 136 k
 xdg-desktop-portal-gtk         x86_64 1.7.1-1.fc32               fedora  239 k

トランザクションの概要
================================================================================
インストール     25 パッケージ
アップグレード  575 パッケージ

ダウンロードサイズの合計: 1.2 G
これでよろしいですか? [y/N]: y
:
完了しました!

→Enter キーのみだと実行されません。今回はバージョンが変るくらいの大きなシステム更新です。

新しいカーネルで動くかを確認するため、カーネルが「5.7.15-200」に更新されることを覚悟で実施しました。 たぶん、自分のPC だと、動かなくなるんだろうなぁ…。

  • dnf コマンドだと、更新するパッケージを選べません。ひとくくりです。

  • GUI の「dnfdragora-updater」だと、更新するパッケージを選べます。

Manjaro とは真逆です。Fedora の方が楽ですね。

試しに、GUI で、カーネルだけ除外して更新できるか確認しておけば良かったと、後で気づきました。 その後に、コマンドで実行すれば、両方のやり方を確認できました。

-

再起動

-


立ち上げ時のカーネル選択メニューが増えました。

あえて、追加された「5.7.15-200」で立ち上げます。何もしなくても3秒後に立ち上がります。

-

ログイン画面までは正常に表示されました。

-


デスクトップ画面を表示しきれませんでした

ログイン後、デスクトップを表示する直前に、「問題が起きたので報告しますか」と聞いてきました。

→「報告」をクリック

念の為、「Print Screen」キーを押したけど撮れたかな。

これは、メインメニューが点滅して操作できなかったときの画像です:

その後、デスクトップが消え、下のパネルも右に2個ぐらいアイコンが残るだけになり、何も操作できなくなりました。Ctrl+Alt+F2 にて、コンソールに入り、ユーザでログインして、「reboot」しました。

再起動

-

ログイン画面で「Cinnamon(Software...)」セッションを選んで、パスワード入力

-


デスクトップ画面が表示されました

やっぱり、「Cinnamon(Software...)」セッションだと動きます。その確認ができました。

残念ながら、ブラウザでの投稿の編集が少し重く感じます。

これなら、自分のPC でも、CentOS を母艦にして、VirtualBox で「汎用的な仮想PC として通常のセッションで動かした方がいい」かもしれません。

-

問題が上がっていないのは、実機で動かしている人が少ないのではと思われます。Fedora はサポート期間が短いしリスクが高いので、VirtulBox で動かしている人が大半かもしれません。

$ uname -r
5.7.15-200.fc32.x86_64

→これが調子の良くないカーネル。自分のPC では「Cinnamon(Software...)」セッションでないと動きません。

-


立ち上げ時のカーネル選択メニューが置かれている場所の確認:

参考:

fedora 30からgrubの仕様が変わった

Manjaro とはメニューの作りが変わったようで、ファイルの配置とか設定ファイルとか違いが見られます。

-

$ ls /boot/
System.map-5.6.6-300.fc32.x86_64
System.map-5.7.15-200.fc32.x86_64
config-5.6.6-300.fc32.x86_64
config-5.7.15-200.fc32.x86_64
efi
elf-memtest86+-5.01
extlinux
grub2
initramfs-0-rescue-af6cee91f78a45979383182dabb25035.img
initramfs-5.6.6-300.fc32.x86_64.img
initramfs-5.7.15-200.fc32.x86_64.img
loader
memtest86+-5.01
vmlinuz-0-rescue-af6cee91f78a45979383182dabb25035
vmlinuz-5.6.6-300.fc32.x86_64
vmlinuz-5.7.15-200.fc32.x86_64

-

$ sudo ls /boot/grub2/
device.map  fonts  grub.cfg  grubenv  i386-pc  themes

$ sudo ls /boot/loader/
entries

$ sudo ls /boot/loader/entries
af6cee91f78a45979383182dabb25035-0-rescue.conf
af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf

→各カーネルごとの設定ファイルが並んでいます。

$ sudo cat /boot/grub2/grubenv
# GRUB Environment Block
saved_entry=af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64
kernelopts=root=UUID=d3ac0549-0661-4484-a032-47b891c654f0 ro rhgb quiet 
boot_success=1
boot_indeterminate=0
######################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################

→ここを専用ツールで修正することになります。

$ sudo grep -w menuentry /boot/grub2/grub.cfg
$

grub.cfg では、「menuentry」のワードは使われなくなったようです。

-

現在の設定を表示:

$ sudo grub2-editenv list
saved_entry=af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64
kernelopts=root=UUID=d3ac0549-0661-4484-a032-47b891c654f0 ro rhgb quiet 
boot_success=1
boot_indeterminate=0

→saved というのは、一度選択して成功したメニューということみたい。

-

再起動

まずは、カーネル選択メニューで、以前の「5.6.6-300」を選んで立ち上がるかを確認。

-


デフォルトの起動メニューを「5.6.6-300」に設定:

文字列、または、0から始まる番号で指定します。

$ sudo grub2-set-default 'af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64'

-

設定されたかの確認:

$ sudo grub2-editenv list
saved_entry=af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64
kernelopts=root=UUID=d3ac0549-0661-4484-a032-47b891c654f0 ro rhgb quiet 
boot_success=1
boot_indeterminate=0

-

再起動

ブート選択画面:

Fedora (5.7.15-200.fc32.x86_64) 32 (Thirty Two)
Fedora (5.6.6-300.fc32.x86_64) 32 (Thirty Two)
Fedora (0-rescue-af6cee91f78a45979383182dabb25035) 32 (Thirty Two)

   Use the  and  keys to change the selection.
   Press 'e' to edit the selected item, or 'c' for a command prompt.
The selected entry will be started automatically in 3s.

カーネル選択画面が表示され、2番目が選択されています。

  • ここでEnter キーを押して確定します。

→最初だけ必要な操作です。やらないでいたら、カーネルブートの選択メッセージで止まっていました。 左右矢印キーで確認できます。2度目からはEnter キーは要りません。リンクされたのか自然に立ち上がります。

デスクトップ画面が立ち上がりました。

$ uname -r
5.6.6-300.fc32.x86_64

-


追記 2: システム更新とカーネル「5.7.16-200」の更新がきました

2020-08-22 18:21

更新の通知がきました。

-


GUI で更新:

パネル右下の黄色い箱のアイコン「dnfdragora-updater」を右クリック→「更新」→一覧表示

「すべて選択」をクリック→カーネル関連(5つ)のみチェックを外し→「適用」

→このやり方で、カーネルの更新を除外した更新ができました。

  • 通常は、このようにスキップしておいて、もっと大きな番号になってから適用するやり方が良さそうです。

-


コマンドで更新:

新しくきたカーネルで動くかを確認するために、コマンドで更新してみました。

(本来は更新はせず、もう少し様子を見ると思います)

$ uname -r
5.6.6-300.fc32.x86_64

$ sudo dnf update
[sudo] USER_NAME のパスワード:
メタデータの期限切れの最終確認: 0:05:59 時間前の 2020年08月22日 18時12分28秒 に実施しました。
依存関係が解決しました。
================================================================================
 Package                   Arch        Version               Repository    Size
================================================================================
インストール:
 kernel                    x86_64      5.7.16-200.fc32       updates       24 k
 kernel-modules            x86_64      5.7.16-200.fc32       updates       29 M
 kernel-modules-extra      x86_64      5.7.16-200.fc32       updates      2.0 M
アップグレード:
 kernel-headers            x86_64      5.7.16-200.fc32       updates      1.2 M
依存関係のインストール:
 kernel-core               x86_64      5.7.16-200.fc32       updates       33 M

トランザクションの概要
================================================================================
インストール    4 パッケージ
アップグレード  1 パッケージ

ダウンロードサイズの合計: 65 M
これでよろしいですか? [y/N]: 

再起動

-

ブート選択画面:

Fedora (5.7.16-200.fc32.x86_64) 32 (Thirty Two)
Fedora (5.7.15-200.fc32.x86_64) 32 (Thirty Two)
Fedora (5.6.6-300.fc32.x86_64) 32 (Thirty Two)
Fedora (0-rescue-af6cee91f78a45979383182dabb25035) 32 (Thirty Two)

   Use the  and  keys to change the selection.
   Press 'e' to edit the selected item, or 'c' for a command prompt.
The selected entry will be started automatically in 3s.

→3 秒後に追加された一番上の (5.7.16-200) が選ばれました。 今までの設定はクリアされています。

-

ログイン画面

-

デスクトップ画面が表示

デスクトップが点滅したり、メインメニューが表示されなかったり、 正常に動作しません。パネルのアイコンも消えました。

Ctrl+Alt+F2 でコンソール画面にして、ユーザでログイン、「reboot」

(5.6.6-300) を選んで立ち上げました。

-

デスクトップ画面が表示

今度は正常に立ち上がりました。

-

カーネルの確認:
$ uname -r
5.6.6-300.fc32.x86_64

$ ls /boot/
System.map-5.6.6-300.fc32.x86_64
System.map-5.7.15-200.fc32.x86_64
System.map-5.7.16-200.fc32.x86_64
config-5.6.6-300.fc32.x86_64
config-5.7.15-200.fc32.x86_64
config-5.7.16-200.fc32.x86_64
efi
elf-memtest86+-5.01
extlinux
grub2
initramfs-0-rescue-af6cee91f78a45979383182dabb25035.img
initramfs-5.6.6-300.fc32.x86_64.img
initramfs-5.7.15-200.fc32.x86_64.img
initramfs-5.7.16-200.fc32.x86_64.img
loader
memtest86+-5.01
vmlinuz-0-rescue-af6cee91f78a45979383182dabb25035
vmlinuz-5.6.6-300.fc32.x86_64
vmlinuz-5.7.15-200.fc32.x86_64
vmlinuz-5.7.16-200.fc32.x86_64

カーネルが増えています。

-

メニューエントリの表示:
$ sudo ls /boot/loader/entries/
[sudo] USER_NAME のパスワード:
af6cee91f78a45979383182dabb25035-0-rescue.conf
af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf

-


デフォルトの起動メニューを再度「5.6.6-300」に設定:

$ sudo grub2-set-default 'af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64'

-

設定されたかの確認:

$ sudo grub2-editenv list
saved_entry=af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64
kernelopts=root=UUID=d3ac0549-0661-4484-a032-47b891c654f0 ro rhgb quiet 
boot_success=1
boot_indeterminate=0

-

再起動

ブート選択画面:

Fedora (5.7.16-200.fc32.x86_64) 32 (Thirty Two)
Fedora (5.7.15-200.fc32.x86_64) 32 (Thirty Two)
Fedora (5.6.6-300.fc32.x86_64) 32 (Thirty Two)
Fedora (0-rescue-af6cee91f78a45979383182dabb25035) 32 (Thirty Two)

   Use the  and  keys to change the selection.
   Press 'e' to edit the selected item, or 'c' for a command prompt.
The selected entry will be started automatically in 3s.

カーネル選択画面が表示され、3番目が反転して選択されています。

  • ここでEnter キーを押して確定します。

→最初だけ必要な操作です。やらないでいたら、カーネルブートの選択メッセージで止まっていました。 左右矢印キーで確認できます。2度目からはEnter キーは要りません。リンクされたのか自然に立ち上がります。

デスクトップ画面が立ち上がりました。

$ uname -r
5.6.6-300.fc32.x86_64

-


追記 3: カーネル「5.7.17-200」の更新がきました

2020-08-28

「Cinnamon」セッションで立ち上げ

デスクトップ表示:

→メインメニューが開きません。デスクトップで右クリックのメニューが開きません。改善せず。 使えません。

Ctrl+Alt+F2 でユーザにログインして、reboot

再起動

-


追記 4: カーネル「5.8.4-200」の更新がきました

2020-09-06

「Cinnamon」セッションで立ち上げ

デスクトップ表示:

→メインメニューが開きません。デスクトップで右クリックのメニューが開きません。改善せず。 使えません。

Ctrl+Alt+F2 でユーザにログインして、reboot

再起動

-


「Cinnamon (Software Renderin...)」セッションで立ち上げ

デスクトップ表示:

→重いですが、正常に使えます。

-

参考:

「Manjaro Linux Xfce 20.1-rc4」は、カーネルの 「5.8.0-2、5.8.1-3、5.8.3-2」で使えています。カーネルとデスクトップの組み合わせでおかしくなるみたい。

-


デフォルトの起動メニューを再度「5.6.6-300」に設定:

$ sudo grub2-set-default 'af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64'

-

設定されたかの確認:

$ sudo grub2-editenv list
saved_entry=af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64
kernelopts=root=UUID=d3ac0549-0661-4484-a032-47b891c654f0 ro rhgb quiet 
boot_success=1
boot_indeterminate=0

-

再起動

-

$ uname -r
5.6.6-300.fc32.x86_64

-


起動メニューの途中のカーネルのメニュー項目を削除:

途中の使えないカーネルは使わないので、メニューエントリから削除しました。

作業前:

$ sudo ls /boot/loader/entries/
[sudo] USER_NAME のパスワード:
af6cee91f78a45979383182dabb25035-0-rescue.conf
af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.17-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.8.4-200.fc32.x86_64.conf

ファイル名を変更(メニューエントリから削除):

$ sudo mv /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf-ORG

$ sudo mv /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf-ORG

$ sudo mv /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.17-200.fc32.x86_64.conf /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.17-200.fc32.x86_64.conf-ORG

$ sudo ls /boot/loader/entries/
af6cee91f78a45979383182dabb25035-0-rescue.conf
af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf-ORG
af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf-ORG
af6cee91f78a45979383182dabb25035-5.7.17-200.fc32.x86_64.conf-ORG
af6cee91f78a45979383182dabb25035-5.8.4-200.fc32.x86_64.conf

再起動

-

ブート選択画面:

Fedora (5.8.4-200.fc32.x86_64) 32 (Thirty Two)
Fedora (5.6.6-300.fc32.x86_64) 32 (Thirty Two)
Fedora (0-rescue-af6cee91f78a45979383182dabb25035) 32 (Thirty Two)

   Use the  and  keys to change the selection.
   Press 'e' to edit the selected item, or 'c' for a command prompt.
The selected entry will be started automatically in 3s.

カーネル選択画面の2番目が反転して選択されています。

  • ここでEnter キーを押して確定します。

-

参考: 不要と思われるファイル

$ ls /boot/ | grep 5.7.1

System.map-5.7.15-200.fc32.x86_64
System.map-5.7.16-200.fc32.x86_64
System.map-5.7.17-200.fc32.x86_64
config-5.7.15-200.fc32.x86_64
config-5.7.16-200.fc32.x86_64
config-5.7.17-200.fc32.x86_64
initramfs-5.7.15-200.fc32.x86_64.img
initramfs-5.7.16-200.fc32.x86_64.img
initramfs-5.7.17-200.fc32.x86_64.img
vmlinuz-5.7.15-200.fc32.x86_64
vmlinuz-5.7.16-200.fc32.x86_64
vmlinuz-5.7.17-200.fc32.x86_64

→選択メニューから外れているので、これらのファイルは不要なら削除できます。たぶん。

たぶん、と書いたのは、下記のように「インストール済み」パッケージとして登録されているから。 稼働中と同じ名前なので dnf remove はできない(?) みたい。

$ dnf list kernel*

インストール済みパッケージ
kernel.x86_64                                 5.6.6-300.fc32           @anaconda
kernel.x86_64                                 5.7.15-200.fc32          @updates 
kernel.x86_64                                 5.7.16-200.fc32          @updates 
kernel.x86_64                                 5.7.17-200.fc32          @updates 
kernel.x86_64                                 5.8.4-200.fc32           @updates 
kernel-core.x86_64                            5.6.6-300.fc32           @anaconda
kernel-core.x86_64                            5.7.15-200.fc32          @updates 
kernel-core.x86_64                            5.7.16-200.fc32          @updates 
kernel-core.x86_64                            5.7.17-200.fc32          @updates 
kernel-core.x86_64                            5.8.4-200.fc32           @updates 
kernel-headers.x86_64                         5.8.4-200.fc32           @updates    ←(共通)
kernel-modules.x86_64                         5.6.6-300.fc32           @anaconda
kernel-modules.x86_64                         5.7.15-200.fc32          @updates 
kernel-modules.x86_64                         5.7.16-200.fc32          @updates 
kernel-modules.x86_64                         5.7.17-200.fc32          @updates 
kernel-modules.x86_64                         5.8.4-200.fc32           @updates 
kernel-modules-extra.x86_64                   5.6.6-300.fc32           @anaconda
kernel-modules-extra.x86_64                   5.7.15-200.fc32          @updates 
kernel-modules-extra.x86_64                   5.7.16-200.fc32          @updates 
kernel-modules-extra.x86_64                   5.7.17-200.fc32          @updates 
kernel-modules-extra.x86_64                   5.8.4-200.fc32           @updates 

-

念の為、「dnfdragora」アプリで「インストール済み」の「kernel」を検索

すべて行頭にチェックがついた一覧が表示されます。 この辺りは、間違えるかもしれないので、操作しないほうが無難。

-

増えすぎたので、自動的に他の不要なカーネルを消してもらいます

残念ながら、保持したいカーネル「5.6.6」は消えます。

-

立ち上げ時のカーネル選択メニューの保持数を 2に減らしました。

$ sudo nano /etc/dnf/dnf.conf

下記の行を修正:

installonly_limit=10

↓ 数字を減らします:

installonly_limit=2

Ctrl+O 保存、 Ctrl+X 閉じる

-

確認:

$ cat /etc/dnf/dnf.conf
[main]
gpgcheck=1
installonly_limit=2
clean_requirements_on_remove=True
best=False
skip_if_unavailable=True

→保存される数を減らしましたが、もしかしたら、最新のカーネルだけが変更される(削除される)だけかもしれません。

-

ファイル名を変更(削除したメニューエントリを元に戻しました):

$ sudo mv /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf-ORG /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf

$ sudo mv /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf-ORG /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf

$ sudo mv /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.17-200.fc32.x86_64.conf-ORG /boot/loader/entries/af6cee91f78a45979383182dabb25035-5.7.17-200.fc32.x86_64.conf

$ sudo ls /boot/loader/entries/
af6cee91f78a45979383182dabb25035-0-rescue.conf
af6cee91f78a45979383182dabb25035-5.6.6-300.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.15-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.16-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.7.17-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.8.4-200.fc32.x86_64.conf

-


デフォルトの起動メニューを最新の「5.8.4-200」に設定:

$ sudo grub2-set-default 'af6cee91f78a45979383182dabb25035-5.8.4-200.fc32.x86_64'

-

設定されたかの確認:

$ sudo grub2-editenv list
saved_entry=af6cee91f78a45979383182dabb25035-5.8.4-200.fc32.x86_64
kernelopts=root=UUID=d3ac0549-0661-4484-a032-47b891c654f0 ro rhgb quiet 
boot_success=1
boot_indeterminate=0

再起動

-


「Cinnamon (Software Renderin...)」セッションで立ち上げ

デスクトップ表示:

$ uname -r
5.8.4-200.fc32.x86_64

カーネルの更新待ち。

-


追記 5: カーネル「5.8.6-201」の更新がきました

2020-09-08

参考: 保持数を 1にした場合、更新できませんでした:

$ sudo dnf update
:
エラー: 
 問題: 操作は結果的に以下の保護されたパッケージを削除します: kernel-core
(try to add '--skip-broken' to skip uninstallable packages)

-

保持数を 2にした場合はうまく行きました:

$ sudo dnf update
:
インストール済み:
  kernel-5.8.6-201.fc32.x86_64                                                  
  kernel-core-5.8.6-201.fc32.x86_64                                             
  kernel-modules-5.8.6-201.fc32.x86_64                                          
  kernel-modules-extra-5.8.6-201.fc32.x86_64                                    

削除しました:
  kernel-5.6.6-300.fc32.x86_64                                                  
  kernel-5.7.15-200.fc32.x86_64                                                 
  kernel-5.7.16-200.fc32.x86_64                                                 
  kernel-5.7.17-200.fc32.x86_64                                                 
  kernel-core-5.6.6-300.fc32.x86_64                                             
  kernel-core-5.7.15-200.fc32.x86_64                                            
  kernel-core-5.7.16-200.fc32.x86_64                                            
  kernel-core-5.7.17-200.fc32.x86_64                                            
  kernel-modules-5.6.6-300.fc32.x86_64                                          
  kernel-modules-5.7.15-200.fc32.x86_64                                         
  kernel-modules-5.7.16-200.fc32.x86_64                                         
  kernel-modules-5.7.17-200.fc32.x86_64                                         
  kernel-modules-extra-5.6.6-300.fc32.x86_64                                    
  kernel-modules-extra-5.7.15-200.fc32.x86_64                                   
  kernel-modules-extra-5.7.16-200.fc32.x86_64                                   
  kernel-modules-extra-5.7.17-200.fc32.x86_64                                   

完了しました!

再起動

-

確認:

$ dnf list kernel*
:
インストール済みパッケージ
kernel.x86_64                                  5.8.4-200.fc32           @updates
kernel.x86_64                                  5.8.6-201.fc32           @updates
kernel-core.x86_64                             5.8.4-200.fc32           @updates
kernel-core.x86_64                             5.8.6-201.fc32           @updates
kernel-headers.x86_64                          5.8.6-200.fc32           @updates
kernel-modules.x86_64                          5.8.4-200.fc32           @updates
kernel-modules.x86_64                          5.8.6-201.fc32           @updates
kernel-modules-extra.x86_64                    5.8.4-200.fc32           @updates
kernel-modules-extra.x86_64                    5.8.6-201.fc32           @updates

$ ls /boot/ | grep fc32.x86_64
System.map-5.8.4-200.fc32.x86_64
System.map-5.8.6-201.fc32.x86_64
config-5.8.4-200.fc32.x86_64
config-5.8.6-201.fc32.x86_64
initramfs-5.8.4-200.fc32.x86_64.img
initramfs-5.8.6-201.fc32.x86_64.img
vmlinuz-5.8.4-200.fc32.x86_64
vmlinuz-5.8.6-201.fc32.x86_64

$ sudo ls /boot/loader/entries/
af6cee91f78a45979383182dabb25035-0-rescue.conf
af6cee91f78a45979383182dabb25035-5.8.4-200.fc32.x86_64.conf
af6cee91f78a45979383182dabb25035-5.8.6-201.fc32.x86_64.conf

$ sudo grub2-editenv list
saved_entry=af6cee91f78a45979383182dabb25035-5.8.6-201.fc32.x86_64
kernelopts=root=UUID=d3ac0549-0661-4484-a032-47b891c654f0 ro rhgb quiet 
boot_success=1
boot_indeterminate=0

→保持したいカーネル「5.6.6」は残せませんでしたが、不要なカーネルの削除ができました。これは Cinnamon だからできた(行った)こと。

-


まとめ

Fedora Cinnamon は、Fedora のパッケージシステムの使いやすさと、Cinnamon のクールさを持っています。

Fedora では、新しいハードウェアに対応できるように、常にカーネルは最新です。ただ新しすぎる(実績が少ない)ことで(特定のPC で)問題になりやすいので、安全に付き合う方法を考えておく必要があります。

-

Fedora 32 Cinnamon の利点は、「Cinnamon (Software ...)」セッションがあること。

Fedora 32 で新しいカーネルを使うと、自分のPC だと(ハードウェア的に)問題が多く、このセッション(ソフトウェアで置換)があることで汎用PC と同じように、カーネル「 5.7」、「5.8」でも使えます。

Fedora 32(GNOME)の場合は、カーネル「5.6」が残っていなければお手上げになります。(実際に体験

-

-


目次

先頭

-


-

Arch: Manjaro GNOME 20.0.3 にもカーネル置換(5.7)が来ました〈H64〉

登録日: 2020-08-20 更新日: 2020-08-20

「Manjaro Linux GNOME 20.0.3」をUSB メモリにインストール して使用していました。

本日 (2020-08-19) 、Manjaro Cinnamon と同じように「カーネル置換(5.7)」が来ました。

安定動作していた「5.6」が削除されてしまわないように、すぐにシステム更新はキャンセル。 Manjaro Cinnamon と同じように予防対策を取りました。事前に体験していてラッキーでした。

その後のシステム更新で「Manjaro GNOME 20.1」になりました。

-

「目次」

-

Manjaro GNOME のデスクトップ画面:

→シンプルです。壁紙で印象が変わります。

-


本日、「カーネル置換(5.7)」が来ました

-

→「適用」を押すと、カーネル 5.6 が削除され、カーネル 5.7 がインストールされます。

-

カーネル(5.7)は、自分のPC では絶不調でした。使えません。

フォーラム等で問題視されていないので、こちらのPC の固有の問題と思われます。

-

使用しているPC :

古めのPC(Intel Celeron 2955U: 第4世代)です。 Lubuntu のライブUSB にてBIOS 立ち上げをすると、gfxboot で「Graphics initalization failed」になります。 これが原因かはわかりませんが、同じような現象のPC だと発生しそうです。

-


すぐにシステム更新はキャンセル

Manjaro Cinnamon の投稿 でも述べたように、新しいカーネル(5.7) だと自分のPC は絶不調でした。

「Cinnamon (デフォルト)」のセッションでは、デスクトップでの右クリックが表示されません。そしてメインメニューを開こうとしても点滅して正常に表示されませんし、アプリの起動もできません。パネルが使えず、シャットダウンできないので、Ctrl+Alt+F2 でコンソールに切り替えてリブート。

「Cinnamon(Software…)」のセッションでかろうじて使っていました。

GNOME には、Wayland やX11 のセッションはありますが、表示をソフトウェアで代行してくれるセッションはありません。自分のPC だと全滅だと思われます。

-

Fedora 32 では、5.7 に更新されて使えなくなったので、カーネルが安定版のCentOS に乗り換えた経験があります。 Wayland のせいと思っていましたが、そうではなかったみたいですね。

-


まずは、安定動作のカーネル (LTS) をインストール

現在使用している「5.6.19-2」で使っていてもよいのですが、未サポートに変わっています。 サポートの長い「LTS」が推奨されます。

>>> uname -r
5.6.19-2-MANJARO

>>> mhwd-kernel -li
Currently running: 5.6.19-2-MANJARO (linux56)
The following kernels are installed in your system:
   * linux56

-


カーネルのインストール前:

>>> grub-editenv list
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-simple-a0399ae2-cabb-4f68-b133-f1f6fb311e6a

→「menu_auto_hide=1」というのが、立ち上げ時にカーネル選択メニューを表示させない指定のようです。

-

実際の設定ファイル:

>>> cat /boot/grub/grubenv
# GRUB Environment Block
# WARNING: Do not edit this file by tools other than grub-editenv!!!
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-simple-a0399ae2-cabb-4f68-b133-f1f6fb311e6a
#################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################%

→ファイル末の % が気になります。余計な改行が入ったりするのでテキストエディタでいじることは禁止されています。 編集には専用ツールを使います。(ちなみに、featherpad で編集できました)

-


カーネルの管理ツールを試してみました

Windows キー →System Tools →「Manjaro Settings Manager」→「カーネル」をダブルクリック

-

カーネルの一覧表が表示:

→隠れているピンクの文字は「サポートされていません」

-

linux57    Linux 5.7.14-1    ←(更新が来ています)
linux56    Linux 5.6.19-2     (実行中 インストール済み)
linux54    Linux 5.4.57-1    (LTS 推奨)

→linux56 はサポートから外れています。 インストールするなら (LTS 推奨)の「linux54」です。

-

「linux54 Linux 5.4.57-1 」の右にある「インストール」をクリック→「はい」→パスワード入力

→「完了…」表示→「閉じる」

「linux54 Linux 5.4.57-1 」の右に「インストール済み」表示

→「終了」

-


カーネルの確認:

>>> uname -r
5.6.19-2-MANJARO
>>> mhwd-kernel -li
Currently running: 5.6.19-2-MANJARO (linux56)
The following kernels are installed in your system:
   * linux54
   * linux56

→「linux54」が追加されました。

$ yay -Ss linux54
:
core/linux54 5.4.57-1 (82.2 MiB 140.1 MiB) (Installed)
    The Linux54 kernel and modules

-

$ yay -Ss linux56

→「linux56-rt」は表示されますが、「linux56」は表示されなくなっています。

-

再起動

-


電源オンで、カーネル選択メニューが表示されません。

自分のPC では、立ち上げ時にEsc キーを押しても、Manjaro のgrub メニューが白い帯になって選択メニューは表示されません。 Manjaro ではグラフィックメニューを使っている可能性が高いです。つまり、回避策として、古いカーネルを残したとしても、選択できません。

Manjaro セッティングマネージャのカーネルでは、インストールか、削除しかできません。切り替えは、ブート時に選択するしかありません。

-


grub2 の起動メニューを修正します:

  • 注意: grub メニューが表示できるPC なら、下記の操作は要りません。

下記は、メニューを表示できないときに、カーネルを選択する(切替える)ための作業です。

-

参考:

【 grub2-set-default/grub-set-default 】コマンド――GRUB 2のデフォルト起動メニューを設定する

デフォルトの起動メニューの編集コマンドは、CentOS では「grub2-set-default」、 Ubuntu 、またはManjaro では「grub-set-default」です。

-

設定ファイルの場所の確認:

>>> ls /boot/grub/
fonts  grub.cfg  grubenv  i386-pc  themes

>>> ls /etc/grub.d/
00_header  20_linux_xen  30_uefi-firmware  41_custom      README
10_linux   30_os-prober  40_custom     60_memtest86+

>>> ls /etc/grub.cfg
ls: '/etc/grub.cfg' にアクセスできません: そのようなファイルやディレクトリはありません

→リンクはされてません。

-

メニューエントリーを表示:

grepコマンドで、「menuentry」という単語が含まれる部分を検索:

>>> grep -w menuentry /boot/grub/grub.cfg

menuentry 'Manjaro Linux' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-a0399ae2-cabb-4f68-b133-f1f6fb311e6a' {

    menuentry 'Manjaro Linux (Kernel: 5.6.19-2-MANJARO x64)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.6.19-2-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a' {

    menuentry 'Manjaro Linux (Kernel: 5.6.19-2-MANJARO x64 - fallback initramfs)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.6.19-2-MANJARO x64-fallback-a0399ae2-cabb-4f68-b133-f1f6fb311e6a' {

    menuentry 'Manjaro Linux (Kernel: 5.4.57-1-MANJARO x64)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a' {

    menuentry 'Manjaro Linux (Kernel: 5.4.57-1-MANJARO x64 - fallback initramfs)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.57-1-MANJARO x64-fallback-a0399ae2-cabb-4f68-b133-f1f6fb311e6a' {

    menuentry "Memory Tester (memtest86+)" --class memtest86 --class gnu --class tool {

→実際の起動メニューを見ていないので、イメージがわきません。 一番上はタイトル行と思っていましたが、simple というメニュー項目でした。

-

現在の設定を表示:

>>> grub-editenv list
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-simple-a0399ae2-cabb-4f68-b133-f1f6fb311e6a

→saved というのは、一度選択して成功したメニューということみたい。

>>> cat /boot/grub/grubenv
# GRUB Environment Block
# WARNING: Do not edit this file by tools other than grub-editenv!!!
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-simple-a0399ae2-cabb-4f68-b133-f1f6fb311e6a
#################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################% 

-

デフォルトの起動メニューを「5.4.57-1」に設定:

文字列、または、0から始まる番号で指定します。

>>> sudo grub-set-default 'gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a'

→たぶん、これでいいと思うけど、メニュー表示を見たことがないので確かではありません。

追記: 一番上はタイトル行と思っていましたが、simple というメニュー項目でした。 番号指定なら「3」が正解だと思われます。未確認。

-

設定した内容を表示:

>>> grub-editenv list
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a

-

実際の設定ファイル:

>>> cat /boot/grub/grubenv
# GRUB Environment Block
# WARNING: Do not edit this file by tools other than grub-editenv!!!
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a
##########################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################%

→Cinnamon で動いたときとは、文字列が少ないように感じます。 最後の % も気になります。この辺りはいじってはいけない部分。

-

再起動

デスクトップ画面が立ち上がりました。

>>> uname -r
5.6.19-2-MANJARO

→ありゃりゃ、カーネルは切り替わらずにそのままです。 エラーせずに立ち上がったのでラッキーでした。

設定ファイルの修正、やり直し:

Cinnamon を参考に、呪文が長くなりました。

>>> sudo grub-set-default 'gnulinux-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a>gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a'

-

現在の設定を表示:

>>> grub-editenv list
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a>gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a

-

実際の設定ファイル:

>>> cat /boot/grub/grubenv
# GRUB Environment Block
# WARNING: Do not edit this file by tools other than grub-editenv!!!
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a>gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a
###################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################%

-

再起動

デスクトップ画面が立ち上がりました。

-


安定版のカーネル(5.4) での稼働:

>>> uname -r
5.4.57-1-MANJARO

>>> mhwd-kernel -li
Currently running: 5.4.57-1-MANJARO (linux54)
The following kernels are installed in your system:
   * linux54
   * linux56

→安定動作のカーネルが2つになりました。

-

-

grub メニューのデフォルト設定の確認:

>>> grub-editenv list
menu_auto_hide=1
boot_success=1
saved_entry=gnulinux-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a>gnulinux-5.4.57-1-MANJARO x64-advanced-a0399ae2-cabb-4f68-b133-f1f6fb311e6a

→これを控えておけば OK です。

-


カーネルが置換されないように、アップグレード対象からパッケージを除外:

/etc/pacman.conf にて、IgnorePkg=[パッケージ名] を指定します。複数行の指定が可能。

パッケージ名の確認:

>>> yay -Ss linux54
:
core/linux54 5.4.57-1 (82.2 MiB 140.1 MiB) (Installed)
    The Linux54 kernel and modules

-

>>> yay -Ss linux56

→リモートリポジトリには「linux56-rt」はありますが、「linux56」はありません。削除されたみたい。 ローカルに保存された(インストールされている)分しか存在しません。つまり、未サポート。再インストールできません。

-

pacman.conf の修正:

>>> sudo gedit /etc/pacman.conf

「IgnorePkg」で検索

28 行目:

#IgnorePkg   =

↓ 2行を追記:

#IgnorePkg   =
IgnorePkg    = linux54
IgnorePkg    = linux56

カーネル更新したくない場合、両方指定しておけばいいかな。スペース区切りで 1行にまとめてもいいみたい。

-

念の為、再起動:

-

同期とシステム更新:

>>> sudo pacman -Syyu

[sudo] USER_NAME のパスワード:
:: パッケージデータベースの同期中...
 core                  168.7 KiB  84.8 KiB/s 00:02 [######################] 100%
 extra                2000.2 KiB   205 KiB/s 00:10 [######################] 100%
 community               6.1 MiB   321 KiB/s 00:19 [######################] 100%
エラー: ファイル 'multilib.db' を mirrors.piconets.webwerks.in から取得するのに失敗しました : The requested URL returned error: 500
 multilib              195.2 KiB   333 KiB/s 00:01 [######################] 100%
:: システム全体の更新を開始...

警告: パッケージの置き換えを無視 (linux56-5.6.19-2 => linux-latest-5.7-2)  ←(注目)

依存関係を解決しています...
衝突するパッケージがないか確認しています...

パッケージ (170) apache-2.4.43-2  attica-5.73.0-1  ca-certificates-20181109-4
                 ca-certificates-mozilla-3.55-2
:
                 x264-3:0.160.r3011.cde9a93-1  xxhash-0.8.0-1  yay-10.0.3-3
                 zenity-3.32.0+50+gc229637-1

合計ダウンロード容量:   498.25 MiB
合計インストール容量:  2166.34 MiB
最終的なアップグレード容量:    21.85 MiB

:: インストールを行いますか? [Y/n] Y

→linux56 の置換が阻止されました。

-

通常の同期はこちらを使っています:

>>> yay

[sudo] ubn のパスワード:
:: パッケージデータベースの同期中...
 core は最新です
 extra は最新です
 community は最新です
 multilib は最新です
:: システム全体の更新を開始...
警告: パッケージの置き換えを無視 (linux56-5.6.19-2 => linux-latest-5.7-2) ←(注目)
 何も行うことがありません
:: データベースからアップデートを検索...
:: AUR からアップデートを検索...
 -> ignoring package replacement (linux56-5.6.19-2 => linux-latest-5.7-2) ←(注目)
 何もすることがありません

→linux56 の置換が阻止されました。

-

再起動

-


システム更新により「Manjaro GNOME 20.1」になりました

→通常と変わらずに動いています。

>>> cat /etc/lsb-release
DISTRIB_ID=ManjaroLinux
DISTRIB_RELEASE=20.1
DISTRIB_CODENAME=Mikah
DISTRIB_DESCRIPTION="Manjaro Linux"

>>> uname -r
5.4.57-1-MANJARO

カーネルはインストール時よりも低くなってしまいましたが、サポートが長いので良しとしましょう。

-


まとめ

安定動作のカーネル (LTS) をインストールして、そのカーネルが更新されないように設定しました。 カーネルを最も新しい「LTS」バージョンにしておけば、問題は少ないと思います。(5.4 は少し古いかな…)

設定によりカーネルが置換されないので、気にせずにシステム更新やアプリのインストールを実行できます。

-

新しいデバイスを使わないかぎり、カーネルをひんぱんに更新する必要はないようです。 ただし、Virtalbox 関連を使いたいときは、依存の関連で問題があるかもしれません。

対策しておかないと、しつこく置換を聞いてきます。気をつけていてもすぐに置換されてしまいます。 ほとんどの方には関係ないだろうけど、こちらのPC では致命的でした。

すでに5.8 が発行されているようです。これだと問題が解決するのかな。

-

-


目次

先頭

-


-

Arch: Manjaro Cinnamon 20.1 をUSB メモリにインストール〈H63〉

登録日: 2020-08-19 更新日: 2020-08-20

Manjaro Linux の、コミュニティ版である「Manjaro Cinnamon 20.0.3」をUSB メモリにインストールしました。 ローリングリリースにつき、インストール後の更新で「Manjaro Cinnamon 20.1」になりました。 ダウンロードイメージはまだ公開されていないようです。

-

今までGNOMEFedora 32、CentOS 8.2、Manjaro GNOME 20.0.3)を使っていました。 GNOME では色々な問題があって、違うデスクトップ環境を試して見たくなったわけです。

-

「目次」

-

Manjaro Cinnamon のデスクトップ画面:

→いたってシンプルです。

-


特定のPC に影響する問題がありました

→ほとんどの人には関係なく、古めのPC で発生すると思われます。 他の Manjaro のフレーバーでも「linux-latest」へのカーネル置換が来たら、更新をしばらく待って、予防策をとってから更新すると安心です。

Manjaro の場合は、カーネルが置換され、今まで安定して動作していたカーネルはすぐ「削除」されます。

-

最新カーネル(5.7) への更新

カーネルは更新せずに、しばらくは安定するまで置いておくつもりでした。

ところが、「kolourpaint」アプリをGUI でインストールしたら、「community/linux-latest」が混ざっていてインストールされ、以前の安定していたカーネルは削除、新しいカーネル「5.7.14-1」に変わってしまいました。気をつけていましたが、予防策をとっていなかったのは失敗でした。

-

この新しいカーネル(5.7) は自分のPC では絶不調です。

「Cinnamon (デフォルト)」のセッションでは、デスクトップでの右クリックが表示されません。 メインメニューを開くと点滅して正常に表示しきれません。アプリの起動もできません。 パネル操作ができないのでシャットダウンができません。Ctrl+Alt+F2 でコンソールに入り、再起動。

「Cinnamon(Software…)」のセッションだと使えたので、助かりました。 ハード対応しきれない部分をソフトウェアで表示してくれているようです。そのせいで遅くなります。

-

こちらのPC の固有の問題かも

フォーラムで、カーネル5.7 の話題がないので、こちらのPC の固有の問題のようです。

Lubuntu のライブUSB にて、BIOS 立ち上げ (gfxboot) で「Graphics initalization failed」になる古めのPC です。 (Intel Celeron 2955U: 第4世代)

もしかしたら、そのようなPC であれば発生する人がいるかもしれません。

-

このPC にはもうひとつ問題があって、grub メニューが表示しきれません。

立ち上げ時にEsc キーを押して、grub メニューを表示させようとすると、画面上部に1cm ほどのまだらな白い帯が表示されてメニューは表示されません。矢印キーを押すと模様が変化するので、たぶん、Manjaro のgrub メニューは「グラフィック」モードを使っていると思われます。

これだと、Manjaro セッティングマネージャの「カーネル」設定で、新しいカーネルに備えて古いカーネルを残していても、 PC によっては、起動メニューが表示されずカーネルが選択できません。

Fedora 32 やCentOS 8.2 ではgrub メニューが表示できているので、見た目よりも確実に表示されるようにしてほしいところです。

-

更新前:

$ uname -r
5.6.15-1-MANJARO

現在:

$ yay -Ss linux-latest
:
community/linux-latest 5.7-2 (6.1 KiB 0.0 B) (インストール済み)
    The latest kernel and modules (metapackage)

$ uname -r
5.7.14-1-MANJARO

バージョン: 5.7-2 のインストールで、5.7.14-1 になっていますが、 PKGBUILD を登録したときのバージョンだと思います。 カーネルなのに、リポジトリは core でなく、community 扱い?です。

-

ちなみに、Manjaro GNOME だと:

>>> yay -Ss linux5
:
core/linux56 5.6.19-2 (83.9 MiB 144.9 MiB) (Installed)
    The Linux56 kernel and modules

>>> uname -r                                                                 
5.6.19-2-MANJARO

→こちらは、一足飛びに5.7 に飛ばずに、5.6 のままでアップしています。

-

追記:

2020-08-19

Manjaro GNOME にも「linux-latest 5.7-2」の更新が来ました。

更新せずに、こちらの記述を参考に、linux56 の更新を禁止しました。linux54 (LTS) で運用。

前もって試行できていたので、ラッキーでした。知らないで実行していたら、たぶん、自分のPC だと、GNOME のすべてのセッションが使えなくなったと思われます。

-

Manjaro であっても、Fedora 32 のように、最新カーネルに対する予防策が必要

後半に続く…

-


Manjaro Cinnamon 20.0.3 のインストール

-


公式サイト

Manjaro 公式サイト

Manjaro wiki

-


コミュニティ版

サポート対象外ですが、コミュニティ版の魅力は、好みのデスクトップ環境が選べることです。

コミュニティ版のダウンロード:

Manjaro-Downloads にて、右上の「横三本」をクリック →Editions→Community

-


Manjaro Cinnamon 20.0.3 のダウンロード

ローリングリリース なので、基本的にはどの段階でも更新すれば最新になります。更新が少なくて済む、最新の状態のイメージを入手するなら、下記を参照。

「ここ」 から、最新の「.iso」ファイルと「.iso.sha256」ファイルをダウンロードできます。

-

今回使ったイメージ:

manjaro-cinnamon-20.0.3-200606-linux56.iso 2020-06-07

チェックサムの確認: (うまくダウンロードできたかの確認)

$ sha256sum manjaro-cinnamon-20.0.3-200606-linux56.iso
a8272c9d0d8077913378378dbebf3af76f9cd5f71e44545e52242d1dd449cfd0  manjaro-cinnamon-20.0.3-200606-linux56.iso

→ダウンロードする「.iso」ファイルごとに値は変わるので、「.iso.sha256」で確認します。

-


インストール

インストーラーは、Debian でも使われている、定番の Calamares です。

他のフレーバーは、インストールの途中で、「LibreOffice」または「FreeOffice」を選択できたのですが、それはありません。Cinnamon だけなのかは不明。

FreeOffice 」は、ツールバー形式だけでなく、リボン形式のメニューバーが使えるみたい。ただし、信頼性とか ODF化 を求めるなら「LibreOffice」が無難です。

-


1. ライブUSB メモリでブートすると、すぐに、テキストベースの「Welcome to Manjaro」画面が表示されます。

- Keytable = jp
- lang = 日本語 → ja_JP

としてから、 Boot: を選んで、Enter キー

-


2. デスクトップ画面が表示されます。

「Manjaro へようこそ!」画面が表示されます。 →ブート時の設定で日本語化されています。 もし、日本語の設定を忘れていたら、ウィンドウの左上で「Japanese」を設定すると日本語化されます。

-

その上にパネルの選択画面が表示されます。

→右上の「x」で2つとも閉じました。

-


3. インストール中にサスペンドして中断されないように変更しないと、 画面のオフの解除にいちいちパスワード「manjaro」の入力が必要なものがありますが、

こちらは、ブランク画面になりますが、ロックされません。 なので、設定は要りません。

-


4. Cinnamon 20.0.3 では、このままインストーラーを起動すると、 日本語文字が表示されず英語のみの歯抜けの表示になりました。

-


5. パネル →「端末」アイコンで、端末を起動。

  • 仮の日本語フォント(さざなみフォント)をインストール:
$ sudo pacman -Sy ttf-sazanami

→「S」は大文字です。 2度ほど Y を入力。

もし、リポジトリの同期に失敗するようなら、ミラーの状態状態がよくありません。再起動することでミラーが変更されるので、そこからやり直します。

インストールで、メニューや「Manjaro へようこそ!」で使われている日本語が細めのフォントに変化。きれいなフォントではありませんが、読めます。

-


6. インストール先となるUSB メモリ(fat32 で初期化済)を挿入。

ファイルマネージャが開くので、右上の「x」で閉じます。

  • インストーラで、USB メモリが認識されなかったり、置換メニューが表示されないときがあったので、ライブ立ち上げしてから再度、確認しました。

メニュー →ユーティリティ →「ディスク」 →パーティション情報の画面が表示されます。

セットしたUSB メモリのデバイス名(例. /dev/sdc)を選択。メーカー名とか容量で判断。

 「■」をクリックして、アンマウント。アンマウントで「▶」に変わります。

もし、root のパスワードを聞いてきたときは、ライブ立ち上げの場合は「manjaro」です。

-

もし、ライブUSB でインストール先のUSB メモリを fat32 で初期化したのなら、インストーラーが起動できません。ライブUSB の再起動が必要です。

-


7. デスクトップにある「インストーラー」アイコンをダブルクリック。日本語がちゃんと表示されています。

-


8. ようこそ:

「日本語」が自動セットされるまで待ちます。

→「次へ」

-


9. ロケーション:

地域: Asia、ゾーン: Tokyo (地図で日本をクリックしても設定されます)

→「次へ」

-


10. キーボード:

キーボードモデル: Generic 105-key PC (intel.) Japanese、デフォルト

「ここでタイプしてキーボードをテストしてください」→ @@ で確認。

-


11. パーティション:

-

現在:「fat32 パーティション」の部分をクリック。
↓
後:「Manjaro 29.0 GiB ext4」が赤く表示。

-


12. ユーザ情報:

任意設定

管理者パスワードは入力するか、または、「管理者アカウントと同じ」にチェック。

→「次へ」

-


13. Office Suite:

→ここの選択はありませんでした。

-


14. 要約:

  • 今までに設定した内容を確認。

画面に入りきれてないメッセージがあります。スクロールさせます。

「/dev/sdc にブートローダーをインストール」になっていることを確認。←(重要)

→「インストール」 →「今すぐインストール」

インストールが開始されます。

-

→「すべて完了しました。」表示。

→「実行」 →「インストーラー」のウィンドウが閉じます。

-


15. シャットダウン

メニュー →終了 →シャットダウン

もしくは、右下の人形 →電源オフ… →シャットダウン

電源が落ちたら、ライブUSB メモリだけ抜きます。

-


インストールしたUSB メモリで起動

電源オン。

ログイン画面にて、パスワード入力。

-

デスクトップ画面が表示:

→すぐに、「Manjaro へようこそ!」画面と、パネル形式の選択画面が表示されます。

パネルは、tradisional を選びました。

→一番下の「Applications」からは、定番のアプリのインストールが簡単にできます。

-

-


端末: Terminal

端末は「GNOME 端末」です。

パネル →「端末」アイコン

端末で表示される文字のフォントを指定。

メニュー →設定 →「名前なし」タブ→「文字」タブ

「フォントを指定」にチェック。 「Droid Sans Mono Regular 11」 →好みのフォントと、文字サイズを選択。

$ cat /etc/lsb-release
DISTRIB_ID=ManjaroLinux
DISTRIB_RELEASE=20.0.3
DISTRIB_CODENAME=Lysia
DISTRIB_DESCRIPTION="Manjaro Linux"

$ uname -r
5.6.15-1-MANJARO

-


テキストエディタ

「xed」です。

テーマである、色のスキーム(XMLファイル)をどこにでも置けて、追加できます。

-


ファイルマネージャ

「nemo」です。

パネル →「Nemo」アイコン

右クリックで、端末を開いたり、root 管理者で開いたりできます。便利。

-


ブラウザ

定番の「firefox」です。

-


システム更新

画面 右下の「盾」アイコンの中が「i」になり、青い点が付くと、システム更新(アップデート)があることを示します。クリックで開いて好きな時点でシステム更新を行えます。

気が付くと青い点が点いていました。

システム更新が多いようなので、先に下記の「ミラーサーバの見直し」をやりました。

-


ミラーサーバの見直し

ミラーは、本家の近くに設定されていて、日本より安定していることが多いのですが、Manjaro は負荷分散か、遠くて遅い国に設定されることが多いです。

なので、デフォルトの設定だと、システム更新時のリポジトリの更新がやけに遅かったりします。デフォルトのミラーは固定ではなく、ライブUSB の起動のときに決まるようです。

参考:

Manjaro Pacman-mirrorsコマンドによるミラーサーバーリストの更新

pacman はシステムの更新やソフトウェアをダウンロードするのにミラーサーバを使います。そのサーバの選択に Mirrorlist(/etc/pacman.d/mirrorlist)ファイルが使われています。

下記のコマンドの実行により、自動的に利用可能な全てのミラーサーバをチェックして、「/etc/pacman.d/mirrorlist」を速いサーバから順に更新します。

住んでいる地域とか時間帯によって結果は大きく変わるので、よく利用する曜日と時間帯に実行するのがオススメです。

-


1. 現在のMirrorlist を確認:

$ cat /etc/pacman.d/mirrorlist

##
## Manjaro Linux default mirrorlist
## Generated on 2020-08-17 07:09
##
## Please use 'pacman-mirrors -f [NUMBER] [NUMBER]' to modify mirrorlist
## (Use 0 for all mirrors)
##

## Country : India
Server = https://mirrors.piconets.webwerks.in/manjaro-mirror/stable/$repo/$arch

## Country : France
Server = https://manjaro.mcofficer.me/stable/$repo/$arch

## Country : Italy
Server = https://manjaro.mirror.garr.it/manjaro/stable/$repo/$arch

→設定されていた国がデフォルトとは決まっておらず、違う日にインストールすると、違う国になりました。

ライブ立ち上げで、リポジトリの同期をとったとき、遅かったり失敗するときは、再起動すれば速くなる可能性があります。

-


2. Mirrorlistの更新:

$ sudo pacman-mirrors --fasttrack && sudo pacman -Syy

↓ 表示されるメッセージ(一部省略):

::INFO Downloading mirrors from repo.manjaro.org
::INFO Using default mirror file
::INFO Querying mirrors - This may take some time
  0.953 Singapore      : https://download.nus.edu.sg/mirror/manjaro/
  1.229 United_States  : https://mirrors.ocf.berkeley.edu/manjaro/
  2.436 Germany        : https://manjaro.moson.eu/
  1.673 Germany        : http://manjaro.moson.eu/
  1.129 Indonesia      : http://kartolo.sby.datautama.net.id/manjaro/
  2.780 Iceland        : https://mirrors.opensource.is/manjaro/
  1.970 Iceland        : http://mirrors.opensource.is/manjaro/
  ..... Iceland        : ftp://mirrors.opensource.is/manjaro/

::ERROR ftp error: error_perm('550 Failed to change directory.') 'ftp://mirrors.opensource.is/manjaro/'

  3.458 Netherlands    : https://ftp.nluug.nl/pub/os/Linux/distr/manjaro/
  ..... Netherlands    : ftp://ftp.nluug.nl/pub/os/Linux/distr/manjaro/
  0.216 Japan          : http://ftp.riken.jp/Linux/manjaro/
  ..... Japan          : ftp://ftp.riken.jp/Linux/manjaro/
:

::INFO Writing mirror list
::Japan           : http://ftp.tsukuba.wide.ad.jp/Linux/manjaro/stable
::South_Korea     : https://mirror.d-tl.com/manjaro/stable
::China           : https://mirrors.aliyun.com/manjaro/stable
::United_States   : https://us.mirrors.fossho.st/manjaro/stable
::Singapore       : https://download.nus.edu.sg/mirror/manjaro/stable
::United_States   : https://mirrors.gigenet.com/manjaro/stable
::Taiwan          : http://free.nchc.org.tw/manjaro/stable
::China           : https://mirrors.ustc.edu.cn/manjaro/stable
::China           : https://mirrors.tuna.tsinghua.edu.cn/manjaro/stable
::Indonesia       : https://mirror.deace.id/manjaro/stable
::Indonesia       : http://kartolo.sby.datautama.net.id/manjaro/stable
::India           : https://mirrors.piconets.webwerks.in/manjaro-mirror/stable
::United_States   : https://mirrors.ocf.berkeley.edu/manjaro/stable
:

::INFO Mirror list generated and saved to: /etc/pacman.d/mirrorlist
[sudo] USER_NAME のパスワード:              ←(聞いてくるときと、聞いてこないときがありました)
:: パッケージデータベースの同期中...
  core                  168.7 KiB  2033 KiB/s 00:00 [######################] 100%
 extra                2000.2 KiB  8.88 MiB/s 00:00 [######################] 100%
 community               6.1 MiB  7.55 MiB/s 00:01 [######################] 100%
 multilib              195.2 KiB  3.35 MiB/s 00:00 [######################] 100%

→数字が小さい方が速く、「.....」は通信不可みたい。自分のよく使用する曜日とか、時間とかに、実施するのがポイント。

-


3. Mirrorlist の修正:

リストが長いので、速い 5件だけにしました。修正せず、そのままでもかまいません。

$ sudo xed /etc/pacman.d/mirrorlist
[sudo] USER_NAME のパスワード:

↓ 修正後の内容:

$ cat /etc/pacman.d/mirrorlist

##
## Manjaro Linux default mirrorlist
## Generated on 2020-08-17 18:23
##
## Please use 'pacman-mirrors -f [NUMBER] [NUMBER]' to modify mirrorlist
## (Use 0 for all mirrors)
##

## Country : Japan
Server = http://ftp.tsukuba.wide.ad.jp/Linux/manjaro/stable/$repo/$arch

## Country : South_Korea
Server = https://mirror.d-tl.com/manjaro/stable/$repo/$arch

## Country : United_States
Server = https://us.mirrors.fossho.st/manjaro/stable/$repo/$arch

## Country : Singapore
Server = https://download.nus.edu.sg/mirror/manjaro/stable/$repo/$arch

## Country : Taiwan
Server = http://free.nchc.org.tw/manjaro/stable/$repo/$arch

→日本のミラーであっても、遅いと登録されません。

-


4. システムのデータベースとManjaro リポジトリ(Manjaro サーバ)を同期:

$ sudo pacman -Syyu

:: パッケージデータベースの同期中...
 core                  168.7 KiB  2.17 MiB/s 00:00 [######################] 100%
 extra                2000.2 KiB  9.62 MiB/s 00:00 [######################] 100%
 community               6.1 MiB  7.30 MiB/s 00:01 [######################] 100%
 multilib              195.2 KiB  3.81 MiB/s 00:00 [######################] 100%
:: Some packages should be upgraded first...
依存関係を解決しています...
衝突するパッケージがないか確認しています...

パッケージ (2) archlinux-keyring-20200622-1  manjaro-system-20200723-1

合計ダウンロード容量:  0.89 MiB
合計インストール容量:  1.24 MiB
最終的なアップグレード容量:  0.01 MiB

:: インストールを行いますか? [Y/n] Y

:: パッケージを取得します...
 archlinux-keyrin...   898.2 KiB  3.75 MiB/s 00:00 [######################] 100%
 manjaro-system-2...     9.7 KiB  2.36 MiB/s 00:00 [######################] 100%
(2/2) キーリングのキーを確認                       [######################] 100%
(2/2) パッケージの整合性をチェック                 [######################] 100%
(2/2) パッケージファイルのロード                   [######################] 100%
(2/2) ファイルの衝突をチェック                     [######################] 100%
(2/2) 空き容量を確認                               [######################] 100%
:: パッケージの変更を処理しています...
(1/2) 更新 archlinux-keyring                       [######################] 100%
==> archlinux.gpg からキーを追加...
==> キーリングの信頼されたキーに署名...
  -> キーに署名 D8AFDDA07A5B6EDFA7D8CCDAD6D055F927843F1C...
:
  -> キーに署名 AB19265E5D7D20687D303246BA1DFB64FFF979E7...
==> 所有者信頼値をインポート...
==> キーリングの破棄されたキーを無効化...
  -> キー 8F76BEEA0289F9E1D3E229C05F946DED983D4366 を無効化...
:
  -> キー 44D4A033AC140143927397D47EFD567D4C7EA887 を無効化...
==> 信用データベースを更新...
gpg: 次回の信用データベース検査は、2020-10-17です
(2/2) 更新 manjaro-system                          [######################] 100%
:: トランザクション後のフックを実行...
(1/1) Arming ConditionNeedsUpdate...

:: システム全体の更新を開始...

:: intel-tbb を extra/tbb に置き換えますか? [Y/n] n
:: linux56 を community/linux-latest に置き換えますか? [Y/n]  n

依存関係を解決しています...
衝突するパッケージがないか確認しています...
:: tbb と intel-tbb が衝突しています。intel-tbb を削除しますか? [y/N] N
エラー: 解決できないパッケージの衝突が検出されました
エラー: 処理の準備に失敗しました (衝突する依存関係)
:: tbb と intel-tbb が衝突しています
$ 

intel-tbb を置換しないと、前には進まないみたい。

-

参考:

intel-tbb を extra/tbb に置き換えますか? [Y/n]

intel-tbb (Intel Threading Building Blocks) は、インテルが公開しているマルチスレッド対応のC++テンプレートライブラリです。マルチCPU・マルチコアCPUなどを搭載したコンピュータ上でアプリケーションを効率よく動作させることができます。

これを互換 TBB に交換するということみたい。各システムで環境は異なるので、安定しているかは使ってみないとわからないと思います。

-

linux56 を community/linux-latest に置き換えますか? [Y/n]

カーネルが最新の「5.7」にアップされます。以前のカーネルは(安定していたとしても)削除されます。

→追記: 自分のPC では致命的でした。

-


同期とシステム更新のやり直し:

$ sudo pacman -Syyu
[sudo] ubn のパスワード:
:: パッケージデータベースの同期中...
 core                  168.7 KiB  1939 KiB/s 00:00 [######################] 100%
 extra                2000.2 KiB  8.88 MiB/s 00:00 [######################] 100%
 community               6.1 MiB  4.00 MiB/s 00:02 [######################] 100%
 multilib              195.2 KiB  1877 KiB/s 00:00 [######################] 100%
:: システム全体の更新を開始...
:: intel-tbb を extra/tbb に置き換えますか? [Y/n] Y
:: linux56 を community/linux-latest に置き換えますか? [Y/n] n

依存関係を解決しています...
衝突するパッケージがないか確認しています...
警告: 循環依存が検出されました:
警告: bashrc-manjaro は依存パッケージ bash の前にインストールされます
警告: 循環依存が検出されました:
警告: libglvnd は依存パッケージ mesa の前にインストールされます
警告: 循環依存が検出されました:
警告: usbmuxd は依存パッケージ libimobiledevice の前にインストールされます
警告: 循環依存が検出されました:
警告: lib32-mesa は依存パッケージ lib32-libglvnd の前にインストールされます

パッケージ (381) acpid-2.0.32-2  alsa-lib-1.2.3.2-1  alsa-topology-conf-1.2.3-1
:
                 xxhash-0.8.0-1  yay-10.0.3-3  zbar-0.23.1-2
                 zenity-3.32.0+50+gc229637-1  zeromq-4.3.2-2

合計ダウンロード容量:   825.77 MiB
合計インストール容量:  3445.80 MiB
最終的なアップグレード容量:    91.89 MiB

:: インストールを行いますか? [Y/n] Y

再起動。

-


使用中のカーネルの確認:

$ uname -r
5.6.15-1-MANJARO
$ mhwd-kernel -li
Currently running: 5.6.15-1-MANJARO (linux56)
The following kernels are installed in your system:
   * linux56

→前のカーネルも残っている場合は、ここに一覧として表示されます。

-


通常なら、システム更新は、「pamac-manager」 に任せます

  • ただし、カーネル更新をしないつもりなら、GUI 操作は避けたほうが無難です。しつこいくらいに最新カーネルのインストールが混ざっています。インストールされると、以前のカーネルは削除されます。つまり、置換されます。

-

依存関係には削除する順番があるので注意です。

画面右下のパネルの「盾」アイコンをクリックで、「Pamac」マネージャが開きます。

もしくは、メニュー →システム管理 →「ソフトウェアの追加と削除」(pamac-manager)

-

「アップデート」タブをクリック

お使いのシステムは最新です

「Pamac」マネージャで、右上の「3つの tate no 点」アイコンをクリック→「データベースをアップデートする」→パスワード入力 にて、リポジトリとデータベースを同期できます。

  • core
  • extra
  • community
  • multilib

-

「アップデート」タブにて、

「キャンセル」をクリック

今回は「適用」をクリックしてはいけません。

お使いのシステムは最新です

-


「yay」をインストール

Arch Linux にはコミュニティで作られた(まだ、リポジトリに登録されるまでに信用されていない?)ソフトのインストールを支援するツールがあります。ユーザが作ったスクリプト(PKGBUILD)に従い、インストールを行うツールで、「AUR ヘルパー」と呼ばれます。

「yay」は、AUR ヘルパーで、通常はインストールすることで使えます。公式リポジトリも扱えるように、pacman も内部から起動され、コマンドを統一できます。アプリのインストールで、sudo をつける必要もありません。go 言語で書かれたみたいです。

ちなみに、「AUR」リポジトリから信用を得て昇進すると、公式リポジトリの「community」リポジトリに登録され、pacman でインストールできるアプリ(パッケージ)になります。

確認:

$ yay --version
yay v10.0.3 - libalpm v12.0.2

-

$ pacman -Ss yay
:
community/yay 10.0.3-3 [インストール済み]
    Yet another yogurt. Pacman wrapper and AUR helper written in go.

-

$ yay -Ss yay
:
aur/yay 10.0.3-1 (+1203 66.74) (インストール済み: 10.0.3-3)
    Yet another yogurt. Pacman wrapper and AUR helper written in go.
community/yay 10.0.3-3 (2.6 MiB 8.6 MiB) (インストール済み)
    Yet another yogurt. Pacman wrapper and AUR helper written in go.

→インストール済みです。

-


「yay」でシステム更新

$ yay

[sudo] ubn のパスワード:
:: パッケージデータベースの同期中...
 core は最新です
 extra は最新です
 community は最新です
 multilib は最新です
:: システム全体の更新を開始...

:: linux56 を community/linux-latest に置き換えますか? [Y/n] n
 何も行うことがありません
:: データベースからアップデートを検索...
:: AUR からアップデートを検索...

 -> 存在しない AUR パッケージ:  linux56  xorg-font-utils  xorg-fonts-alias
 何もすることがありません

→linux56 はすでにリポジトリにはないみたい。

画面右下のパネルの「盾」アイコンをクリックで、「Pamac」マネージャが開きます。

もしくは、メニュー →システム管理 →「ソフトウェアの追加と削除」(pamac-manager)

「インストール済み」タブをクリック

左側の「孤立したパッケージ」をクリック

python-pytoml 0.1.21-4
xorg-font-utils 7.6-6
xorg-fonts-alias 1.0.3-3

xorg-font-utils xorg-fonts-alias をクリックして、「適用」をクリック

→削除しました。

-

$ yay
[sudo] ubn のパスワード:
:: パッケージデータベースの同期中...
 core は最新です
 extra は最新です
 community は最新です
 multilib は最新です
:: システム全体の更新を開始...
:: linux56 を community/linux-latest に置き換えますか? [Y/n] n
 何も行うことがありません
:: データベースからアップデートを検索...
:: AUR からアップデートを検索...
 -> 存在しない AUR パッケージ:  linux56
 何もすることがありません

→これは気をつけないと、 Enter で Y を入力したことになるので危ないですね。

ちなみに、linux56 はリポジトリから削除されているようです。

-


便利な「System Tools」をインストール

本来は、GUI で簡単にアプリをインストールできるのですが、 今回は、GUI ツールを使うと、どうしてもカーネルを最新にしようとするので、使用を断念しました。

代わりに yay コマンドでインストールしました。

$ yay -Ss isousb
:
aur/isousb 1.5-1 (+22 0.29) 
    A graphical tool to copy a hybrid ISO onto a USB key.
community/isousb 1.5-3 (9.2 KiB 29.0 KiB) 
    A graphical tool to copy a hybrid ISO onto a USB key.

$ yay -S isousb
:
パッケージ (1) isousb-1.5-3

-

$ yay -Ss Mintstick
aur/mintstick 1.4.4-1 (+11 1.18) 
    A GUI to write .img or .iso files to a USB Key. It can also format them
aur/mintstick-git r198.09aa95f-1 (+22 0.06) 
    Format or write images to usb-sticks (Linux Mint tool)
community/mintstick 1.4.2-1 (20.6 KiB 112.5 KiB) 
    Format or write images to usb-sticks (Linux Mint tool)

$ yay -S mintstick
:
パッケージ (2) python-pyparted-3.11.1-4  mintstick-1.4.2-1

-


本来の GUI で操作するとき:

メニュー →システム管理 →「Manjaro Hello 」→「Manjaro へようこそ!」画面 画面下の「Applications」をクリック→アプリの一覧画面が表示

左上の「advanced」をクリック 「System Tools」の左の▶をクリック

表示された一覧から、「IsoUSB」、「Mintstick」にチェックして、画面右上の「UPDATE SYSTEM」をクリック。 →パスワード入力→インストールされる一覧が表示→「適用」

  • 「USB イメージライタ」

メニュー→アクセサリ→「USB イメージライタ」 →ISO イメージをUSB メモリに展開できます。

  • 「USB メモリフォーマッタ」

メニュー→アクセサリ→「USB メモリフォーマッタ」 →USB メモリをフォーマット(Fat32NTFSExt4)できます。全面初期化指定も可能です。 USB メモリ限定なので、「ディスク」や「gparted」よりも安全です。

-


一覧にないアプリを探すとき

[Pamac] マネージャでManjaro リポジトリに登録されているアプリのインストールが可能です。

画面右下のパネルの「盾」アイコンをクリックで、「Pamac」マネージャが開きます。 もしくは、メニュー →その他 →「ソフトウェアの追加と削除」

カテゴリでの検索だけでなく、左上の虫眼鏡にて、アプリ名を入力しての検索ができます。

例え、これをインストールに使わないとしても、パッケージ名を検索したいときは便利です。

-


VScode をインストール

$ yay -Ss vscode
:
community/code 1.47.3-1 (9.8 MiB 73.9 MiB) 
    The Open Source build of Visual Studio Code (vscode) editor

$ yay -S code
:
パッケージ (5) c-ares-1.16.1-1  electron7-7.1.14-7  http-parser-2.9.4-1
               ripgrep-12.1.1-1  code-1.47.3-1

-

VScode の日本語化の手順:

CentOS 8.2 のGNOMEPython 学習環境をインストール〈H83〉より、

Visual Studio Code の日本語化:

-

Python 拡張機能」のインストール:

Python のプログラムを作らないのなら、ここの作業は要りません。

VScode をダウンロードしてのインストールと違って、上記の参考の手順みたいに親切な動きはありません。

-

Python 拡張の設定値を事前に確認:

-

$ python3 --version
Python 3.8.5

$ python --version
Python 3.8.5

$ python
Python 3.8.5 (default, Jul 27 2020, 08:42:51) 
[GCC 10.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

$ whereis python
python: /usr/bin/python2.7-config /usr/bin/python3.8-config /usr/bin/python3.8 /usr/bin/python /usr/bin/python2.7 /usr/lib/python3.8 /usr/lib/python2.7 /usr/include/python3.8 /usr/include/python2.7 /usr/share/man/man1/python.1.gz

$ /usr/bin/python3.8 --version
Python 3.8.5

→「/usr/bin/python3.8」または、「/usr/bin/python

-

事前にpython プログラムファイルを作成:
$ echo 'print("Hello world!")'  > ~/ドキュメント/hello.py

$ cat ~/ドキュメント/hello.py
print("Hello world!")

→「~/ドキュメント/hello.py」

-

手順:

日本語化が完了したら、

  • 左の「四角い荷物」アイコン(拡張機能)をクリック

python」で検索→一番上の「Python」をクリック→「Microsoft」であることを確認して、「Install」をクリック

インストールが完了すると、「Python-Get Started」タブが開くのでタブの「x」で閉じます。

→ウィンドウの左下に「Python 3.8.5 64-bit 」が表示されました。 もし変更したいときは、ここをクリックすると、選べます。

  • 左上の「フォルダ」アイコンをクリック

「ドキュメント」フォルダの「hello.py」ファイルをクリック

右下に「Linter pylint is not installed.」のダイアログが開くので、「Install」をクリック

→ウィンドウの下に「ターミナル」画面が開いて、メッセージが流れます。 「Successfully installed」が含まれるメッセージが表示されたら完了です。

-

Python の実行

「実行」→「デバッグなしで実行」→画面下のエリアに「ターミナル」画面表示

[ubn@ubn-box ドキュメント]$  env /usr/bin/python /home/ubn/.vscode-oss/extensions/ms-python.python-2020.8.101144/pythonFiles/lib/python/debugpy/launcher 34297 -- /home/ubn/ドキュメント/hello.py 
Hello world!           ←(実行結果の表示)
[ubn@ubn-box ドキュメント]$ 

→見づらいですが、プログラムが実行されて、結果が表示されています。

「ターミナル」画面を右上の「x」で閉じます。

-

テキストエディタとして使うとき

よく使うフォルダは「フォルダ」アイコンから開けます。それ以外は「ファイル」で開きます。

ファイルを開いておいて、左上の「フォルダ」アイコンを再度クリックすると、編集画面が広くなります。

もし画面下に「ターミナル」が開いていたら、「ターミナル」画面を右上の「x」で閉じます。

-


日本語入力(fcitx-mozc)のインストール

~/.xprofile を作成:

$ xed ~/.xprofile

下記の3行を追記:

export GTK_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export QT_IM_MODULE=fcitx

-


fcitx-mozc のインストール

$ yay
:
:: linux56 を community/linux-latest に置き換えますか? [Y/n] n


$ yay -S fcitx-mozc
:
パッケージ (3) fcitx-4.2.9.8-1  zinnia-0.06-6  fcitx-mozc-2.23.2815.102-4

→依存で、fcitx、zinnia も一緒にインストールされます。手書き認識システムみたい。

$ yay -S fcitx-gtk2 fcitx-gtk3 fcitx-qt5 fcitx-configtool
:
パッケージ (3) fcitx-4.2.9.8-1  fcitx-configtool-0.4.10-4  fcitx-qt5-1.2.5-1

→AUR にあるfcitx-qt4 でなく、公式リポジトリのfcitx-qt5 、および、fcitx の GUI の設定ツールを入れました。

-

ログアウト →ログイン

-

キーボードアイコンが表示され、半角/全角キー(または、Ctrl+スペース)で日本語オンになりました。

-


一部のアプリのための日本語フォントのインストール

日本語の指定でインストールすると、ほとんどの部分が日本語化されますが、一部のアプリでは、必要なフォントが違うのか、日本語を表示できないアプリがあります。(たぶん、インストーラーも)

1. パネルにあるシステムトレイの「setteing-manager」の表示:

→項目名が表示されません。

-

2. メニュー →設定 →「Manjaro Settings Manager」で項目名が消えていてアイコンしか表示されません。

「setteing-manager」を起動したときの画面:

→項目が表示されません。アイコンだけでは何が表示されているのかわかりません。

-

3. 追加インストールした「notepadqq」では、メニューから日本語が消えて歯抜けのメニューです。また、入力した日本語のテキストが表示されません。

→「noto-fonts-cjk」のインストールで解消しますが、サイズが大きいので「源ノ角ゴシック Code」をインストールしました。

-


「源ノ角ゴシック Code」のフォントをインストール

$ yay -S otf-source-han-code-jp
:
==> エラー: Cannot find the strip binary required for object file stripping.
Error downloading sources: otf-source-han-code-jp

→すんなりとインストールが完了しましたが、

「strip binary が見つかりません」というエラーが出る場合があります。 そのときは、「base-devel」パッケージのすべてをインストールし直し(再インストール)ます。

参考:

Archlinux Solved: Cannot find the strip binary

「base-devel」パッケージのすべての再インストール

$ sudo pacman -S base-devel
[sudo] USER_NAME のパスワード:
:: 24 個のパッケージがグループ base-devel に存在します:
:: リポジトリ core
   1) autoconf  2) automake  3) binutils  4) bison  5) fakeroot  6) file  7) findutils  8) flex  9) gawk
   10) gcc  11) gettext  12) grep  13) groff  14) gzip  15) libtool  16) m4  17) make  18) pacman
   19) patch  20) pkgconf  21) sed  22) sudo  23) texinfo  24) which

選択して下さい (デフォルト=all):  →(Enter)

→すべてを選択しました。すでに入っており、すべて再インストールになりました。ただし、再インストールされたのが26個と表示されたので、一覧以外のパッケージもあったようです。新規インストールはなし。

-

「源ノ角ゴシック Code」のインストール

$ yay -S otf-source-han-code-jp
:
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>   ←(Enter キー)
:
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==>    ←(Enter キー)

→実行できました。

インストールの確認:

$ yay -Ss otf-source-han-code-jp
aur/otf-source-han-code-jp 2.011-2 (+5 0.00%) (Installed)
    Japanese OpenType font for developers. Made by mixing SourceHanSans and SourceCodePro

表示の確認:

→項目名が表示されました。

-


KolourPaint のインストール

気をつけていたのに、下記の操作でインストールしてしまいました:

メニュー →システム管理 →「ソフトウェアの追加と削除」(pamac-manager)

左上の虫メガネで「KolourPaint」検索して→「インストール」→「適用」→パスワード入力 →「適用」

サイトにスクリーンショットの画像をアップするときの加工に使っています。画像ファイルを右クリックして起動することが多いです。

-

→やってしまいました。

  • GUI でインストールしたため、最新のカーネルのインストールも含まれていて、結果としてカーネルが置換されてしまいました。 検索だけして、コマンドでインストールするべきでした。

→なんとか再起動させて、ログイン画面で「Cinnamon (Software...)」を選び、ログインすれば使えるようにはなります。遅いです。

-


ファイアウォールの設定

メニュー →設定 →「ファイアウォール設定ツール」→パスワード入力

Status: オン→「盾」アイコンがカラーになれば稼働。

-


パネルの時計のカスタマイズ

パネルの時計を右クリック→設定

カスタムな日時のフォーマットを使用する→オン

Date format : 「%m/%d (%a) %H:%M」

→08/18 (火) 13:04

-


カーネルの管理ツールがあったので試してみました

メニュー →設定 →「Manjaro Settings Manager」→「カーネル」をダブルクリック

カーネルの一覧表が表示:

-

linux57    Linux 5.7.14-1  (実行中 インストール済み)
linux54    Linux 5.4.57-1    (LTS 推奨)

→インストールするなら (LTS 推奨)の「linux54」になりそうです。

-

「linux54 Linux 5.4.57-1 」の右にある「インストール」をクリック→「Yes」→パスワード入力

→「完了…」表示→「Close」

-

「linux54    Linux 5.4.57-1 」の右に「インストール済み」表示

→「終了」

カーネルをインストールした後に、システムを再起動させ、起動画面で「Advanced options for Manjaro Linux」を選択し、起動を行うカーネルを設定することができます。

GNU GRUBはいくつかのオプションで表示されます。キーボードの矢印キーを使用して「Manjaro Linuxの詳細オプション」を選択し、を押します。

次の画面には、インストールされている各カーネルバージョンがあります。 カーネルを選択するには、矢印キーを使用して目的のバージョンを強調表示し、を押します。

-


使用中のカーネルの確認:

$ uname -r
5.7.14-1-MANJARO
$ mhwd-kernel -li
Currently running: 5.7.14-1-MANJARO (linux57)
The following kernels are installed in your system:
   * linux54
   * linux57

→「linux54」が追加されました。

$ yay -Ss linux54
:
core/linux54 5.4.57-1 (82.2 MiB 140.1 MiB) (インストール済み)
    The Linux54 kernel and modules

-

再起動

-


電源オンで、カーネル選択メニューが表示されません。

$ sudo grub-editenv - unset menu_auto_hide

→無効でした。立ち上げ時に選択メニューは表示されません。

  • このPC だと、立ち上げ時に「Esc」キーを押すと、画面上部に白い帯が表示されます。 grub メニューが表示されているはずですが、メニューが表示できないので操作できません。

参考:

GRUBの非表示メニュー変更に関するFAQ

-


grub2 の起動メニューを修正します:

注意: grub メニューが表示できるPC なら、下記の操作は要りません。

メニューを表示しなくても、カーネルを選択するための操作です。

-

参考:

【 grub2-set-default/grub-set-default 】コマンド――GRUB 2のデフォルト起動メニューを設定する

デフォルトの起動メニューの編集コマンドは、CentOS では「grub2-set-default」、 Ubuntu 、またはManjaro では「grub-set-default」です。

-

設定ファイルの場所の確認:

$ ls /boot/grub/
fonts  grub.cfg  grubenv  i386-pc  themes

$ ls /etc/grub.d/
00_header  20_linux_xen  30_uefi-firmware  41_custom      README
10_linux   30_os-prober  40_custom         60_memtest86+

$ ls /etc/grub.cfg
ls: '/etc/grub.cfg' にアクセスできません: そのようなファイルやディレクトリはありません

→リンクはなし

-

メニューエントリーを表示:

grepコマンドで、「menuentry」という単語が含まれる部分を検索:

$ grep -w menuentry /boot/grub/grub.cfg

menuentry 'Manjaro Linux' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-95b95f1c-0b92-46ea-b589-4d81dcef95f5' {

    menuentry 'Manjaro Linux (Kernel: 5.7.14-1-MANJARO x64)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.7.14-1-MANJARO x64-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5' {

    menuentry 'Manjaro Linux (Kernel: 5.7.14-1-MANJARO x64 - fallback initramfs)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.7.14-1-MANJARO x64-fallback-95b95f1c-0b92-46ea-b589-4d81dcef95f5' {

    menuentry 'Manjaro Linux (Kernel: 5.4.57-1-MANJARO x64)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.57-1-MANJARO x64-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5' {

    menuentry 'Manjaro Linux (Kernel: 5.4.57-1-MANJARO x64 - fallback initramfs)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.57-1-MANJARO x64-fallback-95b95f1c-0b92-46ea-b589-4d81dcef95f5' {

    menuentry "Memory Tester (memtest86+)" --class memtest86 --class gnu --class tool {

→実際の起動メニューを見ていないので、イメージがわきません。

-

現在の設定を表示:

$ grub-editenv list
boot_success=1
saved_entry=gnulinux-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5>gnulinux-5.7.14-1-MANJARO x64-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5

→saved というのは、一度選択して成功したメニューということみたい。

-

デフォルトの起動メニューを「2」に設定:

文字列、または、0から始まる番号で指定します。

$ sudo grub-set-default 2

→たぶん、2 でいいと思うけど、メニュー表示を見たことがないので確かではありません。

追記: 一番上はタイトル行と思っていましたが、simple というメニュー項目でした。 「3」が正解だと思われます。未確認。

-

現在の設定を表示:

$ grub-editenv list
boot_success=1
saved_entry=2

→これでは立ち上がりませんでした。画面真っ暗で「ブッブッ」と音がします。何かのエラー?。 番号が違うのか、文字列でないとダメなのか、わかりません。

立ち上がらないので、自身では修正できません。インストールのやり直しになりそうです。 それならとManjaro GNOME にマウントして「featherpad」で強引に修正しました。

-

マウントしたUSB メモリの「/boot/grub/」を開き、右クリックで端末を起動。

>>> sudo featherpad grubenv
# GRUB Environment Block
# WARNING: Do not edit this file by tools other than grub-editenv!!!
boot_success=1
saved_entry=2
#####################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################

↓ さわるなと書かれているけど修正:

# GRUB Environment Block
# WARNING: Do not edit this file by tools other than grub-editenv!!!
boot_success=1
saved_entry=gnulinux-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5>gnulinux-5.4.57-1-MANJARO x64-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5
#####################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################

→「=2」の間に挿入して修正すれば、余計なスペースや改行は入りません。余計な改行が入るエディタもあるので注意。

これだと、「grub-set-default」を使わずに、バージョンの数字の部分だけ修正する方が楽です。

推奨の操作は、「grub-set-default」コマンドで、番号の代わりに「メニューエントリーの文字列」を指定するのかもしれません。文字列は、メニューエントリーを表示させて確認。

-

再起動

立ち上がりました。

-


安定版のカーネル(5.4) での稼働:

$ uname -r
5.4.57-1-MANJARO

$ mhwd-kernel -li
Currently running: 5.4.57-1-MANJARO (linux54)
The following kernels are installed in your system:
   * linux54
   * linux57

→システム更新でしつこく聞いてこないように、linux57 は残しておきました。

-

grub メニューのデフォルト設定の確認:

$ grub-editenv list
boot_success=1
saved_entry=gnulinux-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5>gnulinux-5.4.57-1-MANJARO x64-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5

-

実際の設定ファイル:

$ cat /boot/grub/grubenv
# GRUB Environment Block
# WARNING: Do not edit this file by tools other than grub-editenv!!!
boot_success=1
saved_entry=gnulinux-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5>gnulinux-5.4.57-1-MANJARO x64-advanced-95b95f1c-0b92-46ea-b589-4d81dcef95f5
#####################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################

→数字の羅列はUSB メモリごとに変わると思います。

-

ログアウト

丸い柄のアイコンをクリック→「Cinnamon(デフォルト)」を選んでから、ログイン

→サクサク動きます。長い道のりでした。

-

-


カーネルが置換されないように、アップグレード対象からパッケージを除外しておきます:

/etc/pacman.conf にて、IgnorePkg=[パッケージ名] を指定します。複数行の指定が可能。

パッケージ名の確認:

$ yay -Ss linux54
:
core/linux54 5.4.57-1 (82.2 MiB 140.1 MiB) (インストール済み)
    The Linux54 kernel and modules

-

$ yay -Ss linux-latest
:
community/linux-latest 5.7-2 (6.1 KiB 0.0 B) (インストール済み)
    The latest kernel and modules (metapackage)

-

pacman.conf の修正:

sudo xed /etc/pacman.conf

「IgnorePkg」で検索

28 行目:

#IgnorePkg   =

↓ 2行を追記:

#IgnorePkg   =
IgnorePkg    = linux54
IgnorePkg    = linux-latest

カーネル更新したくない場合の指定のしかたがイマイチわかりません。 linux-latest は要らないような気がします。 両方指定しておけばいいかな。スペース区切りで 1行にまとめてもいいみたい。

念の為、再起動:

-

同期:

$ sudo pacman -Syyu

:: パッケージデータベースの同期中...
 core                  168.7 KiB  2.26 MiB/s 00:00 [######################] 100%
 extra                2000.2 KiB  9.62 MiB/s 00:00 [######################] 100%
 community               6.1 MiB  7.39 MiB/s 00:01 [######################] 100%
 multilib              195.2 KiB  2.27 MiB/s 00:00 [######################] 100%
:: システム全体の更新を開始...
 何も行うことがありません

-

$ yay

:: パッケージデータベースの同期中...
 core は最新です
 extra は最新です
 community は最新です
 multilib は最新です
:: システム全体の更新を開始...
 何も行うことがありません
:: データベースからアップデートを検索...
:: AUR からアップデートを検索...
 何もすることがありません

→yay コマンドのメッセージが日本語化されました。ヘルプコマンドは日本語化されていません。

-


まとめ

デスクトップ環境としての「Cinnamon」は安定している印象でした。まさか一足飛びにカーネルが最新に更新されるとは思ってもいませんでした。

Manjaro は安定しているといってもArch Linux ベースなので、こういうこともあることを意識しておくべきでした。 ただし、Manjaro セッティングマネージャがあり、カーネルの管理ができるツールがあるので便利です。

どちらにしても、Fedora みたいに、grub メニューは確実に表示されるものにしてほしいところ。

-

わかったことは、カーネル更新(5.7) で自分のPC では使えなくなったFedora 32 (GNOME) ですが、Wayland の影響ではなくPC 固有の問題らしいということと、「Fedora 32 Cinnamon」なら、Software セッションで使えるかもしれないということ、です。

-

-


目次

先頭

-


-

Arch: Manjaro GNOME の「Squeak 4.4 日本語」でSmalltalk を学ぶ〈H62〉

登録日: 2020-08-12 更新日: 2020-08-18

前回 、「Squeak や Etoys でプログラム学習にトライ」するための前準備として、いろいろなSqueak のバージョンを試してみました。

個人的にインストールしているLinux の中で、「Manjaro GNOME」が楽に Squeak のインストールができました。 また、日本語化された Smalltalk で最新なのは、「Squeak 4.4 日本語化版」でした。

-

Manjaro GNOME 」にて、「Squeak 4.4 日本語化版」を使い「Squeak の操作」および「Smalltalk について」学んでみました。

-

「目次」

-


使えるようにしたSmalltalk のウィンドウ(学習環境):

→壁紙の色は変えてます。最小化されている「テスト」が学習のためのプロジェクトです。

-

「テスト」のプロジェクトを開いたところ:

→ほとんど「Etoys」の画面です。タブも表示されています。

-


Manjaro GNOMEにて、学習するための環境づくり

前回 のおさらいから)

-

使用環境:

>>> cat /etc/lsb-release                
DISTRIB_ID=ManjaroLinux
DISTRIB_RELEASE=20.0.3
DISTRIB_CODENAME=Lysia
DISTRIB_DESCRIPTION="Manjaro Linux"

>>> uname -r                            
5.6.19-2-MANJARO

→Manjaro GNOME のシェルは zsh です。 プロンプトの頭にはワーキングディレクトリのチルダが付いていますが、記事中は、見やすいように省略しました。

-

本来のManjaro の端末の表示:

→プロンプトは色分けされ、 入力したアドレス(パス)には下線が付くので、見やすいです。

コマンドを間違えると赤色表示されます。補完機能も履歴を使ってうっすらと表示されます。

-


Squeak 4.4 日本語化版」をインストール

自由に置くだけで、インストールできる「All-in-one」パッケージを選びました。

Squeak 4.4 (Squeak Smalltalk) に、日本語環境インストーラによるパッチを適用、VM を同梱したものです。 (2013/08/25 公開)

-

ReadMe-ja.txt にある注意書き:

右クリックメニューが出ずに「ハロ」が表示される場合、ヘルプ... -> プリファレンス... でプリファレンス・ブラウザを開き、general -> swapMouseButtons の値を変更します。

-

ちなみに、「ハロ」とは、オブジェクトを取り囲むアイコン群です。これによりオブジェクトを回転したりとか加工できます。 和訳すると仏様にある後光のことみたい。もし「ハロ」が表示されるなら、上部左の赤いアイコンをクリックでワールドメニューが表示されます。

-


ダウンロード:

Squeak4.4-ja-all-in-one.zip

-

チェックサム確認:

>>> sha256sum Squeak4.4-ja-all-in-one.zip
2fde503d80e5e0f2cc155f53d7bf6c70ec86447b314a108904e6111dc1bd24ed  Squeak4.4-ja-all-in-one.zip

→改ざんされていないか、値が同じかで確認。

-

展開後、扱いやすいように別のフォルダ (~/Squeak4.4-ja) に移動

>>> cd ~/Squeak4.4-ja/Squeak4.4-ja-all-in-one/

>>> ls
ReadMe-ja.txt  linux_run_legacy        vm_cog       win_run_legacy.bat
image          mac_run.command         vm_legacy
linux_run      mac_run_legacy.command  win_run.bat

>>> ls image/
Squeak4.4-ja.changes  Squeak4.4-ja.image  SqueakV41.sources

>>> ls vm_legacy/linux/
so.AioPlugin                so.MIDIPlugin             so.vm-display-null
so.B3DAcceleratorPlugin     so.Mpeg3Plugin            so.vm-sound-ALSA
so.ClipboardExtendedPlugin  so.RomePlugin             so.vm-sound-NAS
so.DBusPlugin               so.Squeak3D               so.vm-sound-OSS
so.FileCopyPlugin           so.SqueakFFIPrims         so.vm-sound-custom
so.GStreamerPlugin          so.UnixOSProcessPlugin    so.vm-sound-null
so.HostWindowPlugin         so.XDisplayControlPlugin  so.vm-sound-pulse
so.ImmX11Plugin             so.vm-display-X11         squeakvm
so.KedamaPlugin             so.vm-display-custom
so.KedamaPlugin2            so.vm-display-fbdev

→デフォルトの「linux_run」は高速なCog VM で起動する設定ですが、現在、Cog VMリポジトリから削除されてメンテナンスされていません。

なので、従来の squeakvm で起動する「linux_run_legacy」を使います:

>>> cat linux_run_legacy
#! /bin/sh
./vm_legacy/linux/squeakvm -plugins ./vm_legacy/linux -vm-display-X11 -compositioninput ./image/Squeak4.4-ja.image &

-


Manjaro GNOME で実行:

squeak-vm で起動:

>>> cd ~/Squeak4.4-ja/Squeak4.4-ja-all-in-one/

>>> ./linux_run_legacy

→起動しました。

→壁紙のせいか地味な画面です。

たくさんの英語の説明の窓が開きました。とりあえずはアイコン化しました。 内容を見るとひとつのファイルにまとめても良さそうです。(5.3 ではひとつで、タブ切り替えで表示します)

目を通して、下記は閉じました。

「Welcome to Squeak 4.4」、 「Future Directions」(今後の方向性)、 「License Information」(ライセンス)

-

ウィンドウの左下には、3つの日本語化についてのドキュメントが最小化されています。

「Read Me」: 日本語環境インストーラ (開発者用)

「ReadMe-Fonts」: フォントについて

「ReadMe-Packages」: パッケージ管理システムについて

-

ちなみに、

埋め込みTrueTypeフォントとして「Komatuna」フォントが使われています。

→「Konatu」フォントの漢字と「M+」フォントの合成フォントです。

紹介されているURL はリンク切れです。フォントが欲しいときは、下記が使えました。

-

参考: Komatuna フォントのダウンロード:

Komatuna-font (tar.xz) はこちら

もしくは、(tar.lzma) はこちら

ダウンロードして、展開すると、2つのフォントが手に入ります。

  • komatuna.ttf

  • komatuna-p.ttf

-


デスクトップで、左クリックのメニュー

-


デスクトップで、右クリックのメニュー

-


外観の設定

壁紙が地味なのでいじってみます。

デスクトップで、右クリック→ワールドメニュー→「旧デスクトップメニュー…」→「外観…」

→「デスクトップ色の設定…」

単一色の背景に設定できます。すぐ決定されて閉じるので、好みの色に設定するのは難しいです。「OK」をクリックするまで閉じないでもらえると使いやすくなると思います。

→少しグレーぽい「水色」を選びました。

-


プロジェクトの新規作成

  • デスクトップを汚さないためにも、作業はプロジェクトを作って行うとよいみたい。

ツールバー→「プロジェクト」→「新規プロジェクト」→「新規Morphic プロジェクト」

→見覚えのある Etoys のウィンドウが開きました。壁紙も変わりました。

→タブも表示されています。これなら「Etoys」としても使えそうです。

タブの文字が縦書きに対応していないのが少しだけ気になります。

-

ちなみに、プロジェクト作成のときに「新規 MVC プロジェクト」も選べますが、こちらは古いSmalltalkGUI になります。マルチウィンドウに対応していないので使いづらいです。

-

デスクトップで、左クリック→「前のプロジェクト」で前の「水色」(の背景に変えた)画面に戻りました。

→「名無し1」という小さな窓ができています。これが先ほど作られたプロジェクトです。

-

この水色の最初の画面を拠点として、いろいろなプロジェクトを選択して起動できます。 これなら、最小化されたドキュメントをそのままにしていても作業のじゃまになりません。

-

プロジェクトの小さな窓の中を左クリックすると、プロジェクトが開きます。

プロジェクトが開いたら、 左クリック→「前のプロジェクト」で前の「水色」の画面に戻ります。

左クリック→「プロジェクトを移動」で選択したプロジェクトを開けます。

-


プロジェクト名の変更

プロジェクトのタイトルバーを右クリック→ラベルの編集→このウィンドウの新しい表題は?

→「テスト」と入力して「了解」

→他のアプリと同じように、ibus-mozc で日本語入力できました。

-


プロジェクトの削除

プロジェクトの窓の中で右クリック→「このプロジェクトを削除」

-

→プロジェクトの属性はいろいろ設定できるようです。保護の設定にしていなければ、自由に削除できるので、プロジェクトを作ってそこで作業という習慣にしたほうが良さそうです。

-


作業するために、プロジェクトを開きます

小さくなったプロジェクトの窓の中央を左クリックで、プロジェクトを開きます。

-


ワークスペースを開きます

単なる窓が開くだけです。ドキュメントの窓と同じものです。タイトルの変更もできます。 ただし、Smalltalkの式を書いて、実行できます。

-

3つの開き方があります:

-


ショートカットキー:

  • コピーは、Alt + c

  • ペーストは、Alt + v

  • 全体の選択は、Alt + a

-


ワークスペースで入力

外部アプリの「gedit」にて、文章を範囲選択して、Ctrl + c でコピーします。

ワークスペースをクリックしてから、 Alt + v で貼り付け。

Alt + a で全選択して、「Delete」キーですべて消えました。

ショートカットキーの割当が違うことと、行番号が表示できないこと、保存操作が要らないことくらいで、通常のエディタと同じように日本語の入力は可能です。変換後に文字はワークスペースに表示されます。

こちらもプロジェクトと同じようにタイトル名を変更できます。なので、通常のメモ帳とかドキュメントとして利用できます。

-

通常のメモ帳と違い、プログラム(Smalltalk の式)を解釈できます

-

7 + 3

と入力して、カーソルはどこでもよいのでその行に置いて、Alt + p(print it と呼ばれます)とすると、右隣に答えが帰ってきます。

7 + 3 10

気を付けなければいけないのは、答えが選択されたままなので、そのままEnter すると答えが消えます。 →で抜けたほうがよいです。

-

Display extent

と入力して、Alt + p(print it)します。

Display extent 800@816

ウィンドウの解像度が表示されました。結果を返すコマンドにも使えます。

-

do it:

Display reverse

と入力して、カーソルはどこでもよいのでその行に置いて、Alt + d(do it または、評価と呼ばれます)とすると、画面がネガポジ反転します。メッセージが送信されてコマンドとして実行されたわけです。

画面を戻したい場合は、もう一度 Display reverse を「do it」します。

複数行を評価するときは、カーソルで範囲選択しておいて、Alt + d(do it)します。

-

inspect it:

-

改行して、

#(a b c)

と入力して、Alt + i (inspect it または、「インスペクタ」と呼ばれます)します。

灰色の小さな窓が開きます。式の実行結果を見ることができます。

-

「トランスクリプト」に表示:

「トランスクリプト」は、プログラムの実行結果を表示したいときに使われる窓です。

-

まずは、ツールバー→「ツール」→「トランスクリプト」→「トランスクリプト」の窓を開いておきます。自動では開きません。

ワークスペース」にて、改行して、

Transcript show: 'Hello World!'

と入力して、Alt + d(do it)します。

→Transcript という「オブジェクト」に show: という「メッセージ」を送りました。

→「トランスクリプト」窓に、Hello World! が表示されました。

-

ちなみに、「トランスクリプト」窓の中に同じコマンドを入れて、Alt + d(do it)してみたら、「トランスクリプト」自身に表示されました。出力だけができるコンソールではないようですが、改行していないので結果が見づらくなります。分けて運用するのがいいみたい。

-

「トランスクリプト」の表示をクリア:

-

改行して、

Transcript clear.

と入力して、Alt + d(do it)します。

ちなみに、Smalltalk のコマンド行の終了は「.」です。英文と同じです。 複数行のときの最後だけ省略できます。(どうせ終わりだから)

-

-

マウスでの操作:

今までの操作は、マウスで実行したい部分のみをハイライト(選択)すれば、改行していなくても、その部分だけを実行することができます。

「do it」、「print it」、「inspect it」 は、Smalltalk の式を実行するための3つの主要な操作です。

これらは、範囲選択しておいて、右クリックすると,それらしきメニューが出てきます。

-

デモプログラムを試してみます:

Squeak には気軽に実行できるサンプルプログラムがたくさん入っています。

-

デモ 1:

Pen example

と入力して、「do it」します。

→きれいな模様が描かれました。

文字列があると、その部分はきれいに描かれないみたい。 ワークスペースの窓を動かすと、消えてしまいます。

-

これは使い方を誤っていたようです。下記のようにするのが正解:

デスクトップを左クリック→「ディスプレイを再表示(r)」(restore display) でクリアできます。

もしくは、Squeak のタイトルバーをつかんで右端にぶつけて半画面のタイリングにします。元に戻せば、デスクトップが再描画されるので消えます。

-

デモ 2:

WarpBlt test3

と入力して、「do it」します。マウスの動きに連れて、万華鏡のような華麗な映像が動くウィンドウが立ち上がります。

ワークスペースを左クリックすると停止します。

デスクトップを左クリック→「ディスプレイを再表示(r)」(restore display) でクリアできます。

-

デモ 3:

BitBlt antiAliasDemo

と入力して、「do it」します。左上に拡大鏡が表示されます。カーソルを動かすと、その周辺の拡大になります。 またマウスの左ドラッグで赤い線が引けます。

ワークスペースを右クリックすると停止します。

デスクトップを左クリック→「ディスプレイを再表示(r)」(restore display) でクリアできます。

-

デモ 4:

BitBlt alphaBlendDemo

と入力して、「do it」します。太いぼけた赤い線が引けます。

ワークスペースを右クリックすると停止します。

デスクトップを左クリック→「ディスプレイを再表示(r)」(restore display) でクリアできます。

-


ブラウザ

デスクトップ上で、Alt + b →「システムブラウザ」が開きます。

もしくは、ツールバー→「ツール」→「ブラウザ」

-

-

本格的なプログラム開発をするときは、ワークスペースではなく、このブラウザ(システムブラウザ、またはクラスブラウザと呼ばれます)を使います。

大きなプログラムは部品(クラス)を組み合わせて作って行くと効率的です。その部品の検索ができます。

ブラウザの下の部分に入力して行きます。同じく、print it や do it もできます。

ここでの使い方を覚えるのは重要です。

-


イメージの別名保存:

時々、保存しておくと安心です。

デスクトップで、左クリック→ワールドメニュー→「別名で保存…」

もしくは、ツールバーの左のアイコンをクリック→「別名で保存…」

好きな名前にします。拡張子の .image は自動的に付きます。

-


終了

ツールバーの左のアイコンをクリック→終了

保存するか聞いてきます。

保存するたびにどんどんイメージ(チェンジファイル)は更新されていきます。

-


Smalltalk の標準的なGUI ツール

参考:

Smalltalk Wiki

記事の後に「Smalltalk の基本的な文法」が紹介されています。 目次から飛べます。

-


標準的なGUI ツール

-

Class Browser(System Browser)(ブラウザ)

Smalltalk 環境内に存在する全てのクラスを(存在する場合は名前空間も)表示/編集できるツールです。 Smalltalk 開発において中核となります。

-

Transcript(トランスクリプト

表示に使われるコンソールといえ、プログラムの実行結果を簡易的に表示したいときに使われるツールです。 Smalltalk 環境内でTranscript 変数に書き込まれたメッセージは、全てこのTranscript に表示されます。

-

Workspace(ワークスペース

コンソールの入力側とテキストエディターを組み合わせた様なツールです。

書いたコードを実行できるだけの簡易的なテキストエディターではなく、 Workspace 変数というWorkspace 固有の変数を持っており、Workspace 内で実行されたSmalltalk コードの実行結果を保持することができます。

このため、長いコードを書くような用途では使わず、Smalltalk 環境に対するパッケージの追加や、環境設定、ファイルの一時的な操作など一時的な操作を実行する場所として使われます。

-

Debugger/Notifier(デバッガ)

-

Inspector(インスペクタ)

オブジェクト内の変数を表示するツールです。

表示するときは内部構造そのままではなくオブジェクトの文字列表現で表示されます。 このため内部がHash map 等複雑な構造になっている場合でも、 Dictionary (#key -> 'value' ) といった読み易い表示となります。

多くの場合オブジェクトの編集が可能で、Workspace と組み合わせてオブジェクトを組み立てていくことができます。 例えば、Window を表すオブジェクトに画面部品を組み込み、クラス変数に格納するといった具合です。

-


参考: Smalltalk の基本操作:

下記を参考にしました。感謝。

参考:

-

  • Squeak SmalltalkSmalltalk の式を評価するには、ワークスペース変数を使わないのなら、必ずしもワークスペース(メモ帳)を用意する必要はありません。

  • Squeak Smalltalk 環境では、文字が入力できる場所ならどこでも、 do it(alt + d)、print it(alt + p)で、入力・選択した式の評価ができます。

  • ワークスペース」がちょっとしたプログラムを書いて試すところだとすると、 本格的なプログラム開発は「システムブラウザ」で行います。

  • Squeakには「クラス」というプログラミング部品がたくさん格納されています。 自分の目的に合った部品がないかブラウザで探しながら、プログラムを作成していきます。

-

Smalltalk の式を試すときに最低限、知っておくべき事(抜粋)

  1. ワークスペースやそれに準ずるアプリや機能の呼び出し、そこでのテキスト操作。

  2. do it もしくは print it に相当する、式の評価や結果の出力に必要な操作。

  3. クラスやメソッドの定義をするための式。

  4. クラスブラウザ(システムブラウザ)の使い方

-


Squeak を学ぶのに役立つ資料

参考:

自由自在 Squeakプログラミング PDF版

-

市販の書籍の内容をPDF として公開されています。内容は充実。感謝 !!

-

Squeak Nihongo6 を使っての操作ですが、十分参考になります。URL 等はリンク切れがあります。 Squeak 4.2 以降でも使えるサンプルコードが別ファイルとして提供されています。 章ごとにフォルダ分けされてますが、探すのがたいへんかな。「.ws」の拡張子とか使い方を知らないし。 もしかしたらワークスペースに貼り付けるのかな。

-

ファイル名の右隣りの「…」をクリック→「ダウンロード」

本文は 1ページ目、サンプルコードは 2ページ目にあります。

  • 本文 PDF:

「JiyuuJizaiSqueakProgramming-all.pdf」

「SampleCodes42.zip」、または、「SampleCodes42.sar」

→SAR ファイルは、Windows の「SAPCAR」アプリで解凍できます。

-


参考: Etoys として使うときの教材:

Squeak 4.4 日本語化版」で新規にプロジェクトを開くと、Etoys として使えます。

下記の教材は、対応しているバージョンが違うので使えるかわかりません。未確認です。

参考にはなると思います。

-


Windows 版の「ことだま on Squeak」の教材:

ことだまon Squeakで学ぶ論理思考とプログラミング

→ブラウザで閲覧できます。カラーなので見やすいです。インストール以外は参考になると思います。

もしくは、

Squeakで学ぶプログラミング[改訂 第2版] Vol.1 PDF(zip圧縮)版のダウンロード

→qpdfview で開いて「余白なし」にすると見やすくなります。

-


「Squeakland 2005J2」の教材:

すくすくスクイーク

京都市の小学校で実際に使われている「指導テキスト」

(Squeakland 2005J、Squeakland 2005J2 対応)

  • 車の運転

  • おたまじゃくし

  • はてなボックス

  • オルゴール

  • アニメーション

  • 野球ゲーム

-

→過去のブログ記事ですが学習教材の参考にできます。

-

→Squeakland 2005J、Squeakland 2005J2 で開けます。

こちらが動くかは未確認。

-


まとめ

SmalltalkSqueak)はバージョンによって大きく使い勝手が違うようです。

なので、最新版を選ぶより、学習したいチュートリアルが対象としているバージョンを入手するのがオススメです。 チュートリアルに書いてある通りに動かないのでは、勉強になりません。最新はその後の話です。

ただし、対応するチュートリアルがなければ、試してみるしかありません。それも勉強になります。

-

また、Smalltalk は、プログラミング言語ではあるけど、それは「環境」だと意識することで、その良さがわかるらしいです。

そもそも、Alto(アルト)という(開発者たちが理想とする)パソコンのOS として設計されたわけです。操作系も含めて体感すべきことなのでしょう…。Squeak のウィンドウの中に、まったく別のOS のパソコンが入っていると思えば、スムーズに理解できるということみたい。

-


目次

先頭

-


「Squeak」や「Etoys」のプログラム学習にトライするための環境を選んでみる〈H76〉

登録日: 2020-08-09 更新日: 2020-08-16

以前に、「Fedora Workstation 32」をUSBメモリにインストール して、「Sugar デスクトップ環境」をインストール しました。

初期の「Sugar デスクトップ環境」には「Squeak Etoys」アクティビティ(アプリ)なるものが存在しました。現在はありませんが、パソコン学習に使われていたアプリで、興味深いので、どのようなものか調べてみました。

Squeak や Etoys でプログラム学習にトライ」するための、まずはそのための環境づくりから…。

-

「目次」

-


OS ごとの対応確認:

個人の環境で確認したので、違う結果も予想されます。なので参考です。

-

Windows 10:

  • Windows 対応のほとんどのものがダウンロードして、実行したり、インストールができました。

-

Fedora 32:

  • 公式サイトからダウンロード: 最新「Squeak 5.3」(All-in-One のみ確認)

  • dnf でのインストール: 「Squeak 4.5」 →他のSqueak の実行に影響するので注意

  • 他は全滅

-

CentOS 8.2:

  • 公式サイトからダウンロード: 最新「Squeak 5.3」(All-in-One のみ確認)

  • 他は全滅

-

Manjaro GNOME 20.0.3:

  • Linux 対応なら、ほとんどがダウンロードして、実行できました。

(All-in-One 、Etoys-To-Go のみ確認)

→All-in-One 、Etoys-To-Go なら、どこにでも置けるので、インストールよりも楽です。

  • yay でのインストール: 「squeak 4.5」 →他のSqueak の実行に影響するので注意

-


Squeak についてのメモ:

  • Squeakスクイーク)は Sugar 環境でなくても、他のディストリビューションでもインストールできて使えました。

  • Linux ではインストールパッケージが、VM仮想マシン) とイメージファイル(ソフトウェア本体)に別れています。 使用するイメージファイルのフォーマット形式にVM が対応している必要があったり(つまり、64bit 対応かどうか)、置き場所を決める初期設定のコマンドが各々で違ったりと、情報が不足しているので試行錯誤しました。

  • Windows 10 でのインストールでは、VM とイメージとインストーラが込みの構成につき、インストーラを実行して、インストール先を答えるだけで完了します。Linux よりも簡単で確実だと思います。

Windows での注意点は、日本語が含まれたフォルダをできたらインストール先に指定しないことです。個人的には c: のルートに英語名のフォルダを作りました。今もこの制限があるかは未確認。

-

どちらにしても、All-in-One 、Etoys-To-Go なら、インストールは要りません。

-


参考:

授業展開例 4 “Squeak”で学ぶプログラミング

10年ほど前の「Squeak」を使ったパソコン学習の指導例です。一部の学校のみでその後の展開は見られません。PC設備のある学校が少なかったから…と思われます。

-

寄り道:

パソコン学習のための設備が足りない問題を解決しようと、世界的規模で始まったOLPC プロジェクトがありました。その成果が「Sugar」だったり、「XO」パソコンだったりします。日本は不参加でした。

うまく行く国とうまく行かない国がありました。それは、プロジェクトが行う「PC供与」以外のことは、政府や別の団体が一丸となってやらなければいけないことでした。その国の本気度も影響したと思われます。

他のプロジェクトでも参考にできることは、「やらなきゃいけないとわかっているのに出来ない、やらない」ということと、「なぜできないのか、なぜやらないのか」を考慮したプロジェクトの始め方。

-


Sugar デスクトップ環境について

以前の投稿を参照:

-


Squeak について

→プログラムを書かなくても、命令の書かれたタイルを貼り付けていくことで、自分で描いた絵を自由に動かせます。 楽しみながら、プログラムの考え方(アルゴリズム)を学習できるので、大人だけでなく子供のパソコン学習にも適しています。

-

  • Squeak は、「仮想マシン(VM)」とその上で実行される「イメージファイル」で構成されます。

→仮想化によって、OS を問わずにイメージファイルが使えます。ただし、Squeak のバージョンによりイメージファイルの形式が変化しており、そのイメージの形式に対応したVM でないと起動できません。

  • Squeak 4.6イメージ: 以前からのV3フォーマット

  • Squeak 5.0イメージ: Spurフォーマット

-


Squeak

Squeak (Smalltalk) ダウンロードサイト:

→All-in-One がオススメです。

-


Etoys

  • 「Etoys」は「タイル・スクリプティング環境」を使ってのプログラム開発を楽しんだり、パソコン学習をしたい人向けです。

  • 混同しそうですが、「Squeak Etoys」はSqueak のサブセット(機能制限版)で、一種の簡易プログラミング環境です。

多機能なSqueak から子どもが使わない機能を隠して、子どもが扱いやすい環境に設定、それを保存したイメージファイルが「Etoys」です。システムのカスタマイズが自由にできるのがベースである Smalltalk の利点です。

Squeakland (Etoys)ダウンロードサイト:

→Etoys-To-Go がオススメです。

-


Squeak とEtoys のバージョン:

Squeak とEtoys の日本語化は、色々な試みがあったようです。

→単にコマンド名を日本語に直訳するだけでは使いやすくなりません。

-

  • Squeak 3.6

  • Squeak Nihongo6.1 (日本語版 Squeak)

  • Squeak 3.8

  • Squeak Nihongo7 (日本語版 Squeak) →Squeak 3.8 ベース 2005/03/22 公開

  • SqueakLand2005J (日本語版)

  • ことだま on Squeak →Squeak2005J ベース、テストタイルを日本語に近づけてます ←(A: 学校での試用あり)

  • SqueakLand2005J2 (日本語版) →2005J の改修 2007/07/26 公開 ←(B: 日本語化)

  • Etoys 3.0 →ナビゲータが上部に常に表示、「テストタイル」がテストカテゴリに含まれました。

  • Etoys 3.0 + 日本語修正モジュール →2009/05/12 公開、「Mona」フォント、テストタイルを日本語に近づけてます「テスト~はい~いいえ」→「もし~ならば~でなければ」

  • スクイークEtoys 3.0(みんなでたのしくスクイーク版)

  • Squeak 4.1 + 日本語修正モジュール →2010/05/09 公開

  • Squeak 4.4 + 日本語修正モジュール →2013/08/25 公開 ←(C: 日本語化された smalltalk

  • Etoys 5.0 ←(SqueakLand 最新) ←(D)

  • スクイークEtoys 5.0(みんなでたのしくスクイーク版)2012/06/03 公開

  • スクイークEtoys 5.0(みんなでたのしくスクイーク 2013版)2013 公開 ←(E: 学校での試用あり)

  • Squeak 5.3 ←(F: Squeak 最新、英語 smalltalk

-

サイトのリンク切れで入手できないものがあります。

  • Squeak 3.8 (Squeakland 2005)からは多言語化されて日本語が使えるようになりました。 しかし、デフォルトでは日本語のフォントは登録されていません。

  • Squeak 5.0 からは以前のやり方では日本語化は難しいようです。

-


A: 「ことだま on Squeak」をダウンロードして使用:

  • 日本語版 Squeak(Squeak2005J)をベースに、2005年に慶應義塾大学のチームによって開発されました。

機能(抜粋):

タイルの語順等を変更し、日本人にとって自然な日本語になるようにしてあります。 従来のSqueakでは操作しづらい箇所のインターフェイスの変更を行っています。 教育上不必要なタイルは隠してあります。 音楽ファイルの取り込みなどの便利な機能も搭載されています。

WindowsMac 版のみの提供:

【Windows】ことだま on Squeak(Ver. 1.1.8)+のダウンロード(2008.3.13公開)

→カーソルの動きにつれて目玉が動きます。

-

ガイドに沿って、インストールを含めた学習ができます。

Windows での操作:

ことだまon Squeakで学ぶ論理思考とプログラミング

→ブラウザで閲覧できます。カラーなので見やすいです。

-

学習教材:

Squeakで学ぶプログラミング[改訂 第2版] Vol.1 PDF(zip圧縮)版のダウンロード

→モノクロ表示。 文字が小さいので、qpdfview で開いて、余白なしで表示させると読みやすくなります。

-


B: 「Squeakland 2005J2」をダウンロードして使用:

2007/07/26 公開

日本語版 Squeakland

  • 「Squeakland 2005J2」は、従来の解説書やチュートリアルと一緒に使えるので便利です。

-


「Squeakland 2005J2」をインストール:

  1. Linux(i386) 版 Squeak 仮想マシンダウンロード

  2. Squeak イメージファイル(Squeakland 2005J2) をダウンロード

  3. これらのファイルを展開して同じディレクトリに置きます。

$ cd ~/ダウンロード/Squeakland2005J2/2005J2/

$ ls                                        
B3DAcceleratorPlugin          SqueakPlugin-dev-556.image  vm-display-X11
ImmX11Plugin              SqueakPlugin.image      vm-display-fbdev
README.txt            SqueakV3.sources        vm-display-null
Squeak3D              XDisplayControlPlugin   vm-sound-OSS
SqueakFFIPrims            npsqueak.so         vm-sound-null
SqueakPlugin-dev-556.changes  squeak

→上記以外に、開発版も含めています。新規「2005J2」フォルダにすべて入れました。

  1. 端末にて、下記を実行
$ squeak SqueakPlugin.image

-

Manjaro GNOME で実行:

他のSqueak のバージョンをインストールしていると、そのファイルに誤ってアクセスしてしまい、正常に起動できません。

例えば、yay で Squeak をインストールしておいて、「Squeakland 2005J2」を起動すると、 「initializing Squeak security system(5330%)」を表示。100% を超えても終わりません。

-

まずは、アンインストール:
>>> yay -R squeak-image-4.5 squeak-vm squeak-sources-41
:
パッケージ (3) squeak-image-4.5-4.5-1  squeak-sources-41-41-1
               squeak-vm-4.10.2.2614-5

-

「Squeakland 2005J2」を実行:
>>> cd /run/media/ubn/CentOS/home/ubn/ダウンロード/Squeakland2005J2/2005J2/

>>> ./squeak SqueakPlugin.image

→これはCentOS の立ち上げUSB メモリをマウントして、そこにアクセスしている状態です。

-

→起動しましたが、背景が白っぽい上に「透明」です。

透けているので、背景が明るい、Squeak のウィンドウの左側の中がよく見えません。 端末を開いて、背景を黒にしておくと、Squeak のウィンドウの右側は見えています。

-

デスクトップの背景色の設定:

ウィンドウの中央で右クリック→ハロ(全体を囲んだアイコン)が表示されるので、左上の赤い(メニュー)アイコンをクリック→「ワールドメニュー」が表示→一番下の「デスクトップ メニュー…」→外観→「デスクトップ色の設定」→色のパレットが表示されるので、グレーぽい青をクリックで選択。

→以前よりはマシになりました。透明なのは変化せず。端末を全画面で開いておくと、見やすくなり使えます。 どこかに透明の設定があるはずですが…。

-

設定を保存:

ウィンドウの中央で右クリック→ハロ(囲んだアイコン)が表示されるので、左上の赤い(メニュー)アイコンをクリック→「ワールドメニュー」が表示→一番下の「デスクトップ メニュー…」→「保存して終了」

-


開発者版「Squeakland 2005J2」をインストールする場合:

1. 上記をダウンロードします。

2. 開発者版のイメージ(SqueakPlugin-dev-556.zip) を追加でダウンロード

3. Squeakソースファイル(SqueakV3.sources.zip) を追加でダウンロード

→これがないと起動時に警告が表示されます。

4. これらのファイルを展開して同じディレクトリに置きます。

5. 端末にて、「squeak SqueakPlugin-dev-556.image」を実行すると 開発者版 Squeak が起動します。

6. 端末にて、「squeak SqueakPlugin.image」を実行すると 通常の Squeak が起動します。

7. 開発者版 Squeak を終了するには、

画面左下にあるオレンジ色の「ナビゲータ」をクリック→飛び出してきたフラップ(帯領域)の右端にある「終了」ボタンをクリック→「本当にスクイークを終了しますか?」の確認ダイアログに「はい」

-

Manjaro GNOME で実行:
>>> ./squeak SqueakPlugin-dev-556.image

→起動しましたが、背景が透明です。背景に黒を置いておかないと、よく見えません。

-

CentOS で実行:

$ cd ~/ダウンロード/Squeakland2005J2/2005J2/

$ ls
 B3DAcceleratorPlugin           SqueakPlugin-dev-556.image   vm-display-X11
 ImmX11Plugin                   SqueakPlugin.image           vm-display-fbdev
'My Squeak'                     SqueakV3.sources             vm-display-null
 README.txt                     XDisplayControlPlugin        vm-sound-OSS
 Squeak3D                       npsqueak.so                  vm-sound-null
 SqueakFFIPrims                 secure
 SqueakPlugin-dev-556.changes   squeak

$ ./squeak SqueakPlugin.image
bash: ./squeak: そのようなファイルやディレクトリはありません

$ ./squeak SqueakPlugin-dev-556.image
bash: ./squeak: そのようなファイルやディレクトリはありません

→起動せず。

-


Windows で「Squeakland 2005J2」をインストール:

1. Windows 用の日本語版インストーラをダウンロード (http://squeakland.jp/plugin/installers/SqueakPlugin2005J2.exe)

2. ダウンロードしたインストーラをダブルクリックして実行

→起動したら画面の指示にしたがい、インストールします

3. スタートメニュー →「すべてのプログラム」→「Squeak Plugin」→「Squeak」→スクイークの起動

-

-

学習教材:

すくすくスクイーク

京都市の小学校で実際に使われている「指導テキスト」

(Squeakland 2005J、Squeakland 2005J2 対応)

  • 車の運転

  • おたまじゃくし

  • はてなボックス

  • オルゴール

  • アニメーション

  • 野球ゲーム

-

→過去のブログ記事ですが学習教材の参考にできます。

-

→Squeakland 2005J、Squeakland 2005J2 で開けます。

-


C: 「Squeak 4.4 日本語化版」をダウンロードして使用:

All-in-oneパッケージ (2013/08/25更新)

Squeak4.4-ja-all-in-one.zip

チェックサム確認:

$ sha256sum Squeak4.4-ja-all-in-one.zip
2fde503d80e5e0f2cc155f53d7bf6c70ec86447b314a108904e6111dc1bd24ed  Squeak4.4-ja-all-in-one.zip

→値が同じなら、正常にダウンロードできています。

All-in-one パッケージとはSqueak Smalltalk に、ローカライズパッチを適用して、おすすめのVM を同梱したものです。

起動方法:

Windows: 
win_run.bat をダブルクリック

Mac:
mac_run.command をダブルクリック

Linux:
zip を展開したディレクトリに移動し、./linux_run で起動

高速VM のCog で起動されます。 従来のVM で起動する場合、_legacy のついたファイルをお使いください。 なお、Cog VM でイメージの保存を行うと従来のVM では開けないイメージに変換されます。 Cog 用として別名で保存されることをお勧めします。

→残念ながらCog VMリポジトリから削除されています。つまり、未サポートということ。

-

CentOS で実行:

$ cd ~/ダウンロード/Squeak4.4-ja-all-in-one/

$ ./linux_run
/usr/bin/ldd didn't produce any output and the system is 64 bit.  You may need to (re)install the 32-bit libraries.

→32ビットライブラリをインストールする必要があるみたい。

参考:

Getting the new Squeak 5 to run on 64 bit Linux

Squeak 5 の場合なので、あまり参考にならないかな。 Squeak 5 は現在 32ビットのみです。したがって、32ビットライブラリが必要です。64ビットライブラリは使用できません。

-

Manjaro GNOME で実行:

>>> cd /run/media/ubn/CentOS/home/ubn/ダウンロード/Squeak4.4-ja/Squeak4.4-ja-all-in-one/

>>> ./linux_run                  
Can't infer base LD_LIBRARY_PATH. Aborting. Try adding a line for /usr/lib32/libc.so.6 (0xf7c10000) to ./vm_cog/linux/squeak.sh. Please report your edit to squeak vm-dev.

→cog-vm を使うスクリプトですが、cog-vmリポジトリから削除されてサポートされません。

squeak-vm を使います:

>>> ./linux_run_legacy

→起動しました。

→たくさんの英語の説明のテキストファイルが開きました。 内容からすると、ひとつのファイルにしても良さそうな気がします。 とりあえずはアイコン化しました。

その中でも下記は、一度読んだら画面から閉じてもよさそうです。

「Welcome to Squeak 4.4」、 「Futyre Directions」(今後の方向性)、 「license Information」(ライセンス)

-

ウィンドウの左下に閉じている3つは日本語化についての重要な説明です。

「Read Me」: 日本語環境インストーラ (開発者用)

「ReadMe-Fonts」: フォントについて

「ReadMe-Packages」: パッケージ管理システムについて

-


D: 「Etoys 5」をダウンロードして使用:

Etoys 5 ダウンロード

Etoys To Go のダウンロードがオススメです。

WindowsMacLinux:インストールする必要はなく、解凍するだけで、USBメモリから起動できます。

WindowsMacLinux でフォルダが共通で、起動コマンドはOS ごとに違います。

1. USB メモリに、fat32パーティション(ラベル名: DATA)を作りました。

2. 「Etoys-To-Go-5.0」をダウンロードして、展開。

3. 「Etoys-To-Go-5.0」フォルダごとUSB メモリにコピー

4. USB メモリをセット→自動マウント

-


Windows 10 で、「Etoys-To-Go-5.0」の実行:

起動:

USB メモリのフォルダを開きます。

Etoys-To-Go-5.0\Etoys-To-Go-5.0.app\

「Etoys.exe」をダブルクリックして実行

-

Fedora 32(GNOME クラシック)、CentOS 8.2 で「Etoys-To-Go-5.0」を実行:

「Etoys-To-Go」は起動できませんでした。

$ cd /run/media/ubn/a03--6a/home/ubn/Etoys-To-Go-5.0/Etoys-To-Go-5.0.app/

$ ls -l
:
-rw-rw-rw-. 1 ubn ubn    2916  6月 25 07:16 etoys.sh

ファイル属性変更:

$ ls -l
:
-rwxrwxrwx. 1 ubn ubn    2916  6月 25 07:16 etoys.sh

$ ./etoys.sh
/usr/bin/padsp: 行 84: /run/media/ubn/a0399ae2-cabb-4f68-b133-f1f6fb311e6a/home/ubn/Etoys-To-Go-5.0/Etoys-To-Go-5.0.app/Contents/Linux-i686/etoys: そのようなファイルやディレクトリはありません

→確認するとファイルは存在しています。

-

Manjaro GNOME で「Etoys-To-Go-5.0」を実行:

確認:

>>> ls /run/media/ubn/DATA/Etoys-To-Go-5.0/Etoys-To-Go-5.0.app/

CameraPlugin.dll    Etoys.ini       KedamaPlugin2.dll  ScratchPlugin.dll
Contents        FT2Plugin.dll   Mpeg3Plugin.dll    etoys.sh
Etoys.exe       ImmWin32Plugin.dll  OggPlugin.dll      localePlugin.dll
Etoys.exe.manifest  KedamaPlugin.dll    README.txt

-

起動:

>>> cd /run/media/ubn/DATA/Etoys-To-Go-5.0/Etoys-To-Go-5.0.app/

>>> sh ./etoys.sh

→フォントをロードするかの選択画面が開きました。

「Etoys:Home」画面が開きました。日本語です。

→こちらがホーム画面の「Home」プロジェクトで、一番最初のプロジェクトです。

デモとして、「Car script1」が実行され、おもちゃの赤い車が走り回っています。 スクリプトも表示されています。

  • 以前のバージョンの「ナビゲータ」タブが、ツールバーやデスクトップのオブジェクトに割当てられています。

-

  • ウィンドウに、色違いの 3つの雲のメニュー(各プロジェクトの呼び出しボタン)があります

→「ナビゲート」タブの代わりみたい。

雲 1. 「新しいプロジェクトを作る」

雲 2. 「プロジェクトギャラリー」Gallery プロジェクト

→「 Gallery of Example Projects」→例題集

雲 3. 「チュートリアルとデモ」 Tutorials プロジェクト

→「Tutorials and Demos」→ガイドとデモ

-

  • ウィンドウの上段に、「タブ」をまとめたツールバーが表示

→バーの右の「斜め矢印が2つ」のアイコンで、ツールバーの表示のオン/オフができます。

  • ウィンドウの左側に、「About」タブが表示

-

  • ウィンドウの中で、右クリック→ハロ(取り囲む小さなアイコン)の表示オン

  • ウィンドウの中で、左クリック→ハロ(取り囲む小さなアイコン)の表示オフ

  • ワールドの表示は、右クリックでハロを表示させて、上側に表示の「メニュー」ハロを使います。

-

→日本語フォントがイマイチ。あまりきれいではありません。

-


E: スクイークEtoys 5.0(みんなでたのしくスクイーク 2013版)をダウンロードして使用:

みんなでたのしくスクイーク

-


→ダウンロードはリンク切れしています

-

運良くWeb アーカイブから「Etoys To Go 版」をダウンロードできました

Web アーカイブ

URL を入力

https://etoys.jp/squeak/squeak.html

以前アクセスした履歴(キャッシュ)にアクセスするので、以前の人がダウンロードに成功していないと失敗します。 そして、何をダウンロードしたかです。ダウンロードに失敗するときは、別の日付、時刻でトライ。 バージョンから、2013年以降を検索しました。

→水色か緑色のどちらかの丸、たぶん濃い色だったかな。

-

スクイークEtoys 5.0(みんなでたのしくスクイーク版)Etoys To Go 版をダウンロードして使用:

Etoys To Go 版 ダウンロード: EtoysToGo5mts2013.app.zip (Windows、Mac、Linux)

→日本語フォントと3つのOS 分のモジュールのせいか、サイズは 74.7MB とちょっと大きめ。 サーバーのキャッシュからダウンロードできてラッキーでした。

  • 日本語修正モジュール(2013年度版)を組み込んだ Etoys5.0 の「Etoys To Go」版をかろうじてダウンロードできました。

→インストールする必要がないので、ダウンロードしたファイルを解凍したらすぐに使えます。 (USBメモリにファイルをコピーしても使えます)

  • 他のEtoys でも機能は同じですが、ドキュメントに合うバージョンが、学習しやすいと思います。

-

Manjaro GNOME で(みんなでたのしくスクイーク版)「Etoys-To-Go-5.0」を実行:

確認:

>>> cd /run/media/ubn/CentOS/home/ubn/ダウンロード/Etoys5-ja/EtoysToGo5mts2013.app/Etoys-To-Go5.0.app/

>>> ls
CameraPlugin.dll    Etoys.ini       KedamaPlugin2.dll  ScratchPlugin.dll
Contents        FT2Plugin.dll   Mpeg3Plugin.dll    etoys.sh
Etoys.exe       ImmWin32Plugin.dll  OggPlugin.dll      localePlugin.dll
Etoys.exe.manifest  KedamaPlugin.dll    README.txt

>>> ls -l ./etoys.sh         
-rwxrwxr-x 1 ubn ubn 2904  5月 20  2011 ./etoys.sh

-

起動:

>>> ./etoys.sh

→ウィンドウの真ん中に、「みんなでたのしくスクイーク」の雲と太陽のシンボルが表示されています。

クリックすると、浮き上がるので移動できます。クリックで置かれます。

  • ウィンドウの上段に、「タブ」をまとめた黄緑色のEtoys のツールバーが表示。

-

日本語修正モジュール(2013年度版)について

抜粋:

スクイークEtoysは「みんなでたのしくスクイーク」の利用者の方のための特別バージョンです。 蜂須賀氏の「ひらがな対応スクイークEtoys」をベースに、日本の学校やパソコン教室での利用を想定した機能の追加及び改良を行なっています。

  • Etoysメニュー

ツールバーに「Etoysメニュー」を追加し、「迷子を連れ戻す」等のよく使う機能をメニューとして登録しています。 ※Etoysメニューは「やっぱスクイーク(Squeak)が好き!」を運営している蜂須賀氏のアイディアです。

  • 保存

保存(公開)ボタンを押した際の動作を次のとおりとしました。

・初めて保存するときには、作品の名前を指定して保存。

・2回目以降の保存の場合には、名称入力やフォルダ指定の画面を出さずに、そのまま保存。

・ファイル名に「.001」等の履歴番号がないもの、あるいは履歴番号が「.000」のものを開く場合には、初回保存と判断し作品名の指定画面を表示。(講座でテンプレートのprファイルを利用する場合のために。)

※予期せぬフリーズ等で作品が消えてしまうことを避けるために、講座中に保存が1クリックでできるようにしました。 できるだけ通常のアプリケーションの保存動作と同じような振る舞いをするようにしていますが、従来どおり「作品名.001.pr」の形式で作品ファイルが連番で保存される形式はそのままです。

  • 日本語フォント

日本語フォント(小夏フォント)の導入により、日本語の文字がより美しく表示できます。

  • 日本語訳

よく使う機能については日本語訳を見直してわかりやすい表現にしています。 たとえば、「テストタイル」の表現を従来の「テスト~はい~いいえ」から「もし~ならば~でなければ」と変更し、より普通の日本語に近い表現としました。

(注:現時点では当バージョンはひらがなには対応しておりません。)

ツールバー(ナビゲータフラップ)に次の変更を行なっています。

・「終了」ボタンを削除。(作品保存の際に誤って終了してしまうリスクがあるため。フルスクリーンにした場合はEtoysメニューより終了します。)

・「保存」と「読み込み」から「ログイン」ボタンを削除。(誤操作防止のため)

ツールバーを隠すボタンの削除。

・クイックガイド(英語版)の削除。

・全画面表示変更アイコンを拡大縮小モード変更に変更。(フルスクリーンにする場合はEtoysメニューから行います。)

ツールバーの色を緑に変更。

  • ペイントツール

ツールバーからペイントを起動した場合は描画エリアを最大に。

・ハロの「描き直し」から起動した場合は描画エリアを最小に。

  • バグ対応

・ビュワーから取り出したスクリプトに別の「スクリプト」を組み込んだ際にフリーズする現象を回避。

・ワールドのハロ「背景を描く」を削除。(誤操作の原因となるため)

  • その他

・起動時の自動拡大縮小モードを無効に。(サイズの大きい作品を開いたときに自動的に拡大縮小モードになることを防ぐため)

・起動時の雲のメニューを削除。

・ビューワやスクリプターの角を丸く。

・作品名の既定値を「作品」に。

-


F: Squeak 5.3 をダウンロードして使用:

Welcome to Squeak/Smalltalk

こちらの利点は「64bit」対応だということ(5.0 以前は 32bit のみ対応)です。 また、唯一、CentOS 3.2 でも起動できました。ただし英語。

Quick Download Current Release 5.3 :

→現在のSqueak リリースは、さまざまなバンドルで提供されます。

Linux(X86)

Windows (x64)

All-in-One (64-bit)

→「オールインワン」パッケージは、WindowsMacOS、およびLinuxx86/ARM)で動作します。 ダウンロードして解凍し、適切なファイル(Windowsの場合は「.bat」、macOSの場合は「.app」、Linuxの場合は「*.sh」)を使い起動します。

-


CentOS 8.2 にて実行:

$ cd ~/ダウンロード/Squeak5.3-19435-64bit-All-in-One/

$ ls
Squeak5.3-19435-64bit-All-in-One.app  squeak.bat  squeak.sh

$ ./squeak.sh

→ちょっと時間がかかってから下記の英語のメッセージが表示され、Squeak 画面が立ち上がりました。

和訳:

/home/ubn/ダウンロード/Squeak5.3-19435-64bit-All-in-One/Squeak5.3-19435-64bit-All-in-One.app/Contents/Linux-x86_64/bin/squeak... を使用しています

pthread_setschedparam が失敗しました:操作は許可されていません。

このVMは、別のハートビートスレッドを使用して内部クロックを更新し、イベントを処理します。
最適な操作のために、このスレッドは優先度を高くしようとしましたが、VMは優先度を変更できませんでした。
その結果、負荷の高いシステムで遅延の問題が発生する可能性があります。

この場合は、以下に示すように、/etc/security/limits.d/ に適切な構成ファイルを作成してください。
→(確認すると、フォルダはありますが、ファイルは置かれていません)

詳細については、
https://github.com/OpenSmalltalk/opensmalltalk-vm/releases/tag/r3732#linux
設定:

以下の行をすべて選択して、端末のコマンドプロンプトに貼り付けて、Enter キー:

cat <<END | sudo tee /etc/security/limits.d/squeak.conf
*      hard    rtprio  2
*      soft    rtprio  2
END
確認:
$ cat /etc/security/limits.d/squeak.conf
*      hard    rtprio  2
*      soft    rtprio  2
ログアウト→ログイン

-

確認:
$ cd ~/ダウンロード/Squeak5.3-19435-64bit-All-in-One/

$ ./squeak.sh

→起動が速くなりました。

→気になるのは、ウィンドウのタイトルバーのファイルのアドレスに含まれる日本語が化けていること。(英語名のフォルダに格納すれば気になりません。)

ちなみに、ウィンドウを最小化してもバルーンは付いてきます。こういうこともできるのですね。

-


日本語化:

参考:

[Squeak 5.1 でとりあえず日本語を表示させるために踏んだ手順の記録 2016-08-29] (https://sumim.hatenablog.com/entry/20160829/p1)

Squeak 5.3 で使えるかは未確認。Smalltalk の基本操作を学んでからでないとちょっと無理かな。 どちらにしても5.1 用のパッチは使えないと思います。

-

フォントのダウンロードはリンク切れです。下記が使えました:

Komatuna-font Download

ダウンロードして、展開すると、2つのフォントが手に入ります。

  • komatuna.ttf

  • komatuna-p.ttf

-


G: Fedora 32 で「squeak 4.5」 をリポジトリからインストール:

OS を問わない?はずの「Etoys-To-Go」とか「All-in-One」は、Fedora 32 や CentOS では使えませんでした。

-

→イメージファイルのフォーマット形式は色々あって、VM が対応できるバージョンでないと起動しません。この組み合わせはOK でした。squeak 4.5 の英語版です。

  • 残念ながら、CentOSリポジトリにはサードパーティも含めて「squeak」はありません。

  • CentOS 8.2 で唯一使えたのは、「Squeak 5.3」のAll-in-One でした。

  • もし、他のSqueak を使う予定があるのなら、インストールは避けた方がよいです。その起動に影響します。

-

インストール:

$ sudo dnf install squeak-vm squeak-image
:
インストール:
 squeak-image           noarch      4.5.13680-11.fc32         fedora       17 M
 squeak-vm              x86_64      4.10.2.2614-23.fc32       fedora      800 k

依存関係のインストール:
 nas-libs               x86_64      1.9.4-19.fc32             fedora       84 k
 xorg-x11-apps          x86_64      7.7-27.fc32               fedora      339 k
 xorg-x11-xbitmaps      noarch      1.1.1-18.fc32             fedora       36 k

-

確認:

$ whereis squeak
squeak: /usr/bin/squeak /usr/lib64/squeak /usr/share/squeak /usr/share/man/man1/squeak.1.gz

$ ls /usr/lib64/squeak/4.10.2-2614/
ckformat                    so.ScratchPlugin          so.vm-display-fbdev
so.AioPlugin                so.Squeak3D               so.vm-display-null
so.B3DAcceleratorPlugin     so.SqueakFFIPrims         so.vm-sound-ALSA
so.CameraPlugin             so.UUIDPlugin             so.vm-sound-NAS
so.ClipboardExtendedPlugin  so.UnicodePlugin          so.vm-sound-OSS
so.DBusPlugin               so.UnixOSProcessPlugin    so.vm-sound-custom
so.FileCopyPlugin           so.WeDoPlugin             so.vm-sound-null
so.HostWindowPlugin         so.XDisplayControlPlugin  so.vm-sound-pulse
so.MIDIPlugin               so.vm-display-X11         squeakvm
so.RomePlugin               so.vm-display-custom

-

初期設定(イメージの配置):

$ inisqueak

Installing squeak.image.gz to /home/ubn
Unpacking '/usr/share/squeak/SqueakV41.sources.gz' to '/home/ubn/SqueakV41.sources'
Unpacking '/usr/share/squeak/squeak.image.gz' to '/home/ubn/squeak.image'
Unpacking '/usr/share/squeak/squeak.changes.gz' to '/home/ubn/squeak.changes'

→問い合わせなしで、すぐにホーム直下に3つのファイルが解凍されました。 イメージおよびチェンジファイルともにホームに配置され、イメージ名もデフォルトなので、パス指定やイメージの指定が要らなくなります。

squeak の実行:

$ squeak

squeak.image はデフォルト名なのでイメージファイル名の指定は要りません。 ホーム直下なのでワーキングディレクトリの変更も要りません。

アプリが起動しました。 薄緑色のキャンパス地の「squeak.image」ウィンドウが開きます。至ってシンプルです。

英語の「メニューバー」だけがあり、そのバーの右側に「検索窓」と「時計」が表示されています。

-

ヘルプで確認 (About this System) :

Image
-----
/home/ubn/squeak.image
Squeak4.5
latest update: #13680
Current Change Set: Unnamed1
Image format 6504 (32 bit)

Virtual Machine
---------------
/usr/lib64/squeak/4.10.2-2614/squeakvm
Squeak4.3 of 22 December 2011 [latest update: #11860]
Unix built on Jan 31 2020 00:00:00 Compiler: 10.0.1 20200126 (Red Hat 10.0.1-0.6)
platform sources revision 2614
VMMaker versionString 4.10.2

リポジトリにあるバージョンは、Squeak4.5 で、英語版ですが使えそうです。 vm によっては使えるイメージのフォーマット形式が異なりますが、Image format 6504 (32 bit) はOK みたい。

-

使いやすいように「タブ」を表示:

ウィンドウの中で右クリック→短めの「World」画面

  • 「show main docking bar (M)」はチェック済。

  • 「show shared tabs (F)」はチェックされてません。→チェックを入れます。

→カラフルなタブが表示されました。

  • 上に、赤色の「Objects」タブ

  • 左に、茶色の「squeak」タブ

  • 右に、橙色の「Tools」タブ

  • 下の左に、紺色の「Widgets」タブ: 小部品

  • 下の左に、赤色の「Supplies」タブ: 部品

タブのクリック、または、ドラッグで開いたり閉じたりできます。 タブの位置もドラッグして調整できます。

squeak」タブにも任意のオプジェクトを置けるみたい。

-


H: Manjaro GNOME にて「squeak 4.5」をリポジトリからインストール:

-

インストール:

>>> yay -S squeak-vm
>>> yay -S squeak-sources-41
>>> yay -S squeak-image-4.5 

squeak-sources がないと警告が出ます。

確認:

>>> yay -Ss squeak
:
aur/squeak-image-4.5 4.5-1 (+1 0.00) (Installed)
    Image file for squeak VM
aur/cog-vm 5.1.201608171728-1 (+1 0.00) (Orphaned) 
    Cross-platform virtual machine for Squeak, Pharo, Cuis, and Newspeak.
aur/squeak-sources-41 41-1 (+1 0.00) (Installed)
    Source code file required by Squeak to view function names, source code, etc. within the VM.

aur/squeak-image 5.1-1 (+13 0.00) 
    Image file for squeak VM
community/squeak-vm 4.10.2.2614-5 (596.9 KiB 1.6 MiB) (Installed)
    Full-featured implementation of the Smalltalk programming language and environment

→公式リポジトリなのは、squeak-vm のみ。リポジトリから削除 (Orphaned)されているのもあります。 このsqueak-vm では squeak-image 5.1 のフォーマット形式は起動できませんでした。

-

スクリプトを実行してイメージを展開:

>>> /usr/bin/squeak.sh

CHECKING cogvm
which: no cogvm in (/usr/bin:/bin)
CHECKING squeakvm

→ダイアログが開いて下記を聞いてきます。

  1. 手持ちのイメージがあるなら指定: 「Cancel」

  2. イメージの選択: 「Squeak4.5-13680.image」

  3. イメージの格納先のフォルダ: 「~/Squeak/」

→書き込み権限が必要なのでホーム配下に指定しました。

イメージの置き場所:

>>> ls -1 ~/Squeak/

Squeak4.5-13680.changes
Squeak4.5-13680.image
SqueakV41.sources

→3つのファイルができました。

実行ファイルの置き場所:

>>> which squeak
/usr/bin/squeak

>>> whereis squeak
squeak: /usr/bin/squeak /usr/bin/squeak.sh /usr/lib/squeak /usr/share/man/man1/squeak.1.gz

-

起動:

>>> cd ~/Squeak/

>>> squeak Squeak4.5-13680.image
CHECKING cogvm
which: no cogvm in (/usr/bin:/bin)
CHECKING squeakvm

VM のcogvm がないので、squeakvm で起動されました。

→タブを表示させようとしているところです。

-

使いやすいように「タブ」を表示:

ウィンドウの中で右クリック→狭い「world」画面→「show shared tabs (F)」にチェック

-

cog-vm の存在を確認:

>>> yay -Ss squeak
:
aur/cog-vm 5.1.201608171728-1 (+1 0.00%) (Orphaned) 
    Cross-platform virtual machine for Squeak, Pharo, Cuis, and Newspeak.

→cog-vm は高速な互換VM です。すでにリポジトリから削除されていて、インストールできません。

-


まとめ

できるだけ、OS を問わないだろう?「Etoys-To-Go」とか「All-in-One」を選んでダウンロードしました。 これらは保存先が自由なのでインストールが楽です。ただし、完結しているわけではなく、システムのライブラリをアクセスします。

  • Manjaro GNOMEzsh だからか $ sh ./etoys.sh とすると起動できました。

  • Fedora 32 や CentOS では起動できるものが限られていました。(32bit のライブラリのインストールが必要?)

→許可がないのは、$ chmod +x ./etoys.sh で解決しましたが、 その後「そのようなファイルやディレクトリはありません」と言われて起動できません。

  • Linux よりもWindows 10 でインストールするのが簡単でした。

→というわけで、Windows でのインストールも記述しています。 Windows だと、VM もイメージファイルも一緒で、インストーラの実行だけなので確実で楽です。

-

どれを選ぶか、選択肢が多いので悩みますね。(CentOS はひとつですが…)

Etoys でもSmalltalkSqueak) でも、検索で学習に使えそうな教材が見つかります。どの教材で学ぶのかでもよいと思います。

-


目次

先頭

-


-

CentOS 8.2 のGNOME にてnotepadqq をソースからビルド〈H86〉

登録日: 2020-08-03 更新日: 2020-08-03

CentOS 8.2 にて、epel リポジトリFedora アプリの一部流用)を追加しましたが、Qt アプリの登録は少ないようです。「notepadqq」の場合は、その他のサードパーティリポジトリにも登録されていませんでした。

「notepadqq」をソースからビルドしてみました。ちなみに、「notepadqq」はWindows 由来のテキストエディタです。

-

「目次」

-

使用環境:

CentOS 8.2 (GNOME デスクトップ環境):

CentOS」の「CentOS-8.2.2004」をUSB メモリにインストール 後に「GNOME」デスクトップ環境をインストール しました。そして「epel」リポジトリ追加 しました。

-


事前確認: pkgs.org にて、notepadqq を検索

CentOS は出てこないので、「Fedora 32」をクリック:

Fedora x86_64 Official
notepadqq-1.4.8-10.fc32.x86_64.rpm

「notepadqq」は、Fedora 32 の公式リポジトリにありますが、CentoOS ではサードパーティにも登録がありません。どちらにしても「1.4.8」は問題の多いバージョンです。使いたいならビルドが無難です。

-

参考:

H72. Fedora 32 にて、notepadqq の最新と旧のバージョンをビルド

-


最新のnotepadqq をソースからビルドしてインストール

GitHub notepadqq/notepadqq

-

1. 作業フォルダを作成:

前回 のfeatherpad のビルド作業をやっていれば要りません。

$ cd
$ mkdir Git

-

2. ビルドに必要なツールの確認:

$ git --version
git version 2.18.4

-

もし、git がないときは:

$ sudo dnf install git

-

$ make --version
GNU Make 4.2.1

-

もし、make がないときは:

$ sudo dnf install make

-

3. CentOS で、現在 有効なリポジトリを確認:

$ dnf repolist
repo id            repo の名前
AppStream          CentOS-8 - AppStream
BaseOS             CentOS-8 - Base
PowerTools         CentOS-8 - PowerTools
code               Visual Studio Code
epel               Extra Packages for Enterprise Linux 8 - x86_64
epel-modular       Extra Packages for Enterprise Linux Modular 8 - x86_64
extras             CentOS-8 - Extras

→PowerTools とepel が有効です。とりあえずはepel を有効にしておけば OK。 もし有効でないときは、この投稿 を参照。

-

4. システム更新:

$ sudo dnf update
:
依存関係が解決しました。
行うべきことはありません。
完了しました!

-

5. 依存しているライブラリの確認を含めてのインストール:

インストール説明にある、For CentOS:

$ sudo dnf install qt5-qtbase-devel qt5-qttools-devel qt5-qtwebengine-devel qt5-qtwebsockets-devel qt5-qtsvg-devel uchardet qt5-qtwebchannel-devel pkgconfig
:
パッケージ qt5-qtbase-devel-5.12.5-4.el8.x86_64 はすでにインストールされています。
パッケージ qt5-qttools-devel-5.12.5-1.el8.0.1.x86_64 はすでにインストールされています。
パッケージ qt5-qtsvg-devel-5.12.5-1.el8.x86_64 はすでにインストールされています。
パッケージ pkgconf-pkg-config-1.4.2-1.el8.x86_64 はすでにインストールされています。
:
インストール中:
 qt5-qtwebchannel-devel       x86_64     5.12.5-1.el8       AppStream      25 k
 qt5-qtwebengine-devel        x86_64     5.12.8-1.el8       epel           83 k
 qt5-qtwebsockets-devel       x86_64     5.12.5-1.el8       AppStream      46 k
 uchardet                     x86_64     0.0.6-9.el8        epel           94 k
依存関係のインストール中:
 qt5-qtdeclarative-devel      x86_64     5.12.5-1.el8       AppStream     1.1 M
 qt5-qtlocation               x86_64     5.12.5-1.el8       AppStream     3.1 M
 qt5-qtlocation-devel         x86_64     5.12.5-1.el8       AppStream     144 k
 qt5-qtwebchannel             x86_64     5.12.5-1.el8       AppStream      94 k
 qt5-qtwebengine              x86_64     5.12.8-1.el8       epel           43 M
 qt5-qtwebengine-devtools     x86_64     5.12.8-1.el8       epel          1.9 M
 qt5-qtwebsockets             x86_64     5.12.5-1.el8       AppStream      95 k
 re2                          x86_64     20190801-1.el8     epel          191 k

これでよろしいですか? [y/N]: y

インストール済み:
  qt5-qtdeclarative-devel-5.12.5-1.el8.x86_64
  qt5-qtlocation-5.12.5-1.el8.x86_64
  qt5-qtlocation-devel-5.12.5-1.el8.x86_64
  qt5-qtwebchannel-5.12.5-1.el8.x86_64
  qt5-qtwebchannel-devel-5.12.5-1.el8.x86_64
  qt5-qtwebengine-5.12.8-1.el8.x86_64
  qt5-qtwebengine-devel-5.12.8-1.el8.x86_64
  qt5-qtwebengine-devtools-5.12.8-1.el8.x86_64
  qt5-qtwebsockets-5.12.5-1.el8.x86_64
  qt5-qtwebsockets-devel-5.12.5-1.el8.x86_64
  re2-20190801-1.el8.x86_64
  uchardet-0.0.6-9.el8.x86_64

完了しました!

→epel リポジトリが使われています。

-

6. 追加のインストール:

$ sudo dnf install uchardet-devel
:
インストール中:
 uchardet-devel         x86_64         0.0.6-9.el8           epel          11 k

これでよろしいですか? [y/N]: y

インストール済み:
  uchardet-devel-0.0.6-9.el8.x86_64

完了しました!

→epel リポジトリが使われています。

-

7. ソースを入手:

$ cd ~/Git/
$ git clone --recursive https://github.com/notepadqq/notepadqq.git

-

8. ビルド(./configure):

$ cd ~/Git/notepadqq/

[~/Git/notepadqq/]$ ls
CODE_OF_CONDUCT.md  Dockerfile   configure  notepadqq.pro  support_files
CONTRIBUTING.md     README.md    doc        snap
COPYING             build-tools  images     src

[~/Git/notepadqq/]$ ./configure --prefix /usr
:
generate Makefile... Info: creating stash file /home/ubn/Git/notepadqq/.qmake.stash
done

→最後のメッセージを確認。違うようなら問題あり。

-

[~/Git/notepadqq/]$ ls
CODE_OF_CONDUCT.md  Dockerfile  build-tools  images         src
CONTRIBUTING.md     Makefile    configure    notepadqq.pro  support_files
COPYING             README.md   doc          snap

Makefile が作られました。 「ls -a」とすれば、「.qmake.stash」が確認できるはずです。

-

9. ビルド(make):

[~/Git/notepadqq/]$ make
:
make[1]: ディレクトリ '/home/ubn/Git/notepadqq/src/ui-tests' から出ます

→しばらく時間がかかります。最後のメッセージを確認。違うようなら問題あり。

-

[~/Git/notepadqq/]$ ls
CODE_OF_CONDUCT.md  Dockerfile  build-tools  images         snap
CONTRIBUTING.md     Makefile    configure    notepadqq.pro  src
COPYING             README.md   doc          out            support_files

→out フォルダができました。ビルドの結果が出力されています。

[~/Git/notepadqq/]$ ls out/
build_data  release

[~/Git/notepadqq/]$ ls out/build_data/
advancedsearchdock.o               moc_frmencodingchooser.cpp
:
moc_frmabout.cpp                   ui_mainwindow.h
moc_frmabout.o                     windowstub.o

[~/Git/notepadqq/]$ ls out/release/
appdata  bin  lib

[~/Git/notepadqq/]$ ls out/release/appdata/
editor  extension_tools

[~/Git/notepadqq/]$ ls out/release/bin/
notepadqq

[~/Git/notepadqq/]$ ls out/release/lib/
notepadqq-bin

-

10. インストール

[~/Git/notepadqq/]$ sudo make install
:
make[1]: ディレクトリ '/home/ubn/Git/notepadqq/src/ui-tests' から出ます

→最後のメッセージを確認。違うようなら問題あり。

-

11. 動作確認:

[~/Git/notepadqq/]$ notepadqq --version
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
Notepadqq 2.0.0-beta+git

GNOME を「Wayland」セッションでログインしていると、他のQt アプリと同じように「Wayland での警告」が表示されます。

-


12. ランチャーでのアイコンがギア(未定義)表示なので解消:

アプリのアイコンのデータベースを更新する必要があります。 ダミー操作を行います。

「ソフトウェア」アプリにて、「IDLE3」で検索。(どのアプリでも良いのですが、前回もこれを使いました) 「IDLE3」が入っていれば「削除」(入っていなくても OK)。その後「インストール」

→notepadqq アイコンが表示されました。

-


13. アプリを起動:

→「1.4.8」で問題があった、バージョン表示画面のボタンの表示は正常です。マウスの中央ボタンでの貼り付け動作もOK でした。

Fedora 32 のときと違い、ibus-mozc で日本語入力できました。 Fedora 32 のときと違い、動作も安定しています。

-


14. テーマを「midnight」にしてみました:

f:id:FuRuYa7:20200803174123j:plain

→テーマがいっぱいあるのが利点です。Markdown ファイルを開いてから、テーマを変更します。

-


まとめ

CentOS では、リポジトリに登録されている「Qt アプリ」が少ないと思います。欲しいアプリがあれば、公式リポジトリだけでなく、サードパーティリポジトリの追加も考えてよいと思います。そのしくみがあります。

pkgs.org を使うと、アプリ名で、アプリが登録されているリポジトリが検索できます。 使える最新のバージョンも確認でき、便利なので使用頻度は高いです。 バージョンによって使える機能に差があります。 自分の欲しい機能があるかを確認し、ビルドするかを決められます。

今回はビルドして最新のアプリをインストールしてみました。一度他の環境でビルドしたことがあるので、スムーズにビルドできました。(インストール説明に CentOS の場合のやり方が書かれていたのがポイントです。この辺りは、開発者で違います。)

-

-


目次

先頭

-


-

CentOS 8.2 のGNOME にてリポジトリ追加でqpdfview をインストール、日本語化〈H85〉

登録日: 2020-08-02 更新日: 2020-08-02

CentOS 8.2 にて、epel リポジトリFedora アプリの一部流用)を追加しましたが、Qt アプリはあまり登録されておらず、使いたい「qpdfview」がインストールできませんでした。

リポジトリにアプリがない場合にどうやったらインストールできるのか、いくつか試してみました。

-

「目次」

-

使用環境:

CentOS 8.2 (GNOME デスクトップ環境):

CentOS」の「CentOS-8.2.2004」をUSB メモリにインストール 後に「GNOME」デスクトップ環境をインストール しました。そして「epel」リポジトリ追加 しました。

-


1. qpdfview をソースからビルドしてインストールしてみます:

-

1-1. qpdfview のソースをダウンロード

1. qpdfview のサイトをブラウザで開きます。

公式サイト:

qpdfview

Ubuntu 系のサイトです。

2. 右にある、Downloads 「qpdfview-0.4.18.tar.gz 」をクリック。

Downloads Latest version is 0.4.18 (2019-07-24)

qpdfview-0.4.18.tar.gz

3. ダウンロードした「qpdfview-0.4.18.tar.gz」を右クリック→「ここで展開」→「qpdfview-0.4.18」フォルダが作成されます。

4. 新しく作られたのは、「~/ダウンロード/qpdfview-0.4.18」フォルダです。

-

1-2. インストールガイドを確認:

新しく作られたフォルダにおいて、

「~/ダウンロード/qpdfview-0.4.18/README」をテキストエディタで開いて内容を確認しました。

和訳と抜粋:

qpdfview は、Poppler、libspectre、DjVuLibre、CUPS および Qt を使用するタブ付きドキュメントビューアであり、 GPL バージョン2 以降でライセンスされています。

-

  • 以下はその内容から判断して、個人的に作成したおおよその手順です:

依存パッケージ:

  • libQtCore、libQtGui に依存。

  • libQtSvg、libQtSql、libQtDBus、libcups、resp にも依存。

  • libz(SVGSQLD-Bus、CUPS、resp の場合)。

  • SyncTeX サポートが有効になっています。

  • Qtバージョン4 が使用され、libmagic のサポートが有効になっているかどうかは、libmagic にも依存。

-


プラグインの依存パッケージ:

  • PDF プラグインは、libQtCore、libQtXml、libQtGui、および libpoppler-qt4、libpoppler-qt5 に依存。

  • PS プラグインは、libQtCore、libQtGui、libspectre に依存。

  • DjVu プラグインは、libQtCore、libQtGui、libdjvulibre に依存。

  • Fitz プラグインは、libQtCore、libQtGui、libmupdf に依存。

→Fitz プラグインは現在、実験的扱いです。

-


1-3. ビルドに使うツールの確認:

$ lrelease --version
bash: lrelease: コマンドが見つかりませんでした...

$ whereis lrelease
lrelease:

$ ls /usr/lib64/qt5/bin/lr*
/usr/lib64/qt5/bin/lrelease  /usr/lib64/qt5/bin/lrelease-qt5

→パスは通っていません。パス指定が必要です。

-

$ qmake --version
bash: qmake: コマンドが見つかりませんでした...

$ ls /usr/lib64/qt5/bin/qm*
/usr/lib64/qt5/bin/qmake  /usr/lib64/qt5/bin/qmake-qt5

→パスは通っていません。パス指定が必要です。

-

$ make --version
GNU Make 4.2.1

$ which make
/usr/bin/make

-


1-4. ビルド:

翻訳を実行:

$ cd ~/ダウンロード/qpdfview-0.4.18/

$ ls translations/qpdfview_j*
translations/qpdfview_ja.ts


$ /usr/lib64/qt5/bin/lrelease qpdfview.pro
:
Updating '/home/ubn/ダウンロード/qpdfview-0.4.18/translations/qpdfview_zh_CN.qm'...
    Generated 369 translation(s) (369 finished and 0 unfinished)

$ ls translations/qpdfview_j*
translations/qpdfview_ja.ts

→日本語は翻訳対象から外されています。

-

翻訳対象に日本語を追加:

$ cd ~/ダウンロード/qpdfview-0.4.18/
$ gedit qpdfview.pro

55行目と56行目の間にja を追加します:

    translations/qpdfview_it.ts \
    translations/qpdfview_kk.ts \

    translations/qpdfview_it.ts \
    translations/qpdfview_ja.ts \
    translations/qpdfview_kk.ts \

-

翻訳ファイルを個人的に手直し(任意):

$ gedit translations/qpdfview_ja.ts

→お好きな言い回しに変更。

-

翻訳の再実行:

$ /usr/lib64/qt5/bin/lrelease qpdfview.pro
:
Updating '/home/ubn/ダウンロード/qpdfview-0.4.18/translations/qpdfview_ja.qm'...
    Generated 368 translation(s) (368 finished and 0 unfinished)
    Ignored 1 untranslated source text(s)

$ ls translations/qpdfview_j*
translations/qpdfview_ja.qm  translations/qpdfview_ja.ts

→日本語の翻訳ファイル(qpdfview_ja.qm) ができました。

-


1-5. qmake:

→依存関係はまったく解決せずに実行するので多くのエラーが出ると思います:

ただし、前回、Featherpad のビルド を行っているので「Qt アプリをビルドする環境」は整っていると思います。

エラーにより、足りないパッケージを指摘してくれるはず? です。それに頼ろうかな。

$ /usr/lib64/qt5/bin/qmake qpdfview.pro
Info: creating stash file /home/ubn/ダウンロード/qpdfview-0.4.18/qpdfview/.qmake.stash

→エラーで止まりました。このメッセージは最近見ましたよ。

-

make コマンドと連結して、再実行:

$ /usr/lib64/qt5/bin/qmake qpdfview.pro && make

( test -e Makefile.pdf-plugin || /usr/lib64/qt5/bin/qmake -o Makefile.pdf-plugin /home/ubn/ダウンロード/qpdfview-0.4.18/pdf-plugin.pro ) && make -f Makefile.pdf-plugin 
Project ERROR: poppler-qt5 development package not found
make: *** [Makefile:48: sub-pdf-plugin-pro-make_first-ordered] エラー 3

→「poppler-qt5 開発版」を入れなさいと教えてくれます。

-

poppler-qt5 開発版 の検索:

$ dnf search poppler-qt5
:
poppler-qt5.x86_64 : Qt5 wrapper for poppler
poppler-qt5-devel.x86_64 : Development files for Qt5 wrapper

$ dnf list poppler-qt5*
:
インストール済みパッケージ
poppler-qt5.x86_64                              0.67.0-22.el8                               @raven-extras
利用可能なパッケージ
poppler-qt5-devel.x86_64               0.66.0-26.el8               PowerTools

→PowerTools リポジトリに含まれてます。(公式のリポジトリですがオフになっているときがあります)

-

poppler-qt5-devel のインストール:

$ sudo dnf install poppler-qt5-devel
:
エラー: 
 問題: package poppler-devel-0.66.0-26.el8.x86_64 requires poppler(x86-64) = 0.66.0-26.el8, but none of the providers can be installed
  - cannot install both poppler-0.66.0-26.el8.x86_64 and poppler-0.67.0-22.el8.x86_64
  - package poppler-qt5-devel-0.66.0-26.el8.x86_64 requires poppler-devel(x86-64) = 0.66.0-26.el8, but none of the providers can be installed
  - package poppler-qt-0.67.0-22.el8.x86_64 requires poppler(x86-64) = 0.67.0-22.el8, but none of the providers can be installed
  - cannot install the best candidate for the job
  - problem with installed package poppler-qt-0.67.0-22.el8.x86_64
(競合するパッケージを置き換えるには、コマンドラインに '--allowerasing' を追加してみてください または、'--skip-broken' を追加して、インストール不可のパッケージをスキップしてください または、'--nobest' を追加して、最適候補のパッケージのみを使用しないでください)

→すでに入っている poppler-qt5 が0.67.0-22.el8 なので、poppler-devel-0.66.0-26.el8 は入れられないと怒られました。 CentOS は全体的にバージョンが低いので、こうなるんでしょうね。

Fedora ならバージョンが高いだろうから、うまくビルドできそうです。でも、なんのためにCentOS にしたのかわからなくなります。

-

これ以降もバージョン不整合がいっぱい出そうなので、中止。

ということで、以降の作業は参考としての記述…。

-


ビルド時オプション:

一部省略:(詳細は README 参照)

たとえば、CUPS と PostScript のサポートなしでプログラムをビルドしたい場合は、

「$ qmake qpdfview.pro」の代わりに

「$ qmake CONFIG + = "without_cups without_ps" qpdfview.pro」を実行できます。

-


1-6. もし、make がうまく行っていたら、インストール実行:

$ sudo make install

インストールパスは「qpdfview.pri」に定義があります:

一部抜粋:

APPLICATION_VERSION = 0.4.18

TARGET_INSTALL_PATH = /usr/bin
PLUGIN_INSTALL_PATH = /usr/lib/qpdfview
DATA_INSTALL_PATH = /usr/share/qpdfview
MANUAL_INSTALL_PATH = /usr/share/man/man1
ICON_INSTALL_PATH = /usr/share/icons/hicolor/scalable/apps
LAUNCHER_INSTALL_PATH = /usr/share/applications
APPDATA_INSTALL_PATH = /usr/share/appdata

→翻訳ファイルの配置については、DATA_INSTALL_PATH が該当するみたい。

-


1-7. ビルドでは、前段階の準備が重要

まずは必要な「依存パッケージ」を調べます。 ディストリビューションごとにパッケージ名は異なりますし、機能の含まれ方も違います。

メインでない、別のディストリビューションについては手順が詳しく書かれていない場合があります。

こちらは、たぶん、Ubuntu 系の場合のパッケージ名です。「launchpad」なのでしかたないところ。

-


CentOS の場合のパッケージ名がわかりません

CentOS に対応したパッケージ名を調べるのはたいへんです。 調べずにエラーメッセージに頼ろうと思ったのですが、バージョン不整合の問題が発生しました。

これはシステムにかかわることなので対応は難しいと思われます。

-


1-8. 結果オーライとして、「日本語の翻訳ファイル」が作成できました

qpdfview がインストールされた環境で、このファイルをシステムに配置するだけで、簡単にアプリを日本語化できます。

$ sudo cp ~/ダウンロード/qpdfview-0.4.18/translations/qpdfview_ja.qm /usr/share/qpdfview/qpdfview_ja.qm

-

-


2. qpdfview があるリポジトリを追加して、インストールしてみます:

  • 上記のビルド作業をしなくても、リポジトリの追加で、欲しいアプリを楽にインストールできます。

-


2-1. CentOS に追加して利用できるリポジトリを検索:

CentOS Repositories

もしくは、

pkgs.org : Home で「CentOS 8」ボタンをクリック

→このサイトには、公式リポジトリも含まれているので、「アプリ名」で検索すれば、アプリが登録されているリポジトリがわかります。

-

ここで、「qpdfview」を検索すると 1つのリポジトリがヒット:

Raven Extras x86_64 Third-Party
qpdfview-0.4.18-3.el8.x86_64.rpm    Tabbed PDF Viewer

→「Raven Extras」リポジトリを入れれば良さそう。

-

ちなみに、Raven リポジトリを追加登録する「raven-release」がどのリポジトリにあるか検索:

Raven x86_64 Third-Party
raven-release-1.0-1.el8.noarch.rpm  Raven repository configuration

Raven リポジトリを追加登録したいのに、自身に入っています。公式リポジトリに置かれていないと使えません。 たぶん、これは将来用。

-


2-2. Raven リポジトリを手動で追加:

raven-Homepage

→ロシア語のページが開きました。設定ファイルの内容を確認しました。

セキュリティの問題でブラウザでその後開けなくなりました。 もしかしたら、問題のあるリポジトリだったのかもしれません。

-

Raven リポジトリは 3つ:

1. raven (Third-Party)

→EPEL に登録されていないアプリやアップグレードバージョン。

2. raven-extras (Third-Party)

Raven に入っていない追加分。他のリポジトリと干渉する可能性のあるもの。

3. raven-multimedia (Third-Party)

→マルチメディア系。

Raven リポジトリの登録時に3つの定義があるので、3つのリポジトリが利用できます。

通常は既存のリポジトリと干渉しないようにRavan のみが有効の設定です。→後で 3つとも無効に設定しました。

アプリがほしいときに有効にすれば良いと思います。ただし、依存で必要なライブラリがRavan にもあることがあるので、 Raven Extras を有効にするときは、一緒にRaven も有効にするのが無難です。

-

2-3. リポジトリのインストール:

手動で設定ファイルを作成します。

関連ファイル:

/etc/pki/rpm-gpg/RPM-GPG-KEY-raven
/etc/yum.repos.d/raven.repo

-

raven.repo ファイルを新規作成:

$ gedit ~/ドキュメント/raven.repo

↓ 下記を記入:

[raven]
name=Raven packages
baseurl=https://pkgs.dyn.su/el8/base/x86_64/
gpgcheck=0
enabled=1 

[raven-extras]
name=Raven extra packages
baseurl=https://pkgs.dyn.su/el8/extras/x86_64/
gpgcheck=0
enabled=0

[raven-multimedia]
name=Raven multimedia packages
baseurl=https://pkgs.dyn.su/el8/multimedia/x86_64/
gpgcheck=0
enabled=0

Raven のホームページで書かれていた内容です。Raven リポジトリだけが有効です。

-

配置:

$ sudo cp ~/ドキュメント/raven.repo /etc/yum.repos.d/raven.repo

-

確認:

$ ls -1 /etc/yum.repos.d/

CentOS-AppStream.repo
CentOS-Base.repo
CentOS-CR.repo
CentOS-Debuginfo.repo
CentOS-Devel.repo
CentOS-Extras.repo
CentOS-HA.repo
CentOS-Media.repo
CentOS-PowerTools.repo
CentOS-Sources.repo
CentOS-Vault.repo
CentOS-centosplus.repo
CentOS-fasttrack.repo
epel-modular.repo
epel-playground.repo
epel-testing-modular.repo
epel-testing.repo
epel.repo
raven.repo   ←(追加されました)
vscode.repo

再起動

$ sudo dnf update
:
Raven packages                                   90 kB/s | 2.2 MB     00:25    
:
インストール中:
 gnome-themes-extra     x86_64     3.28-7.el8               raven         2.7 M
     置き換え  gnome-themes-standard.x86_64 3.22.3-4.el8
アップグレード中:
 adwaita-gtk2-theme     x86_64     3.28-7.el8               raven         151 k
 adwaita-qt             x86_64     1.1.1-3.el8              raven         9.3 k
 gupnp-av               x86_64     0.12.11-1.el8            raven         184 k
 gupnp-dlna             x86_64     0.10.5-10.el8            raven         173 k
 libmediaart            x86_64     1.9.4-7.el8              raven          97 k
 libmspack              x86_64     0.10.1-0.1.alpha.el8     raven          73 k
 nano                   x86_64     4.5-1.el8                raven         698 k
 okular                 x86_64     20.04.2-1.el8            raven         5.1 M
 okular-libs            x86_64     20.04.2-1.el8            raven         5.9 M
 okular-part            x86_64     20.04.2-1.el8            raven          20 M
 pinentry               x86_64     1.1.0-5.el8              raven          99 k
 pinentry-gnome3        x86_64     1.1.0-5.el8              raven          50 k
 pinentry-gtk           x86_64     1.1.0-5.el8              raven          54 k
 procps-ng              x86_64     3.3.15-7.el8             raven         736 k
 python3-pyxdg          noarch     0.26-5.el8               raven         101 k
 rest                   x86_64     0.8.1-7.el8              raven         189 k
依存関係のインストール中:
 adwaita-qt4            x86_64     1.1.1-3.el8              raven         218 k
 libmng                 x86_64     2.0.3-7.el8              AppStream     184 k
 qt                     x86_64     1:4.8.7-52.el8           raven         5.1 M
 qt-common              noarch     1:4.8.7-52.el8           raven         6.4 k
 qt-settings            noarch     32.0-3.el8               epel           29 k
 qt-x11                 x86_64     1:4.8.7-52.el8           raven          13 M
:
これでよろしいですか? [y/N]: N   ←( N で中断しました)
操作が中断されました。

→sudo dnf update を実行すると既存のアプリまでバージョンが上がりそうになりました。 一部のパッケージがサードバーティのものに入れ替わることと、一部だけのパッケージが上がると、バージョン不整合で他のアプリがインストールできなくなる可能性があります。その影響が心配。

当分は、必要なアプリをインストールするときだけ「ravenリポジトリを有効にすることにしました。

$ dnf list raven-release
:
利用可能なパッケージ
raven-release.noarch                       1.0-1.el8                       raven

$ dnf search raven-release
:
raven-release.noarch : Raven repository configuration

→「ravenリポジトリを有効にしたら、「raven-release」がヒット。遅すぎ。 「ravenリポジトリを有効にするパッケージなのに、有効にしないと使えないのでは役に立ちません。 公式リポジトリに登録されないとダメなわけです。登録される準備はしているということかな。

-

2-4. 3つのraven リポジトリを無効に設定:

$ sudo nano /etc/yum.repos.d/raven.repo

↓ 3つの enabled=x を enabled=0 に変更:

[raven]
name=Raven packages
baseurl=https://pkgs.dyn.su/el8/base/x86_64/
gpgcheck=0
enabled=0 

[raven-extras]
name=Raven extra packages
baseurl=https://pkgs.dyn.su/el8/extras/x86_64/
gpgcheck=0
enabled=0

[raven-multimedia]
name=Raven multimedia packages
baseurl=https://pkgs.dyn.su/el8/multimedia/x86_64/
gpgcheck=0
enabled=0

-

再起動

-

3つのraven リポジトリが無効かを確認:

-

現在 有効なリポジトリを確認:
$ dnf repolist
repo id            repo の名前
AppStream          CentOS-8 - AppStream
BaseOS             CentOS-8 - Base
PowerTools         CentOS-8 - PowerTools
code               Visual Studio Code
epel               Extra Packages for Enterprise Linux 8 - x86_64
epel-modular       Extra Packages for Enterprise Linux Modular 8 - x86_64
extras             CentOS-8 - Extras

-

現在 有効ではない(無効の)リポジトリを確認:
$ dnf repolist --disabled
:
raven                          Raven packages
raven-extras                   Raven extra packages
raven-multimedia               Raven multimedia packages

-

システム更新:
$ sudo dnf update
:
依存関係が解決しました。
行うべきことはありません。
完了しました!

-

qpdfview が見えないことを確認:
$ dnf list qpdfview
:
エラー: 表示するための一致したパッケージはありません

-


2-5. raven リポジトリのqpdfview アプリを検索:

$ dnf --enablerepo=raven-extras list qpdfview
Raven extra packages                             66 kB/s | 797 kB     00:12
:
利用可能なパッケージ
qpdfview.x86_64                    0.4.18-3.el8                     raven-extras

-

2-6. raven リポジトリのアプリをインストールするコマンド:

必要に応じて、有効にするオプションを付けて実行:

$ sudo dnf --enablerepo=raven,raven-extras,raven-multimedia install パッケージ名1 パッケージ名2 ...

→ただし、Ravenサードパーティリポジトリなので、使うのは自己責任です。

-

-


3. qpdfview のインストール:

3-1: raven-extras リポジトリ指定でインストール:

$ sudo dnf --enablerepo=raven-extras install qpdfview
:
エラー: 
 問題: conflicting requests
  - nothing provides libQtCore.so.4()(64bit) needed by qpdfview-0.4.18-3.el8.x86_64
  - nothing provides libQtGui.so.4()(64bit) needed by qpdfview-0.4.18-3.el8.x86_64
  - nothing provides libQtXml.so.4()(64bit) needed by qpdfview-0.4.18-3.el8.x86_64
  - nothing provides libQtDBus.so.4()(64bit) needed by qpdfview-0.4.18-3.el8.x86_64
  - nothing provides libQtSql.so.4()(64bit) needed by qpdfview-0.4.18-3.el8.x86_64
  - nothing provides libQtSvg.so.4()(64bit) needed by qpdfview-0.4.18-3.el8.x86_64
  - nothing provides qt-sqlite needed by qpdfview-0.4.18-3.el8.x86_64
(インストール不可のパッケージをスキップするには、'--skip-broken' を追加してみてください または、'--nobest' を追加して、最適候補のパッケージのみを使用しないでください)

リポジトリが足りないようです。

-

3-2: ravenraven-extras のリポジトリ指定でインストール:

$ sudo dnf --enablerepo=raven,raven-extras install qpdfview
:
Raven packages                                  1.9 kB/s | 3.0 kB     00:01    
:
インストール中:
 qpdfview             x86_64      0.4.18-3.el8          raven-extras      460 k
アップグレード中:
 poppler              x86_64      0.67.0-22.el8         raven-extras      942 k
 poppler-glib         x86_64      0.67.0-22.el8         raven-extras      162 k
 poppler-qt5          x86_64      0.67.0-22.el8         raven-extras      208 k
 poppler-utils        x86_64      0.67.0-22.el8         raven-extras      227 k
依存関係のインストール中:
 libmng               x86_64      2.0.3-7.el8           AppStream         184 k
 poppler-qt           x86_64      0.67.0-22.el8         raven-extras      189 k
 qpdfview-common      noarch      0.4.18-3.el8          raven-extras      279 k
 qt                   x86_64      1:4.8.7-52.el8        raven             5.1 M
 qt-common            noarch      1:4.8.7-52.el8        raven             6.4 k
 qt-settings          noarch      32.0-3.el8            epel               29 k
 qt-x11               x86_64      1:4.8.7-52.el8        raven              13 M
:
Installed products updated.

アップグレード済み:
  poppler-0.67.0-22.el8.x86_64          poppler-glib-0.67.0-22.el8.x86_64      
  poppler-qt5-0.67.0-22.el8.x86_64      poppler-utils-0.67.0-22.el8.x86_64     

インストール済み:
  libmng-2.0.3-7.el8.x86_64           poppler-qt-0.67.0-22.el8.x86_64          
  qpdfview-0.4.18-3.el8.x86_64        qpdfview-common-0.4.18-3.el8.noarch      
  qt-1:4.8.7-52.el8.x86_64            qt-common-1:4.8.7-52.el8.noarch          
  qt-settings-32.0-3.el8.noarch       qt-x11-1:4.8.7-52.el8.x86_64             

完了しました!

→インストールできました。

  • 表示されているパッケージをインストールすれば、ビルドの依存関係は解決しそうです。

ただし、4つのリポジトリ(AppStream、epel、ravenraven-extras)が使われていて、サードバーティのリポジトリを有効にしないとできないわけで、公式リポジトリだけで、自力でビルドするのはきびしそう。

-

3-3: qpdfview の起動:

$ qpdfview --version
Gtk-Message: 18:23:47.604: Failed to load module "canberra-gtk-module"
"Unknown command-line option '--version'." 

→バージョン表示はサポートしていないようです。

$ qpdfview
Gtk-Message: 18:23:57.802: Failed to load module "canberra-gtk-module"

→起動されました。端末にWayland の警告は表示されませんが、 canberra-gtk のモジュールが足りない、というメッセージが表示されます。

→日本語化されていません。

-

3-4: 不足しているモジュールの検索:

$ dnf --enablerepo=raven,raven-extras search canberra
:
========================== 名前 & 概要 一致: canberra ==========================
libcanberra-gtk3.x86_64 : Gtk+ 3.x Bindings for libcanberra
libcanberra-gtk2.x86_64 : Gtk+ 2.x Bindings for libcanberra
libcanberra-devel.x86_64 : Development Files for libcanberra Client Development
============================= 名前 一致: canberra ==============================
libcanberra.x86_64 : Portable Sound Event Library

-

$ dnf --enablerepo=raven,raven-extras list *canberra*
:
インストール済みパッケージ
libcanberra.x86_64                       0.30-16.el8                  @AppStream
libcanberra-gtk3.x86_64                  0.30-16.el8                  @AppStream

利用可能なパッケージ
libcanberra-devel.x86_64                 0.30-16.el8                  AppStream 
libcanberra-gtk2.x86_64                  0.30-16.el8                  AppStream 

→それらしきものは入っています。devel を入れるかどうかですね。

$ dnf info libcanberra
:
インストール済みパッケージ
名前         : libcanberra
バージョン   : 0.30
リリース     : 16.el8
Arch         : x86_64
サイズ       : 314 k
ソース       : libcanberra-0.30-16.el8.src.rpm
リポジトリー : @System
repo から    : AppStream
概要         : Portable Sound Event Library
URL          : http://git.0pointer.de/?p=libcanberra.git;a=summary
ライセンス   : LGPLv2+
説明         : A small and lightweight implementation of the XDG Sound Theme
             : Specification (http://0pointer.de/public/sound-theme-spec.html).

→デスクトップイベントへのサウンドテーマを提供するみたい。XDGサウンドテーマの小規模で軽量な実装。たぶん、クリック音とか警告音? 動作に支障ないのでそのままにします。

-

3-5: qpdfview の日本語化:

翻訳ファイルをシステムに配置:

$ sudo cp ~/ダウンロード/qpdfview-0.4.18/translations/qpdfview_ja.qm /usr/share/qpdfview/qpdfview_ja.qm

-

起動してみました:

→日本語化され、使いやすくなりました。ちなみに、ヘルプファイルは英語のままです。

ヘルプファイルはHTML ファイルです。ヘルプファイルの原本は初版のままで、新しい機能の説明がないので、翻訳してもあまり役に立ちそうにありません。また、新しい機能について知らないことには本文で翻訳が漏れている部分の翻訳も難しいです。意味をわかってはじめてわかりやすい翻訳ができます。

-


まとめ

CentOS では、リポジトリに「Qt アプリ」が少ないと思います。欲しいアプリがあれば、公式リポジトリだけでなく、サードパーティリポジトリの追加も考えてよいと思います。

アプリをインストールできる可能性が増えて助かります。ただし、リポジトリが競合したり、信頼性に不安もあるので、うまくオンオフを制限しながら使うことになります。FedoraCentOSリポジトリ関連の操作がしやすいのも利点だと思います。

pkgs.org を使うと、アプリ名で、アプリが登録されているリポジトリが検索できます。使える最新のバージョンも確認でき、便利なので使用頻度は高いです。バージョンによって使える機能に差があるものです。これを見てビルドするかを決められます。

-

-


目次

先頭

-


-