Skip to content

vacaboja/seafile

 
 

Repository files navigation

Git-Friendly Seafile Syncing Client

Seafile is an open-source cloud storage system.
Main repository: haiwen / seafile

Background

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:

Purpose

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.

Scope

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.

Installation

Prebuilt AppImage bundles and a Debian package are available for x86-64 systems.

AppImage

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.

Debian package

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

License

GPLv2

About

Modified Linux Seafile client aimed at avoiding Git repository corruption during syncing.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C 81.6%
  • Python 15.6%
  • M4 1.4%
  • Shell 0.5%
  • Makefile 0.4%
  • Vala 0.3%
  • C++ 0.2%