#!/usr/bin/env bash # ROX-Filer settings sudo apt install -y rox-filer sudo apt install -y libatk-adaptor libgail-common sudo apt install -y xmlstarlet ffmpegthumbnailer ffmpeg # Make changes to Options, menus2 using xmlstarlet at the bottom of this script. DEST=${1:-/etc/skel} ROXFILER_HOME="${DEST}"/.config/rox.sourceforge.net MIMETYPES="${ROXFILER_HOME}"/MIME-types mkdir -p "${ROXFILER_HOME}"/ROX-Filer/ mkdir -p "${MIMETYPES}" # Mime types cat <<-EOF | sudo tee "${MIMETYPES}"/application_msword >/dev/null #! /bin/sh exec libreoffice "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/application_pdf >/dev/null #! /bin/sh exec atril "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/application_vnd.openxmlformats-officedocument.spreadsheetml.sheet >/dev/null #! /bin/sh exec libreoffice "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/application_vnd.openxmlformats-officedocument.wordprocessingml.document >/dev/null #! /bin/sh exec libreoffice "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/application_vnd.rar >/dev/null #! /bin/sh exec xarchiver "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/application_x-kicad-pcb >/dev/null #! /bin/sh exec kicad "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/application_x-kicad-project >/dev/null #! /bin/sh exec kicad "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/application_zip >/dev/null #! /bin/sh exec xarchiver "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/audio_mp4 >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/audio_mpeg >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/audio_x-m4b >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/image_jpeg >/dev/null #! /bin/sh exec geeqie "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/image_png >/dev/null #! /bin/sh exec geeqie "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/text_x-csrc >/dev/null #! /bin/sh exec /opt/arduino/arduino-1.8.10 "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/video_mp4 >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/video_webm >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/video_x-mov >/dev/null #! /bin/sh exec mpv "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/video_x-flv >/dev/null #! /bin/sh exec mpv "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/video_x-matroska >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/video_x-ms-wmv >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF cat <<-EOF | sudo tee "${MIMETYPES}"/video_x-msvideo >/dev/null #! /bin/sh exec mpv --force-window "$@" EOF # Options # The Options and menus2 file are not created until first run # cat <<-EOF | sudo tee "${ROXFILER_HOME}"/ROX-Filer/Bookmarks.xml >/dev/null /opt/tor-browser_en-US/Browser/Downloads EOF cat <<-EOF | sudo tee "${ROXFILER_HOME}"/ROX-Filer/Bookmarks.xml >/dev/null /var/tmp EOF # Door files are a bit like sockets or pipes, and have only been seen on Solaris. # Magenta # Navy Blue # Black # Black # Black # Black # Charcoal # Green # Green # Magenta # Red # Grey # White # cat <<-EOF | sudo tee "${ROXFILER_HOME}"/ROX-Filer/Options >/dev/null EOF cat <<-EOF | sudo tee "${ROXFILER_HOME}"/ROX-Filer/menus2 >/dev/null ; rox GtkAccelMap rc-file -*- scheme -*- ; this file is an automated accelerator map dump ; ; (gtk_accel_path "/Window/Home Directory" "Home") ; (gtk_accel_path "/Help/Manual" "") ; (gtk_accel_path "/Window/Shell Command..." "exclam") ; (gtk_accel_path "/Display/Reversed" "") ; (gtk_accel_path "/Display/Sort by Group" "") ; (gtk_accel_path "/File/Link..." "") ; (gtk_accel_path "/Display/Show Thumbnails" "") ; (gtk_accel_path "/Display/Smaller Icons" "minus") ; (gtk_accel_path "/Window/Follow Symbolic Links" "") ; (gtk_accel_path "/File/" "") ; (gtk_accel_path "/File/Shift Open" "") ; (gtk_accel_path "/Window/" "") ; (gtk_accel_path "/Window/Switch to Terminal" "") ; (gtk_accel_path "/New/Blank file" "n") ; (gtk_accel_path "/Display/Sort by Date" "") ; (gtk_accel_path "/Display/Icons, With.../Times" "") ; (gtk_accel_path "/Window/Show Log" "") ; (gtk_accel_path "/Display/Refresh" "") ; (gtk_accel_path "/File/Send To..." "") ; (gtk_accel_path "/File/Copy..." "c") ; (gtk_accel_path "/Window/Close Window" "q") ; (gtk_accel_path "/Display/Bigger Icons" "equal") ; (gtk_accel_path "/Display/Sort by Owner" "") ; (gtk_accel_path "/Display/Filter Directories With Files" "") ; (gtk_accel_path "/Window/Enter Path..." "slash") ; (gtk_accel_path "/File/Set Icon..." "") ; (gtk_accel_path "/Display/Sort by Name" "") ; (gtk_accel_path "/Display/Icons, With.../Permissions" "") ; (gtk_accel_path "/Window/Parent, New Window" "") ; (gtk_accel_path "/Display/List View" "") ; (gtk_accel_path "/File/Customise Menu..." "") ; (gtk_accel_path "/File/Permissions" "") ; (gtk_accel_path "/Help/Show Help Files" "F1") ; (gtk_accel_path "/File/Find" "f") ; (gtk_accel_path "/File/Delete" "x") ; (gtk_accel_path "/Display/Sort by Size" "") ; (gtk_accel_path "/New/Directory" "") ; (gtk_accel_path "/Display/Icons, With.../Sizes" "") ; (gtk_accel_path "/Display/Automatic" "") ; (gtk_accel_path "/Select/Clear Selection" "") ; (gtk_accel_path "/Window/Resize Window" "e") ; (gtk_accel_path "/Window/Show Bookmarks" "b") ; (gtk_accel_path "/Select/Invert Selection" "") ; (gtk_accel_path "/File/Properties" "p") ; (gtk_accel_path "/File/Set Type..." "") ; (gtk_accel_path "/Window/New Window" "") ; (gtk_accel_path "/Display/Show Hidden" "h") ; (gtk_accel_path "/Window/Terminal Here" "grave") ; (gtk_accel_path "/Display/Save Current Display Settings..." "") ; (gtk_accel_path "/Display/Filter Files..." "") ; (gtk_accel_path "/New/Customise Menu..." "") ; (gtk_accel_path "/Select/Select If..." "question") ; (gtk_accel_path "/Window/Parent, Same Window" "") ; (gtk_accel_path "/Options..." "") ; (gtk_accel_path "/Display/Icons View" "") ; (gtk_accel_path "/Help/About ROX-Filer..." "") ; (gtk_accel_path "/File/Set Run Action..." "asterisk") ; (gtk_accel_path "/Select/Select All" "a") ; (gtk_accel_path "/Display/Sort by Type" "") ; (gtk_accel_path "/Select/Select by Name..." "period") ; (gtk_accel_path "/Display/" "") ; (gtk_accel_path "/Display/Icons, With.../Types" "") ; (gtk_accel_path "/File/Rename..." "") ; (gtk_accel_path "/File/Count" "") EOF # Changes display_dir_colour from #000080 to #3399FF e17 blue xmlstarlet edit -L -u "/Options/Option[@name='display_file_colour']" -v '#CCCCCC' "${ROXFILER_HOME}"/ROX-Filer/Options xmlstarlet edit -L -u "/Options/Option[@name='display_dir_colour']" -v '#3399FF' "${ROXFILER_HOME}"/ROX-Filer/Options # Changes display_dir_colour from #000080 to #FC8C4A orange # #xmlstarlet edit -L -u "/Options/Option[@name='display_file_colour']" -v '#CCCCCC' ${ROXFILER_HOME}/ROX-Filer/Options #xmlstarlet edit -L -u "/Options/Option[@name='display_dir_colour']" -v '#FC8C4A' ${ROXFILER_HOME}/ROX-Filer/Options xmlstarlet edit -L -u "/Options/Option[@name='display_dirs_first']" -v '1' "${ROXFILER_HOME}"/ROX-Filer/Options xmlstarlet edit -L -u "/Options/Option[@name='display_inherit_options']" -v '1' "${ROXFILER_HOME}"/ROX-Filer/Options xmlstarlet edit -L -u "/Options/Option[@name='filer_view_type']" -v '1' "${ROXFILER_HOME}"/ROX-Filer/Options xmlstarlet edit -L -u "/Options/Option[@name='menu_xterm']" -v 'terminology' "${ROXFILER_HOME}"/ROX-Filer/Options xmlstarlet edit -L -u "/Options/Option[@name='dnd_uri_handler']" -v 'x-terminal-emulator -e wget -c $1' "${ROXFILER_HOME}"/ROX-Filer/Options