kasumiはaptでインストール。
メニューのデスクトップの項に表示される様に/usr/share/applications/kasumi.desktopのCategoryを修正。
#######################################################
AudacityはFlatpakでインストールし、/root/applicaions/にrun-audacityというシェルを作成する。aup3への関連付けはこれへ。
#!/bin/sh
# TrixiePupのPulseAudioソケットへのアクセス権を一時的に許可
chmod 755 /tmp/runtime-spot
chmod 755 /tmp/runtime-spot/pulse
# 環境変数を明示してFlatpakを起動
flatpak run org.audacityteam.Audacity "$@"
audacityとmpvは同時に鳴らない。どちらかを止めると鳴る。
/root/.config/mpv/mpv.confを作成し、下記を書き込む。
ao=pulse
Audacityのオーディオ設定->再生デバイスをpulseに設定。
これで同時に鳴らせる。
環境設定->ディレクトリ->一時ファイルのディレクトリ
/var/tmp/audacity-root
から
/mnt/sda3/audacity-root/.audacity-tmp
に変更する。プロジェクトを開いても個人保存領域が圧迫されなくなる。
###########################################################
Flatpakのfrescobaldiがフォルダを開くボタンを押しても反応しない。
/root/my-applications/run-frescobaldiを作成する。
#!/bin/sh
flatpak run org.frescobaldi.Frescobaldi
lyファイルの関連付けは、右クリック->対応アプリの設定で、コマンドを入力する。
flatpak run org.frescobaldi.Frescobaldi "$@"
############################################################
FlatpakのMusescoreが/mnt/sda3を表示しない。
/root/my-applications/run-musescoreを作成する。
#!/bin/sh
# MuseScoreに /mnt へのアクセス権を一時的に強制付与して起動
flatpak run --filesystem=/mnt org.musescore.MuseScore "$@"
##############################################################
aptでconkyをインストール。
/root/Startup/conkyを作成
#!/bin/sh
conky -c /root/conkyrc 2>/dev/null &
conkyrcはbookwormPup64からもってきたものを修正する。
coretempはすでにロードされている。
smartctlをインストール。
# apt install smartmontools
conkyrcはこんな感じ。
conky.config = {
-- Use Xft?
use_xft = true,
font = 'DejaVuSans:size=9',
xftalpha = 0.8,
text_buffer_size = 2048,
-- Update interval in seconds
update_interval = 1,
-- This is the number of times Conky will update before quitting.
-- Set to zero to run forever.
total_run_times = 0,
-- Create own window instead of using desktop (required in nautilus)
-- リアル透過(コンポジタ連動)の設定
own_window = true,
own_window_transparent = false, -- ここを false にする
own_window_type = 'normal', -- ここを 'normal' にする
own_window_argb_visual = true, -- ここを true にする
own_window_argb_value = 0, -- 0で完全透明、少し暗くしたいなら 60
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
-- Use double buffering (reduces flicker, may not work for everyone)
double_buffer = true,
-- Minimum size of text area
minimum_width = 210,
maximum_width = 210,
-- Draw shades?
draw_shades = false,
-- Draw outlines?
draw_outline = false,
-- Draw borders around text
draw_borders = false,
-- Draw borders around graphs
draw_graph_borders = true,
-- Stippled borders?
stippled_borders = 0,
-- border margins
border_margin = 1,
-- border width
border_width = 0,
-- Default colors and also border colors
default_color = 'white',
-- Text alignment, other possible values are commented
alignment = 'top_right',
-- Gap between borders of screen and text
gap_x = 100,
gap_y = 25,
-- Subtract file system buffers from used memory?
no_buffers = true,
-- set to yes if you want all text to be in uppercase
uppercase = false,
-- number of cpu samples to average
cpu_avg_samples = 2,
-- number of net samples to average
net_avg_samples = 2,
-- Force UTF8? note that UTF8 support required XFT
override_utf8_locale = true,
-- Add spaces to keep things from moving about?
use_spacer = 'none',
color1 = 'e68199', -- ご希望のピンク系カラー
color2 = 'ffffff', -- 白
if_up_strictness = 'link',
};
conky.text = [[
${color1}System ${hr 2}
${color2}${nodename}
${color2}TrixiePup64
${color2}${sysname} ${kernel}
${color2}Uptime ${uptime}
${color1}Processes ${hr 2}
${color2}${alignr}CPU%
${color2}${top name 1}${alignr}${top cpu 1}
${color2}${top name 2}${alignr}${top cpu 2}
${color2}${top name 3}${alignr}${top cpu 3}
${color2}${top name 4}${alignr}${top cpu 4}
${color2}${alignr}MEM
${color2}${top_mem name 1}${alignr}${top_mem mem_res 1}
${color2}${top_mem name 2}${alignr}${top_mem mem_res 2}
${color2}${top_mem name 3}${alignr}${top_mem mem_res 3}
${color2}${top_mem name 4}${alignr}${top_mem mem_res 4}
${color1}Resources ${hr 2}
${color2}${exec lscpu | grep '^Model name'| cut -c42-66}
${color2}${alignr}${exec lscpu | grep '^Model name'| cut -c67-80}
${color2}Usage ${cpu cpu0}%${alignr}${color1}${cpubar cpu0 10,125}
${color2}Threads ${running_threads} / ${threads}
Frequency $freq_g GHz
${color2}Temp
${color2}Core0 ${alignr}${hwmon 1 temp 2}°C
${color2}Core1 ${alignr}${hwmon 1 temp 3}°C
${color2}Core2 ${alignr}${hwmon 1 temp 4}°C
${color2}Core3 ${alignr}${hwmon 1 temp 5}°C
#${color2}Storage ${alignr}${execi 10 smartctl -a /dev/sda | awk '/Temperature/ {print $10}'}°C
${color2}Mem
${color2}${mem} / ${memmax}
${color2}${memperc}% ${alignr}${color1}${membar 10,170}
${color2}Swap: $swap / $swapmax
$swapperc% ${alignr}${color1}${alignr}${swapbar 10,170}
${color1}File Systems ${hr 2}
${color2}home ${fs_used /initrd/mnt/dev_save}/${fs_size /initrd/mnt/dev_save}${alignr}${color1}${fs_bar 10,60 /initrd/mnt/dev_save}
${color1}SDD ${hr 2}
#${color2}Health: ${alignr}${exec smartctl -a /dev/sda | grep "overall-health" | awk '{print $NF}'}
${color2}sda
#${color2}Health: ${alignr}${exec smartctl -a /dev/sda | grep "overall-health" | awk '{print $NF}'}
${color2}Health: ${alignr}${if_match "${exec smartctl -a /dev/sda | grep "overall-health" | awk '{print $NF}'}" == "PASSED"}${color green}PASSED${else}${color red}${blink FAILED}${endif}
${color2}Life: ${alignr}${exec smartctl -a /dev/sda | grep "^202 " | awk '{print $4 + 0}'}%
${color2}Temp: ${alignr}${execi 60 smartctl -a /dev/sda | grep "^194 " | awk '{print $10}'}°C
${color2}Hours: ${alignr}${exec smartctl -a /dev/sda | grep "^ 9 " | awk '{print $10}'}h
${color2}sdb
#${color2}Health: ${alignr}${exec smartctl -a /dev/sda | grep "overall-health" | awk '{print $NF}'}
${color2}Health: ${alignr}${if_match "${exec smartctl -a /dev/sdb | grep "overall-health" | awk '{print $NF}'}" == "PASSED"}${color green}PASSED${else}${color red}${blink FAILED}${endif}
${color2}Life: ${alignr}${exec smartctl -a /dev/sdb | grep "^231 " | awk '{print $4 + 0}'}%
${color2}Temp: ${alignr}${execi 60 smartctl -a /dev/sdb | grep "^194 " | awk '{print $10}'}°C
${color2}Hours: ${alignr}${exec smartctl -a /dev/sdb | grep "^ 9 " | awk '{print $10}'}h
${color1}NETWORK ${hr 2}
#${color2}EXT: ${alignr}${execi 3600 wget -4 -qO - icanhazip.com}
${color2}EXT: ${alignr}${execi 3600 curl -4 -s icanhazip.com}
IP:$alignr${addr wlx200db0245510}
${color2} Up: ${color2}${upspeed wlx200db0245510} k/s
${color1}${alignr}${upspeedgraph wlx200db0245510 10,170 e68199 ffffff}
${color2} Down: ${color2}${downspeed wlx200db0245510} k/s${color}
${color1}${alignr}${downspeedgraph wlx200db0245510 10,170 e68199 ffffff}
${color2}TDown:${totaldown wlx200db0245510}${alignr}TUp:${totalup wlx200db0245510}
####don't write below this line as used for conky gui weather
${color1}${voffset 2}${hr 2}
]]
picomの設定
# apt install picom
/root/Startup/picomを作成。
#!/bin/sh
picom --backend xrender -b
以上。ここまでの設定で、jwmが真っ黒になったり、sdd、usbメモリのアイコンが消えたりと異常があったが、コマンドで復帰できている。そんな異常が無かったのがBookwormPup64。TrixiePup64を今一歩か。
####################################
pdftk-javaをインストール
# apt install pdftk-java
####################################
USBメモリーの健康状態をチェックするスクリプト
#!/bin/bash
# ログファイルの保存先を固定
LOG_FILE="/root/usb_check_result.log"
# 検査したいデバイスのリスト
DEVICES=("sdb1" "sdc1" "sdd1")
# 💡 通常通りの書き方で大丈夫になります
CURRENT_TIME=$(date "+%Y-%m-%d %H:%M:%S")
# -----------------------------------------------------------------------------
# ログ出力関数 (画面表示とログファイルへの追記を同時に行う)
# -----------------------------------------------------------------------------
log_message() {
echo "$1"
echo "$1" >> "$LOG_FILE"
}
# 診断開始のヘッダーを出力
log_message "================================================"
log_message " 実施日時: $CURRENT_TIME"
log_message "=== USBメモリの一括健康診断を開始します ==="
log_message "================================================"
for dev in "${DEVICES[@]}"; do
TARGET="/dev/$dev"
# デバイスが存在するかチェック
if [ ! -b "$TARGET" ]; then
log_message " [スキップ] $TARGET は接続されていません。"
log_message "------------------------------------------------"
continue
fi
log_message ">>> $TARGET を検査します。"
# マウントされている場合は自動でアンマウント
if mount | grep -q "$TARGET"; then
log_message " -> マウントを確認しました。自動アンマウントします..."
if umount "$TARGET"; then
log_message " ✓ アンマウント完了。"
else
log_message " ❌ アンマウントに失敗したため、このデバイスはスキップします。"
log_message "------------------------------------------------"
continue
fi
fi
log_message " 🔍 不良セクタ検査中... (数分かかる場合があります)"
# エラーログ用の一時ファイルを作成
ERR_LOG=$(mktemp)
# 💡 通常通りの書き方で安全に動きます
badblocks "$TARGET" > "$ERR_LOG" 2>&1
# エラー数をカウント
BAD_COUNT=$(grep -v "^$" "$ERR_LOG" | wc -l)
# 結果の判定表示
if [ "$BAD_COUNT" -eq 0 ]; then
log_message " 🟢 結果: [正常] 不良ブロックは見つかりませんでした。(0 bad blocks)"
else
log_message " 🔴 結果: 【警告】不良ブロックが $BAD_COUNT 個見つかりました!"
log_message " ※このUSBメモリは寿命が近いため、使用を控えることをお勧めします。"
log_message " [不良セクタ位置]:"
while IFS= read -r line; do
log_message " $line"
done < "$ERR_LOG"
fi
rm -f "$ERR_LOG"
log_message "------------------------------------------------"
done
log_message "=== すべての処理が終了しました ==="
log_message ""
pScheduleで登録し、window下のenable crond serviceにチェックを入れる。半年に1回にした。
saveフォルダ18G。