はとのーと

エジソンノート(アイデア、思い付き、メモ)として使っています。誰かの役に立つかもしれないので公開しています。

メモ 2020-10

2020-10-12

poppler ベースの PDF ビューワの日本語表示はpoppler-dataを入れると改善される

openSUSE Tumbleweed に PDF ビューワの mupdf と okular をインストールしたのですが一部の日本語が化けて表示されました。

PDFの日本語が表示されない時のメモ - Folioscope に従い poppler-data パッケージをインストールしたところ okular では無事に日本語が表示されるようになりました。 mupdf は日本語が化けたままでした。

2020-10-15

openSUSE の zypper でドキュメント類がインストールされない現象を解決した

LXC/LXD コンテナ上にインストールした openSUSE Tumbleweed の zypper でパッケージをインストールしたときドキュメント類がインストールされないという現象が起きていました。

原因は /etc/zypp/zypp.conf で以下の項目が yes になっていることでした。 no にしたところドキュメント類もインストールされるようになりました。

##
## Options for package installation: excludedocs
##
## Don't install any files which are marked as documentation.
##                                                                                                                                             
## Valid values:  boolean
## Default value: no
##
rpm.install.excludedocs = no

2020-10-16

Windows 10 のジャンプリストにはドラッグ&ドロップで入れられる

Windows7ジャンプリストへ任意のファイル(フォルダ)を追加する方法: パソコンブログニュース

Windows 10 のジャンプリストに特定のファイルを表示させたい場合には、そのアプリで他のファイルを開き、タスクバーに表示されているそのアプリのアイコンに対してジャンプリストに入れたいファイルをドラッグ&ドロップすればよい。

2020-10-20

Ruby Gem で存在するバージョンを調べてインストールする方法

Ruby Gem で json パッケージをインストールしようとしたところエラーが発生しました。

$ gem install json
Fetching: json-2.3.1.gem (100%)
ERROR:  Error installing json:
        json requires Ruby version >= 2.0.

Ruby バージョン 2.0 以上が必要とのことですがインストールされている Ruby はバージョン 1.9.3でした。

$ ruby --version
ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

json の過去パッケージをインストールするためにバージョンを調べます。

$ gem list --remote --all json | head
json (2.3.1 ruby java, 2.3.0 ruby java, 2.2.0 ruby java, 2.1.0 ruby java, 2.0.4 ruby java, 2.0.3 ruby java, 2.0.2 ruby java, 2.0.1 ruby java, 2.0.0 ruby java, 1.8.6 ruby java, 1.8.5 ruby java, 1.8.3 ruby java, 1.8.2 ruby java, 1.8.1 ruby java, 1.8.0 ruby java, 1.7.7 ruby java, 1.7.6 ruby java, 1.7.5 ruby java, 1.7.4 ruby java, 1.7.3 ruby java, 1.7.2 ruby java, 1.7.1 ruby java, 1.7.0 ruby java, 1.6.8 ruby java, 1.6.7 ruby java, 1.6.6 ruby java, 1.6.5 ruby java, 1.6.4 ruby java, 1.6.3 ruby java, 1.6.2 ruby java, 1.6.1 ruby java, 1.6.0.1 java, 1.6.0, 1.5.5 ruby java, 1.5.4 ruby java, 1.5.3 ruby java, 1.5.2 ruby java, 1.5.1 ruby java, 1.5.0 ruby java, 1.4.6 ruby java, 1.4.5 ruby java, 1.4.4 ruby java, 1.4.3 ruby java, 1.4.2, 1.4.1, 1.4.0, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.9, 1.1.8, 1.1.7, 1.1.6, 1.1.5 ruby x86-linux, 1.1.4, 1.1.3, 1.1.2, 1.1.1 ruby mswin32, 1.1.0 ruby mswin32, 1.0.4 ruby mswin32, 1.0.3 ruby mswin32, 1.0.2, 1.0.1, 1.0.0, 0.4.3, 0.4.2, 0.4.1, 0.4.0)
json-api (0.1.1, 0.1.0)
json-api-client (0.0.2)
json-api-reader (0.1.1, 0.1.0)
json-api-vanilla (1.0.2, 1.0.1, 1.0.0)
json-arel (0.5, 0.3, 0.2)
json-bloomfilter (0.1.5, 0.1.4, 0.1.3, 0.1.2, 0.1.1, 0.1.0, 0.0.6, 0.0.5, 0.0.4, 0.0.3, 0.0.2, 0.0.1)
json-canonicalization (0.2.0, 0.1.0)
json-colorizer (0.0.2, 0.0.1)
json-compare (0.1.8, 0.1.6, 0.1.5, 0.1.4, 0.1.1, 0.1)

json バージョン 1.2.4 をインストールしました。

$ gem install --version=1.2.4 json
Fetching: json-1.2.4.gem (100%)
Building native extensions.  This could take a while...
Successfully installed json-1.2.4
1 gem installed
Installing ri documentation for json-1.2.4...
Installing RDoc documentation for json-1.2.4...

2020-10-21

LXC 上の RPM で /proc などがいじれずエラーになる場合には /etc/rpm/macros.dist ファイルを作って記述を入れる

LXC 上の openSUSEsudo zypper dup (アップデート) を実行したとき次のエラーが発生しました。

$ sudo zypper dup
(中略)
filesystem-15.5-33.1.x86_64 のインストールに失敗しました:
エラー: Subprocess failed. Error: RPMの失敗: error: unpacking of archive failed on file /proc: cpio: chown failed - No such file or directory
error: filesystem-15.5-33.1.x86_64: install failed
error: filesystem-15.5-32.1.x86_64: erase skipped

中止(A)、再試行(R)、無視(I)[a/r/i] (a):
インストールまたは削除の際、もしくはそれぞれの作業の後に問題が発生しました:
指示通りにインストールが中止されました。
解決へのヒントとして上記のエラーメッセージをお読みください。

filesystem パッケージが /proc のオーナーを変更しようとして失敗したようです。

update filesystem on proxmox container – SvennD に従って次を実行しました。

# echo "%_netsharedpath /sys:/proc" >> /etc/rpm/macros.dist

再び sudo zypper dup を実行したところ無事にインストールできました。

$ sudo zypper dup
(中略)
以下 1 個のパッケージをアップグレードします:
  filesystem

1 個のパッケージアップグレード.
全ダウンロードサイズ:0 B。すでにキャッシュ済み:59.9 KiB。 この操作を行うのに必要となる追加の容量や解放される容量はありません。
続行しますか? [y/n/v/...? すべてのオプションを表示] (y): 
キャッシュ filesystem-15.5-33.1.x86_64.rpm 内にあります                                               (1/1),  59.9 KiB (展開後サイズ   537   B)

ファイルの競合を確認中: .................................................................................................................[完了]
(1/1) インストールしています:filesystem-15.5-33.1.x86_64 ................................................................................[完了]

中枢ライブラリもしくはサービスの更新を行ないました。
これらの更新を反映させるため、システムの再起動が必要です。

2020-10-30

テキストを画像にするには ImageMagick の convert を使う
$ cat /etc/os-release
NAME="openSUSE Tumbleweed"
# VERSION="20201019"
ID="opensuse-tumbleweed"
ID_LIKE="opensuse suse"
VERSION_ID="20201019"
PRETTY_NAME="openSUSE Tumbleweed"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:tumbleweed:20201019"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"
DOCUMENTATION_URL="https://en.opensuse.org/Portal:Tumbleweed"
LOGO="distributor-logo"

画像にするにはテキストを convert label:@- {FILENAME} の標準入力に流す。

$ cat /etc/os-release | convert label:@- os-release.png

f:id:paz3:20201030185102p:plain

フォントを指定する場合には -font {FONTNAME} オプションをつける。 フォントサイズは -pointsize {SIZE} オプションで指定する。

$ cat /etc/os-release | convert -font Cantarell-Bold label:@- os-release.png

f:id:paz3:20201030185125p:plain

フォントの一覧はオプション -list font で表示できる。

$ convert -list font | grep Font
Path: System Fonts
  Font: Cantarell-Bold
  Font: Cantarell-Extra-Bold
  Font: Cantarell-Light
  Font: Cantarell-Regular
  Font: Cantarell-Thin
(後略)