From ffd7b1fab6caae4544eff8f7cb5699e3e18054d6 Mon Sep 17 00:00:00 2001 From: Brian Zalewski <59970525+ProfessorManhattan@users.noreply.github.com> Date: Sat, 9 Dec 2023 01:51:38 +0000 Subject: [PATCH] Latest --- .../universal/run_onchange_after_50-rclone.sh.tmpl | 10 +++++----- home/dot_local/bin/executable_rclone-mount | 14 ++++++-------- software.yml | 2 +- 3 files changed, 12 insertions(+), 14 deletions(-) diff --git a/home/.chezmoiscripts/universal/run_onchange_after_50-rclone.sh.tmpl b/home/.chezmoiscripts/universal/run_onchange_after_50-rclone.sh.tmpl index 0e7f499c..a379c59c 100644 --- a/home/.chezmoiscripts/universal/run_onchange_after_50-rclone.sh.tmpl +++ b/home/.chezmoiscripts/universal/run_onchange_after_50-rclone.sh.tmpl @@ -80,7 +80,7 @@ EOT logg info 'Ensuring /var/cache/rclone exists' sudo mkdir -p /var/cache/rclone - sudo chmod 770 /var/cache/rclone + sudo chmod 755 /var/cache/rclone # Add user / group with script in ~/.local/bin/add-user, if it is available if command -v add-user > /dev/null; then sudo add-user rclone @@ -89,7 +89,7 @@ EOT logg info 'Ensuring /var/log/rclone exists' sudo mkdir -p /var/log/rclone - sudo chmod 770 /var/log/rclone + sudo chmod 755 /var/log/rclone sudo chown -Rf rclone:rclone /var/log/rclone 2> /dev/null || sudo chown -Rf rclone:$(id -g -n) /var/log/rclone logg info 'Adding ~/.local/bin/rclone-mount to /usr/local/bin' @@ -98,11 +98,11 @@ EOT logg info 'Adding ~/.config/rclone/rcloneignore to /etc/rcloneignore' sudo cp -f "${XDG_CONFIG_HOME:-$HOME/.config}/rclone/rcloneignore" /etc/rcloneignore - sudo chmod 640 /etc/rcloneignore + sudo chmod 644 /etc/rcloneignore logg info 'Adding ~/.config/rclone/system-rclone.conf to /etc/rclone.conf' sudo cp -f "${XDG_CONFIG_HOME:-$HOME/.config}/rclone/system-rclone.conf" /etc/rclone.conf - sudo chmod 640 /etc/rclone.conf + sudo chmod 644 /etc/rclone.conf ### Add / configure service files if [ -d /etc/systemd/system ]; then @@ -116,7 +116,7 @@ EOT ### Ensure mount folder is created logg info "Ensuring /mnt/$SERVICE_ID is created with proper permissions" sudo mkdir -p "/mnt/$SERVICE_ID" - sudo chmod 770 "/mnt/$SERVICE_ID" + sudo chmod 755 "/mnt/$SERVICE_ID" sudo chown -Rf rclone:rclone "/mnt/$SERVICE_ID" 2> /dev/null || sudo chown -Rf rclone:$(id -g -n) "/mnt/$SERVICE_ID" ### Enable / restart the service diff --git a/home/dot_local/bin/executable_rclone-mount b/home/dot_local/bin/executable_rclone-mount index 21724c99..f09881b5 100644 --- a/home/dot_local/bin/executable_rclone-mount +++ b/home/dot_local/bin/executable_rclone-mount @@ -9,9 +9,11 @@ MOUNT="$3" if [ "$TYPE" = 'user' ]; then MOUNT_REF="$USER-$MOUNT" MOUNT_LOWERCASE="user/$USER-$MOUNT" + SUDO_FLAG="" else MOUNT_REF="$MOUNT" MOUNT_LOWERCASE="$(echo "$MOUNT" | tr "[:upper:]" "[:lower:]")" + SUDO_FLAG="sudo" fi ### Path definitions @@ -42,13 +44,9 @@ fi ### Ensure folders exist for FOLDER in "$CACHE_FOLDER" "$CONFIG_FOLDER" "$LOG_FOLDER" "$MOUNT_PATH"; do if [ ! -d "$FOLDER" ]; then - mkdir -p "$FOLDER" || sudo mkdir -p "$FOLDER" - sudo chmod 755 "$FOLDER" - if command -v own > /dev/null; then - sudo own "$FOLDER" - else - sudo chown -Rf rclone:rclone "$FOLDER" 2> /dev/null || sudo chown -Rf rclone:$(id -g -n) "$FOLDER" - fi + $SUDO_FLAG mkdir -p "$FOLDER" + $SUDO_FLAG chmod 755 "$FOLDER" + $SUDO_FLAG chown -Rf rclone:rclone "$FOLDER" 2> /dev/null || sudo chown -Rf rclone:$(id -g -n) "$FOLDER" fi done @@ -63,7 +61,7 @@ unset AWS_CA_BUNDLE export PATH="$PATH:/usr/local/bin:/usr/bin" # TODO: Only launch with --rc-web-gui if the servers hostname is the {{ .kubernetesHost }} # TODO: Add more secure authentication method -sudo rclone --config "$CONFIG_FOLDER/rclone.conf" \ +$SUDO_FLAG rclone --config "$CONFIG_FOLDER/rclone.conf" \ mount \ --allow-other \ --buffer-size 4G \ diff --git a/software.yml b/software.yml index 2056c0f9..3ed4e7bc 100644 --- a/software.yml +++ b/software.yml @@ -7985,7 +7985,7 @@ softwarePackages: _name: Rclone ansible: professormanhattan.rclone apt: rclone - brew: rclone + brew:linux: rclone choco: - rclone - winfsp