# pCloud Console Client (undead) This is a simple linux console client for pCloud cloud storage, originally 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. ## Due Credit - Anton Titov - Ivan Stoev - pCloud ## Required libraries [Zlib](http://zlib.net/) A Massively Spiffy Yet Delicately Unobtrusive Compression Library. [Boost](http://www.boost.org/) Boost system and boost program options libraries used. [Pthread](http://www.gnu.org/) [Fuse](https://github.com/libfuse/libfuse) Filesystem in Userspace. Also requires [CMake](https://cmake.org/) build system. On Ubuntu you can run the following command: > sudo apt-get install cmake zlib1g-dev libboost-system-dev libboost-program-options-dev libpthread-stubs0-dev libfuse-dev libudev-dev ## Build steps > sudo apt-get install cmake zlib1g-dev libboost-system-dev libboost-program-options-dev libpthread-stubs0-dev libfuse-dev libudev-dev fuse build-essential git > mkdir console-client > git clone https://github.com/pcloudcom/console-client.git ./console-client/ > cd ./console-client/pCloudCC/ > cd lib/pclsync/ > make clean > make fs > cd ../mbedtls/ > cmake . > make clean > make > cd ../.. > cmake . > make > sudo make install > sudo ldconfig > pcloudcc -u username -p ## Usage Terminal command is pcloudcc and -h option prints short options description. > ./pcloudcc -h > pCloud console client v.2.0.1 >Allowed options: > -h [ --help ] produce help message > -u [ --username ] arg pCloud account name > -p [ --password ] pCloud account password > -c [ --crypto ] arg Crypto password > -y [ --passascrypto ] arg Use user password as crypto password also. > -d [ --daemonize ] Daemonize the process. > -o [ --commands ] Parent stays alive and processes commands. > -m [ --mountpoint ] arg Mount point where drive to be mounted. > -k [ --commands_only ] Daemon already started pass only commands. > -n [ --newuser ] Switch if this is a new user to be registered. > -s [ --savepassword ] Save password in database. Also there are several commands that the running service can execute. Commands are passed using > pcloudcc -k or starting the daemon with -o. Available commands are : startcrypto , stopcrypto, finalize, q, quit - startcrypto - starts cripto using given password. - stopcrypto – stops the crypto. - finalize – stops the running daemon. - quit, q - exits the current client. Daemon stays alive. Example usage scenario: - Start the service manually > pcloudcc -u example@myemail.com -p -s Enter password and use -s switch to save the password. - Verify that file system starts and mounts normally. 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. - Start the daemon service: > pcloudcc -u example@myemail.com -d - Verify file system is mounted. - At that point you can test passing some commands. > pcloudcc -u example@myemail.com -k Or starting the daemon with -o. Test unlocking and locking crypto if you have subscription for it. - Quit the client. Congratulations, your pcloud console client works properly. You can now add “pcloudcc -u example@myemail.com -d” command in you startup scripts and thous mount the file system on startup. **Notice that stopping daemon will break pending background transfers!** Current version of `pcloudcc` doesn't support command to check if threre are pending transfers. Locally cached files are located under `~/.pcloud/Cache` dir. When there is only one file `~/.pcloud/Cache/cached` (ususally big sized) this mean that transfers are completed. ## Debian To create a debian package form the source use: > debuild -i -us -uc -b ## Older pre-built packages (no EU server supprt) - Ubuntu 18.04 64 bit [pcloudcc_2.1.0-1_amd64_ubuntu.18.04.deb](https://my.pcloud.com/publink/show?code=XZvLyi7Zsz7t1H0aYIFiawL4LSgN3uxLBUJX) - Debian 9.9 64 bit [pcloudcc_2.1.0-1_amd64_debian.9.9.deb](https://my.pcloud.com/publink/show?code=XZYVyi7ZseHyB89XXK0lVAdyy0AwQYl7osU7) - Debian 9.9 32 bit [pcloudcc_2.1.0-1_i386_debian.9.9.deb](https://my.pcloud.com/publink/show?code=XZuVyi7ZLevxTwQKGrSrxp8uIrQodBwDfX67)