ALPでYaSTを使ってみる (X版)

By Syuta Hashimoto @ 2023-12-04 08:00

ALP (Adaptive Linux Platform)は、SUSEとopenSUSEで開発している次世代OSのベースです。イミュータブルで軽量な仕様となっています。

この冬発売のGeeko MagazineにインストールとCockpitというブラウザから管理できるアプリの体験記を書いていますので、ぜひ皆さん試してみてください。

さて、今日は昨日の続きでALPの上でYaSTを動かしてみます。今日はX版です。方法はこちらに書いてあるのでその通り行っていきます。

X版の画面表示は、SSHのXフォワーディングでSSH接続元に表示する方法です。

まず、ALPにSSH Xフォワーディング用のパッケージを入れます。

ALPはイミュータブルのため、通常のzypperコマンドではなく、transactional-updateコマンドでパッケージを一時領域にインストールし、その後、リブートして有効化します。

次にALPにログインするときに、Xフォワードのオプションをつけます。

ssh -X syuta@192.168.122.114

yastはroot権限が必要なため、suを行います。

そして、実行するコンテナを特定します。

ドキュメントにあるイメージを見つけます。

registry.opensuse.org/suse/alp/workloads/tumbleweed_containerfiles/suse/alp/workloads/yast-mgmt-qt

ではこのイメージを実行しましょう。完了するとSSH接続元にYaSTの画面が表示されます。

無事表示されました。各メニューへもアクセスできます。またALPの制御が楽になりましたね。

背景のコンソールがALPにログインしている状態、手前のYaSTがホストPCに表示されているウィンドウです

openSUSE 15.5 で試したのですが、GlusterFS の中の glusterd は peer との通信にデフォルトで IPv6 で通信しています。 /etc/hosts に IPv4 アドレスでホスト名を指定してもそこを見ません。
IPv4 で通信させるためには、 /etc/glusterfs/glsuterd.vol に

option transport.listen-backlog 1024

と言う行を追加する必要があります。

openSUSE にログインする時は、ほとんどWindows マシンから Teraterm を使っています。編集はほとんど emacs です。しかし、ある日から突然、emacs の編集ができなくなってしまいました。 Ctrl+Space を入力しても set-mark-command が聞かなくなってしまったのです。
いろいろ調べて見たら原因が分かりました。最近バージョンアップした powertoys 0.70.0 が Ctrl+Space を横取りしていたのですね。

幸いにも、このキーバインディングは変更可能でした。そこで、まず使わないであろう、Windows+Space に変更することで難を逃れました。

最近では、Video系はHDMI/Display Port、信号系は USB Type-C で統一されつつある感がしますが、まだまだ古い機種があると、種々のコネクタ形状のケーブルがたくさんあります。USB でも mini/micro なものもありますし、カメラなどに繋ぐケーブルもあります。そして、それらはほとんどが黒色。USB3のタイプAコネクタ内部は水色になっていますが、それを除くとぱっと見ただけでは区別が付きません。
そこで、ケーブルを色分けしてわかりやすくすることを考えました。
手段としてはいろいろあります。テプラシールなどを貼り付けてしまう方法とかが一番楽そうですが、今回はコネクタ部分の補強も兼ね、熱収縮性チューブを使ってみることにしました。

熱収縮チューブとは

熱収縮チューブとは、その名の通り、加熱することで縮まるプラスチックチューブです。色、太さ、性質など、種々の特性を持ったチューブが各社から販売されています。ヒシチューブとかスミチューブとか、商品名で呼ばれることもあります。100均ショップなどでも売っていますが、ホームセンターなどでも取り扱いはあるようです。今回は、秋葉原まで行って買ってみることにしました。秋葉原ではガード下のお店(だいぶ減っちゃいましたけど)で、種々の色を混ぜた、サンプル品を売っていますので。複数の幅のものを買っておきました。

スミチューブサンプル品

取りあえず試してみる

今回入手したものは住友電工が作っている、スミチューブでした。おおよそ熱を加えると径が1/2くらいになります。そこで、比較的径が細い所に使ってみることにしました。
加熱はヘアドライヤーでは無理で、高熱が出るヒートガンとかが必要です。今回ははんだごてを使う事にしました。たまたま従来から使っていたものが壊れてしまった(電源線が切れた)ので、新しいものを手配。新品なのできれいな部分を直接熱収縮チューブにあてて縮めることにしました。あまり熱を加えすぎると、ベースの方のケーブルを痛めてしまうので、思うようには縮まりませんでした。また、伸縮率が1/2くらいなので、大きな段差がある所では、収縮しきれなかったというのもありました。

MicroUSBコネクタに巻いてみる

まるごと覆うのは諦める

段差がある所を覆うのは無理そうと諦め、コネクタ部分の一部を覆うようにチューブを付けて見ることにしました。それだと手軽ですぐに判別がつきます。ただ、コネクタ部分は結構分厚いので、買ってきたサンプル品では、タイプAのコネクタにはうまく入りませんでした。Type-C のコネクタにはうまい感じで入ったので、そちらだけ付けて見ました。
こうすればぱっと見てなんだかすぐに分かるかなと思います。

USB-TypeC コネクタに巻いてみる

openSUSE 15.4 では、emacs が動かなくなることがあります。その問題と、暫定的な解決方法は、https://blog.geeko.jp/syuta-hashimoto/3113 に書かれていました。

しかし、今試してみたところ、rpm -e コマンドで、hunspell,hunspell-tools を抜くことで、emacs を問題なく起動することが出来ました。

emacs がうまく起動しなかった場合、上記の方法も試してみてください。

less の終了時に画面を残したい

By ribbon @ 2022-12-24 00:10

FreeBSD ではできているのに、openSUSE で、less を使ってファイルやマニュアルを表示すると、less終了後に表示された画面が消えてしまいます。結果を見ながら別の作業をしたいときには少々不便です。調べた結果、この問題を解決するにはいくつかの方法があることが分かりました。

  1. オプション -X (または –no-init) を引数として指定して起動する。
    一番簡単なやり方です。
  2. 環境変数 LESS に -X オプションを指定しておく。
    あらかじめシェルの初期設定ファイル (.bashrc とか .cshrc とか) に、
    LESS=’-X’
    を指定しておきます。
  3. terminfo の値を変更する。
    http://kurokawh.blogspot.com/2015/01/linuxcygwin-less-man.html や、https://t9md.hatenadiary.org/entry/20080802/1217655775によると、terminfo の値を修正することによっても変更出来るそうです(この方法は試していません)。

ただし、アプリケーションによっては、画面を消すことを前提としている物もあるようなので、色々テストしながら設定をするのが良さそうです。

Dolphinで即座にコンソール

By Syuta Hashimoto @ 2022-12-22 08:29

この記事は openSUSE Advent Calendar 2022 の22日目です。

ファイルマネージャーにDolphinを使ってるのですが、開いているディレクトリでコンソールを即座に使う方法を紹介します。

方法

F4を押す

以上です。

普通のDolphinはこんな感じでコンソールはありません。

F4を押すと下部に開いているディレクトリをカレントディレクトリにしたコンソールが表示されます。

もちろん、コンソールとして使えます。

ウィンドウズでアドレスバーにcmdと打つとコマンドプロンプトが立ち上がるの、地味にいいなぁと思っていて、同等機能を探していたら見つけました。

最近はPDFの表示などをDolphinからすることが多いので、その横にあるテキストファイルをcodeで開きたい、とかいう時に重宝しています。

(と思ったのですが、ファイルを右クリックで「Visual Studio Codeで開く」が出てきましたね・・・)