* list_sync_folders seems to work
* list_sync_folders breaks with sync folders in db; message size problem?
* fixed sync folders list
* fix double free and buffer overflow
* wip: add and remove sync folder; need to fix request->value in instance_thread
* remove comment
* removed pclsync_lib_c.{h,cpp}
* cleanup get_answer_to_request
* update comment
* changed reply struct to type response containing payload and msg
* cleanup
* refactored overlay_client, and poverlay; added docs
* better naming
* sock path in poverlay_protocol.h
* clarify comment
* refactor psync_overlay_get_response
* clarifications
* response_messages work with and without payload
* removed commented code
* syncadd works, but i need to fix the error handling
* remove sync folder
* remove commented code, change printfs to debug or simply remove
* removed unnecessary print
* removed more prints
* removed dead var
* update error handling in add_sync_folder, fix memleak
* simplified finalize
|
||
|---|---|---|
| .github/workflows | ||
| container | ||
| pclsync | ||
| .clang-format | ||
| .gitignore | ||
| Makefile | ||
| README.md | ||
| control_tools.cpp | ||
| control_tools.h | ||
| main.cpp | ||
| pclsync_lib.cpp | ||
| pclsync_lib.h | ||
README.md
pCloud Console Client (undead)
This is a simple linux console client for pCloud cloud storage, derived from the console-client developed by pCloud.
Braaaaaains (Fork, please)
This version of pcloudcc is independently maintained by me, whose only affiliation with pCloud is as a user of their services. As of June 2024, the console-client repo (https://github.com/pcloudcom/console-client) seems to have been inactive for several years. This was an attractive alternative for myself and other like-minded weirdos who don't enjoy unneeded GUIs, and it is a shame to see it abandoned.
Supported Distributions & Packages
pcloudcc-lneely seeks to support as many Linux distributions as possible and has been tested on recent versions of Fedora, Debian, Ubuntu, Arch, and Artix.
I use Artix and maintain an AUR package. I do not plan on providing or maintaining any other packages, but encourage anyone interested in doing so for their own distributions.
Due Credit
- Anton Titov
- Ivan Stoev
- pCloud
Dependencies
- zlib (-lz)
- boost (-lboost_system, -lboost_program_options)
- pthread (lpthread)
- udev (-ludev)
- libfuse (-lfuse)
- libsqlite (-lsqlite3)
- libmbedtls (-l:libmbedtls.so.14, -l:libmbedx509.so.1, -l:libmbedcrypto.so.7)
Building
make
It's really that easy. Use make install to install, and make uninstall to uninstall. Specify DESTDIR if desired (see Make Options).
Make Options
make BUILD=debug # include debug symbols, ASan instrumentation. (default: release)
make STATIC=0 # dynamically link libpcloudcc_lib.so. (default: 1)
make SCAN=1 # run code analysis; recommend CC=clang and CXX=clang++. (default: 0)
make CC=clang CXX=clang++ # use clang instead of gcc (default: gcc,g++)
make DESTDIR=/prefix # installation prefix (default: /usr/local/bin)
Usage
Getting Help
Terminal command is pcloudcc and -h option prints short options description.
pcloudcc -h
First Use
Start the service in the foreground using the -p switch to enter your password, and the -s switch to save the password to the database. Verify that file system starts and mounts normally after the
pcloudcc -u example@myemail.com -p -s
Registration
If you don't have existing user use -n switch to register new user:
pcloudcc -u example@myemail.com -p -s -n
Notice that a new user may take a while to mount. Please, be patient.
Run as Daemon
If you have saved your password, then you can run pcloudcc as a background daemon. Verify the filesystem is mounted when the daemon starts.
pcloudcc -u example@myemail.com -d
Command Prompt
Use the command prompt to interact with a running daemon.
pcloudcc -k
Command Reference:
startcrypto - use your password to unlock the crypto folder
stopcrypto – lock the crypto folder
finalize – stops the running daemon.
quit, q - exits the command prompt, daemon continues running in background
Warning
Stopping daemon will break pending background transfers!
pcloudcc does not currently provide a command to check for pending
transfers. You can currently check this by ensuring there is only one
file named cached in ~/.pcloud/Cache. Usually this is a large
file.