OneDriveGUI v2.4.0-RC1 - release candidate for the upcoming OneDrive client v2.5.12. Minimum supported client version stays v2.5.11. The final v2.4.0 will follow the official client release.
Warning
Two things to know before upgrading:
- Removed deprecated OneDrive client options (
force_http_2,min_notify_changes,sync_business_shared_folders) change the client's config hash, so OneDrive will ask for a one-time--resyncon the first start after the upgrade. This is expected - click Yes. - The application was re-packaged as a standard Python package. Third-party packages (AUR, etc.) will break until their maintainers update them - see the notes below.
What's Changed
Added
- Support for OneDrive client v2.5.12: the GUI now consumes
monitor-status.jsonas the authoritative high-level sync state, detects required resync from the client exit code, reports local Recycle Bin move failures, shows system clock drift warnings and understands the current deletion/rename wording #305 - New client options in profile settings:
skip_size,use_device_auth,permanent_delete#305 - 'Sign in with web browser' in the login dialog - the client opens the browser and receives the response itself, no URL copying #274
- New setting 'Stop OneDrive clients when OneDriveGUI exits' (enabled by default). Clients are stopped gracefully with SIGINT, so in-flight transfers complete #267
- OneDriveGUI detects a OneDrive client left running outside of the GUI and offers to take it over #267 #295
- Failed file syncs are now reported with the actual error and a desktop notification; failed transfers are collapsed behind a toggle in the profile view
- Free space shown in the system tray tooltip - good idea @ekolis #309
- New setting 'Remember window size and position' #280
- SharePoint site and library lists are now filterable, which helps with long lists #271
- GUI and client version checks retry every 60 seconds when the network is not yet available at startup, by @nikolainyegaard in #308
- Configurable maximum log file size (default 20 MB)
Fixed
- GUI crash when the resync/auth dialog was the last visible window #297
- Account type detection and persistence for SharePoint shared libraries, by @nikolainyegaard in #304 #271
- Tray icon click raises the unfocused window, by @nikolainyegaard in #302
- Autostart works when the executable is not on PATH, by @nikolainyegaard in #303
- 'Business Shared Folder has been deprecated' message shown without any business shared folders configured #287
- Broken symlinks now show the actual file system error #278
- Corrected tooltips of the advanced sync options #284
- AppImage failing to start with missing
libgthread-2.0.so.0#283 - Version checks compare versions numerically
- Operation timeout can be set above 99 seconds
Packaging
- OneDriveGUI is now a standard Python package, installable with pip and providing the
onedrive-guientry point, by @maikwoehl in #301
New Contributors
- @maikwoehl made their first contribution in #301
- @nikolainyegaard made their first contribution in #302
Note for package maintainers
The source layout changed in v2.4.0. Packages that copy src/*.py and run OneDriveGUI.py directly will break - see #311 for details and advance discussion.
- All modules moved from
src/*.pyinto theonedrive_guipackage (src/onedrive_gui/). Runningpython3 src/OneDriveGUI.pyno longer works - the package must be imported, not executed as a script. - Preferred: build/install the wheel and ship the generated
onedrive-guiconsole script:
python3 -m pip install --no-deps --root=<pkgroot> onedrive_gui-2.4.0-*.whl
Use--no-depsand providePySide6(Essentials) andrequestsfrom your distribution, so pip does not install its own copies. - Alternative: copy the whole
src/onedrive_gui/directory to a location of your choice and launch withpython3 -m onedrive_gui(parent directory onPYTHONPATH). Resources resolve relative to the package, so the location is up to you. - The version now lives only in
src/onedrive_gui/options.py- the build reads it from there. - The
.uifiles are not shipped in the wheel, only the compiledui_*.pymodules.
Third-party package broken after upgrade? Workaround for users
- If you use the AUR
onedrivegui-gitpackage, consider switching to theonedriveguirelease package or the AppImage until the packaging change settles. The-gitpackage builds directly from themainbranch and will fail to build once v2.4.0 is merged, while the release package only changes when its maintainer bumps the version. - If your package updated with a dead launcher, you can fix it without root, and the fix survives package updates:
Adjust the paths if your package installs elsewhere. Just note thatmkdir -p ~/.local/bin printf '#!/bin/sh\nPYTHONPATH=/usr/lib/OneDriveGUI exec python3 -m onedrive_gui\n' > ~/.local/bin/onedrivegui chmod +x ~/.local/bin/onedrivegui mkdir -p ~/.local/share/applications sed 's/^Exec=.*/Exec=onedrivegui/' /usr/share/applications/onedrivegui.desktop > ~/.local/share/applications/onedrivegui.desktoppython3 OneDriveGUI.pyno longer works - the GUI must be started withpython3 -m onedrive_gui. - Or pin/downgrade your distro package to the previous version until the maintainer updates it.
- Or install into your user directory and run the
onedrive-guicommand (needs PySide6 and requests installed from your distribution):
python3 -m pip install --user --no-deps https://github.com/bpozdena/OneDriveGUI/archive/refs/tags/v2.4.0RC1.tar.gz - Simplest of all: use the AppImage from this release.