Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Create /roms-links directory only if it doesn't already exist
- if [[ ! -d /roms-links ]]; then
- sudo mkdir /roms-links
- # Extract /roms.tar into /roms-links/ while removing top-level folder
- sudo tar --strip-components=1 -xvkf /roms.tar -C /roms-links/
- fi
- # Update paths in EmulationStation config to use /roms-links instead of /roms2
- sed -i '/<path>\/roms2\//s//<path>\/roms-links\//' /etc/emulationstation/es_systems.cfg
- # Iterate through all system directories in /roms-links/*
- for dest_system_dir in /roms-links/*; do
- if [[ -d "$dest_system_dir" ]]; then
- system_name=$(basename "$dest_system_dir")
- src_system_dir="/roms/$system_name"
- # Check if the source directory exists
- if [[ -d "$src_system_dir" ]]; then
- echo "▶️ Processing system: $system_name"
- # Iterate through files and folders in /roms/system_name/*
- for item in "$src_system_dir"/*; do
- name=$(basename "$item")
- dest_link="$dest_system_dir/$name"
- # Create symlink if it doesn't already exist
- if [[ ! -e "$dest_link" ]]; then
- ln -s "$item" "$dest_link"
- echo "🔗 Link created: $dest_link → $item"
- else
- echo "⚠️ Already exists: $dest_link – skipping"
- fi
- done
- else
- echo "⛔ Skipping $system_name – source directory in /roms/ does not exist"
- fi
- fi
- done
- # Do the same for /roms2 (in case additional files exist there)
- for dest_system_dir in /roms-links/*; do
- if [[ -d "$dest_system_dir" ]]; then
- system_name=$(basename "$dest_system_dir")
- src_system_dir="/roms2/$system_name"
- # Check if the source directory exists
- if [[ -d "$src_system_dir" ]]; then
- echo "▶️ Processing system: $system_name"
- # Iterate through files and folders in /roms2/system_name/*
- for item in "$src_system_dir"/*; do
- name=$(basename "$item")
- dest_link="$dest_system_dir/$name"
- # Create symlink if it doesn't already exist
- if [[ ! -e "$dest_link" ]]; then
- ln -s "$item" "$dest_link"
- echo "🔗 Link created: $dest_link → $item"
- else
- echo "⚠️ Already exists: $dest_link – skipping"
- fi
- done
- else
- echo "⛔ Skipping $system_name – source directory in /roms2/ does not exist"
- fi
- fi
- done
- # List contents of PSP directories for verification
- ls --all /roms2/psp
- echo ""
- ls --all /roms/psp
- # Give time to see output before restarting
- sleep 7
- # Restart EmulationStation
- sudo systemctl restart emulationstation
- exit
Advertisement
Add Comment
Please, Sign In to add comment