|
|
||
|---|---|---|
| .github | ||
| binary/_win | ||
| libs/libp11 | ||
| nextcloud-client | ||
| .gitignore | ||
| README.md | ||
🖥️ Nextcloud Desktop Client blueprints
📘 We decided to use KDE Craft to get all binary dependencies of the Nextcloud files desktop client.
System requirements
- Windows 10 or Windows 11
- The desktop client code
- Python 3
- PowerShell
- KDE Craft
- Microsoft Visual Studio 2022
- Inkscape
- A Nextcloud server
Tip
We highly recommend Nextcloud development environment on Docker Compose for testing/bug fixing/development.
▶️ https://juliushaertl.github.io/nextcloud-docker-dev/
Set up Windows 10 or Windows 11
- If you don't have Windows as your main system, you could try to run it as a virtual machine: https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/
Set up Microsoft Visual Studio
- Open the
Visual Studio Installer. - Click on
Modify:
- Select
Desktop development with C++:
Install Inkscape
- Install the latest version of Inkscape.
Set up KDE Craft
- You will need to install Python 3: https://www.python.org/downloads/windows/
- Set up KDE Craft as instructed in Get Involved/development/Windows - KDE Community Wiki.
- Use the default options, including Qt6 (since desktop 3.14, we are using Qt 6).
Important
C:\CraftRootis the path used by default byKDE Craft.
When you are setting it up you may choose a different folder: you will need to
⚠️ change fromC:\CraftRootto the path you picked ⚠️ in the next steps listed here.
How to use the desktop client blueprints
- After following the instructions in Get Involved/development/Windows - KDE Community Wiki.
- Open
PowerShell. - Run
craftenv.ps1as described in the instructions above:
C:\CraftRoot\craft\craftenv.ps1
- Add the blueprints from this repository:
craft --add-blueprint-repository https://github.com/nextcloud/desktop-client-blueprints.git
$ craft craft
- Install all desktop client dependencies:
craft --install-deps nextcloud-client
Compiling the desktop client
- Make sure your environment variable
%PATH%has no conflicting information to the environment you will use to compile the client. For instance, if you have installedOpenSSLpreviously and have added it to%PATH%, theOpenSSLinstalled might be a different version than what was installed viaKDE Craft. - To use the tools installed with Visual Studio, you need the following in your %PATH%:
- Open the
Command Prompt(cmd.exe).
Important
The next steps has only been tested and proven to work when using
Command Prompt.
- Run:
"C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" x64
Tip
Alternatively you can use the tools installed with
KDE Craftby adding them to%PATH%in your current session:set "PATH=C:\CraftRoot\bin;C:\CraftRoot\dev-utils\bin;%PATH%"You also need to set the Qt path for plugins via an environment variable
set "QT_PLUGIN_PATH=C:\CraftRoot\bin\plugins"This will result in using the
cmakeversion downloaded withKDE Craft.
- Clone the desktop client repository.
git clone https://github.com/nextcloud/desktop.git
- Create the build folder
<build-folder>.
mkdir <build-folder>
- Go into the build folder.
cd <build-folder>
- Run cmake.
cmake ..\<desktop-cloned-repo> -G Ninja -DCMAKE_INSTALL_PREFIX=. -DCMAKE_PREFIX_PATH=C:\CraftRoot -DCMAKE_BUILD_TYPE=RelWithDebInfo
- Compile the desktop client
cmake --build .
Note
❓ If you have questions about it, you may use the forums at https://help.nextcloud.com to ask them.
🐛 If you find bugs with these steps, you may open a GH issue at https://github.com/nextcloud/desktop/issues.