clone of my dotfiles.ssp.sh
1#!/bin/bash
2# Install nautilus context menu items:
3# - Scripts (under Scripts submenu): ExifTool Info
4# - Python extensions (root context menu): Open in Terminal, Copy File Name, Copy File Path
5
6DOTFILES_DIR="$(cd "$(dirname "$0")" && pwd)"
7
8# Install nautilus scripts (appear under Scripts submenu)
9SCRIPTS_DIR="$HOME/.local/share/nautilus/scripts"
10SCRIPTS_SOURCE="$DOTFILES_DIR/.local/share/nautilus/scripts"
11mkdir -p "$SCRIPTS_DIR"
12
13for script in "$SCRIPTS_SOURCE"/*; do
14 name="$(basename "$script")"
15 ln -sf "$script" "$SCRIPTS_DIR/$name"
16done
17
18# Install nautilus-python extensions (appear at root context menu level)
19EXT_DIR="$HOME/.local/share/nautilus-python/extensions"
20EXT_SOURCE="$DOTFILES_DIR/.local/share/nautilus-python/extensions"
21mkdir -p "$EXT_DIR"
22
23for ext in "$EXT_SOURCE"/*.py; do
24 name="$(basename "$ext")"
25 ln -sf "$ext" "$EXT_DIR/$name"
26done
27
28# Disable Ghostty's built-in extension (replaced by Open in Terminal)
29GHOSTTY_EXT="/usr/share/nautilus-python/extensions/ghostty.py"
30if [ -f "$GHOSTTY_EXT" ] && [ ! -f "${GHOSTTY_EXT}.disabled" ]; then
31 echo "Disabling Ghostty nautilus extension (replaced by Open in Terminal)..."
32 sudo mv "$GHOSTTY_EXT" "${GHOSTTY_EXT}.disabled"
33fi
34
35echo "Installed nautilus scripts and extensions."
36echo "Restart nautilus (nautilus -q) for changes to take effect."