nmfs-opensci / py-rocket-2

take 2 on py-rocket-base
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

start breaks when .desktop files are missing #7

Closed eeholmes closed 4 days ago

eeholmes commented 4 days ago
#!/bin/bash
set -euo pipefail

# Set any environment variables here
# These are inherited by all processes, *except* RStudio

# Tell applications where to open desktop apps - this allows notebooks to
# pop open GUIs
export DISPLAY=":1.0"

# Add any .desktop files to the application database and desktop. This is done
# at startup-time because it's expected that a remote filesystem will be
# mounted at $HOME, which would overwrite the data if it was created at
# build-time.
APPLICATIONS_DIR="${HOME}/.local/share/applications"
DESKTOP_DIR="${HOME}/Desktop"
mkdir -p "${APPLICATIONS_DIR}"
mkdir -p "${DESKTOP_DIR}"
for desktop_file_path in ${REPO_DIR}/*.desktop; do
    cp "${desktop_file_path}" "${APPLICATIONS_DIR}/."

    # Symlink application to desktop
    desktop_file_name="$(basename ${desktop_file_path})"
    ln -sf "${APPLICATIONS_DIR}/${desktop_file_name}" "${DESKTOP_DIR}/${desktop_file_name}"
done
update-desktop-database "${APPLICATIONS_DIR}"

# Add MIME Type data from XML files in `mime/` dir to the MIME database.
MIME_DIR="${HOME}/.local/share/mime"
MIME_PACKAGES_DIR="${MIME_DIR}/packages"
mkdir -p "${MIME_PACKAGES_DIR}"
for mime_file_path in ${REPO_DIR}/mime/*.xml; do
    cp "${mime_file_path}" "${MIME_PACKAGES_DIR}/."
done
update-mime-database "${MIME_DIR}"

exec "$@"
eeholmes commented 4 days ago

adding shopt -s nullglob worked per AI suggestion!

https://github.com/nmfs-opensci/py-rocket-2/pull/8#issue-2568248198