[Unit]
Description=rclone: Remote FUSE filesystem for cloud storage config %i
Documentation=man:rclone(1)
After=network-online.target
Wants=network-online.target

[Service]
Type=notify
Environment="EXPRESSION=%i"
ExecStart= \
    bash -c ' \
        target="${EXPRESSION%%":"*}"; \
        dirname="${EXPRESSION#*":"}"; \
        mkdir -p "%h/$dirname"; \
        mkdir -p /tmp/rclone; \
        /usr/bin/rclone mount \
            --config=%h/.config/rclone/rclone.conf \
            --vfs-cache-mode full \
            --log-file /tmp/rclone/$target.log \
            $target: "%h/$dirname"'
ExecStop=bash -c '/bin/fusermount -zu "%h/${EXPRESSION#*":"}"'

[Install]
WantedBy=default.target