#author("2022-12-16T09:56:20+09:00","","")
#author("2024-05-17T09:28:55+09:00","","")
[[Ubuntu]]
Xubuntu 22.04 Jammy Jellyfish インストールメモ
#contents
* 環境 [#oe9c06f8]
- 試験環境
-- VirtualBox 6.1 on Windows 11
* もろもろ所感 [#m8372098]
- いろんなアプリのGtk3移行が進んでいる気がする。(ようやくという感もあるけど)
- "gnome-disk-utility"というアプリがインストールされている。gpartedみたいなもの。ちゃんと動くやつなのか、ちょっと不安だけど。。
* インストールメディアの作成 [#u3808f0b]
USBメモリにインストーライメージを書き込む。
$ sudo dd bs=4M if=xubuntu-22.04.1-desktop-amd64.iso of=/dev/sdb conv=sync,noerror
* ソフトウェアアップデート [#hb1d6cac]
/etc/apt/apt.confにプロキシの設定を実施。
「ソフトウェアとアップデート」設定で、日本のAPTミラーを設定。
なぜかメニューアイテムからだと起動しなかったので、
$ software-properties-gtk
を実行。ついでにアップデートの通知を「すぐに表示」にして、自動インストールはしないように設定。
(なんかsoftware-properties-gtkがクラッシュしたので自動バグリポートを送信...)
ともかく、アップデートをインストール。
$ sudo apt update
$ sudo apt upgrade
* CapsLockをControlにする。 [#qc9c0d45]
/etc/default/keyboardを変更。
XKBOPTIONS="ctrl:nocaps"
* Japanese Teamレポジトリ [#scba9c3b]
https://www.ubuntulinux.jp/japanese
21.10あたりからAPTの鍵管理の方式が変わったようだ。
$ sudo wget https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -P /etc/apt/trusted.gpg.d/
$ sudo wget https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -P /etc/apt/trusted.gpg.d/
$ sudo wget https://www.ubuntulinux.jp/sources.list.d/jammy.list -O /etc/apt/sources.list.d/ubuntu-ja.list
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install ubuntu-defaults-ja
* 「言語サポート」をチェック [#x22f7527]
未インストールパッケージをダウンロード。
fcitxがインストールされていないようだ。
$ sudo apt install fcitx fcitx-config-gtk fcitx-mozc
デフォルトでIBusになったのか?
ていうか、今ならfcitx5とやらを使うべきらしい。なんそれ。
- https://gihyo.jp/admin/serial/01/ubuntu-recipe/0689
$ sudo apt install fcitx5-mozc
一度再起動し、「言語サポート」からIMをfcitx 5に設定。
* いろいろインストール [#l8a48184]
$ sudo apt install build-essential git curl lv byobu net-tools fonts-takao
* fcitx 5の設定 [#b60bcce7]
- 邪魔そうなホットキーを削除
- 「クリップボード」アドオンを無効化
* mozc設定 [#i3a5b52d]
従来通り。
- スペースの入力 半角
- テンキーからの入力 直接入力
- サジェストは無効
- キーマップは https://github.com/debug-ito/debug-ito-mozc
* VirtualBox Guest OSとしての設定 [#s81e8420]
** VBox Guest Addition [#e4d5926c]
Guest Addition CDイメージをダウンロードして、マウントして、VBoxLinuxAdditions.runを実行。
実行完了したら再起動。
** 共有フォルダ [#y619975e]
VirtualBox側の設定で、"share"という共有フォルダを設定。
それをGuest OSの/mnt/shareにマウントする。/etc/fstabに以下の記述を追加。
share /mnt/share vboxsf defaults,noauto 0 0
* ~/.config/user-dirs.dirs [#xd945e38]
いつも通り設定。
* byobu [#f38e0799]
byobuを初回起動後、プロンプトを普通にする。
$ byobu-disable-prompt
エスケープシーケンスをCtrl-zに変更。C-aの挙動は"Emacs mode"で。
$HOME/.byobu/.tmux.confを以下の内容に設定。
bind-key -T prefix 2 split-window -v
bind-key -T prefix 3 split-window -h
bind-key -T prefix "C-^" resize-pane -U 5
bind-key -T prefix "M-^" resize-pane -D 5
bind-key -T prefix "C-]" resize-pane -R 5
bind-key -T prefix "M-]" resize-pane -L 5
bind-key -T prefix "+" select-layout even-vertical
bind-key -T prefix "*" select-layout even-horizontal
なお、.tmux.confの内容はF5を押すことでbyobuにリロードさせることができる。
* Xfce4 Terminal [#qd608aad]
適宜設定。GUIの設定メニューをいじればたいていOK。
* 設定マネージャ [#w1d5fc3c]
** ウィンドウマネージャ [#f3fd4c95]
- フォントは Sans regular
- テーマは https://github.com/debug-ito/Gtk-Mejiro
** ウィンドウマネージャ (詳細) [#w29ace6b]
- コンポジット処理
-- 「ウィンドウの循環中アイコンとともにウィンドウのプレビューを表示する」ON
-- 「影を落とす」はOFF
** パネル [#d9e59be0]
- モード: デスクバー
- 左寄せ
- 行数: 2
- 背景なし (システムスタイル)
- 不透明度 100%
- CPUグラフを追加
- 時計の表示方式は %H:%M%n(%a)%n%m/%d
** 外観 [#c89eaca3]
- テーマはGtk-Mejiro
- アイコンはElementary Xfce
- フォントは Sans (システムフォント)
- ヒンティングはなし
** キーボード [#f0abaca8]
- ショートカット
-- emacs: Super+E
-- xfce4-terminal -x byobu: Super+B
** リムーバブルデバイスとメディア [#bd0021f1]
自動マウントや自動再生はなし
** セッションと起動 [#s2806020]
- 自動開始アプリケーション
-- blueman-appletをOFF
-- 「GNOMEキーリング: シークレットサービス」をON (これをONにしないとVivaldi起動時にパスワード入力を求められる)
- 詳細
-- 「起動時にGNOMEサービスを起動する」をOFF
** 時刻と日付の設定 [#cf43ddf8]
- 「設定」を「インターネット上のサーバと同期」にしたらNTPサービスのインストールが必要、と言われた。
- ていうか、UbuntuのNTPクライアントは systemd-timesyncdサービス。
-- /etc/systemd/timesyncd.conf でNTPサーバの設定をする。
* GtkのEmacsキーバインド [#g5118ed9]
https://github.com/debug-ito/GtkEmacs-debug-ito
* Emacs [#sfbde06c]
$ sudo apt install emacs
$ sudo apt install emacs-goodies-el magit haskell-mode emacs-mozc
.emacsほかの設定は https://github.com/debug-ito/debug-ito-emacs-env から。
MELPA(https://stable.melpa.org/packages/ )から以下のパッケージをインストール。
- yasnippet-20200604.246
- markdown-mode-2.4
- elscreen-20181009.451
- yaml-mode-20221022.920
ソースからインストール。
- cperl-mode https://github.com/jrockway/cperl-mode
-- masterのHEAD (abef6e28d8e8ad6c844b93b6aabd0ebf6bc3875b) を使用。
** 問題点: set-default-fontがなくなっている [#x3104408]
Emacs 27.1から削除されたらしい。
- http://blawat2015.no-ip.com/~mieki256/diary/202101111.html
- https://www.emacswiki.org/emacs/SetFonts
代わりに以下のコマンドでフォントを設定。
(add-to-list 'default-frame-alist '(font . "TakaoGothic-12"))
** 問題点: バッファを閉じるときのelscreenの挙動がおかしい気がする [#nfbab0ca]
何がおかしいのか説明が難しい。。また、再現手順も今のところ分からない。継続検討。
調べてみると、今回のEmacsにはtab-bar.elという機能が組み込まれているので、これを使うほうがよさそう。
- Tab Bars (GNU Emacs Manual): https://www.gnu.org/software/emacs/manual/html_node/emacs/Tab-Bars.html
- Emacs-27.1 がリリースされたので elscreen.el を tab-bar.el に移行した | マスタカの ChangeLog メモ: https://lists.gnu.org/archive/html/emacs-devel/2020-08/msg00237.html
* Vivaldi [#v6b6f344]
公式サイトからDEBパッケージをダウンロードしてインストール。
** アドオン [#a6a35f4b]
- ScriptSafe https://chrome.google.com/webstore/detail/scriptsafe/oiigbmnaadbkfbmpbfijlflahbdbdgdf?hl=ja
- Format Link https://chrome.google.com/webstore/detail/format-link/pocemhmkmchpgamlnocemnbhlcjcbjgg
- Set Character Encoding https://chrome.google.com/webstore/detail/set-character-encoding/bpojelgakakmcfmjfilgdlmhefphglae
- Print Edit WE https://chrome.google.com/webstore/detail/print-edit-we/olnblpmehglpcallpnbgmikjblmkopia?hl=ja
- Proxy Switcher and Manager https://chrome.google.com/webstore/detail/proxy-switcher-and-manage/onnfghpihccifgojkpnnncpagjcdbjod/related
"Close Tab"は消滅していた。
「現在アクティブなタブを消す」ボタンがないのは不思議 (キーボードショートカットやマウスジェスチャはある)。
ま、いいけど・・・
** ブックマークのインポート [#i1a8e7fa]
~/.config/vivaldi/Default/Bookmarksファイルを、バックアップ元からコピーして上書き。なんか力業っぽいけど、アプリケーション上でインポートしようとしてもうまくいかなかった。
* KeePassX [#j83b06d6]
$ sudo apt install keepassx qt5-style-plugins
qt5-style-pluginsはKeePassXのようなQt5アプリにGtkテーマを適用するために必要。
Ubuntu 20.04のKeePassXで作成したDBファイルを正常に開くことができた。
まあ、20.04と22.04でKeePassXのバージョンに変更はない(2.0.3)ようだし、大丈夫だろう。
* rsnapshot [#qc42510a]
とりあえずインストール。
$ sudo apt install rsnapshot
* Perl [#e22fba05]
$ sudo apt install cpanminus perl-doc
環境変数を設定。
export PATH="$HOME/perl5/bin:$PATH"
export PERL5LIB="$HOME/perl5/lib/perl5:$PERL5LIB"
export PERL_CPANM_OPT="-l $HOME/perl5"
cpanmをアップデート。
$ cpanm App::cpanminus
EVとBusyBirdをインストールしてみる。
$ cpanm EV BusyBird
Future::Qのインストールでfail.
おそらくこれはXubuntuやperlのバージョンとは無関係だと思う。Futureの互換性破壊が原因では?
調べてみて、Future::Q 0.120をリリース。実に7年ぶりの新バージョン。。
これでFuture::QのインストールとBusyBirdのインストールを完了。
ほか、いろいろインストール。
$ cpanm Net::Twitter Net::Twitter::Loader \
BusyBird::Input::Lingr BusyBird::Input::Feed Async::Queue DateTime::Event::Cron JSON App::Ack
OK.
* Haskell [#ye422a72]
ghcupをインストール。https://www.haskell.org/ghcup/ の指示に従う。
PATHの設定を.bashrcにする、という設定があるが、たしかこれ、.profileに移さないとどっかで不具合が出たはず。
いったんAppend(A)で回答し、.bashrcに追加された記述を.profileに移した。
ghcupバイナリのダウンロードでエラー。OpenSSLのバージョンが新しくて、デフォルトのセキュリティポリシーが厳しすぎてエラーになっている?でもcurlで直接ダウンロードコマンドたたけば問題なくダウンロードできているように見える。
apt upgradeしてリトライしたらうまくいったようだ。まじ?
正常にインストールされたようだ。
stylish-haskellをインストール。
$ cabal install stylish-haskell
* docker [#k3951cdf]
とりあえず気軽にaptでインストール。
$ sudo apt install docker.io
* Python [#p385dc31]
$ sudo apt install python3 python3-pip
* pandoc [#p5a1150e]
$ cabal install pandoc
pandoc filter
- https://github.com/tomduck/pandoc-fignos
- https://github.com/tomduck/pandoc-tablenos
- https://github.com/pandocker/pandoc-docx-pagebreak-py
* dropbox [#l260bb05]
$ sudo apt install python3-gpg
https://www.dropbox.com/install の「コマンドラインからヘッドレスインストール」を実行し、デーモンを起動。アカウントとリンクさせる。
dropbox.pyスクリプトもダウンロードしておき、~/binに放り込んでおく。
* Gitの設定 [#ub5887ad]
git init時のinitial branchのデフォルトをmainに設定しておくといい。
$ git config --global init.defaultBranch main
* TeX [#xa273393]
$ sudo apt install texlive texlive-lang-japanese texlive-fonts-extra texlive-science
* 問題点 [#r6aee429]
** (比較的古い)マシンへのSSHアクセスができない [#vd33c355]
no matching host key type found. Their offer: ssh-rsa,ssh-dss
というエラーが出る。
OpenSSHのバージョンアップにより、SHA-1ハッシュアルゴリズムを使ったRSA署名は無効となったらしい。
- https://qiita.com/ponsuke0531/items/6c522c56cce6b86e72ad
- https://www.openssh.com/txt/release-8.8
接続先ホストについて、以下の設定を~/.ssh/configに追加して解決。(本当は接続先のOSを更新すべきなんだろうけど)
Host old-host
HostkeyAlgorithms +ssh-rsa
** dmesgコマンドでエラーが出る [#h768052a]
通常ユーザ権限でdmesgをたたくと、以下のようなエラーが出る。
$ dmesg
dmesg: カーネルバッファの読み込みに失敗しました: 許可されていない操作です
どうやら、dmesgのログを見るには管理者権限が必要になった模様。この制限を外すにはシステムパラメータを変更する必要があるらしい。
- [[Bug #1953403 “Ubuntu 22.04: dmesg not working” : Bugs : Ubuntu:https://bugs.launchpad.net/ubuntu/+bug/1953403]]
- [[How to Use the dmesg Command on Linux:https://www.howtogeek.com/449335/how-to-use-the-dmesg-command-on-linux/]]