590db28541
The pin state is a per-item attribute that has an effect on _type: AlwaysLocal dehydrated files will be marked for hydration and OnlineOnly hydrated files will be marked for dehydration. Where exactly this effect materializes depends on how the pin states are stored. If they're stored in the db (suffix) the dbEntry._type is changed during the discovery. If the pin state is stored in the filesystem, the localEntry._type must be adjusted by the plugin's stat callback. This patch makes pin states behave more consistently between plugins. Previously with suffix-vfs pin states only had an effect on new remote files. Now the effect of pinning or unpinning files or directories is as documented and similar to other plugins. |
||
---|---|---|
.github | ||
.tx | ||
admin | ||
cmake | ||
doc | ||
man | ||
shell_integration | ||
src | ||
test | ||
theme | ||
translations | ||
.clang-format | ||
.clang-tidy | ||
.drone.yml | ||
.git-blame-ignore-revs | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.tag | ||
appveyor.ini | ||
appveyor.yml | ||
ChangeLog | ||
CMakeLists.txt | ||
config.h.in | ||
CONTRIBUTING.md | ||
COPYING | ||
COPYING.documentation | ||
CPackOptions.cmake.in | ||
mirall.desktop.in | ||
NEXTCLOUD.cmake | ||
NextcloudCPack.cmake | ||
README.md | ||
resources.qrc | ||
sync-exclude.lst | ||
theme.qrc | ||
VERSION.cmake | ||
version.h.in |
Nextcloud Desktop Client
The 💻 Nextcloud Desktop Client is a tool to synchronize files from Nextcloud Server with your computer.
💙 🎉 Contributing
🛠️ How to compile the desktop client
🏗️ System requirements includes OpenSSL 1.1.x, QtKeychain, Qt 5.x.x and zlib.
📝 Step by step instructions
Clone the repo and create build directory
$ git clone https://github.com/nextcloud/desktop.git
$ cd desktop
$ mkdir build
$ cd build
Compile and install
⚠️ For development reasons it is better to install the client on user space instead on the global system. Mixing up libs/dll's of different version can lead to undefined behavior and crashes:
-
You could use the cmake flag
CMAKE_INSTALL_PREFIX
as~/.local/
in a Linux system. If you want to install system wide you could use/usr/local
or/opt/nextcloud/
. -
On Windows 10
$USERPROFILE
refers toC:\Users\<USERNAME>
.
Linux & Mac OS
$ cmake .. -DCMAKE_INSTALL_PREFIX=~/nextcloud-desktop-client -DCMAKE_BUILD_TYPE=Debug -DNO_SHIBBOLETH=1
$ make install
Windows
$ cmake -G "Visual Studio 15 2017 Win64" .. -DCMAKE_INSTALL_PREFIX=$USERPROFILE\nextcloud-desktop-client -DCMAKE_BUILD_TYPE=Debug -DNO_SHIBBOLETH=1
$ cmake --build . --config Debug --target install
ℹ️ More detailed instructions can be found at the Desktop Client Wiki.
📥 Where to find binaries to download
🔆 Daily builds
- Daily builds based on the latest master are available for Linux 🐧, Mac, and Windows in the desktop/daily folder of our download server. For more info: Wiki/Daily Builds.
🚀 Releases
💣 Reporting issues
- If you find any bugs or have any suggestion for improvement, please file an issue at https://github.com/nextcloud/desktop/issues. Do not contact the authors directly by mail, as this increases the chance of your report being lost. 💥
😃 🏆 Pull requests
- If you created a patch 😍, please submit a Pull Request.
- How to create a pull request? This guide will help you get started: Opening a pull request ❤️
📡 Contact us
If you want to contact us, e.g. before starting a more complex feature, for questions ❓ you can join us at #nextcloud-client.
✌️ Code of conduct
The Nextcloud community has core values that are shared between all members during conferences, hackweeks and on all interactions in online platforms including Github and Forums. If you contribute, participate or interact with this community, please respect our shared values. 😌
📝 Source code
The Nextcloud Desktop Client is developed in Git. Since Git makes it easy to fork and improve the source code and to adapt it to your need, many copies can be found on the Internet, in particular on GitHub. However, the authoritative repository maintained by the developers is located at https://github.com/nextcloud/desktop.
📜 License
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.