トップ 追記

Masa's blog

検索キーワード:

2025年01月19日 Audacityの自分用メモ... [長年日記]

_ ホワイトノイズ除去

  • 無音部分を選択
  • エフェクト->ノイズ除去と修復->ノイズを低減->ノイズプロファイルを取得
  • 全選択
  • エフェクト->ノイズ除去と修復->ノイズを低減->[OK]
  • ファイル->オーディオをエクスポート

_ 音量のノーマライズ

  • 全選択
  • エフェクト->音量と音圧->ノーマライズ->適用

_ 表示拡大縮小

  • Ctrl-1 表示拡大
  • Ctrl-2 表示リセット
  • Ctrl-3 表示縮小

_ カーソル移動

  • 位置付:左右カーソルキーまたはクリック
  • トラックの先頭:J
  • トラックの末尾:K

_ 選択

  • 選択:Shift+左右カーソルキー
  • 全選択:Ctrl+A 又は 波形上をダブルクリック
  • 解除:Alt+S N

_ 選択範囲を再生範囲に設定&解除

  • 設定:Shift+L
  • 解除:Shift+Alt+L

_ ループ再生設定&解除

  • 設定&解除(トグル):L

_ 再生&停止

  • スペース(トグル)

_ 録音&停止

  • 選択トラックに追加:R
  • 新規トラック:Shift+R
  • 停止:スペース

_ 再生録音一時停止

  • P

_ 新規トラック追加

  • ステレオ:Alt+T N S
  • モノラル:Alt+T N M

_ 繰り返し

  • 選択
  • エフェクト->特殊->繰り返し->繰り返し回数の追加->適用

2024年12月27日 python 仮想環境 [長年日記]

_ python 仮想環境

仮想環境作成

mkdir _AppName_
cd _AppName_
python -m venv --upgrade-deps .venv
  • .venv は推奨のディレクトリ名

仮想環境の活性化

source .venv/bin/activate

パッケージのインストール

最新版

pip install _PackageName_

指定バージョン

pip install _PackageName_==_Version_

パッケージの更新

pip install -U _PackageName_

インストール可能バージョンの確認

pip index versions _PackageName_

インストールしたパッケージの一覧

pip freeze
pip freeze >requirements.txt

パッケージの削除

pip uninstall _PackageName_
pip uninstall -r requirement.txt -y

インストールしたパッケージの一括再インストール

pip install -r requirements.txt
  • 同じ仮想環境を複製したい場合に行う。

全パッケージの一覧

pip list
pip list --format=freeze

最新でないパッケージの一覧

pip list -o

最新状態のパッケージの一覧

pip list -u

仮想環境の非活性化

deactivate

仮想環境のpythonバージョンをローカルのバージョンに合わせる

python -m venv .venv --clear
  • 実行後は自分でインストールしたパッケージが削除されているので、再インストールが必要。
pip install -r requirements.txt

2024年12月07日 Docker on Slackware64-current [長年日記]

_ Docker on Slackware64-current

DockerをSlackware64-currentに導入してみた。基本的にはPonceさんのGithubからSlackbuildスクリプトをダウンロードしてきて諸々をビルドしていく。 ソースはSlackbuild内の*.infoに記述されているので、そこからダウンロードする。 ビルドする際にはsuではなくsu -でrootになって行う。

ビルド後source /etc/profile.d/go.shを実行し、gcc-goではなくgoogle-go-langが優先して実行されるように設定し、以降のビルドを行う。 go.shはビルド時のみ必要で、Docker実行時には必要ない。

chmod +x /etc/rc.d/rc.libvirt

/etc/rc.d/rc.local

if [ -x /etc/rc.d/rc.libvirt ]; then
	/etc/rc.d/rc.libvirt start
fi
chmod +x /etc/rc.d/rc.docker

/etc/rc.d/rc.local

if [ -x /etc/rc.d/rc.docker ]; then
	/etc/rc.d/rc.docker start
fi

_ 動作確認

以下のコマンドを実行し

$ docker run hello-world

以下のような表示がされればOK

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
c1ec31eb5944: Pull complete
Digest: sha256:305243c734571da2d100c8c8b3c3167a098cab6049c9a5b066b6021a60fcb966
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

$

_ docker(基本)

実体

/var/lib/docker/

docker hub(https://hub.docker.com/)からコンテナイメージを取得

docker pull _ContainerImage_:_Tag_
  • :_Tag_ 未指定時は :latest を指定したとみなす。

コンテナイメージからコンテナを生成し実行する

docker run --name _ContainerName_ \
           -it \
           -e _EnvName_=_Value_ [-e ...] \
           -p _LocalPort_:_ContainerPort_ [-p ...] \
           -v _LocalDir_:_ContainerDir_ [-v _VolumeName_:_ContainerDir_] \
           --net _NetworkName_ --expose _OpenPort_ \
           -d \
           _ContainerImage_:_Tag_
-it
ローカルとコンテナの標準入出力を紐づける
-p
外部からのアクセス用ポート指定
-v _VolumeName_
_VolumeName_docker volume create で作成しておく
-net _NetworkName_
_NetworkName_docker network create で作成しておく
-expose _OpenPort_
コンテナ間通信用に公開するポート
-d
バックグラウンドで起動する
  • ローカルにコンテナイメージが存在しない場合は、自動的にdocker hubからpullしてくる。

生成済のコンテナを実行する

docker start _ContainerName_

コンテナを停止する

docker stop _ContainerName_

コンテナの削除

docker rm _ContainerName_

コンテナイメージの削除

docker rmi _ContainerImage_

コンテナの一覧

docker container ls -a

コンテナイメージの一覧

docker image ls -a

コンテナプロセスの一覧

docker ps -a

コンテナ内でコマンド実行

docker exec -u _UserName_ \
            -w _WorkingDir_ \
            -e _EnvName_=_Value_ [-e ...]\
            -it \
            _ContainerName_ \
            /bin/_AnyCommand_ arg1 arg2 ...

ボリュームの生成

docker volume create _VolumeName_

ボリュームの確認

docker volume inspect _VolumeName_

ボリュームの一覧

docker volume ls

ボリュームの削除

docker volume rm _VolumeName_

Bridgeネットワークの作成

docker network create _NetworkName_

ネットワークの削除

docker network rm _NetworkName_

_ コンテナイメージの作成

コンテナイメージの定義(Dockerfile)

# ベースイメージ
FROM ubuntu:latest

# コンテナ起動時のカレントディレクトリ
WORKDIR /var/www/htdocs

# コンテナ生成時にローカルからコンテナにファイルをコピーする
COPY index.html ./
COPY .htaccess ./

# コンテナ生成時にコンテナ内でコマンドを実行する
RUN apt update && \
    apt install -y -q apache && \
    apt install ..snip..

# コンテナ起動時に実行するコマンド
ENTRYPOINT["/etc/rc.d/rc.httpd"]
CMD ["start"]

CMDdocker run の引数で置き換えることが可能。

docker run ...snip... _ContainerImage_:_Tag_

/etc/rc.d/rc.httpd start を実行する。一方、

docker run ...snip... _ContainerImage_:_Tag_ stop

/etc/rc.d/rc.httpd stop を実行する。

コンテナイメージ生成

docker build -t _ContainerImage_:_Tag_ .

_ composeによる複数コンテナの管理

YAML(compose.yaml)による定義

version: '1'
services:
  app1:
    build: .
    container_name: _ContainerName_
    working_dir: _WorkingDir_
    volumes:
      - _LocalDir_:_ContainerDir_
      - _VolumeName_:_ContainerDir_
    ports:
      - "_LocalPort_:_ContainerPort_"
    depends_on:
      - app2

  app2:
    image: _ContainerImage_:_Tag_
    container_name: _ContainerName_
    environment:
      _Environ_: _Value_
    volumes:
      - _LocalDir_:_ContainerDir_
      - _VolumeName_:_ContainerDir_

volumes:
  _VolumeName_:

composeでコンテナ群を生成&開始

docker compose up -d --build
  • --build コンテナが存在してもイメージから再作成する
  • すべてのサービスが自動的に生成された単一のネットワークに接続されている
  • サービス名(例 app1,app2)がホスト名になる

composeでコンテナ群を停止&削除

docker compose down

composeでコンテナ群を開始

docker compose start -d

composeでコンテナ群を停止

docker compose stop

composeでコンテナプロセス一覧

docker compose ps -a

composeでコマンド実行

docker compose exec -u _UserName_ \
                    -w _WorkingDir_ \
                    -e _EnvName_=_Value_ \
                    app1 \
                    /bin/_AnyCommand_ arg1 arg2 ...

2024年08月12日 Slackware64-current on LIFEBOOK AH Series [長年日記]

_ Slackware64-current on LIFEBOOK AH Series

メインマシンをLIFEBOOK WA3/F3(中古 Core-i7 1195G7, Memory 32GB, M.2 SSD 1TB)に買い換えた機会にSlackware64-14.2からSlackware64-currentに変更した。

/etc/fstab

/dev/nvme0n1p2   swap             swap        defaults         0   0
/dev/nvme0n1p3   /                ext4        defaults,noatime 1   1
/dev/nvme0n1p1   /boot/efi        vfat        defaults         1   0
#/dev/cdrom      /mnt/cdrom       auto        noauto,owner,ro,comment=x-gvfs-show 0   0
/dev/fd0         /mnt/floppy      auto        noauto,owner     0   0
devpts           /dev/pts         devpts      gid=5,mode=620   0   0
proc             /proc            proc        defaults         0   0
tmpfs            /dev/shm         tmpfs       nosuid,nodev,noexec 0   0

gdisk -l /dev/nvme0n1

GPT fdisk (gdisk) version 1.0.10

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/nvme0n1: 1953525168 sectors, 931.5 GiB
Model: WD_BLACK SN770 1TB
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): BAB62137-FDB7-4CBF-B6B0-313F47EF3E72
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 1953525134
Partitions will be aligned on 2048-sector boundaries
Total free space is 3437 sectors (1.7 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          206847   100.0 MiB   EF00  EFI system partition
   2          206848        79898623   38.0 GiB    8200  Linux swap
   3        79898624      1953523711   893.4 GiB   8300  Linux filesystem

独自にインストールしたもの

How to build

tar xvf clamav-1.0.0.tar.gz
cd clamav-1.0.0
mkdir build
cd build
cmake ..
make

su
make install
mkdir /usr/local/share/clamav
chown clamav.clamav /usr/local/share/clamav
chmod 775 /usr/local/share/clamav

/etc/passwd

clamav:x:513:513:clamav anti virus:/usr/local/share/clamav:/bin/false

/etc/group

clamav:x:513:

/usr/local/etc/clamd.conf

##Example
DatabaseDirectory /usr/local/share/clamav
LocalSocket /tmp/clamd.socket
TCPSocket 3310
TCPAddr localhost

/usr/local/etc/freshclamd.conf

##Example
DatabaseDirectory /usr/local/share/clamav
##HTTPProxyServer 192.168.0.100
##HTTPProxyPort 8080

filterdcpj552n

*** /opt/brother/Printers/dcpj552n/lpd/filterdcpj552n.ORG	2024-05-03 23:29:12.182264882 +0900
--- /opt/brother/Printers/dcpj552n/lpd/filterdcpj552n	2024-08-11 09:09:08.931587840 +0900
***************
*** 77,84 ****
  		rm -f $PS_TEMP
  		;;
  	* )
! 		A2PS_OP="--output=- -q -1 --no-header --borders no"
! 		eval cat $INPUT_TEMP | a2ps $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
  		RET=$?
  		;;
  esac
--- 77,87 ----
  		rm -f $PS_TEMP
  		;;
  	* )
! ##		A2PS_OP="--output=- -q -1 --no-header --borders no"
! ##		eval cat $INPUT_TEMP | a2ps $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
! 		A2PS_OP=""
! ####		eval cat $INPUT_TEMP | /usr/local/bin/a2ps-j $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
! 		eval /usr/local/bin/nkf -w $INPUT_TEMP | /usr/local/bin/a2ps-j $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
  		RET=$?
  		;;
  esac
tar xvf aaa_glibc-solibs-2.39-i586-2.txz lib/incoming/ld-2.39.so lib/incoming/libc-2.39.so lib/incoming/libm-2.39.so
cp lib/incoming/lib*so /lib/
ldconfig
/opt/brother/Printers/dcpj552n/cupswrapper/cupswrapperdcpj552n -i
mkdir /var/spool/lpd
http://localhost:631/admin/
 -> 管理
 -> プリンターの追加
 -> LPD/LPR ホストまたはプリンター
 -> lpd://192.168.0.100/lpraw
 -> 名前、説明、場所
 -> または PPD ファイルを提供: /opt/brother/Printers/dcpj552n/cupswrapper/brother_dcpj552n_printer_en.ppd
 -> プリンターの追加
# sh VMware-Workstation-Full-17.5.2-23775571.x86_64.bundle --ignore-errors
## https://bbs.archlinux.org/viewtopic.php?pid=1992431
$ git clone -b workstation-17.5.1 https://github.com/mkubecek/vmware-host-modules.git
$ cd vmware-host-modules/
$ make
# make install
# /etc/init.d/vmware restart
*** ./root/vmware-host-modules/vmnet-only/vmnetInt.h.ORG	2024-05-16 21:39:10.539013690 +0900
--- ./root/vmware-host-modules/vmnet-only/vmnetInt.h	2024-05-16 21:43:04.991016552 +0900
***************
*** 41,48 ****
      compat_skb_set_network_header(skb, sizeof (struct ethhdr)),  \
      dev_queue_xmit(skb)                                   \
    )
! #define dev_lock_list()    read_lock(&dev_base_lock)
! #define dev_unlock_list()  read_unlock(&dev_base_lock)


  extern struct proto vmnet_proto;
--- 41,53 ----
      compat_skb_set_network_header(skb, sizeof (struct ethhdr)),  \
      dev_queue_xmit(skb)                                   \
    )
! #if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 9, 0)
! #    define dev_lock_list()    rcu_read_lock()
! #    define dev_unlock_list()  rcu_read_unlock()
! #else
! #    define dev_lock_list()    read_lock(&dev_base_lock)
! #    define dev_unlock_list()  read_unlock(&dev_base_lock)
! #endif


  extern struct proto vmnet_proto;
*** ./vmware-host-modules/vmmon-only/include/iocontrols.h.ORG	2024-05-14 22:39:47.000000000 +0900
--- ./vmware-host-modules/vmmon-only/include/iocontrols.h	2024-09-08 01:01:50.244040200 +0900
***************
*** 146,152 ****
   * the NT specific VMX86_DRIVER_VERSION.
   */

! #define VMMON_VERSION           (416 << 16 | 0)
  #define VMMON_VERSION_MAJOR(v)  ((uint32) (v) >> 16)
  #define VMMON_VERSION_MINOR(v)  ((uint16) (v))

--- 146,152 ----
   * the NT specific VMX86_DRIVER_VERSION.
   */

! #define VMMON_VERSION           (417 << 16 | 0)
  #define VMMON_VERSION_MAJOR(v)  ((uint32) (v) >> 16)
  #define VMMON_VERSION_MINOR(v)  ((uint16) (v))
# cd /etc/rc.d/rc4.d
# ln -s /etc/rc.d/init.d/vmware K08vmware
# ln -s /etc/rc.d/init.d/vmware-USBArbitrator K08vmware-USBArbitrator
# ln -s /etc/rc.d/init.d/vmware S19vmware
# ln -s /etc/rc.d/init.d/vmware-USBArbitrator S50vmware-USBArbitrator
$ /usr/libexec/polkit-gnome-authentication-agent-1 &
$ vmplayer
You can use /usr/lib/vmware/bin/vmware-netcfg for nettwork setting
 o vmnet1 for Hostonly network
 o vmnet8 for Nat network
$ curl -sSLf https://github.com/aclap-dev/vdhcoapp/releases/latest/download/install.sh | bash
#! /bin/sh
#
# mfs fontfile fndry fmly cp
#
# cd /usr/share/fonts/TTF
# cp fonts.scale fonts.scale.backup
# cp fonts.dir fonts.dir.backup
# /home/m-ito/INSTALLED/makefontscale.sh >fonts.add
# cat fonts.scale.backup | egrep -v 'dfjgyomd.ttf|dfjkaibd.ttf|dfjkailt.ttf|dfjkaimd.ttf|dfjktrxb.ttf|dfjleimd.ttf|dfjmrgbd.ttf|dfjmrglt.ttf|dfjmrgmd.ttf|dfjmrmmd.ttf|dfjmrmw7.ttf|dfjmrmw9.ttf|dfjpop1.ttf|dfjpopw5.ttf|dfjpopw9.ttf|dfjgyomd-unicode.ttf|dfjkaibd-unicode.ttf|dfjkailt-unicode.ttf|dfjkaimd-unicode.ttf|dfjktrxb-unicode.ttf|dfjleimd-unicode.ttf|dfjmrgbd-unicode.ttf|dfjmrgbd-unicode.ttf|dfjmrglt-unicode.ttf|dfjmrgmd-unicode.ttf|dfjmrmmd-unicode.ttf|dfjmrmw7-unicode.ttf|dfjmrmw9-unicode.ttf|dfjpop1-unicode.ttf|dfjpopw5-unicode.ttf|dfjpopw9-unicode.ttf|kochi-gothic.ttf|kochi-mincho.ttf|kouzanmouhitu.ttf|sazanami-gothic.ttf|sazanami-mincho.ttf|ipag.ttf|ipagp.ttf|ipam.ttf|ipamp.ttf|ipamjm.ttf' >junk
# cat junk fonts.add | sort | uniq >fonts.scale
# rm junk
# wc -l fonts.scale # remember LINE
# vim fonts.scale # edit number in first line to (LINE - 1)
# mkfontdir -e /usr/share/fonts/encodings -e /usr/share/fonts/encodings/large
# cp fonts.dir fonts.scale
# fc-cache -f -v
#
# JISX0208-1978, 1983, 1990, 1997, 2012
# JISX0213-2000, 2004, 2012
#
function mfs() {
	fontfile="$1"
	fndry="$2"
	fmly="$3"
	cp="$4"
	jisx="$5"

	for i in iso8859-1 jisx0201.1976-0 ${jisx}
	do
		bw=""
		colon=""
		if [ $i = "iso8859-1" -o $i = "jisx0201.1976-0" ]
		then
			bw="bw=0.5"
			colon=":"
		fi
		echo ${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-r-normal--0-0-0-0-${cp}-0-$i
		echo ai=0.4:${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-i-normal--0-0-0-0-${cp}-0-$i
		echo ai=0.2:${bw}${colon}${fontfile} -${fndry}-${fmly}-medium-o-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-r-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:ai=0.4:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-i-normal--0-0-0-0-${cp}-0-$i
		echo ds=y:ai=0.2:${bw}${colon}${fontfile} -${fndry}-${fmly}-bold-o-normal--0-0-0-0-${cp}-0-$i
	done
}

# jisx0208.1983-0
mfs dfjgyomd.ttf dynalab "dfgyosho lt" m jisx0208.1983-0
mfs dfjkaibd.ttf dynalab "dfkaisho xb" m jisx0208.1983-0
mfs dfjkailt.ttf dynalab "dfkaisho lt" m jisx0208.1983-0
mfs dfjkaimd.ttf dynalab "dfkaisho md" m jisx0208.1983-0
mfs dfjktrxb.ttf dynalab "dfkanteiryu xb" m jisx0208.1983-0
mfs dfjleimd.ttf dynalab "dfleisho sb" m jisx0208.1983-0
mfs dfjmrgbd.ttf dynalab "dfmarugothic bd" m jisx0208.1983-0
mfs dfjmrglt.ttf dynalab "dfmarugothic lt" m jisx0208.1983-0
mfs dfjmrgmd.ttf dynalab "dfmarugothic md" m jisx0208.1983-0
mfs dfjmrmmd.ttf dynalab "dfmarumoji sl" m jisx0208.1983-0
mfs dfjmrmw7.ttf dynalab "dfmarumoji w7" m jisx0208.1983-0
mfs dfjmrmw9.ttf dynalab "dfmarumoji w9" m jisx0208.1983-0
mfs dfjpop1.ttf dynalab "dfpop1 sb" m jisx0208.1983-0
mfs dfjpopw5.ttf dynalab "dfpop1 w5" m jisx0208.1983-0
mfs dfjpopw9.ttf dynalab "dfpop1 w9" m jisx0208.1983-0

# jisx0208.1983-0
mfs dfjgyomd-unicode.ttf dynalab "dfgyosho-u lt" m jisx0208.1983-0
mfs dfjkaibd-unicode.ttf dynalab "dfkaisho-u xb" m jisx0208.1983-0
mfs dfjkailt-unicode.ttf dynalab "dfkaisho-u lt" m jisx0208.1983-0
mfs dfjkaimd-unicode.ttf dynalab "dfkaisho-u md" m jisx0208.1983-0
mfs dfjktrxb-unicode.ttf dynalab "dfkanteiryu-u xb" m jisx0208.1983-0
mfs dfjleimd-unicode.ttf dynalab "dfleisho-u sb" m jisx0208.1983-0
mfs dfjmrgbd-unicode.ttf dynalab "dfmarugothic-u bd" m jisx0208.1983-0
mfs dfjmrglt-unicode.ttf dynalab "dfmarugothic-u lt" m jisx0208.1983-0
mfs dfjmrgmd-unicode.ttf dynalab "dfmarugothic-u md" m jisx0208.1983-0
mfs dfjmrmmd-unicode.ttf dynalab "dfmarumoji-u sl" m jisx0208.1983-0
mfs dfjmrmw7-unicode.ttf dynalab "dfmarumoji-u w7" m jisx0208.1983-0
mfs dfjmrmw9-unicode.ttf dynalab "dfmarumoji-u w9" m jisx0208.1983-0
mfs dfjpop1-unicode.ttf dynalab "dfpop1-u sb" m jisx0208.1983-0
mfs dfjpopw5-unicode.ttf dynalab "dfpop1-u w5" m jisx0208.1983-0
mfs dfjpopw9-unicode.ttf dynalab "dfpop1-u w9" m jisx0208.1983-0

# jisx0208.1983-0
mfs kochi-gothic.ttf misc "kochi gothic" m jisx0208.1983-0
mfs kochi-mincho.ttf misc "kochi mincho" m jisx0208.1983-0

# jisx0208.1983-0
mfs kouzanmouhitu.ttf misc kouzanbrushfont m jisx0208.1983-0

# jisx0208.1983-0
mfs sazanami-gothic.ttf misc "sazanami gothic" m jisx0208.1983-0
mfs sazanami-mincho.ttf misc "sazanami mincho" m jisx0208.1983-0

# jisx0208.1983-0
#mfs ipag.ttf misc ipagothic m jisx0208.1983-0
#mfs ipagp.ttf misc ipapgothic p jisx0208.1983-0
#mfs ipam.ttf misc ipamincho m jisx0208.1983-0
#mfs ipamp.ttf misc ipapmincho p jisx0208.1983-0
mfs ipag.ttf misc ipagothic m jisx0213.2004-0
mfs ipagp.ttf misc ipapgothic p jisx0213.2004-0
mfs ipam.ttf misc ipamincho m jisx0213.2004-0
mfs ipamp.ttf misc ipapmincho p jisx0213.2004-0

# jisx0208.1983-0
#mfs ipamjm.ttf misc ipapmjmincho m jisx0208.1983-0
mfs ipamjm.ttf misc ipapmjmincho m jisx0213.2004-0
tar xvvf less-382.tar.gz
chmod -R +w less-382
cd less-382
zcat ../less-382-iso258.patch.gz | patch -p1
zcat ../less-382-iso258-259.patch.gz | patch -p1
zcat ../less-382-iso259-260.patch.gz | patch -p1
zcat ../less-382-iso260-261.patch.gz | patch -p1
zcat ../less-382-iso261-262.patch.gz | patch -p1
##zcat ../less-382-iso262.ext02.patch.gz | patch -p1
zcat ../less-382-iso262.ext03.patch.gz | patch -p1
CFLAGS="-Wno-error=implicit-function-declaration -Wno-error=implicit-int" ./configure
CFLAGS="-Wno-error=implicit-function-declaration -Wno-error=implicit-int" make
CFLAGS="-Wno-error=implicit-function-declaration -Wno-error=implicit-int" make install

Canna37p3.diff

*** Makefile.ORG	2024-07-12 23:12:36.912950194 +0900
--- Makefile	2024-07-12 23:14:29.256951565 +0900
***************
*** 290,296 ****

        PROJECTROOT = /usr

!       CDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing
          CCOPTIONS =

        ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)
--- 290,296 ----

        PROJECTROOT = /usr

!       CDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing -Wno-error=implicit-int -Wno-error=implicit-function-declaration -Wno-error=incompatible-pointer-types
          CCOPTIONS =

        ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)

How to build

$ xmkmf -a
$ patch -p0 <../Canna37p3.diff
$ make canna
$ su
# make install
# make install.man

/etc/rc.d/rc.local

if [ -x /usr/local/canna/sbin/cannaserver ]
then
        rm /tmp/.iroha_unix/IROHA
        /usr/local/canna/sbin/cannaserver -inet -u bin
        echo "Starting cannaserver."
fi

/var/log/CANNA0msgs

touch /var/log/CANNA0msgs
chown bin.bin /var/log/CANNA0msgs

/etc/ld.so.conf

/usr/local/canna/lib

kinput-v3.1.diff

*** Makefile.ORG	2024-07-12 23:38:49.433969389 +0900
--- Makefile	2024-07-12 23:42:59.724972445 +0900
***************
*** 169,175 ****

             CXXLIB = -lstdc++

!     CXXDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing
  CXXDEPENDINCLUDES =
   CXXEXTRA_DEFINES =
  CXXEXTRA_INCLUDES =
--- 169,175 ----

             CXXLIB = -lstdc++

!     CXXDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing -Wno-error=implicit-function-declaration -Wno-error=implicit-int
  CXXDEPENDINCLUDES =
   CXXEXTRA_DEFINES =
  CXXEXTRA_INCLUDES =
***************
*** 290,296 ****

        PROJECTROOT = /usr

!       CDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing
          CCOPTIONS =

        ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)
--- 290,296 ----

        PROJECTROOT = /usr

!       CDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing -Wno-error=implicit-function-declaration -Wno-error=implicit-int
          CCOPTIONS =

        ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)

How to build

$ xmkmf -a
$ patch -p0 <../kinput-v3.1.diff
$ make
# make install
# make install.man

/usr/X11R6/lib/X11/app-defaults/Kinput2 like following.

*IMProtocol.locales: ja_JP.UTF-8, ja_JP.SJIS, ja_JP.EUC, ja_JP, japanese, japan, ja

~/.xinitrc

kinput2 -kinput +ximp -xim -canna &
*** Makefile.ORG	2024-07-13 19:03:29.710096163 +0900
--- Makefile	2024-07-13 19:09:10.727100326 +0900
***************
*** 9,16 ****
  # Keep this list in sync with pyproject.toml includes/artifacts
  # intended use: when building a source distribution,
  # make pypi-files && python3 -m build -sn .
! pypi-files: AUTHORS Changelog.md LICENSE README.md README.txt supportedsites \
!             completions yt-dlp.1 pyproject.toml setup.cfg devscripts/* test/*

  .PHONY: all clean clean-all clean-test clean-dist clean-cache \
          completions completion-bash completion-fish completion-zsh \
--- 9,18 ----
  # Keep this list in sync with pyproject.toml includes/artifacts
  # intended use: when building a source distribution,
  # make pypi-files && python3 -m build -sn .
! #pypi-files: AUTHORS Changelog.md LICENSE README.md README.txt supportedsites \
! #            completions yt-dlp.1 pyproject.toml setup.cfg devscripts/* test/*
! pypi-files: AUTHORS Changelog.md LICENSE README.md            supportedsites \
!             completions          pyproject.toml setup.cfg devscripts/* test/*

  .PHONY: all clean clean-all clean-test clean-dist clean-cache \
          completions completion-bash completion-fish completion-zsh \
***************
*** 50,60 ****
  MARKDOWN != $(MARKDOWN_CMD)
  MARKDOWN ?= $(shell $(MARKDOWN_CMD))

! install: lazy-extractors yt-dlp yt-dlp.1 completions
  	mkdir -p $(DESTDIR)$(BINDIR)
  	install -m755 yt-dlp $(DESTDIR)$(BINDIR)/yt-dlp
! 	mkdir -p $(DESTDIR)$(MANDIR)/man1
! 	install -m644 yt-dlp.1 $(DESTDIR)$(MANDIR)/man1/yt-dlp.1
  	mkdir -p $(DESTDIR)$(SHAREDIR)/bash-completion/completions
  	install -m644 completions/bash/yt-dlp $(DESTDIR)$(SHAREDIR)/bash-completion/completions/yt-dlp
  	mkdir -p $(DESTDIR)$(SHAREDIR)/zsh/site-functions
--- 52,63 ----
  MARKDOWN != $(MARKDOWN_CMD)
  MARKDOWN ?= $(shell $(MARKDOWN_CMD))

! #install: lazy-extractors yt-dlp yt-dlp.1 completions
! install: lazy-extractors yt-dlp          completions
  	mkdir -p $(DESTDIR)$(BINDIR)
  	install -m755 yt-dlp $(DESTDIR)$(BINDIR)/yt-dlp
! #	mkdir -p $(DESTDIR)$(MANDIR)/man1
! #	install -m644 yt-dlp.1 $(DESTDIR)$(MANDIR)/man1/yt-dlp.1
  	mkdir -p $(DESTDIR)$(SHAREDIR)/bash-completion/completions
  	install -m644 completions/bash/yt-dlp $(DESTDIR)$(SHAREDIR)/bash-completion/completions/yt-dlp
  	mkdir -p $(DESTDIR)$(SHAREDIR)/zsh/site-functions
*** ./istream.h.ORG	2012-11-28 12:23:44.903821617 +0900
--- ./istream.h	2012-11-28 12:24:31.368727065 +0900
***************
*** 20,26 ****

  typedef struct stream_buffer *StreamBuffer;

! struct file_handle {
      FILE *f;
      void (*close) ();
  };
--- 20,26 ----

  typedef struct stream_buffer *StreamBuffer;

! struct File_handle {
      FILE *f;
      void (*close) ();
  };
***************
*** 53,59 ****

  struct file_stream {
      struct stream_buffer stream;
!     struct file_handle *handle;
      char type;
      char iseos;
      int (*read) ();
--- 53,59 ----

  struct file_stream {
      struct stream_buffer stream;
!     struct File_handle *handle;
      char type;
      char iseos;
      int (*read) ();
*** ./istream.c.ORG	2012-11-28 12:23:39.465130387 +0900
--- ./istream.c	2012-11-28 12:24:16.455831711 +0900
***************
*** 22,29 ****
  static void basic_close(int *handle);
  static int basic_read(int *handle, char *buf, int len);

! static void file_close(struct file_handle *handle);
! static int file_read(struct file_handle *handle, char *buf, int len);

  static int str_read(Str handle, char *buf, int len);

--- 22,29 ----
  static void basic_close(int *handle);
  static int basic_read(int *handle, char *buf, int len);

! static void file_close(struct File_handle *handle);
! static int file_read(struct File_handle *handle, char *buf, int len);

  static int str_read(Str handle, char *buf, int len);

***************
*** 114,120 ****
      stream = New(union input_stream);
      init_base_stream(&stream->base, STREAM_BUF_SIZE);
      stream->file.type = IST_FILE;
!     stream->file.handle = New(struct file_handle);
      stream->file.handle->f = f;
      if (closep)
  	stream->file.handle->close = closep;
--- 114,120 ----
      stream = New(union input_stream);
      init_base_stream(&stream->base, STREAM_BUF_SIZE);
      stream->file.type = IST_FILE;
!     stream->file.handle = New(struct File_handle);
      stream->file.handle->f = f;
      if (closep)
  	stream->file.handle->close = closep;
***************
*** 638,650 ****
  }

  static void
! file_close(struct file_handle *handle)
  {
      handle->close(handle->f);
  }

  static int
! file_read(struct file_handle *handle, char *buf, int len)
  {
      return fread(buf, 1, len, handle->f);
  }
--- 638,650 ----
  }

  static void
! file_close(struct File_handle *handle)
  {
      handle->close(handle->f);
  }

  static int
! file_read(struct File_handle *handle, char *buf, int len)
  {
      return fread(buf, 1, len, handle->f);
  }
*** ./main.c.ORG	2016-08-01 21:43:32.714706108 +0900
--- ./main.c	2016-08-01 21:45:27.569705061 +0900
***************
*** 833,839 ****
--- 833,844 ----
      mySignal(SIGPIPE, SigPipe);
  #endif

+ #if 0
      orig_GC_warn_proc = GC_set_warn_proc(wrap_GC_warn_proc);
+ #else
+     orig_GC_warn_proc = GC_get_warn_proc();
+     GC_set_warn_proc(wrap_GC_warn_proc);
+ #endif
      err_msg = Strnew();
      if (load_argc == 0) {
  	/* no URL specified */
*** ./url.c.ORG	2023-01-08 23:11:48.763189100 +0900
--- ./url.c	2023-01-08 23:12:29.258188644 +0900
***************
*** 268,277 ****
--- 268,279 ----
      if (RAND_status())
  	return;
      if ((file = RAND_file_name(buffer, sizeof(buffer)))) {
+ #if 0
  #ifdef USE_EGD
  	if (RAND_egd(file) > 0)
  	    return;
  #endif
+ #endif
  	RAND_load_file(file, -1);
      }
      if (RAND_status())

How to build

CFLAGS="-Wno-error=implicit-function-declaration -Wno-error=incompatible-pointer-types" ./configure --disable-mouse && make

realesrgan-ncnn-vulkanを利用した動画の変換スクリプト

#! /bin/sh
input="$1"
output="$2"
fps=`ffmpeg -i ${input} 2>&1 | egrep 'Stream.*Video' | sed -e 's/^.* \([0-9\.][0-9\.]*\) fps.*$/\1/'`

rm -f tmp_frames/frame*.jpg
rm -f out_frames/frame*.jpg

ffmpeg -i ${input} -qscale:v 1 -qmin 1 -qmax 1 -vsync 0 tmp_frames/frame%08d.jpg

./realesrgan-ncnn-vulkan -i tmp_frames -o out_frames -n realesr-animevideov3 -s 2 -f jpg
#./realesrgan-ncnn-vulkan -i tmp_frames -o out_frames -n realesrgan-x4plus -s 4 -f jpg

ffmpeg -framerate ${fps} -i out_frames/frame%08d.jpg -i ${input} -map 0:v:0 -map 1:a:0 -c:a copy -c:v libx264 -r ${fps} -pix_fmt yuv420p ${output}

rm -f tmp_frames/frame*.jpg
rm -f out_frames/frame*.jpg
*** ffmpeg.SlackBuild.ORG	2024-08-04 23:00:00.000000000 +0900
--- ffmpeg.SlackBuild	2024-08-04 23:10:38.000000000 +0900
***************
*** 106,112 ****
  libglslang="" ; [ "${GLSLANG:-no}" != "no" ]      && libglslang="--enable-libglslang"
  shaderc=""    ; [ "${SHADERC:-yes}" != "no" ]     && libshaderc="--enable-libshaderc"

! libx264=""    ; [ "${X264:-no}" != "no" ]         && libx264="--enable-libx264"
  libcelt=""    ; [ "${CELT:-no}" != "no" ]         && libcelt="--enable-libcelt"
  libdc1394=""  ; [ "${DC1394:-no}" != "no" ]       && libdc1394="--enable-libdc1394"
  libgsm=""     ; [ "${GSM:-no}" != "no" ]          && libgsm="--enable-libgsm"
--- 106,112 ----
  libglslang="" ; [ "${GLSLANG:-no}" != "no" ]      && libglslang="--enable-libglslang"
  shaderc=""    ; [ "${SHADERC:-yes}" != "no" ]     && libshaderc="--enable-libshaderc"

! libx264=""    ; [ "${X264:-yes}" != "no" ]         && libx264="--enable-libx264"
  libcelt=""    ; [ "${CELT:-no}" != "no" ]         && libcelt="--enable-libcelt"
  libdc1394=""  ; [ "${DC1394:-no}" != "no" ]       && libdc1394="--enable-libdc1394"
  libgsm=""     ; [ "${GSM:-no}" != "no" ]          && libgsm="--enable-libgsm"
***************
*** 136,142 ****
  vapoursynth=""  ; [ "${VAPOURSYNTH:-no}" != "no" ] && vapoursynth="--enable-vapoursynth"
  opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \
    opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb"
! fdk=""          ; [ "${FDK_AAC:-no}" != "no" ]  && \
    { fdk="--enable-libfdk-aac"; non_free="--enable-nonfree" ; }
  decklink=""   ; [ "${DECKLINK:-no}" != "no" ]   && \
    { decklink="--enable-decklink" ; \
--- 136,142 ----
  vapoursynth=""  ; [ "${VAPOURSYNTH:-no}" != "no" ] && vapoursynth="--enable-vapoursynth"
  opencore_amr="" ; [ "${OPENCORE:-no}" != "no" ] && \
    opencore_amr="--enable-libopencore-amrnb --enable-libopencore-amrwb"
! fdk=""          ; [ "${FDK_AAC:-yes}" != "no" ]  && \
    { fdk="--enable-libfdk-aac"; non_free="--enable-nonfree" ; }
  decklink=""   ; [ "${DECKLINK:-no}" != "no" ]   && \
    { decklink="--enable-decklink" ; \
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install --upgrade pip
$ pip install Cython
$ pip install wheel
$ git clone https://github.com/reazon-research/ReazonSpeech
$ pip install ReazonSpeech/pkg/nemo-asr
$ pip uninstall huggingface_hub
$ pip install huggingface-hub==0.23.2
$ pip uninstall numpy
$ pip install numpy==1.26.4
$ reazonspeech-nemo-asr HogeHoge.mp3

システム設定

/opt/brother/scanner/brscan4/brsanenetdevice4.cfg
*** ./opt/brother/scanner/brscan4/brsanenetdevice4.cfg.ORG	2024-05-06 17:05:15.931250255 +0900
--- ./opt/brother/scanner/brscan4/brsanenetdevice4.cfg	2024-07-22 22:33:10.883075608 +0900
***************
*** 1,2 ****
!

--- 1,2 ----
! DEVICE=dcp-j552n , "DCP-J552N" , 0x4f9:0x2e3 , IP-ADDRESS=192.168.0.52
/opt/brother/Printers/dcpj552n/lpd/filterdcpj552n
*** ./opt/brother/Printers/dcpj552n/lpd/filterdcpj552n.ORG	2024-05-03 23:29:12.182264882 +0900
--- ./opt/brother/Printers/dcpj552n/lpd/filterdcpj552n	2024-08-11 09:09:08.931587840 +0900
***************
*** 77,84 ****
  		rm -f $PS_TEMP
  		;;
  	* )
! 		A2PS_OP="--output=- -q -1 --no-header --borders no"
! 		eval cat $INPUT_TEMP | a2ps $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
  		RET=$?
  		;;
  esac
--- 77,87 ----
  		rm -f $PS_TEMP
  		;;
  	* )
! ##		A2PS_OP="--output=- -q -1 --no-header --borders no"
! ##		eval cat $INPUT_TEMP | a2ps $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
! 		A2PS_OP=""
! ####		eval cat $INPUT_TEMP | /usr/local/bin/a2ps-j $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
! 		eval /usr/local/bin/nkf -w $INPUT_TEMP | /usr/local/bin/a2ps-j $A2PS_OP | $PSCONV $PSCONV_OP | $BRCONV $BRCONV_OP
  		RET=$?
  		;;
  esac
/usr/share/ghostscript/10.03.1/Resource/Init/cidfmap
*** ./usr/share/ghostscript/10.03.1/Resource/Init/cidfmap.ORG	2024-07-14 21:35:50.412262431 +0900
--- ./usr/share/ghostscript/10.03.1/Resource/Init/cidfmap	2024-07-14 21:36:04.651262605 +0900
***************
*** 113,118 ****
--- 113,138 ----
  /Adobe-Japan1           	/Sazanami-Gothic        ;
  /Adobe-Japan2           	/Sazanami-Gothic-JaH    ;

+ % add by m-ito
+ /Tyukaisyo-Medium               << /FileType /TrueType /Path (dfjkaimd.ttf) /CSI [(Japan1) 6] >> ;
+ /Tyukaisyo-Medium-Unocode       << /FileType /TrueType /Path (dfjkaimd-unicode.ttf) /CSI [(Japan1) 6] >> ;
+ /Tyumarugothic-Medium           << /FileType /TrueType /Path (dfjmrgmd.ttf) /CSI [(Japan1) 6] >> ;
+ /Tyumarugothic-Medium-Unicode   << /FileType /TrueType /Path (dfjmrgmd-unicode.ttf) /CSI [(Japan1) 6] >> ;
+ /Gyosyo-Medium                  << /FileType /TrueType /Path (dfjgyomd.ttf) /CSI [(Japan1) 6] >> ;
+ /Gyosyo-Medium-Unicode          << /FileType /TrueType /Path (dfjgyomd-unicode.ttf) /CSI [(Japan1) 6] >> ;
+ /Kanteiryu-Medium               << /FileType /TrueType /Path (dfjktrxb.ttf) /CSI [(Japan1) 6] >> ;
+ /Kanteiryu-Medium-Unicode       << /FileType /TrueType /Path (dfjktrxb-unicode.ttf) /CSI [(Japan1) 6] >> ;
+ /Reisyo-Medium                  << /FileType /TrueType /Path (dfjleimd.ttf) /CSI [(Japan1) 6] >> ;
+ /Reisyo-Medium-Unicode          << /FileType /TrueType /Path (dfjleimd-unicode.ttf) /CSI [(Japan1) 6] >> ;
+ /Pop1-Medium                    << /FileType /TrueType /Path (dfjpop1.ttf)  /CSI [(Japan1) 6] >> ;
+ /Pop1-Medium-Unicode            << /FileType /TrueType /Path (dfjpop1-unicode.ttf)  /CSI [(Japan1) 6] >> ;
+ /Marumoji-Medium                << /FileType /TrueType /Path (dfjmrmmd.ttf) /CSI [(Japan1) 6] >> ;
+ /Marumoji-Medium-Unicode        << /FileType /TrueType /Path (dfjmrmmd-unicode.ttf) /CSI [(Japan1) 6] >> ;
+ %
+ /Kouzanmouhitu-Medium           << /FileType /TrueType /Path (kouzanmouhitu.ttf) /CSI [(Japan1) 6] >> ;
+ %/Eudc                          << /FileType /TrueType /Path (eudc.ttf) /CSI [(Artifex) (Unicode) 0] >> ;
+ %/SME                           << /FileType /TrueType /Path (sazanami-mincho-eudc.ttf) /CSI [(Artifex) (Unicode) 0] >> ;
+
  %% cidfmap.ko
  %% To enable Korean printing support, install the fonts shown in the example
  %% here and uncomment the block below:
/usr/share/sendmail/cf/cf/config.mc
*** ./usr/share/sendmail/cf/cf/config.mc.ORG	2024-04-29 23:44:23.006042321 +0900
--- ./usr/share/sendmail/cf/cf/config.mc	2024-04-29 23:53:04.007048681 +0900
***************
*** 14,28 ****
  OSTYPE(`linux')dnl
  dnl#
  dnl# You will need to create the certificates below with OpenSSL first:
! define(`confCACERT_PATH', `/etc/mail/certs/')
! define(`confCACERT', `/etc/mail/certs/CA.cert.pem')
! define(`confSERVER_CERT', `/etc/mail/certs/smtp.cert.pem')
! define(`confSERVER_KEY', `/etc/mail/certs/smtp.key.pem')
  dnl# These settings help protect against people verifying email addresses
  dnl# at your site in order to send you email that you probably don't want:
  define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
  dnl# Uncomment the line below to send outgoing mail through an external server:
  dnl define(`SMART_HOST',`mailserver.example.com')
  dnl# No timeout for ident:
  define(`confTO_IDENT', `0')dnl
  dnl# Enable the line below to use smrsh to restrict what sendmail can run:
--- 14,29 ----
  OSTYPE(`linux')dnl
  dnl#
  dnl# You will need to create the certificates below with OpenSSL first:
! dnl##define(`confCACERT_PATH', `/etc/mail/certs/')
! dnl##define(`confCACERT', `/etc/mail/certs/CA.cert.pem')
! dnl##define(`confSERVER_CERT', `/etc/mail/certs/smtp.cert.pem')
! dnl##define(`confSERVER_KEY', `/etc/mail/certs/smtp.key.pem')
  dnl# These settings help protect against people verifying email addresses
  dnl# at your site in order to send you email that you probably don't want:
  define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
  dnl# Uncomment the line below to send outgoing mail through an external server:
  dnl define(`SMART_HOST',`mailserver.example.com')
+ define(`SMART_HOST',`smtp:lib100.artie.or.jp')
  dnl# No timeout for ident:
  define(`confTO_IDENT', `0')dnl
  dnl# Enable the line below to use smrsh to restrict what sendmail can run:
***************
*** 34,46 ****
  FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl
  FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl
  FEATURE(`access_db', `hash -T<TMPF> /etc/mail/access')dnl
! FEATURE(`blacklist_recipients')dnl
  FEATURE(`local_procmail',`',`procmail -t -Y -a $h -d $u')dnl
  FEATURE(`always_add_domain')dnl
  FEATURE(`redirect')dnl
  FEATURE(`no_default_msa')dnl
  dnl# Turn this feature on if you don't always have DNS, or enjoy junk mail:
  dnl FEATURE(`accept_unresolvable_domains')dnl
  EXPOSED_USER(`root')dnl
  dnl# Also accept mail for localhost.localdomain:
  LOCAL_DOMAIN(`localhost.localdomain')dnl
--- 35,49 ----
  FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl
  FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl
  FEATURE(`access_db', `hash -T<TMPF> /etc/mail/access')dnl
! dnl##FEATURE(`blacklist_recipients')dnl
! FEATURE(`blocklist_recipients')dnl
  FEATURE(`local_procmail',`',`procmail -t -Y -a $h -d $u')dnl
  FEATURE(`always_add_domain')dnl
  FEATURE(`redirect')dnl
  FEATURE(`no_default_msa')dnl
  dnl# Turn this feature on if you don't always have DNS, or enjoy junk mail:
  dnl FEATURE(`accept_unresolvable_domains')dnl
+ FEATURE(`accept_unresolvable_domains')dnl
  EXPOSED_USER(`root')dnl
  dnl# Also accept mail for localhost.localdomain:
  LOCAL_DOMAIN(`localhost.localdomain')dnl
***************
*** 48,61 ****
  MAILER(smtp)dnl
  MAILER(procmail)dnl
  dnl# Allow SASL authentication/relaying:
! define(`confAUTH_OPTIONS', `A p y')dnl
! define(`confAUTH_MECHANISMS', `LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl
! TRUST_AUTH_MECH(`LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl
! DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
  dnl# Daemon options after M= below that might need to be changed are:
  dnl# s (allow SSL, not only TLS)
  dnl# a (require authentication)
! DAEMON_OPTIONS(`Port=smtps, Name=MSA-SSL, M=Esa')dnl
! LOCAL_CONFIG
  dnl# Do not allow the weak SSLv2:
! O CipherList=ALL:!ADH:!NULL:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:-LOW:+SSLv3:+TLSv1:-SSLv2:+EXP:+eNULL
--- 51,64 ----
  MAILER(smtp)dnl
  MAILER(procmail)dnl
  dnl# Allow SASL authentication/relaying:
! dnl##define(`confAUTH_OPTIONS', `A p y')dnl
! dnl##define(`confAUTH_MECHANISMS', `LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl
! dnl##TRUST_AUTH_MECH(`LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl
! dnl##DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
  dnl# Daemon options after M= below that might need to be changed are:
  dnl# s (allow SSL, not only TLS)
  dnl# a (require authentication)
! dnl##DAEMON_OPTIONS(`Port=smtps, Name=MSA-SSL, M=Esa')dnl
! dnl##LOCAL_CONFIG
  dnl# Do not allow the weak SSLv2:
! dnl##O CipherList=ALL:!ADH:!NULL:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:-LOW:+SSLv3:+TLSv1:-SSLv2:+EXP:+eNULL
/usr/local/etc/freshclam.conf
*** ./usr/local/etc/freshclam.conf.ORG	2024-04-30 00:55:24.980094347 +0900
--- ./usr/local/etc/freshclam.conf	2024-04-30 00:56:12.667094930 +0900
***************
*** 5,16 ****


  # Comment or remove the line below.
! Example

  # Path to the database directory.
  # WARNING: It must match clamd.conf's directive!
  # Default: hardcoded (depends on installation options)
  #DatabaseDirectory /var/lib/clamav

  # Path to the log file (make sure it has proper permissions)
  # Default: disabled
--- 5,17 ----


  # Comment or remove the line below.
! ##Example

  # Path to the database directory.
  # WARNING: It must match clamd.conf's directive!
  # Default: hardcoded (depends on installation options)
  #DatabaseDirectory /var/lib/clamav
+ DatabaseDirectory /usr/local/share/clamav

  # Path to the log file (make sure it has proper permissions)
  # Default: disabled
/usr/local/etc/clamd.conf
*** ./usr/local/etc/clamd.conf.ORG	2024-04-30 00:53:24.927092882 +0900
--- ./usr/local/etc/clamd.conf	2024-04-30 00:55:00.537094049 +0900
***************
*** 5,11 ****


  # Comment or remove the line below.
! Example

  # Uncomment this option to enable logging.
  # LogFile must be writable for the user running daemon.
--- 5,11 ----


  # Comment or remove the line below.
! ##Example

  # Uncomment this option to enable logging.
  # LogFile must be writable for the user running daemon.
***************
*** 83,88 ****
--- 83,89 ----
  # Path to the database directory.
  # Default: hardcoded (depends on installation options)
  #DatabaseDirectory /var/lib/clamav
+ DatabaseDirectory /usr/local/share/clamav

  # Only load the official signatures published by the ClamAV project.
  # Default: no
***************
*** 100,105 ****
--- 101,107 ----
  # Default: disabled (must be specified by a user)
  #LocalSocket /run/clamav/clamd.sock
  #LocalSocket /tmp/clamd.sock
+ LocalSocket /tmp/clamd.sock

  # Sets the group ownership on the unix socket.
  # Default: disabled (the primary group of the user running clamd)
***************
*** 116,121 ****
--- 118,124 ----
  # TCP port address.
  # Default: no
  #TCPSocket 3310
+ TCPSocket 3310

  # TCP address.
  # By default we bind to INADDR_ANY, probably not wise.
***************
*** 124,129 ****
--- 127,133 ----
  # times if you want to listen on multiple IPs. IPv6 is now supported.
  # Default: no
  #TCPAddr localhost
+ TCPAddr localhost

  # Maximum length the queue of pending connections may grow to.
  # Default: 200
/etc/fstab
*** ./etc/fstab.ORG	2024-05-19 10:41:23.292003714 +0900
--- ./etc/fstab	2024-05-19 10:43:09.653005012 +0900
***************
*** 1,5 ****
  /dev/nvme0n1p2   swap             swap        defaults         0   0
! /dev/nvme0n1p3   /                ext4        defaults         1   1
  /dev/nvme0n1p1   /boot/efi        vfat        defaults         1   0
  #/dev/cdrom      /mnt/cdrom       auto        noauto,owner,ro,comment=x-gvfs-show 0   0
  /dev/fd0         /mnt/floppy      auto        noauto,owner     0   0
--- 1,5 ----
  /dev/nvme0n1p2   swap             swap        defaults         0   0
! /dev/nvme0n1p3   /                ext4        defaults,noatime 1   1
  /dev/nvme0n1p1   /boot/efi        vfat        defaults         1   0
  #/dev/cdrom      /mnt/cdrom       auto        noauto,owner,ro,comment=x-gvfs-show 0   0
  /dev/fd0         /mnt/floppy      auto        noauto,owner     0   0
/etc/exports
*** ./etc/exports.ORG	2024-05-01 22:31:40.360597620 +0900
--- ./etc/exports	2024-05-01 22:32:08.650597965 +0900
***************
*** 1,4 ****
--- 1,6 ----
  # See exports(5) for a description.
  # This file contains a list of all directories exported to other computers.
  # It is used by rpc.nfsd and rpc.mountd.
+ /	192.168.0.0/255.255.255.0(ro,no_root_squash,no_subtree_check,sync)
+ #/mnt/export	192.168.0.0/255.255.255.0(rw,no_root_squash,no_subtree_check,sync)
/etc/sane.d/dll.conf
*** ./etc/sane.d/dll.conf.ORG	2024-05-06 17:07:45.526252081 +0900
--- ./etc/sane.d/dll.conf	2024-05-06 17:08:22.916252538 +0900
***************
*** 7,12 ****
--- 7,13 ----
  # The next line enables the network backend; comment it out if you don't
  # need to use a remote SANE scanner over the network -- see sane-net(5)
  # and saned(8) for details.
+ brother4
  net
  abaton
  agfafocus
/etc/sane.d/net.conf
*** ./etc/sane.d/net.conf.ORG	2024-05-06 17:06:59.263251516 +0900
--- ./etc/sane.d/net.conf	2024-05-06 17:07:28.824251877 +0900
***************
*** 12,14 ****
--- 12,16 ----
  # directly or through the net backend.  Going through the net backend
  # may be necessary to access devices that need special privileges.
  # localhost
+
+ 192.168.0.52
/etc/elogind/logind.conf.d/LidSwitch.conf
*** ./etc/elogind/logind.conf.d/LidSwitch.conf.ORG	2024-05-01 22:41:10.391604578 +0900
--- ./etc/elogind/logind.conf.d/LidSwitch.conf	2024-08-11 09:15:31.661592512 +0900
***************
*** 0 ****
--- 1,51 ----
+ #  This file is part of elogind.
+ #
+ #  elogind is free software; you can redistribute it and/or modify it under the
+ #  terms of the GNU Lesser General Public License as published by the Free
+ #  Software Foundation; either version 2.1 of the License, or (at your option)
+ #  any later version.
+ #
+ # Entries in this file show the compile time defaults. Local configuration
+ # should be created by either modifying this file (or a copy of it placed in
+ # /etc/ if the original file is shipped in /usr/), or by creating "drop-ins" in
+ # the /etc/elogind/logind.conf.d/ directory. The latter is generally
+ # recommended. Defaults can be restored by simply deleting the main
+ # configuration file and all drop-ins located in /etc/.
+ #
+ # See logind.conf(5) for details.
+
+ [Login]
+ #KillUserProcesses=no
+ #KillOnlyUsers=
+ #KillExcludeUsers=root
+ #InhibitDelayMaxSec=5
+ #UserStopDelaySec=10
+ #HandlePowerKey=poweroff
+ #HandlePowerKeyLongPress=ignore
+ #HandleRebootKey=reboot
+ #HandleRebootKeyLongPress=poweroff
+ #HandleSuspendKey=suspend
+ #HandleSuspendKeyLongPress=hibernate
+ #HandleHibernateKey=hibernate
+ #HandleHibernateKeyLongPress=ignore
+ #
+ # Don't sleep by closing LCD panel
+ #
+ HandleLidSwitch=ignore
+ #
+ #HandleLidSwitchExternalPower=suspend
+ #HandleLidSwitchDocked=ignore
+ #PowerKeyIgnoreInhibited=no
+ #SuspendKeyIgnoreInhibited=no
+ #HibernateKeyIgnoreInhibited=no
+ #LidSwitchIgnoreInhibited=yes
+ #RebootKeyIgnoreInhibited=no
+ #HoldoffTimeoutSec=30s
+ #IdleAction=ignore
+ #IdleActionSec=30min
+ #RuntimeDirectorySize=10%
+ #RuntimeDirectoryInodesMax=
+ #RemoveIPC=yes
+ #InhibitorsMax=8192
+ #SessionsMax=8192
+ #StopIdleSessionSec=infinity
/etc/modprobe.d/em28xx.conf
*** ./etc/modprobe.d/em28xx.conf.ORG	2024-07-07 19:24:45.886509874 +0900
--- ./etc/modprobe.d/em28xx.conf	2024-07-07 19:24:25.327509623 +0900
***************
*** 0 ****
--- 1,2 ----
+ install em28xx /sbin/modprobe --ignore-install em28xx card=72; /bin/echo "117f 5207" > /sys/bus/usb/drivers/em28xx/new_id
+
/etc/rc.d/rc.local
*** ./etc/rc.d/rc.local.ORG	2024-05-01 22:27:21.241594457 +0900
--- ./etc/rc.d/rc.local	2024-07-12 23:21:36.620956782 +0900
***************
*** 7,9 ****
--- 7,64 ----
  # make an /etc/rc.d/rc.local_shutdown script and put those
  # commands in there.

+ if [ -x /usr/bin/rm ]
+ then
+ 	/usr/bin/rm -fr /tmp/*.lock
+ 	for i in `find /tmp -ctime +10 | egrep '^/tmp/'`
+ 	do
+ 		/usr/bin/rm -fr $i
+ 	done
+ 	echo "Clean /tmp."
+ fi
+
+ #if [ -x /sbin/route ]
+ #then
+ #	/sbin/route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.10
+ #fi
+
+ #if [ -x /usr/bin/sensors ]
+ #then
+ #	/sbin/modprobe coretemp
+ #	/usr/bin/sensors -s
+ #fi
+
+ if [ -x /usr/sbin/pcscd ]
+ then
+ 	/etc/rc.d/rc.pcscd start
+ 	echo "Starting pcscd."
+ fi
+
+ if [ -x /usr/sbin/alsactl ]
+ then
+ 	/usr/sbin/alsactl restore
+ 	echo "Restore alsa setting."
+ fi
+
+ if [ -x /usr/local/canna/sbin/cannaserver ]
+ then
+ 	rm /tmp/.iroha_unix/IROHA
+ 	/usr/local/canna/sbin/cannaserver -inet -u bin
+ 	echo "Starting cannaserver."
+ fi
+
+ if [ -x /usr/local/sbin/clamd ]
+ then
+ 	/usr/local/sbin/clamd &
+ 	echo "Starting clamd."
+ fi
+
+ if [ -x /usr/bin/rsync ]
+ then
+ 	/usr/bin/rsync --daemon --config=/etc/rsyncd.conf
+ fi
+
+ #if [ -x /sbin/sysctl ]
+ #then
+ #	/sbin/sysctl --system -e
+ #fi
/etc/rc.d/rc.inet1.conf
*** ./etc/rc.d/rc.inet1.conf.ORG	2024-04-29 09:40:59.169002907 +0900
--- ./etc/rc.d/rc.inet1.conf	2024-04-29 10:26:02.407002458 +0900
***************
*** 18,24 ****
  # =============================================================================

  # IPv4 config options for eth0:
! IPADDRS[0]="192.168.0.3/24"
  USE_DHCP[0]=""
  # IPv6 config options for eth0:
  IP6ADDRS[0]=""
--- 18,25 ----
  # =============================================================================

  # IPv4 config options for eth0:
! #IPADDRS[0]="192.168.0.3/24"
! IPADDRS[0]=""
  USE_DHCP[0]=""
  # IPv6 config options for eth0:
  IP6ADDRS[0]=""
***************
*** 166,171 ****
--- 167,177 ----
  #WLAN_WPA[4]="wpa_supplicant"
  #WLAN_WPADRIVER[4]="wext"
  #WLAN_WPAWAIT[4]=30
+ IFNAME[4]="wlan0"
+ IPADDRS[4]="192.168.0.3"
+ WLAN_WPA[4]="wpa_supplicant"
+ #WLAN_WPADRIVER[4]="wext"
+ WLAN_WPADRIVER[4]="nl80211"

  # =============================================================================
/etc/rsyncd.conf
*** ./etc/rsyncd.conf.ORG	2024-05-01 22:38:52.097602890 +0900
--- ./etc/rsyncd.conf	2024-05-01 22:54:59.583008478 +0900
***************
*** 0 ****
--- 1,8 ----
+ uid = root
+ gid = root
+ [root_partition]
+ 	comment = lifebook1 root partition
+ 	path = /
+ 	read only = true
+ 	hosts allow = 192.168.0.100
+ 	hosts deny = *
/etc/httpd/httpd.conf
*** ./etc/httpd/httpd.conf.ORG	2024-06-20 23:28:37.410702067 +0900
--- ./etc/httpd/httpd.conf	2024-06-20 23:52:44.817719736 +0900
***************
*** 83,89 ****
--- 83,93 ----
  LoadModule access_compat_module lib64/httpd/modules/mod_access_compat.so
  LoadModule auth_basic_module lib64/httpd/modules/mod_auth_basic.so
  #LoadModule auth_form_module lib64/httpd/modules/mod_auth_form.so
+
+ # by m-ito
  #LoadModule auth_digest_module lib64/httpd/modules/mod_auth_digest.so
+ LoadModule auth_digest_module lib64/httpd/modules/mod_auth_digest.so
+
  #LoadModule allowmethods_module lib64/httpd/modules/mod_allowmethods.so
  #LoadModule file_cache_module lib64/httpd/modules/mod_file_cache.so
  #LoadModule cache_module lib64/httpd/modules/mod_cache.so
***************
*** 104,110 ****
--- 108,118 ----
  LoadModule reqtimeout_module lib64/httpd/modules/mod_reqtimeout.so
  #LoadModule ext_filter_module lib64/httpd/modules/mod_ext_filter.so
  #LoadModule request_module lib64/httpd/modules/mod_request.so
+
+ # by m-ito
  #LoadModule include_module lib64/httpd/modules/mod_include.so
+ LoadModule include_module lib64/httpd/modules/mod_include.so
+
  LoadModule filter_module lib64/httpd/modules/mod_filter.so
  #LoadModule reflector_module lib64/httpd/modules/mod_reflector.so
  #LoadModule substitute_module lib64/httpd/modules/mod_substitute.so
***************
*** 166,175 ****
--- 174,187 ----
  #LoadModule asis_module lib64/httpd/modules/mod_asis.so
  #LoadModule info_module lib64/httpd/modules/mod_info.so
  <IfModule !mpm_prefork_module>
+ # by m-ito
  	#LoadModule cgid_module lib64/httpd/modules/mod_cgid.so
+ 	LoadModule cgid_module lib64/httpd/modules/mod_cgid.so
  </IfModule>
  <IfModule mpm_prefork_module>
+ # by m-ito
  	#LoadModule cgi_module lib64/httpd/modules/mod_cgi.so
+ 	LoadModule cgi_module lib64/httpd/modules/mod_cgi.so
  </IfModule>
  #LoadModule dav_fs_module lib64/httpd/modules/mod_dav_fs.so
  #LoadModule dav_lock_module lib64/httpd/modules/mod_dav_lock.so
***************
*** 178,184 ****
--- 190,200 ----
  LoadModule dir_module lib64/httpd/modules/mod_dir.so
  #LoadModule actions_module lib64/httpd/modules/mod_actions.so
  #LoadModule speling_module lib64/httpd/modules/mod_speling.so
+
+ # by m-ito
  #LoadModule userdir_module lib64/httpd/modules/mod_userdir.so
+ LoadModule userdir_module lib64/httpd/modules/mod_userdir.so
+
  LoadModule alias_module lib64/httpd/modules/mod_alias.so
  #LoadModule rewrite_module lib64/httpd/modules/mod_rewrite.so

***************
*** 427,433 ****
--- 443,451 ----
      # To use CGI scripts outside of ScriptAliased directories:
      # (You will also need to add "ExecCGI" to the "Options" directive.)
      #
+ # by m-ito
      #AddHandler cgi-script .cgi
+     AddHandler cgi-script .cgi

      # For type maps (negotiated resources):
      #AddHandler type-map var
***************
*** 438,445 ****
--- 456,466 ----
      # To parse .shtml files for server-side includes (SSI):
      # (You will also need to add "Includes" to the "Options" directive.)
      #
+ # by m-ito
      #AddType text/html .shtml
      #AddOutputFilter INCLUDES .shtml
+     AddType text/html .shtml
+     AddOutputFilter INCLUDES .shtml
  </IfModule>

  #
***************
*** 499,505 ****
--- 520,528 ----
  #Include /etc/httpd/extra/httpd-languages.conf

  # User home directories
+ # by m-ito
  #Include /etc/httpd/extra/httpd-userdir.conf
+ Include /etc/httpd/extra/httpd-userdir.conf

  # Real-time info on requests and configuration
  #Include /etc/httpd/extra/httpd-info.conf
/etc/httpd/extra/httpd-userdir.conf
*** ./etc/httpd/extra/httpd-userdir.conf.ORG	2024-06-20 23:29:09.260702456 +0900
--- ./etc/httpd/extra/httpd-userdir.conf	2024-06-20 23:31:40.717704305 +0900
***************
*** 14,21 ****
  # for a site where these directories are restricted to read-only.
  #
  <Directory "/home/*/public_html">
!     AllowOverride FileInfo AuthConfig Limit Indexes
!     Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
      Require method GET POST OPTIONS
  </Directory>

--- 14,24 ----
  # for a site where these directories are restricted to read-only.
  #
  <Directory "/home/*/public_html">
! # by m-ito
! #    AllowOverride FileInfo AuthConfig Limit Indexes
! #    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
!     AllowOverride All
!     Options Includes FollowSymlinks ExecCGI
      Require method GET POST OPTIONS
  </Directory>
/etc/inittab
*** ./etc/inittab.ORG	2024-04-29 09:26:04.083000538 +0900
--- ./etc/inittab	2024-05-01 23:47:54.472001995 +0900
***************
*** 22,28 ****
  #   6 = reboot

  # Default runlevel. (Do not set to 0 or 6)
! id:3:initdefault:

  # System initialization (runs when system boots).
  si:S:sysinit:/etc/rc.d/rc.S
--- 22,29 ----
  #   6 = reboot

  # Default runlevel. (Do not set to 0 or 6)
! #id:3:initdefault:
! id:4:initdefault:

  # System initialization (runs when system boots).
  si:S:sysinit:/etc/rc.d/rc.S
***************
*** 34,40 ****
  rc:2345:wait:/etc/rc.d/rc.M

  # What to do at the "Three Finger Salute".
! ca::ctrlaltdel:/sbin/shutdown -t5 -r now

  # Runlevel 0 halts the system.
  l0:0:wait:/etc/rc.d/rc.0
--- 35,42 ----
  rc:2345:wait:/etc/rc.d/rc.M

  # What to do at the "Three Finger Salute".
! #ca::ctrlaltdel:/sbin/shutdown -t5 -r now
! ca::ctrlaltdel:/sbin/shutdown -h now

  # Runlevel 0 halts the system.
  l0:0:wait:/etc/rc.d/rc.0
/etc/passwd
*** ./etc/passwd.ORG	2024-05-05 17:32:58.979783410 +0900
--- ./etc/passwd	2024-05-05 23:32:22.840046641 +0900
***************
*** 43,45 ****
--- 43,48 ----
  ldap:x:330:330:OpenLDAP server:/var/lib/openldap:/bin/false
  openvpn:x:443:443:User for OpenVPN:/:/bin/false
  overflowuid:x:65534:65534:System UID overflow:/:/bin/false
+ m-ito:x:503:503::/home/m-ito:/bin/bash
+ clamav:x:513:513:clamav anti virus:/usr/local/share/clamav:/bin/false
+ pcscd:x:257:257::/var/run/pcscd:/bin/false
/etc/group
*** ./etc/group.ORG	2024-05-05 17:33:15.206783608 +0900
--- ./etc/group	2024-05-05 23:31:36.651046077 +0900
***************
*** 8,22 ****
  lp:x:7:lp
  mem:x:8:
  kmem:x:9:
! wheel:x:10:root
  floppy:x:11:
  mail:x:12:mail
  news:x:13:news
  uucp:x:14:uucp
  man:x:15:
  dialout:x:16:uucp
! audio:x:17:root,pulse
! video:x:18:sddm
  cdrom:x:19:m-ito
  games:x:20:
  slocate:x:21:
--- 8,22 ----
  lp:x:7:lp
  mem:x:8:
  kmem:x:9:
! wheel:x:10:root,m-ito,apache
  floppy:x:11:
  mail:x:12:mail
  news:x:13:news
  uucp:x:14:uucp
  man:x:15:
  dialout:x:16:uucp
! audio:x:17:root,pulse,m-ito
! video:x:18:sddm,m-ito,apache
  cdrom:x:19:m-ito
  games:x:20:
  slocate:x:21:
***************
*** 65,67 ****
--- 65,70 ----
  ldap:x:330:
  openvpn:x:443:
  overflowgid:x:65534:
+ m-ito:x:503:apache
+ clamav:x:513:
+ pcscd:x:257:
/etc/ld.so.conf
*** ./etc/ld.so.conf.ORG	2024-07-12 23:23:14.139957972 +0900
--- ./etc/ld.so.conf	2024-07-12 23:23:41.409958305 +0900
***************
*** 2,5 ****
--- 2,6 ----
  /lib64
  /usr/lib64
  /usr/local/lib64
+ /usr/local/canna/lib
  /usr/x86_64-slackware-linux/lib64
/etc/X11/app-defaults/Kinput2
*** ./etc/X11/app-defaults/Kinput2.ORG	2024-07-12 23:53:05.827979844 +0900
--- ./etc/X11/app-defaults/Kinput2	2024-07-12 23:55:19.242981472 +0900
***************
*** 96,102 ****
  ! XimpProtocol
  *XimpProtocol.ForceDefaultServer: true
  ! X Input Method Protocol
! *IMProtocol.locales: ja_JP.SJIS, ja_JP.EUC, ja_JP, japanese, japan, ja
  ! common to XimpProtocol and IMProtocol
  *defaultFontList: -misc-fixed-medium-r-normal--14-*-*-*-c-*
  *ConversionStartKeys: \
--- 96,102 ----
  ! XimpProtocol
  *XimpProtocol.ForceDefaultServer: true
  ! X Input Method Protocol
! *IMProtocol.locales: ja_JP.UTF-8, ja_JP.SJIS, ja_JP.EUC, ja_JP, japanese, japan, ja
  ! common to XimpProtocol and IMProtocol
  *defaultFontList: -misc-fixed-medium-r-normal--14-*-*-*-c-*
  *ConversionStartKeys: \
/etc/X11/xorg.conf.d/90-keyboard-layout.conf
*** ./etc/X11/xorg.conf.d/90-keyboard-layout.conf.ORG	2024-04-29 10:38:31.587008796 +0900
--- ./etc/X11/xorg.conf.d/90-keyboard-layout.conf	2024-04-29 10:38:31.608008796 +0900
***************
*** 0 ****
--- 1,46 ----
+ #
+ # cp /usr/share/X11/xorg.conf.d/90-keyboard-layout.conf /etc/X11/xorg.conf.d/
+ #
+ Section "InputClass"
+ 	Identifier "keyboard-all"
+ 	MatchIsKeyboard "on"
+ 	MatchDevicePath "/dev/input/event*"
+ 	Driver "evdev"
+ ##	Option "XkbLayout" "us"
+ 	Option "XkbLayout" "jp"
+ 	#Option "XkbVariant" ""
+ ##	Option "XkbOptions" "terminate:ctrl_alt_bksp"
+ 	Option "XkbOptions" "terminate:ctrl_alt_bksp,ctrl:nocaps"
+ EndSection
+
+ # READ THIS FOR CUSTOM KEYBOARD INFORMATION
+ #
+ #  If you want to add a custom model/layout/variant to X, you will need to COPY
+ #  this file to /etc/X11/xorg.conf.d/ and edit that copy.  After editing it to
+ #  suit, you will need to restart X.
+ #
+ #  Here's an example of the lines from above:
+ #
+ # Section "InputClass"
+ #	Identifier "keyboard-all"
+ #	MatchIsKeyboard "on"
+ #	MatchDevicePath "/dev/input/event*"
+ #	Driver "evdev"
+ #	Option "XkbLayout" "us"
+ #	Option "XkbVariant" "intl"
+ #	Option "XkbOptions" "compose:rwin,terminate:ctrl_alt_bksp"
+ # EndSection
+ #
+ #  Many desktop environments, including KDE and Xfce, have their own methods to
+ #  configure keyboard layouts and such if you'd like to use them.
+ #
+ #  If you prefer to use the "old" way of configuring keyboards (without input
+ #  device hotplugging), then you'll need to add the following lines to the
+ #  ServerFlags section of /etc/X11/xorg.conf:
+ #    Option   "AllowEmptyInput"     "false"
+ #    Option   "AutoAddDevices"      "false"
+ #    Option   "AutoEnableDevices"   "false"
+ #  Alternatively, you can break this up into separate "stubs" in the xorg.conf.d/
+ #  directory, but that's your call.  Assuming you elect to keep a monolithic
+ #  /etc/X11/xorg.conf file, you can now edit the Keyboard section as usual.
+
/etc/sudoers
*** ./etc/sudoers.ORG	2024-05-05 23:33:57.562047797 +0900
--- ./etc/sudoers	2024-05-05 23:34:16.917048033 +0900
***************
*** 108,114 ****
  # %wheel ALL=(ALL:ALL) ALL

  ## Same thing without a password
! # %wheel ALL=(ALL:ALL) NOPASSWD: ALL

  ## Uncomment to allow members of group sudo to execute any command
  # %sudo	ALL=(ALL:ALL) ALL
--- 108,114 ----
  # %wheel ALL=(ALL:ALL) ALL

  ## Same thing without a password
! %wheel ALL=(ALL:ALL) NOPASSWD: ALL

  ## Uncomment to allow members of group sudo to execute any command
  # %sudo	ALL=(ALL:ALL) ALL
/etc/wpa_supplicant.conf
*** ./etc/wpa_supplicant.conf.ORG	2024-04-29 09:45:20.568006098 +0900
--- ./etc/wpa_supplicant.conf	2024-04-29 10:21:30.306001334 +0900
***************
*** 1,2 ****
--- 1,12 ----
  ctrl_interface=/var/run/wpa_supplicant
  ctrl_interface_group=root
+ network={
+         scan_ssid=1
+         ssid="YOUR_SSID"
+         proto=RSN WPA
+         pairwise=CCMP TKIP
+         group=CCMP TKIP
+         key_mgmt=WPA-PSK WPA-EAP
+         #psk="YOUR_PSK"
+         # wpa_passphrase YOUR_SSID YOUR_PSK
+ 	psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+ }
/etc/slackpkg/mirrors
*** ./etc/slackpkg/mirrors.ORG	2024-05-01 23:26:43.716031722 +0900
--- ./etc/slackpkg/mirrors	2024-05-01 23:27:22.569032196 +0900
***************
*** 189,196 ****
  #----------------------------------------------------------------
  # Slackware64-current
  #----------------------------------------------------------------
  # USE MIRRORS.SLACKWARE.COM (DO NOT USE FTP - ONLY HTTP FINDS A NEARBY MIRROR)
! # https://mirrors.slackware.com/slackware/slackware64-current/
  #
  #
  # Here are some individual mirrors that can be used instead of the
--- 189,197 ----
  #----------------------------------------------------------------
  # Slackware64-current
  #----------------------------------------------------------------
+ https://mirror.slackware.jp/slackware/slackware64-current/
  # USE MIRRORS.SLACKWARE.COM (DO NOT USE FTP - ONLY HTTP FINDS A NEARBY MIRROR)
! #https://mirrors.slackware.com/slackware/slackware64-current/
  #
  #
  # Here are some individual mirrors that can be used instead of the
***************
*** 275,283 ****
  # http://ba.mirror.garr.it/mirrors/Slackware/slackware64-current/
  # JAPAN (JP)
  # ftp://ftp.nara.wide.ad.jp/pub/Linux/slackware/slackware64-current/
! # http://ftp.nara.wide.ad.jp/pub/Linux/slackware/slackware64-current/
  # ftp://riksun.riken.go.jp/Linux/slackware/slackware64-current/
! # http://riksun.riken.go.jp/Linux/slackware/slackware64-current/
  # LITHUANIA (LT)
  # http://mirrors.atviras.lt/slackware/slackware64-current/
  # https://mirrors.atviras.lt/slackware/slackware64-current/
--- 276,284 ----
  # http://ba.mirror.garr.it/mirrors/Slackware/slackware64-current/
  # JAPAN (JP)
  # ftp://ftp.nara.wide.ad.jp/pub/Linux/slackware/slackware64-current/
! ##http://ftp.nara.wide.ad.jp/pub/Linux/slackware/slackware64-current/
  # ftp://riksun.riken.go.jp/Linux/slackware/slackware64-current/
! ##http://riksun.riken.go.jp/Linux/slackware/slackware64-current/
  # LITHUANIA (LT)
  # http://mirrors.atviras.lt/slackware/slackware64-current/
  # https://mirrors.atviras.lt/slackware/slackware64-current/
/etc/slackpkg/blacklist
*** ./etc/slackpkg/blacklist.ORG	2024-04-29 22:44:26.260257721 +0900
--- ./etc/slackpkg/blacklist	2024-08-14 10:39:19.989079565 +0900
***************
*** 35,41 ****
  #kernel-generic.*
  #kernel-huge.*
  #kernel-modules.*
! #kernel-source
  #
  # This one will blacklist all SBo packages:
! #[0-9]+_SBo
--- 35,67 ----
  #kernel-generic.*
  #kernel-huge.*
  #kernel-modules.*
! #kernel-source.*
  #
  # This one will blacklist all SBo packages:
! [0-9]+_SBo
!
! # add temorarily
! # git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
! #kernel-firmware.*
! #kernel-headers.*
!
! # Slackware package, but original configuration
! ffmpeg-.*
!
! # Slackware package, but removed
! postfix.*
!
! # Slackware Extra package
! sendmail.*
!
! # Non slackware packages
! dcpj552n.*
! brother-udev-rule-type1.*
! brscan-skey.*
! brscan4.*
! libobasis7.6.*
! libreoffice7.6.*
! libspiro.*
! libuninameslist.*
! fontforge.*
! audapolis.*
/boot/efi/EFI/Slackware/elilo.conf
*** ./boot/efi/EFI/Slackware/elilo.conf.ORG	2024-05-03 17:12:40.000000000 +0900
--- ./boot/efi/EFI/Slackware/elilo.conf	2024-07-15 00:13:44.000000000 +0900
***************
*** 1,9 ****
  chooser=simple
! delay=1
! timeout=1
  #
  image=vmlinuz
          label=vmlinuz
          initrd=initrd.gz
          read-only
          append="root=/dev/nvme0n1p3 vga=normal ro"
--- 1,18 ----
  chooser=simple
! delay=50
! timeout=50
! #
! prompt
! default=vmlinuz
  #
  image=vmlinuz
          label=vmlinuz
          initrd=initrd.gz
          read-only
+         append="root=/dev/nvme0n1p3 vga=normal mitigations=off ro"
+ #
+ image=vmlinuz.ORG
+         label=vmlinuz.ORG
+         initrd=initrd.ORG.gz
+         read-only
          append="root=/dev/nvme0n1p3 vga=normal ro"

システムアップデート

/root/update_system.sh
#! /bin/sh
slackpkg -batch=on -default_answer=y update </dev/null
slackpkg -batch=on -default_answer=y install-new </dev/null
slackpkg -batch=on -default_answer=y upgrade-all </dev/null
slackpkg -batch=on -default_answer=y clean-system </dev/null

echo '=== check .new files start ==='
/usr/bin/run-parts /etc/cron.daily

for i in `locate '*\.new' | egrep -v '^/home/|^/usr/local/' | egrep 'new$'`
do
	org=`echo $i | sed -e 's/\.new$//'`
	if [ -r ${org}  ]
	then
		diff -c ${org} $i 2>&1
	fi
done
echo '=== check .new files end   ==='

##mod_ver=`cd /lib/modules && /usr/bin/ls -r1 | egrep -v '\.BAK$' | head -1`
mod_ver=`cd /lib/modules && /usr/bin/ls -t1 | egrep -v '\.BAK$' | head -1`
kern_ver=`uname -r`

if [ -r /lib/modules/${kern_ver}/misc/vmnet.ko ]
then
	:
else
#	git clone -b workstation-17.5.1 https://github.com/mkubecek/vmware-host-modules.git
	cd vmware-host-modules && make && make install
	sync;sync;sync
	reboot
fi

if [ "X${mod_ver}" = "X${kern_ver}" ]
then
	:
else
#	cp /boot/initrd.gz /boot/efi/EFI/Slackware/initrd.gz
	cp /boot/vmlinuz /boot/efi/EFI/Slackware/vmlinuz
	sync;sync;sync
	reboot
fi

# deb s
#uname -a
#wget --no-check-certificate  https://mirrors.slackware.com/slackware/slackware64-current/slackware64/a/  -O - 2>/dev/null |
#	tr '<>' '\n\n' |
#	egrep "^kernel-.*txz$"

ffmpeg -h 2>&1 | head -1
wget --no-check-certificate  https://mirrors.slackware.com/slackware/slackware64-current/slackware64/l/  -O - 2>/dev/null |
	tr '<>' '\n\n' |
	egrep "^ffmpeg-.*txz$"

gs --version
ls /var/log/packages/ghostscript-*|egrep -v font
# deb e

2024年02月11日 VMware Workstation Player(Linux host)でゲストの動きが重い時の対応 [長年日記]

_ HogeHoge.vmx

MemTrimRate = "0"
mainmem.backing = "swap"
sched.mem.pshare.enable = "FALSE"
prefvmx.useRecommendedLockedMemSize = "TRUE"

2023年12月10日 vmplayer上のWindows11のCPU利用率が100%に張り付いていたのを解消 [長年日記]

_ vmplayer上のWindows11のCPU利用率が100%に張り付いて、なおかつホストであるLinuxまで動きに影響が出ていたのだが、以下のページを参考に不要なサービスを止めまくったら、かなり軽快になった。

Windows 11の不要サービス一覧・まとめて停止する方法


2023年10月15日 upgradepkg glibc-2.25 to build dhcpcd-10.0.3 on Slackware-14.2 [長年日記]

_ Slackware-14.2環境で、dhcpcd-10.0.2からdhcpcd-10.0.3にバージョンアップを試みたところ、explicit_bzeroのリンクに失敗した。 explicit_bzeroはglibc-2.25から導入された関数で、Slacklware-14.2はglibc-2.23止まりのためこのような結果となった。 explicit_bzeroを単純にbzeroに置き換えてもビルドは通るが、プロセス内のメモリに秘匿性の高い情報が残り、覗き見される可能性があるらしい。

そこで、glibc-2.25にアップグレードを行った。公式には既に更新は止まっているので、自己責任で行うこととなる。

手順は

###  zcat $CWD/glibc-c-utf8-locale.patch.gz | patch -p1 --verbose || exit 1
###  zcat $CWD/glibc.6a824767.dont.assert.on.older.intel.cpus.diff.gz | patch -p1 --verbose || exit 1
  • sh glibc.SlackBuild
  • ビルドされたパッケージで更新を行う
# init s
# upgradepkg /glibc-tmp-... snip .../glibc-2.25-i586-4_slack14.2.txz
# upgradepkg /glibc-tmp-... snip .../glibc-i18n-2.25-i586-4_slack14.2.txz
# upgradepkg /glibc-tmp-... snip .../glibc-profile-2.25-i586-4_slack14.2.txz
# upgradepkg /glibc-tmp-... snip .../glibc-solibs-2.25-i586-4_slack14.2.txz
# ldconfig
# reboot

最後に、/etc/slackpkg/blacklistにglibcを追加しておく

glibc

この後、dhcpcd-10.0.3の方もhttps://mirrors.slackware.com/slackware/slackware-current/source/n/dhcpcd/よりSlackBuild環境&ソースを取得し、アップデート完了。


2023年09月02日 マイナンバーカード with smart card reader(IDBridge CT30) on Windows11 on vmplayer-16.2.3 on Slackware64-14.2 [長年日記]

_ まずは、pcsc-lite-1.9.1

pcsc-lite-1.9.1をインストール(slackbuild)し、/usr/sbin/pcscdを起動するように設定。

/etc/rc.d/rc.local

if [ -x /usr/sbin/pcscd ]
then
        /etc/rc.d/rc.pcscd start
        echo "Starting pcscd."
fi

Linuxホスト側でカードリーダを認識。

$ lsusb
... snip ...
Bus 003 Device 005: ID 08e6:3437 Gemalto (was Gemplus) GemPC Twin SmartCard Reader
... snip ...

ただし、vmplayerでは認識せず...

_ で、いろいろ試したこと...

ホスト再起動後、Windows11 on vmplayer on Slackware64-14.2でカードリーダを認識。

[vmplayer] -> [Virtual Machine] -> [Removal Devices] -> [Shared Gemalt PC Twin Reader] -> [Connect]

無事マイナポータルにログインも成功!

ただし、上記の全てが必要というわけでは無いと思われるが...とりあえず動いたので良しとする。

追記 2014.11.02 カードの内容にアクセスできるか確認するコマンド

pkcs11-tool --list-objects --login

2023年08月27日 Slackware-14.2のHDDをSSDに置換 [長年日記]

_ Slackware64-14.2をインストールしたHDDがSmartでエラーを吐き出したので、SSDに置換した。効率よくSSDを利用するためにいくつか設定のポイントがあるらしい。

_ crontab(root)

毎週日曜日の4:50にトリムを実行してアクセス速度の低下を抑止する

# MIN HOUR DAY MONTH DAYOFWEEK  COMMAND
50    4    *   *     0          /sbin/fstrim -v / >/dev/null 2>&1"

_ /etc/fstab

アクセスタイムの更新を抑止(noatime)してSSDの寿命を伸ばす

/dev/sda2        /                ext4        defaults,noatime         1   1

_ /etc/sysctl.d/set_swapness.conf

スワップの頻度を極力減らしてSSDの寿命を伸ばす

vm.swappiness = 1

2023年07月15日 Windows Server評価版の利用期限を伸ばす方法 [長年日記]

_ 最大6回まで伸ばすことができるそうです(実質6ヶ月×6回=3年使えるということ?)

https://www.dot-plus.com/server/windows2016/3790/

slmgr /rearm