#!/bin/bash
set -euo pipefail
# ============================================================
# 日本語入力(ibus + Mozc)セットアップスクリプト
# 何度実行しても安全。初回はパッケージインストール+設定ファイル生成のみ行われ、
# 再ログイン後にもう一度実行するとエンジン設定(gsettings)が反映されます。
# ============================================================
# ------------------------------------------------------------
# 1. パッケージインストール
# ------------------------------------------------------------
sudo apt update
sudo apt install -y ibus ibus-mozc ibus-gtk ibus-gtk3 ibus-gtk4 fonts-noto-cjk
# ------------------------------------------------------------
# 2. ~/.desktop-session/desktop-session.conf に追記
# ------------------------------------------------------------
mkdir -p ~/.desktop-session
CONF_FILE=~/.desktop-session/desktop-session.conf
touch "$CONF_FILE"
CONF_BLOCK='im_module="ibus"
export GTK_IM_MODULE=$im_module
export QT_IM_MODULE=$im_module
export XMODIFIERS=@im=$im_module
DBUS_SESSION_LAUNCH="false"
eval $(dbus-launch --autolaunch $(cat /var/lib/dbus/machine-id) --sh-syntax --exit-with-session)'
if ! grep -qxF 'im_module="ibus"' "$CONF_FILE"; then
echo "$CONF_BLOCK" >> "$CONF_FILE"
echo "[RUN] desktop-session.conf に追記しました"
else
echo "[SKIP] desktop-session.conf は既に設定済みです"
fi
# ------------------------------------------------------------
# 3. ~/.desktop-session/startup に追記
# ------------------------------------------------------------
STARTUP_FILE=~/.desktop-session/startup
touch "$STARTUP_FILE"
if ! grep -qxF 'ibus-daemon -drx' "$STARTUP_FILE"; then
echo 'ibus-daemon -drx' >> "$STARTUP_FILE"
echo "[RUN] startup に追記しました"
else
echo "[SKIP] startup は既に設定済みです"
fi
# ------------------------------------------------------------
# 4. Mozc起動時のデフォルト入力モードを「ひらがな」に設定
# ------------------------------------------------------------
MOZC_CONF_DIR=~/.config/mozc
MOZC_CONF_FILE="$MOZC_CONF_DIR/ibus_config.textproto"
mkdir -p "$MOZC_CONF_DIR"
if [ -f "$MOZC_CONF_FILE" ] && grep -q "active_on_launch: True" "$MOZC_CONF_FILE"; then
echo "[SKIP] Mozcのひらがなデフォルト設定は既に反映済みです"
else
cat > "$MOZC_CONF_FILE" << 'EOF'
engines {
name : "mozc-jp"
longname : "Mozc"
layout : "default"
layout_variant : ""
layout_option : ""
rank : 80
}
active_on_launch: True
EOF
echo "[RUN] Mozcのひらがなデフォルト設定を書き込みました"
fi
if [ -f ~/.mozc/ibus_config.textproto ]; then
echo "[警告] ~/.mozc/ibus_config.textproto が存在します。こちらが優先されるため、内容を確認してください"
fi
# ------------------------------------------------------------
# 5. 入力エンジンを Mozc / 英語(US) の2つのみに設定(要dbusセッション)
# ------------------------------------------------------------
if gsettings set org.freedesktop.ibus.general preload-engines "['mozc-jp', 'xkb:us::eng']" 2>/dev/null; then
gsettings set org.freedesktop.ibus.general engines-order "['mozc-jp', 'xkb:us::eng']"
echo "[RUN] 入力エンジンを Mozc / 英語(US) の2つに設定しました"
# ------------------------------------------------------------
# 6. 切り替えキーに「半角/全角」を追加(Control+spaceは維持)
# ------------------------------------------------------------
CURRENT_TRIGGERS=$(gsettings get org.freedesktop.ibus.general.hotkey trigger)
if echo "$CURRENT_TRIGGERS" | grep -q "Zenkaku_Hankaku"; then
echo "[SKIP] 半角/全角キーは既に設定済みです"
else
gsettings set org.freedesktop.ibus.general.hotkey trigger "['Control+space', 'Zenkaku_Hankaku']"
echo "[RUN] 切り替えキーに半角/全角を追加しました"
fi
ibus write-cache || echo "[警告] ibus write-cache に失敗しました(無視して続行)"
ibus restart || echo "[警告] ibus restart に失敗しました(無視して続行)"
else
echo ""
echo "[SKIP] gsettings によるエンジン/キー設定は今回スキップされました"
echo " (ibusのdbusセッションがまだ起動していないためと思われます)"
echo " 再ログイン後、このスクリプトをもう一度実行してください"
fi
echo ""
echo "=================================================="
echo " セットアップ完了"
echo " ・パッケージ / desktop-session設定 / Mozcひらがなデフォルト: 反映済み"
echo " ・入力エンジン(2つ限定)とキー設定: dbusセッションが有効な場合のみ反映済み"
echo " 反映を確実にするため、一度ログアウト→再ログイン(またはXの再起動)してください"
echo "=================================================="
#!/bin/bash
set -euo pipefail
# ============================================================
# 日本語入力(ibus + Mozc)セットアップスクリプト
# 何度実行しても安全。初回はパッケージインストール+設定ファイル生成のみ行われ、
# 再ログイン後にもう一度実行するとエンジン設定(gsettings)が反映されます。
# ============================================================
# ------------------------------------------------------------
# 1. パッケージインストール
# ------------------------------------------------------------
sudo apt update
sudo apt install -y ibus ibus-mozc ibus-gtk ibus-gtk3 ibus-gtk4 fonts-noto-cjk
# ------------------------------------------------------------
# 2. ~/.desktop-session/desktop-session.conf に追記
# ------------------------------------------------------------
mkdir -p ~/.desktop-session
CONF_FILE=~/.desktop-session/desktop-session.conf
touch "$CONF_FILE"
CONF_BLOCK='im_module="ibus"
export GTK_IM_MODULE=$im_module
export QT_IM_MODULE=$im_module
export XMODIFIERS=@im=$im_module
DBUS_SESSION_LAUNCH="false"
eval $(dbus-launch --autolaunch $(cat /var/lib/dbus/machine-id) --sh-syntax --exit-with-session)'
if ! grep -qxF 'im_module="ibus"' "$CONF_FILE"; then
echo "$CONF_BLOCK" >> "$CONF_FILE"
echo "[RUN] desktop-session.conf に追記しました"
else
echo "[SKIP] desktop-session.conf は既に設定済みです"
fi
# ------------------------------------------------------------
# 3. ~/.desktop-session/startup に追記
# ------------------------------------------------------------
STARTUP_FILE=~/.desktop-session/startup
touch "$STARTUP_FILE"
if ! grep -qxF 'ibus-daemon -drx' "$STARTUP_FILE"; then
echo 'ibus-daemon -drx' >> "$STARTUP_FILE"
echo "[RUN] startup に追記しました"
else
echo "[SKIP] startup は既に設定済みです"
fi
# ------------------------------------------------------------
# 4. Mozc起動時のデフォルト入力モードを「ひらがな」に設定
# ------------------------------------------------------------
MOZC_CONF_DIR=~/.config/mozc
MOZC_CONF_FILE="$MOZC_CONF_DIR/ibus_config.textproto"
mkdir -p "$MOZC_CONF_DIR"
if [ -f "$MOZC_CONF_FILE" ] && grep -q "active_on_launch: True" "$MOZC_CONF_FILE"; then
echo "[SKIP] Mozcのひらがなデフォルト設定は既に反映済みです"
else
cat > "$MOZC_CONF_FILE" << 'EOF'
engines {
name : "mozc-jp"
longname : "Mozc"
layout : "default"
layout_variant : ""
layout_option : ""
rank : 80
}
active_on_launch: True
EOF
echo "[RUN] Mozcのひらがなデフォルト設定を書き込みました"
fi
if [ -f ~/.mozc/ibus_config.textproto ]; then
echo "[警告] ~/.mozc/ibus_config.textproto が存在します。こちらが優先されるため、内容を確認してください"
fi
# ------------------------------------------------------------
# 5. 入力エンジンを Mozc / 英語(US) の2つのみに設定(要dbusセッション)
# ------------------------------------------------------------
if gsettings set org.freedesktop.ibus.general preload-engines "['mozc-jp', 'xkb:us::eng']" 2>/dev/null; then
gsettings set org.freedesktop.ibus.general engines-order "['mozc-jp', 'xkb:us::eng']"
echo "[RUN] 入力エンジンを Mozc / 英語(US) の2つに設定しました"
# ------------------------------------------------------------
# 6. 切り替えキーに「半角/全角」を追加(Control+spaceは維持)
# ------------------------------------------------------------
CURRENT_TRIGGERS=$(gsettings get org.freedesktop.ibus.general.hotkey trigger)
if echo "$CURRENT_TRIGGERS" | grep -q "Zenkaku_Hankaku"; then
echo "[SKIP] 半角/全角キーは既に設定済みです"
else
gsettings set org.freedesktop.ibus.general.hotkey trigger "['Control+space', 'Zenkaku_Hankaku']"
echo "[RUN] 切り替えキーに半角/全角を追加しました"
fi
ibus write-cache || echo "[警告] ibus write-cache に失敗しました(無視して続行)"
ibus restart || echo "[警告] ibus restart に失敗しました(無視して続行)"
else
echo ""
echo "[SKIP] gsettings によるエンジン/キー設定は今回スキップされました"
echo " (ibusのdbusセッションがまだ起動していないためと思われます)"
echo " 再ログイン後、このスクリプトをもう一度実行してください"
fi
#!/bin/bash
set -euo pipefail
# 1. パッケージインストール
sudo apt update
sudo apt install -y ibus ibus-mozc ibus-gtk ibus-gtk3 ibus-gtk4 fonts-noto-cjk
# 2. ~/.desktop-session/desktop-session.conf に追記
mkdir -p ~/.desktop-session
CONF_FILE=~/.desktop-session/desktop-session.conf
touch "$CONF_FILE"
CONF_BLOCK='im_module="ibus"
export GTK_IM_MODULE=$im_module
export QT_IM_MODULE=$im_module
export XMODIFIERS=@im=$im_module
DBUS_SESSION_LAUNCH="false"
eval $(dbus-launch --autolaunch $(cat /var/lib/dbus/machine-id) --sh-syntax --exit-with-session)'
if ! grep -qxF 'im_module="ibus"' "$CONF_FILE"; then
echo "$CONF_BLOCK" >> "$CONF_FILE"
echo "desktop-session.conf に追記しました"
else
echo "desktop-session.conf は既に設定済みのためスキップしました"
fi
# 3. ~/.desktop-session/startup に追記
STARTUP_FILE=~/.desktop-session/startup
touch "$STARTUP_FILE"
if ! grep -qxF 'ibus-daemon -drx' "$STARTUP_FILE"; then
echo 'ibus-daemon -drx' >> "$STARTUP_FILE"
echo "startup に追記しました"
else
echo "startup は既に設定済みのためスキップしました"
fi
echo ""
echo "完了しました。設定を反映するには再ログイン(またはXの再起動)が必要です。"
#!/bin/bash
set -euo pipefail
# ===== 入力メソッドを Mozc と 英語(US) の2つだけに設定 =====
gsettings set org.freedesktop.ibus.general preload-engines "['mozc-jp', 'xkb:us::eng']"
gsettings set org.freedesktop.ibus.general engines-order "['mozc-jp', 'xkb:us::eng']"
# ===== 切り替えキーを「半角/全角」のみに設定 =====
gsettings set org.freedesktop.ibus.general.hotkey trigger "['Zenkaku_Hankaku']"
# ===== 設定を反映 =====
ibus restart
echo "設定完了: Mozc / 英語(US) の2エンジンのみ、半角/全角キーで切り替え"
#!/bin/bash
set -euo pipefail
CONF_DIR=~/.config/mozc
CONF_FILE="$CONF_DIR/ibus_config.textproto"
mkdir -p "$CONF_DIR"
if [ -f "$CONF_FILE" ] && grep -q "active_on_launch: True" "$CONF_FILE"; then
echo "[SKIP] 既に active_on_launch: True が設定済みです"
else
cat > "$CONF_FILE" << 'EOF'
engines {
name : "mozc-jp"
longname : "Mozc"
layout : "default"
layout_variant : ""
layout_option : ""
rank : 80
}
active_on_launch: True
EOF
echo "[RUN] ibus_config.textproto を作成し、active_on_launch: True を設定しました"
fi
# 設定を反映
ibus write-cache
ibus restart
echo ""
echo "完了しました。Mozcに切り替えた際、デフォルトでひらがな入力になります。"
#!/bin/bash
set -euo pipefail
# ===== 切り替えキーに「半角/全角」を追加(既存のControl+space等は維持) =====
CURRENT_TRIGGERS=$(gsettings get org.freedesktop.ibus.general.hotkey trigger)
echo "現在のトリガーキー: $CURRENT_TRIGGERS"
if echo "$CURRENT_TRIGGERS" | grep -q "Zenkaku_Hankaku"; then
echo "[SKIP] 半角/全角キーは既に設定済みです"
else
# 既存のリストからカッコを外して要素を取り出し、末尾に追加
INNER=$(echo "$CURRENT_TRIGGERS" | sed "s/^\[//; s/\]$//")
if [ -z "$INNER" ]; then
NEW_TRIGGERS="['Zenkaku_Hankaku']"
else
NEW_TRIGGERS="[${INNER}, 'Zenkaku_Hankaku']"
fi
gsettings set org.freedesktop.ibus.general.hotkey trigger "$NEW_TRIGGERS"
echo "[RUN] 半角/全角キーを追加しました: $NEW_TRIGGERS"
fi
# ===== 設定を反映 =====
ibus restart
echo ""
echo "設定完了。現在のトリガーキー一覧:"
gsettings get org.freedesktop.ibus.general.hotkey trigger
#!/bin/bash
set -euo pipefail
gsettings set org.freedesktop.ibus.general.hotkey trigger "['Control+space', 'Zenkaku_Hankaku']"
ibus restart
echo "設定後のトリガーキー:"
gsettings get org.freedesktop.ibus.general.hotkey trigger
sudo apt install libreoffice-l10n-ja
#!/bin/bash
set -euo pipefail
# 必要なパッケージを準備
sudo apt update
sudo apt install -y curl gnupg
# GoogleのGPGキーを追加
curl -fsSL https://dl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/google-chrome.gpg
# リポジトリを追加
echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/google-chrome.gpg] https://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
# インストール
sudo apt update
sudo apt install -y google-chrome-stable
# 起動
google-chrome-stable
#!/bin/bash
set -euo pipefail
# ===== 1. 必要パッケージの準備 =====
sudo apt update
sudo apt install -y curl
# ===== 2. Tailscale インストール =====
curl -fsSL https://tailscale.com/install.sh | sh
# ===== 3. tailscaled 実行パスを確認 =====
TAILSCALED_BIN=$(which tailscaled)
echo "tailscaled のパス: $TAILSCALED_BIN"
# ===== 4. 状態保存用ディレクトリ =====
sudo mkdir -p /var/lib/tailscale
# ===== 5. runit用サービスディレクトリを作成 =====
sudo mkdir -p /etc/sv/tailscaled
sudo tee /etc/sv/tailscaled/run > /dev/null << EOF
#!/bin/sh
exec ${TAILSCALED_BIN} --state=/var/lib/tailscale/tailscaled.state --socket=/run/tailscale/tailscaled.sock 2>&1
EOF
sudo chmod +x /etc/sv/tailscaled/run
# ===== 6. サービス有効化(自動起動設定) =====
sudo ln -sf /etc/sv/tailscaled /etc/service/tailscaled
# ===== 7. 起動待機 & 状態確認 =====
sleep 2
sudo sv status tailscaled
echo ""
echo "=================================================="
echo "tailscaled の起動が確認できたら、以下を実行してログイン認証してください:"
echo ""
echo " sudo tailscale up"
echo ""
echo "表示されたURLをブラウザで開いて認証すれば完了です。"
echo "=================================================="
sudo apt update
sudo apt install -y openssh-server
#!/bin/bash
set -euo pipefail
# ===== 1. 必要パッケージインストール =====
# xorgxrdp: Xorgバックエンド用モジュール
# tigervnc-standalone-server: Xorgが失敗した場合のXvncフォールバック用
sudo apt update
sudo apt install -y xrdp xorgxrdp tigervnc-standalone-server
# ===== 2. デスクトップ環境の指定(antiX標準のIceWMを起動) =====
# ~/.xsession が無いとxrdpログイン後に何も表示されないことがあるため明示的に指定
cat > ~/.xsession << 'EOF'
exec icewm-session
EOF
chmod +x ~/.xsession
# ===== 3. バイナリパスを確認 =====
XRDP_BIN=$(which xrdp)
SESMAN_BIN=$(which xrdp-sesman)
echo "xrdp のパス: $XRDP_BIN"
echo "xrdp-sesman のパス: $SESMAN_BIN"
# ===== 4. runit用サービスが自動生成されているか確認、無ければ作成 =====
if [ -L /etc/service/xrdp ] && [ -L /etc/service/xrdp-sesman ]; then
echo "runitサービスは既に有効化されています"
else
echo "runitサービスを作成します"
# --- xrdp-sesman(先に起動する必要がある) ---
sudo mkdir -p /etc/sv/xrdp-sesman
sudo tee /etc/sv/xrdp-sesman/run > /dev/null << EOF
#!/bin/sh
exec ${SESMAN_BIN} --nodaemon
EOF
sudo chmod +x /etc/sv/xrdp-sesman/run
sudo ln -sf /etc/sv/xrdp-sesman /etc/service/xrdp-sesman
# --- xrdp本体 ---
sudo mkdir -p /etc/sv/xrdp
sudo tee /etc/sv/xrdp/run > /dev/null << EOF
#!/bin/sh
exec ${XRDP_BIN} --nodaemon
EOF
sudo chmod +x /etc/sv/xrdp/run
sudo ln -sf /etc/sv/xrdp /etc/service/xrdp
fi
# ===== 5. 重複プロセス・残留pidの整理(再実行時の衝突防止) =====
sudo sv stop xrdp || true
sudo sv stop xrdp-sesman || true
sleep 1
sudo pkill -f xrdp-sesman || true
sudo pkill -f "xrdp$" || true
sudo pkill -f "Xorg.*:10" || true
sudo rm -f /var/run/xrdp/xrdp.pid
sleep 1
# ===== 6. サービス起動 =====
sudo sv start xrdp-sesman
sudo sv start xrdp
# ===== 7. 起動確認 =====
sleep 2
sudo sv status xrdp-sesman
sudo sv status xrdp
echo ""
echo "=================================================="
echo "セットアップ完了。Windowsのリモートデスクトップ接続から"
echo "Tailscale IP(tailscale ip -4 で確認)を指定して接続してください。"
echo "=================================================="
sudo apt update
sudo apt install -y ibus ibus-mozc ibus-gtk ibus-gtk3 ibus-gtk4 fonts-noto-cjk
~/.desktop-session/desktop-session.confに 下記を追記
im_module="ibus"
export GTK_IM_MODULE=$im_module
export QT_IM_MODULE=$im_module
export XMODIFIERS=@im=$im_module
DBUS_SESSION_LAUNCH="false"
eval $(dbus-launch --autolaunch $(cat /var/lib/dbus/machine-id) --sh-syntax --exit-with-session)
~/.desktop-session/startup に下記を追記
ibus-daemon -drx
