Seafile is an open-source cloud storage system.
Main repository: haiwen / seafile
Several users have reported Git repository corruption when syncing repositories with the official Seafile client. This issue is related to the Seafile client's file monitoring behavior. It is reproducible (see details here) and can lead to silent data corruption.
At the time of writing, the Seafile development team has indicated that they do not plan to change the current behavior.
Details of the bug and the Seafile maintainers' rationale can be found in the following forum thread:
Relevant GitHub issues:
This project modifies the Linux Seafile client to prevent Git repository corruption caused by the client's file monitoring behavior. Linux only.
Warning: this repository is not part of the Seafile project. This is an independent modification originally written for personal use and provided without guarantees. Use at your own risk and make sure you have backups of your repositories.
This modification targets only the seafile-daemon component common to the GUI and the command line client on Linux.
No changes are made to the server or to other client components.
The modified seafile-daemon is intended to remain compatible with the official Seafile server and clients.
Prebuilt AppImage bundles and a Debian package are available for x86-64 systems.
GUI client: Seafile-9.0.18+1-x86_64.AppImage.
Command line client: Seafile-cli-9.0.18+1-x86_64.AppImage.
To run an AppImage, follow the official instructions.
These AppImages are based on the official Seafile AppImage bundles with only the seafile-daemon component replaced by this project's modified version.
A prebuilt Debian package of the modified seafile-daemon component is available: seafile-daemon_9.0.18+1_amd64.deb.
The Seafile client is split into several Debian packages: seafile-cli, seafile-gui, seafile-daemon, plus a number of libraries.
Only the seafile-daemon component needs to be updated.
After installation, it is advisable to set seafile-daemon on hold; otherwise, apt may revert to the official package during upgrades.
To install:
sudo dpkg -i seafile-daemon_9.0.18+1_amd64.deb
sudo apt-mark hold seafile-daemon
To go back to the version provided by your distribution:
sudo dpkg -r --force-depends seafile-daemon
sudo apt install seafile-daemon
GPLv2