Ubuntu Studio 20.10でもXFCE4+Screenlets

Ubuntu Sduioのデフォルトのデスクトップは、20.10以降、XFCE4と袂を分かち、KDE Plasmaに変更されました。しばらくそのままおつきあいしていたのですが、やっぱりXFCE4がいいので、XFCE4環境をインストールして標準デスクトップにしました。どうしても、XFCE4 + Screenletsから離れられません。

Screenlets起動には、Ubuntu 20.04で動作している状態に対して下記2つのパッケージ追加が必要でした。

wget http://security.ubuntu.com/ubuntu/pool/universe/p/pyxdg/python-xdg_0.26-1ubuntu1_all.deb
wget http://security.ubuntu.com/ubuntu/pool/universe/d/dbus-python/python-dbus_1.2.16-1build1_amd64.deb
sudo dpkg -i *.deb

 

また、起動画面(gdm)からはPlasmaを選択できないようにしておきました。
cd /usr/share/xsession
mkdir keep
mv plasma.desktop ubuntu*.desktop keep/

 

XFCE4は、なんといっても、必要最低限までのデコレーション機能と、それゆえの超軽快動作で、品質の悪いネット越しのリモートデスクトップでも快適です。メンテ切れのScreenletsは、頑張ればPython2ではなくPython3の実装に合わせられると思うので、暇になったら頑張ってみようと思います。

・・・こうなると、私の今の使い方では、Ubuntu Studioである必要も無さそうです。Ubuntu Studioが気に入ってたのは、下記の点です。
XFCE4がデフォルト
② リアルタイムカーネルがデフォルト
③ 映像・音楽系のプロ仕様アプリがデフォルトで入っている

しかし時代も変わり、①が無くなり、②はネット主体かつ複数コア(SMP)安定動作の昨今ではほぼ意味なく、③のプロ仕様アプリは過去はちょっと業務開発がらみもあったけど今は使いこなせていないので、もう、Ubuntu Studioからおさらばするかもしれません。 

[備考] Conkyではガジェットの雰囲気を出すのが難しく、それが理由で私はScreenletsを使い続けています。ConkyにせよScreenletsにせよ、セキュリティ観点から、一般的には非推奨です。

PCIのマジックライト

PCIのBARレジスタに隠されている、メモリ空間サイズを得るための手順です。枯れた技術ですが、組込エンジニアにとっては少しやっかいです。忘れてしまうので、最も端的で分かりやすい解説リンクを置いておきます。ごく稀に、話題になります。

stackoverflow.com

 

備考:
The Linux Kernel: PCI 「デバイスが必要とするPCI I/OとPCIメモリ空間の容量を調べる」

 

ホームネットワーク(VDSL)

とある家庭(親類)のネットワークをコンサルしたときに作成/提供したポンチ絵を以下に示します。電話線とLANケーブルを区別するのも難しい人向けに作ったつもりですが、このコンサルは私の本職ではなく、間違いはあるかもしれません。ご了承ください。

f:id:t0a9n9a4k:20201004233210p:plain

VDSLは、LANケーブル敷設の無いマンションでの有線インターネット方式です。ひかり電話フレッツ光など、「光」と記載されたサービスでも、VDSLの場合は光ケーブルは電話局からマンションのMDF室(≒管理室)までです。MDF室から各戸には、既設のアナログ電話線にデジタル信号を乗せて配信しますが、電話線の場合、長さや状態によって信号が激しく劣化するので、今ならそうしたマンションではWiMAXサービス(≒スマホテザリング)を使う方が良いかもしれません。その方が、電源ケーブル周りもスッキリします。しかし、このお宅では、プロバイダを変えたくない、FAXを使う等の事情がありました。また、Youtubeもスムーズに見れていたので、電話線での劣化は許容範囲でした。

セキュリティ設定をどこまで実施するかは悩みどころでしたが、このお宅のユーザ様はとにかくネットにつながるところを選択してしまうご様子だったので、MACアドレスフィルタ[備考4]等で厳しく制限すると逆効果かもしれず、そうした設定はあえて行いませんでした。但し、ユーザビリティに影響の無い対策は実施しました。また、このお宅の方にはネットワークの暗部の話を紹介し、見えているWiFiスポットに安直に接続しないよう釘はさしておきました。ノートPCは持ち運ぶ様子が無かったことから、機内モードWiFi無効にして有線LAN接続としました。  

FAXは、もうなくなると言われて20年・・・無くなりません。ひかり電話の通信方式はIP電話と同じデジタルですが、ネット上ではプレミア級の最優先独自ルート/遅延レスなので、FAXができてしまいます。


備考1:FAX通信方式(T.30)ではネット遅延は想定されておらず、050系やフリーのIP電話では安定しないこともあるようです。 
備考2:WiMAXでの通信品質は電波環境次第です。過度な期待は禁物ですが、WiMAXルータ端末を自由に移動できる点は強みです。また、自作アンテナでも速度アップできるようです。なお、私ならNEC製の端末を選びます。
備考3:ひかり電話の無い別の親類宅(有識者在住)では、以下のようになっています。

f:id:t0a9n9a4k:20201010082944p:plain

 備考4:最近、iPhoneAndroidMACアドレス適用が乱数化されましたので、MACアドレスフィルタをかけている環境ではスマホの設定変更が必要です。MACアドレスフィルタは意味が無いという見方がありますが、これは、ケースバイケースです。

最近の日本のSF小説

オービタル・クラウド 書評リンク

ラズパイ・アラカルトでも紹介したが、衛星・サイバー・IoTの勉強になる。但し、もうそろそろ賞味期限だ。

 

ジェノサイド 書評リンク

世界の暗部で起きている(ウイルスではない)課題のひとつを疑似体験しながら、現代技術にも触れられるSF推理小説。「終戦のローレライ」に近いが、ひと味違う、何か強烈な印象を残した。但し、この小説も、そろそろ賞味期限かもしれない。

 

新世界より 書評リンク

風の谷のナウシカ」に超能力のエッセンスを加えた印象。一気に読み終えたが・・・・何か残ったかと言えば、現時点では何も無く、もう1回読む気もしないが、アニメ化されていて動画サイトで見れるので、少しのぞいてみようかとは思う。

 

山彦

Kindleオーナーライブラリー(月1冊無料)で読んだ、若干ホラーな山岳SF小説。ホラー度合いは私の許容範囲ぎりぎりであり、途中リタイアしそうになったが、山の風景描写がとても丁寧で美しいので、読み続けられた。山に登る人なら印象に残る小説になると思う。

 

天冥の標

申し訳ありません。当初はすばらしいと思いましたが、読み進めると許容範囲を超える内容がありました。おすすめできません。

 

半沢直樹

私から見れば半沢直樹は宇宙人だが、会社をなめて入った私達バブル世代に共通の何かがあるように感じる。ドラマでは原作と違う設定と迫力があり、面白いし、泣ける。盆明けは前向きに仕事に取り組めそうだ。但し、真似したら絶対に体が持たない! やられたら受け流す、マイペースで感謝と恩返しだ。

 

 

ffmpegの技

アスペクト比変換/センタリング/ダイエット
古いカーナビ向け調整。ベンチマークでも良く使う。

av_aspect.sh:

#!/bin/bash
width=800
height=$(( $width * 480 / 800 ))
# PV000_ は変換後ファイルの目印、兼ランダムプレイのヘッダとして付与
ffmpeg -i "$1" -c:a copy \
-vf "scale=iw*min($width/iw\,$height/ih):ih*min($width/iw\,$height/ih), pad=$width:$height:($width-iw*min($width/iw\,$height/ih))/2:($height-ih*min($width/iw\,$height/ih))/2" \
PV000_"$1"


ランダム再生支援
PV000_*.mp4はリネームしない(優先プレイ)。解消するにはav_rename.sh -cを先に実行。

av_rename.sh:

#!/bin/bash

_usage() {
    echo "usage:"
    echo "${0} -c -u -t"
    exit 1
}

if [ "$#" = "0" ]; then
    _usage
fi

while getopts "ctu" OPT
do
    case $OPT in
        c)  headerclean=1
            ;;
        t)  testmode=1
            ;;
        u)  update=1
            ;;
        :|\?) _usage;;
    esac
done

if [ $headerclean ] ; then
    ## ヘッダがあれば除去し終了
    echo "mp4ファイルのPVXXXを除去します。"
    for file in *.mp4; do
    if [ "${file::2}" = "PV" ] ; then
        ## 既に一度ヘッダを付加済みのファイル
        newfile="${file:6}"
        mv "$file" "$newfile"
    fi
    done
    echo "mp4ファイルのPVXXXを除去しました。"
    exit 0
else
    ## ヘッダ付加または更新
    for file in *.mp4; do
        ## PV000で始まるファイルはリネームしない。
        if [ "${file::5}" = "PV000" ] ; then
            continue
        fi
        rand=$((RANDOM%1000))
        head=`printf "PV%03d_" $rand`
        if [ "${file::2}" = "PV" ] ; then
            ## 既に一度ヘッダを付加済みのファイル
            newfile="${head}${file:6}"
        else
            newfile="${head}${file}"
        fi
        printf "${file} ==> ${newfile}"
        if [ $testmode ] ; then
            printf " :: テストモード\n"
        else
            mv "$file" "$newfile"
            printf " :: 更新完了\n"
        fi
    done
fi



その他のコマンド:

## 先頭7秒カット(再エンコせずカット&コピーする方式)
ffmpeg -ss 7 -i input.mp4 -vcodec copy -acodec copy output.mp4

## うまくいかないときは、-ssの位置を変える。処理が異なるらしい。
ffmpeg  -i input.mp4 -ss 7 -vcodec copy -acodec copy output.mp4

## 800:480 中央からカット(クロップ)
ffmpeg -i input.mp4 -c:a copy -vf crop=800:480 output.mp4

## ボリュームアップ
ffmpeg -i input.mp4 -vcodec copy -af volume=10dB output.mp4

## オーディオ抽出
ffmpeg -i input.mp4 -vn -f mp3 output.mp3

## 左右反転
ffmpeg -i input.mp4 -vf hflip output.mp4

## 静止画にする
convert -resize 800x480! 静止画.jpg seisiga.jpg  ## 静止画のアスペクト比調整
ffmpeg -i input.mp4 -vf output.mp4  ## 動画を除去
ffpmeg -i seisiga.jpg -i output.mp4 -vcodec mpeg4 -acodec copy new.mp4  ## マージ

パワーヨガ

でも会社でも椅子に座っている時間が長くなり、気が付くと姿勢がとても悪くなっていて、そのせいで左股関節に違和感を感じはじめていました。毎年この梅雨入りの季節、体のどこかを痛めてしまいます。そこで、勇気振り絞って、ちょっとパワー系のヨガクラス(初心者向け)に初めて参加してみました。

マスクの裏では結構緊張した顔をしていたはずですが、、、始まると緊張感はすぐに解け、いろいろなポーズをキープするのに夢中になり、終わると股関節の違和感がほぼ解消されていて、その後のトレーニングでは体のキレが良く、翌日からは体調がとてもいいです。

私の体は、前向きはとても硬いのですが、なぜか後ろ向きには柔らかく、若い頃は倒立からのバックブリッジを一発芸にしていました。

『ベーイ・ブリッジ!』
・・・今はもう無理です。

私が通っているジムは、徹底した ソーシャルディスタンス、検温、消毒、全員マスクで、安心して参加できます。

  

Ubuntu Studio 20.04でScreenlets

お風呂のカビ掃除やらキッチンの油汚れ落としやらで、指紋が無くなってしまった今日この頃、みなさま如何お過ごしでしょうか?

Ubuntu 20.04がリリースされたので、手元のホビーマシンをアップグレードしたら、やっぱりScreenletsの一部が動かなくなりましたので、下記の処置をしました。

sudo apt install libpython2.7
wget http://security.ubuntu.com/ubuntu/pool/universe/g/gnome-python/python-gconf_2.28.1+dfsg-1.2_amd64.deb
wget http://security.ubuntu.com/ubuntu/pool/main/b/beautifulsoup/python-beautifulsoup_3.2.1-1_all.deb
wget http://security.ubuntu.com/ubuntu/pool/universe/p/pygtk/python-gtk2_2.24.0-6_amd64.deb
wget http://security.ubuntu.com/ubuntu/pool/universe/g/gnome-python-desktop/python-wnck_2.32.0+dfsg-3_amd64.deb
wget http://security.ubuntu.com/ubuntu/pool/universe/g/gnome-python-desktop/python-rsvg_2.32.0+dfsg-3_amd64.deb
sudo dpkg -i *.deb

あとは、過去のUbuntu Mate 18.04やDebian10でのScreenletsの処置で行けると思います。やはりメンテ切れガジェットはリスクがありますので、組込での開発環境やホビー専用マシンなどでの、限定的なご利用が良いかと思います。

次は、CentOS 8で・・・