Version: v2.5.9-42-g8812182
Built: 2026-01-25 02:33:17
3c77052244d85b55abb92828df8a5d6ed09851a029dd257af9b26bf847c3d82d
This guide shows how to set up the downloaded onedrive binary so it runs
automatically using systemd --user (no sudo required).
mkdir -p ~/.local/bin cp onedrive-v2.5.9-42-g8812182 ~/.local/bin/onedrive chmod +x ~/.local/bin/onedrive
nano ~/.config/systemd/user/onedrive.service
[Unit] Description=OneDrive Free Client (Personal Build) After=network-online.target [Service] ExecStart=%h/.local/bin/onedrive --monitor Restart=on-failure RestartSec=3 Environment=PATH=%h/.local/bin:/usr/bin:/bin [Install] WantedBy=default.target
systemctl --user daemon-reload systemctl --user enable --now onedrive.service
systemctl --user status onedrive.service journalctl --user -u onedrive.service -f
If you want this OneDrive build to stay updated automatically, install the updater script and a user-level systemd timer.
mkdir -p ~/.local/bin nano ~/.local/bin/update-onedrive.sh
#!/bin/bash
set -e
BASE_URL="https://onedrive.jadeinternet.net"
BIN="$HOME/.local/bin/onedrive"
TMP="$HOME/.local/bin/onedrive.new"
get_local_ver() {
if [ -x "$BIN" ]; then
"$BIN" --version | awk '{print $2}'
else
echo "none"
fi
}
get_remote_ver() {
curl -fs "$BASE_URL/index.html" |
grep -o 'href="onedrive-[^"]*"' |
head -n1 |
sed 's/.*onedrive-\([^"]*\)".*/\1/'
}
LOCAL_VER=$(get_local_ver)
REMOTE_VER=$(get_remote_ver)
[ -z "$REMOTE_VER" ] && exit 0
[ "$LOCAL_VER" = "$REMOTE_VER" ] && exit 0
echo "Updating OneDrive $LOCAL_VER → $REMOTE_VER"
curl -f "$BASE_URL/onedrive-$REMOTE_VER" -o "$TMP"
chmod 755 "$TMP"
mv "$TMP" "$BIN"
systemctl --user restart onedrive
chmod +x ~/.local/bin/update-onedrive.sh
nano ~/.config/systemd/user/onedrive-update.service
[Unit] Description=Update OneDrive binary if a newer build is available Wants=network-online.target After=network-online.target [Service] Type=oneshot ExecStart=%h/.local/bin/update-onedrive.sh
nano ~/.config/systemd/user/onedrive-update.timer
[Unit] Description=Run OneDrive updater daily [Timer] OnCalendar=daily Persistent=true [Install] WantedBy=timers.target
systemctl --user daemon-reload systemctl --user enable --now onedrive-update.timer
systemctl --user list-timers | grep onedrive systemctl --user start onedrive-update.service
This will check once per day and replace the binary only when a newer version is available.
Your running onedrive service will be restarted automatically when an update is installed.