A simple console client for pCloud cloud storage.

Overview

pCloud Console Client

A simple console client for pCloud cloud storage.

CI Status

Project Information

pCloud Console Client was forked from the project initially written by pCloud Ltd to breathe new life into it and set a more dynamic pace of development. The maintainer of this fork isn't affiliated to pCloud so this project is as good or as bad as it gets. If you'd like to contribute to pCloud Console Client you're most welcome!

Documentation

License

pCloud Console Client is open source software licensed under the BSD 3-Clause License. See the LICENSE file for more information.

Issues
  • Errors installing conan

    Errors installing conan

    Received a lot of errors when trying to run pip3 install --user conan.

    This is a partial error output:

      ERROR: Failed building wheel for pluginbase
      Running setup.py clean for pluginbase
    Failed to build conan future patch-ng pluginbase
    Installing collected packages: urllib3, MarkupSafe, idna, charset-normalizer, certifi, tqdm, requests, PyYAML, python-dateutil, pygments, pluginbase, patch-ng, node-semver, Jinja2, future, fasteners, colorama, bottle, conan
      WARNING: The script normalizer is installed in '/home/werewolves/.local/bin' which is not on PATH.
      Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
      WARNING: The script tqdm is installed in '/home/werewolves/.local/bin' which is not on PATH.
      Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
      WARNING: The script pygmentize is installed in '/home/werewolves/.local/bin' which is not on PATH.
      Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
        Running setup.py install for pluginbase ... error
        ERROR: Command errored out with exit status 1:
         command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-_euu9t9h/pluginbase_071c50e494294c978b4fbf86ab74fcd6/setup.py'"'"'; __file__='"'"'/tmp/pip-install-_euu9t9h/pluginbase_071c50e494294c978b4fbf86ab74fcd6/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-ajledgq1/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/werewolves/.local/include/python3.9/pluginbase
             cwd: /tmp/pip-install-_euu9t9h/pluginbase_071c50e494294c978b4fbf86ab74fcd6/
        Complete output (24 lines):
        running install
        running build
        running build_py
        creating build
        creating build/lib
        copying pluginbase.py -> build/lib
        running install_lib
        copying build/lib/pluginbase.py -> /home/werewolves/.local/lib/python3.9/site-packages
        byte-compiling /home/werewolves/.local/lib/python3.9/site-packages/pluginbase.py to pluginbase.cpython-39.pyc
        running install_egg_info
        running egg_info
        writing pluginbase.egg-info/PKG-INFO
        writing dependency_links to pluginbase.egg-info/dependency_links.txt
        writing top-level names to pluginbase.egg-info/top_level.txt
        reading manifest file 'pluginbase.egg-info/SOURCES.txt'
        reading manifest template 'MANIFEST.in'
        warning: no previously-included files matching '*.pyc' found under directory 'docs'
        warning: no previously-included files matching '*.pyo' found under directory 'docs'
        warning: no previously-included files matching '*.pyc' found under directory 'tests'
        warning: no previously-included files matching '*.pyo' found under directory 'tests'
        no previously-included directories found matching 'docs/_build'
        writing manifest file 'pluginbase.egg-info/SOURCES.txt'
        Copying pluginbase.egg-info to /home/werewolves/.local/lib/python3.9/site-packages/pluginbase-1.0.1.egg-info
        error: [Errno 13] Permission denied: '/home/werewolves/.local/lib/python3.9/site-packages/pluginbase-1.0.1.egg-info/PKG-INFO'
        ----------------------------------------
    ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-_euu9t9h/pluginbase_071c50e494294c978b4fbf86ab74fcd6/setup.py'"'"'; __file__='"'"'/tmp/pip-install-_euu9t9h/pluginbase_071c50e494294c978b4fbf86ab74fcd6/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-ajledgq1/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/werewolves/.local/include/python3.9/pluginbase Check the logs for full command output.
    
    
    opened by w3r3wolv3s 21
  • Request for future: consider releases (with binaries)

    Request for future: consider releases (with binaries)

    Really glad to see someone picking up development, and wish you best of luck in the future.

    I see you have put more build dependencies (conan, for example) - in order to save the trouble for downloading a lot of make dependencies, I was wondering whether you would consider providing releases with binaries (maybe through github actions). That would make the installation much easier for a lot of folks. For one, I am the maintainer of the AUR package pcloudcc, and I would be happy to make a separate "bin" package (in time) from your binaries, if things progress.

    Many thanks for your work!

    opened by coxackie 10
  • Unable to log in to account in EU: status is BAD_LOGIN_DATA

    Unable to log in to account in EU: status is BAD_LOGIN_DATA

    ~~I have no idea whether this is caused by my kludgy fix for #87 or not, or if it's platform-based, but~~ (per upstream PRs, these are unrelated) I seem to be unable to log into pCloud—with or without 2FA enabled. I even created a new account to test, and it still didn't work.

    $ uname -a
    20.04.1-Ubuntu SMP Fri Jul 16 00:56:44 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
    

    Steps to reproduce:

    1. pcloudcc -u [email address] -p
    2. Observe the following output: Please, enter password
    3. Enter password
    4. Observe the following output:
    Down: Everything Downloaded| Up: Everything Uploaded, status is LOGIN_REQUIRED
    logging in
    Down: Everything Downloaded| Up: Everything Uploaded, status is CONNECTING
    Down: Everything Downloaded| Up: Everything Uploaded, status is BAD_LOGIN_DATA
    Please, enter password
    

    I tried this with a brand-new account, so there shouldn't be any settings preventing the login from working. Thoughts?

    invalid 
    opened by EmberHeartshine 3
  • [BUG] Compiling on arm64/aarch64: error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!

    [BUG] Compiling on arm64/aarch64: error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!

    Following the instructions here, I'm trying to compile this on an Oracle Cloud Ampere system. The system is running Ubuntu 20.04.

    $ uname -a
    20.04.1-Ubuntu SMP Fri Jul 16 00:56:44 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
    

    Steps to reproduce:

    1. Follow the "Getting Started" instructions up to CMake.
    2. $ cmake ..
    3. Observe the following output:
    Scanning dependencies of target logger
    [  1%] Building C object src/logger/CMakeFiles/logger.dir/logger.c.o
    [  3%] Linking C static library ../../lib/liblogger.a
    [  3%] Built target logger
    Scanning dependencies of target psync
    [  4%] Building C object src/psync/CMakeFiles/psync.dir/pcompat.c.o
    [  6%] Building C object src/psync/CMakeFiles/psync.dir/pstringcompat.c.o
    [  7%] Building C object src/psync/CMakeFiles/psync.dir/psynclib.c.o
    [  9%] Building C object src/psync/CMakeFiles/psync.dir/plocks.c.o
    [ 10%] Building C object src/psync/CMakeFiles/psync.dir/plibs.c.o
    ... [snip] ...
    [ 64%] Building C object src/psync/CMakeFiles/psync.dir/pdeviceid.c.o
    [ 66%] Building C object src/psync/CMakeFiles/psync.dir/pfs.c.o
    In file included from /usr/include/fuse/fuse.h:26,
                     from /home/ubuntu/pcloud-console-client/src/psync/pfs.c:13:
    /usr/include/fuse/fuse_common.h:33:2: error: #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
       33 | #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
          |  ^~~~~
    make[2]: *** [src/psync/CMakeFiles/psync.dir/build.make:583: src/psync/CMakeFiles/psync.dir/pfs.c.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:1060: src/psync/CMakeFiles/psync.dir/all] Error 2
    make: *** [Makefile:141: all] Error 2
    
    1. Attempt to correct: $ cmake -D_FILE_OFFSET_BITS=64 ..
    2. Observe the following output:
    [  3%] Built target logger
    [  4%] Building C object src/psync/CMakeFiles/psync.dir/pfs.c.o
    In file included from /usr/include/fuse/fuse.h:26,
                     from /home/ubuntu/pcloud-console-client/src/psync/pfs.c:13:
    /usr/include/fuse/fuse_common.h:33:2: error: #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
       33 | #error Please add -D_FILE_OFFSET_BITS=64 to your compile flags!
          |  ^~~~~
    make[2]: *** [src/psync/CMakeFiles/psync.dir/build.make:583: src/psync/CMakeFiles/psync.dir/pfs.c.o] Error 1
    make[1]: *** [CMakeFiles/Makefile2:1060: src/psync/CMakeFiles/psync.dir/all] Error 2
    make: *** [Makefile:141: all] Error 2
    

    I'm not as incredibly familiar with C/C++ as I used to be, so I went hunting and I found this page. The second suggestion ended up working:

    $ git diff
    diff --git a/src/psync/pfs.c b/src/psync/pfs.c
    index ad6c706..711ed83 100644
    --- a/src/psync/pfs.c
    +++ b/src/psync/pfs.c
    @@ -10,6 +10,7 @@
      */
    
     #include <pthread.h>
    +#define _FILE_OFFSET_BITS  64
     #include <fuse.h>
     #include <errno.h>
     #include <string.h>
    

    HOWEVER this seems kludgy as all heck, so I didn't want to just make the change and open a PR since I'm not familiar with the codebase. Perhaps there's a more elegant solution?

    bug 
    opened by EmberHeartshine 3
  • Support building without conan or without building mbedtls

    Support building without conan or without building mbedtls

    I am trying to package up pcloud-console-client for Arch Linux but I hit an issue (https://github.com/ARMmbed/mbedtls/issues/4130) that prevents mbedtls building because it builds with -Werror=stringop-overflow=.

    Because I'm packaging this up with the system package manager, ideally it would be possible to use system libraries to build against, rather than ones provided by conan. It does not seem possible to do this through conan (https://github.com/conan-io/conan/issues/1330) so ideally it would be possible to build without conan at all.

    I can try building with openssl (ie use `-DPCLOUD_TLS_IMPL:STRING='openssl' after running conan), but because mbedtls is a requirement specified in the conanfile.txt, mbedtls still gets built and fails. I have to edit the conanfile.txt to remove this requirement. If it won't be possible to build without conan at all, then it would be nice to be able to get conan to skip building mbedtls without requiring edits to the conanfile.txt. Perhaps this is possible already but I'm not familiar enough with conan to know if this is the case, and I can't find anything in the documentation about it.

    enhancement 
    opened by AWhetter 2
  • Question: Empty Trash support?

    Question: Empty Trash support?

    Does this console client support an operation to empty the Trash? Even better, if it would be configurable to not use the trash at all by delete operations.

    opened by ambipur76 1
  • Can this fork mount to an existing folder or will we need to create a new folder to sync?

    Can this fork mount to an existing folder or will we need to create a new folder to sync?

    I looked at the Readme but couldn't find anything that can do this, but just in case I missed it.

    I'm looking to sync to a few existing folder with files and folders that I'd like to back up.

    opened by majestique 0
  • Aborted (core dumped) during init (on arm-linux-gnueabihf)

    Aborted (core dumped) during init (on arm-linux-gnueabihf)

    $ /usr/local/bin/pcloudcc -u m*****@gmail.com -m /home/maarten/pCloudDrive Down: Everything Downloaded| Up: Everything Uploaded, status is CONNECTING Down: Everything Downloaded| Up: Everything Uploaded, status is SCANNING Aborted (core dumped)

    This does not happen with the "official" upstream pcloud console-client.

    Full valgrind log:

    [email protected]:~/console-client/pCloudCC$ valgrind -v /usr/local/bin/pcloudcc -u [email protected] -m /home/maarten/pCloudDrive ==9198== Memcheck, a memory error detector ==9198== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==9198== Using Valgrind-3.14.0-353a3587bb-20181007X and LibVEX; rerun with -h for copyright info ==9198== Command: /usr/local/bin/pcloudcc -u [email protected] -m /home/maarten/pCloudDrive ==9198== --9198-- Valgrind options: --9198-- -v --9198-- Contents of /proc/version: --9198-- Linux version 5.1.1-BPI-Kernel ([email protected]) (gcc version 7.4.1 20181213 [linaro-7.4-2019.02 revision 56ec6f6b99cc167ff0c2f8e1a2eed33b1edc85d4] (Linaro GCC 7.4-2019.02)) #1 SMP Thu Aug 22 13:53:49 CST 2019 --9198-- --9198-- Arch and hwcaps: ARM, LittleEndian, ARMv7-neon-vfp --9198-- Page sizes: currently 4096, max supported 4096 --9198-- Valgrind library directory: /usr/lib/arm-linux-gnueabihf/valgrind --9198-- Reading syms from /usr/local/bin/pcloudcc-3.0.0 --9198-- Reading EXIDX entries: 399 available ==9198== Warning: whilst reading EXIDX: ExtabEntryExtract: bytecode can't be represented ... ==9198== Warning: whilst reading EXIDX: ExtabEntryExtract: bytecode can't be represented --9198-- Reading EXIDX entries: 353 attempted, 90 successful --9198-- Reading syms from /lib/arm-linux-gnueabihf/ld-2.28.so --9198-- Considering /usr/lib/debug/.build-id/80/442130c1faa9e99d4162d266dc011b99b52500.debug .. --9198-- .. build-id is valid --9198-- Scheduler: using generic scheduler lock implementation. --9198-- Reading suppressions file: /usr/lib/arm-linux-gnueabihf/valgrind/default.supp ==9198== embedded gdbserver: reading from /tmp/vgdb-pipe-from-vgdb-to-9198-by-maarten-on-??? ==9198== embedded gdbserver: writing to /tmp/vgdb-pipe-to-vgdb-from-9198-by-maarten-on-??? ==9198== embedded gdbserver: shared mem /tmp/vgdb-pipe-shared-mem-vgdb-9198-by-maarten-on-??? ==9198== ==9198== TO CONTROL THIS PROCESS USING vgdb (which you probably ==9198== don't want to do, unless you know exactly what you're doing, ==9198== or are doing some strange experiment): ==9198== /usr/lib/arm-linux-gnueabihf/valgrind/../../bin/vgdb --pid=9198 ...command... ==9198== ==9198== TO DEBUG THIS PROCESS USING GDB: start GDB like this ==9198== /path/to/gdb /usr/local/bin/pcloudcc ==9198== and then give GDB the following command ==9198== target remote | /usr/lib/arm-linux-gnueabihf/valgrind/../../bin/vgdb --pid=9198 ==9198== --pid is optional if only one valgrind process is running ==9198== --9198-- REDIR: 0x4012741 (ld-linux-armhf.so.3:strlen) redirected to 0x580eb270 (???) --9198-- REDIR: 0x4013100 (ld-linux-armhf.so.3:memcpy) redirected to 0x580eb2d4 (???) --9198-- REDIR: 0x4012151 (ld-linux-armhf.so.3:strcmp) redirected to 0x580eb3e0 (???) --9198-- REDIR: 0x4012081 (ld-linux-armhf.so.3:index) redirected to 0x580eb29c (???) --9198-- Reading syms from /usr/lib/arm-linux-gnueabihf/valgrind/vgpreload_core-arm-linux.so --9198-- object doesn't have a symbol table --9198-- Reading syms from /usr/lib/arm-linux-gnueabihf/valgrind/vgpreload_memcheck-arm-linux.so --9198-- object doesn't have a symbol table --9198-- Reading syms from /usr/local/lib/liblog_c.so.0.1.0 --9198-- Reading syms from /usr/local/lib/libpsync.so.2.0.0 --9198-- Reading EXIDX entries: 1 available --9198-- Reading EXIDX entries: 0 attempted, 0 successful --9198-- Reading syms from /usr/lib/arm-linux-gnueabihf/libmbedtls.so.2.16.0 --9198-- object doesn't have a symbol table --9198-- Reading syms from /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0 --9198-- object doesn't have a symbol table --9198-- Reading EXIDX entries: 1 available --9198-- Reading EXIDX entries: 0 attempted, 0 successful --9198-- Reading syms from /usr/lib/arm-linux-gnueabihf/libmbedx509.so.2.16.0 --9198-- object doesn't have a symbol table --9198-- Reading syms from /usr/lib/arm-linux-gnueabihf/libsqlite3.so.0.8.6 --9198-- object doesn't have a symbol table --9198-- Reading EXIDX entries: 1 available --9198-- Reading EXIDX entries: 0 attempted, 0 successful --9198-- Reading syms from /lib/arm-linux-gnueabihf/libpthread-2.28.so --9198-- Considering /usr/lib/debug/.build-id/b8/24ccfb229ec12cf798c2d5c3f2fc62367866ed.debug .. --9198-- .. build-id is valid --9198-- Reading syms from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6.0.25 --9198-- object doesn't have a symbol table --9198-- Reading EXIDX entries: 2157 available ==9198== Warning: whilst reading EXIDX: ExtabEntryExtract: bytecode can't be represented ... ==9198== Warning: whilst reading EXIDX: ExtabEntryExtract: bytecode can't be represented --9198-- Reading EXIDX entries: 1704 attempted, 795 successful --9198-- Reading syms from /lib/arm-linux-gnueabihf/libm-2.28.so --9198-- Considering /usr/lib/debug/.build-id/ad/4d18209b1b2d0f8947d37d8d1107f5f6595b2c.debug .. --9198-- .. build-id is valid --9198-- Reading syms from /lib/arm-linux-gnueabihf/libgcc_s.so.1 --9198-- object doesn't have a symbol table --9198-- Reading EXIDX entries: 35 available --9198-- Reading EXIDX entries: 22 attempted, 22 successful --9198-- Reading syms from /lib/arm-linux-gnueabihf/libc-2.28.so --9198-- Considering /usr/lib/debug/.build-id/a5/1bcb502fce15d524720900d043c3a3b7b5b2ae.debug .. --9198-- .. build-id is valid --9198-- Reading syms from /lib/arm-linux-gnueabihf/libz.so.1.2.11 --9198-- object doesn't have a symbol table --9198-- Reading EXIDX entries: 1 available --9198-- Reading EXIDX entries: 0 attempted, 0 successful --9198-- Reading syms from /lib/arm-linux-gnueabihf/libfuse.so.2.9.9 --9198-- object doesn't have a symbol table --9198-- Reading EXIDX entries: 1 available --9198-- Reading EXIDX entries: 0 attempted, 0 successful --9198-- Reading syms from /lib/arm-linux-gnueabihf/libdl-2.28.so --9198-- Considering /usr/lib/debug/.build-id/bd/aba387372c635755eb535fcabd1803c6b7b670.debug .. --9198-- .. build-id is valid --9198-- REDIR: 0x4d810b9 (libc.so.6:memchr) redirected to 0x482a4b0 (_vgnU_ifunc_wrapper) --9198-- REDIR: 0x4d81925 (libc.so.6:memcpy) redirected to 0x482a4b0 (_vgnU_ifunc_wrapper) --9198-- REDIR: 0x4d85d00 (libc.so.6:__memcpy_neon) redirected to 0x4845518 (memcpy) --9198-- REDIR: 0x4d80631 (libc.so.6:rindex) redirected to 0x4842fd0 (rindex) --9198-- REDIR: 0x4d7d129 (libc.so.6:malloc) redirected to 0x483f53c (malloc) --9198-- REDIR: 0x4d7fad1 (libc.so.6:strcmp) redirected to 0x4844a24 (strcmp) --9198-- REDIR: 0x4d81700 (libc.so.6:memset) redirected to 0x484790c (memset) --9198-- REDIR: 0x4d80381 (libc.so.6:strlen) redirected to 0x48437e0 (strlen) --9198-- REDIR: 0x4d810d1 (libc.so.6:bcmp) redirected to 0x4846fb0 (bcmp) --9198-- REDIR: 0x4be9855 (libstdc++.so.6:operator new(unsigned int)) redirected to 0x483fd2c (operator new(unsigned int)) --9198-- REDIR: 0x4be8091 (libstdc++.so.6:operator delete(void*)) redirected to 0x4841214 (operator delete(void*)) --9198-- REDIR: 0x4d7db5d (libc.so.6:calloc) redirected to 0x48421a4 (calloc) --9198-- REDIR: 0x4d867e1 (libc.so.6:__memchr_neon) redirected to 0x4844cac (memchr) --9198-- REDIR: 0x4be8095 (libstdc++.so.6:operator delete(void*, unsigned int)) redirected to 0x4841478 (operator delete(void*, unsigned int)) --9198-- REDIR: 0x4d813c0 (libc.so.6:memmove) redirected to 0x48479ec (memmove) --9198-- REDIR: 0x4d7d5e9 (libc.so.6:free) redirected to 0x4840bb4 (free) --9198-- REDIR: 0x4d7fa11 (libc.so.6:index) redirected to 0x4843220 (index) --9198-- REDIR: 0x4be98d5 (libstdc++.so.6:operator new[](unsigned int)) redirected to 0x48405f4 (operator new[](unsigned int)) --9198-- REDIR: 0x4d817cd (libc.so.6:stpncpy) redirected to 0x48477b0 (stpncpy) --9198-- REDIR: 0x4be809d (libstdc++.so.6:operator delete) redirected to 0x4841ad8 (operator delete) --9198-- REDIR: 0x4d8045d (libc.so.6:strnlen) redirected to 0x4843718 (strnlen) --9198-- REDIR: 0x4d80529 (libc.so.6:strncmp) redirected to 0x4844190 (strncmp) --9198-- REDIR: 0x4d82a69 (libc.so.6:strchrnul) redirected to 0x48484bc (strchrnul) --9198-- REDIR: 0x4dcb6a1 (libc.so.6:__memcpy_chk) redirected to 0x4848b4c (__memcpy_chk) --9198-- REDIR: 0x4d7d7b1 (libc.so.6:realloc) redirected to 0x4842430 (realloc) ==9198== Use of uninitialised value of size 4 ==9198== at 0x4882B62: psync_get_random_seed (in /usr/local/lib/libpsync.so.2.0.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4882BEC: psync_get_random_seed (in /usr/local/lib/libpsync.so.2.0.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B06: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B20: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B2A: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B2E: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B62: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B94: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31BA4: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31BAA: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31ADA: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31AFE: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B32: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B38: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B56: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B68: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B72: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B7A: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== --9198-- REDIR: 0x4d80d5d (libc.so.6:strstr) redirected to 0x4848c74 (strstr) --9198-- REDIR: 0x4d7fde1 (libc.so.6:strcpy) redirected to 0x48439d8 (strcpy) --9198-- REDIR: 0x4d8177d (libc.so.6:mempcpy) redirected to 0x48485e8 (mempcpy) Down: Everything Downloaded| Up: Everything Uploaded, status is CONNECTING ==9198== Syscall param epoll_ctl(event) points to uninitialised byte(s) ==9198== at 0x4DC1DC8: epoll_ctl (syscall-template.S:78) ==9198== by 0x48AF6A1: psync_localnotify_init (in /usr/local/lib/libpsync.so.2.0.0) ==9198== Address 0xbdd36094 is on thread 1's stack ==9198== --9217-- REDIR: 0x4d4d7d5 (libc.so.6:setenv) redirected to 0x4849664 (setenv) --9198-- REDIR: 0x4d8183d (libc.so.6:strncasecmp) redirected to 0x4844510 (strncasecmp) --9198-- REDIR: 0x4d806d5 (libc.so.6:strpbrk) redirected to 0x4848e54 (strpbrk) --9198-- REDIR: 0x4d7fdd1 (libc.so.6:stpcpy) redirected to 0x4847120 (stpcpy) --9198-- Reading syms from /lib/arm-linux-gnueabihf/libnss_files-2.28.so --9198-- Considering /usr/lib/debug/.build-id/02/c95f99d5afe1d6538720a47cc0ff38283c3d16.debug .. --9198-- .. build-id is valid --9198-- REDIR: 0x4d81801 (libc.so.6:strcasecmp) redirected to 0x4844460 (strcasecmp) --9198-- Reading syms from /lib/arm-linux-gnueabihf/libnss_dns-2.28.so --9198-- Considering /usr/lib/debug/.build-id/3f/5e6bd67e031c72a1a8889bcf9127aa93184b34.debug .. --9198-- .. build-id is valid --9198-- Reading syms from /lib/arm-linux-gnueabihf/libresolv-2.28.so --9198-- Considering /usr/lib/debug/.build-id/ab/3d53f3ad59c5780c214b15d224ac3886227111.debug .. --9198-- .. build-id is valid ==9198== ==9198== Process terminating with default action of signal 6 (SIGABRT): dumping core ==9198== at 0x4D3E746: __libc_do_syscall (libc-do-syscall.S:47) ==9198== by 0x4D4C0AD: __libc_signal_restore_set (internal-signals.h:84) ==9198== by 0x4D4C0AD: raise (raise.c:48) ==9198== by 0x4D3E1F1: abort (abort.c:79) ==9198== by 0x488B3D9: psync_sql_do_lock (in /usr/local/lib/libpsync.so.2.0.0) --9198-- Discarding syms at 0x955ab34-0x955f0c0 in /lib/arm-linux-gnueabihf/libnss_files-2.28.so (have_dinfo 1) --9198-- Discarding syms at 0x9577b50-0x95799dc in /lib/arm-linux-gnueabihf/libnss_dns-2.28.so (have_dinfo 1) --9198-- Discarding syms at 0x958d460-0x9595a44 in /lib/arm-linux-gnueabihf/libresolv-2.28.so (have_dinfo 1) ==9198== ==9198== HEAP SUMMARY: ==9198== in use at exit: 19,791,250 bytes in 5,858 blocks ==9198== total heap usage: 9,262 allocs, 3,404 frees, 20,397,202 bytes allocated ==9198== ==9198== Searching for pointers to 5,858 not-freed blocks ==9198== Checked 90,480,824 bytes ==9198== ==9198== LEAK SUMMARY: ==9198== definitely lost: 4,096 bytes in 1 blocks ==9198== indirectly lost: 0 bytes in 0 blocks ==9198== possibly lost: 19,471,240 bytes in 4,579 blocks ==9198== still reachable: 315,914 bytes in 1,278 blocks ==9198== of which reachable via heuristic: ==9198== length64 : 209,696 bytes in 965 blocks ==9198== suppressed: 0 bytes in 0 blocks ==9198== Rerun with --leak-check=full to see details of leaked memory ==9198== ==9198== Use --track-origins=yes to see where uninitialised values come from ==9198== ERROR SUMMARY: 273 errors from 19 contexts (suppressed: 0 from 0) ==9198== ==9198== 1 errors in context 1 of 19: ==9198== Syscall param epoll_ctl(event) points to uninitialised byte(s) ==9198== at 0x4DC1DC8: epoll_ctl (syscall-template.S:78) ==9198== by 0x48AF6A1: psync_localnotify_init (in /usr/local/lib/libpsync.so.2.0.0) ==9198== Address 0xbdd36094 is on thread 1's stack ==9198== ==9198== ==9198== 9 errors in context 2 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B7A: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 3 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B72: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 4 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B68: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 5 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B56: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 6 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B38: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 7 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B32: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 8 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31AFE: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 9 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31ADA: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 10 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31BAA: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 11 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31BA4: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 12 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B94: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 13 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B62: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 14 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B2E: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 15 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B2A: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 16 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B20: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 9 errors in context 17 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4A31B06: mbedtls_internal_aes_encrypt (in /usr/lib/arm-linux-gnueabihf/libmbedcrypto.so.2.16.0) ==9198== ==9198== ==9198== 64 errors in context 18 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4882BEC: psync_get_random_seed (in /usr/local/lib/libpsync.so.2.0.0) ==9198== ==9198== ==9198== 64 errors in context 19 of 19: ==9198== Use of uninitialised value of size 4 ==9198== at 0x4882B62: psync_get_random_seed (in /usr/local/lib/libpsync.so.2.0.0) ==9198== ==9198== ERROR SUMMARY: 273 errors from 19 contexts (suppressed: 0 from 0) Aborted

    opened by mbtronics 1
  • fuse device not found - console-client not running in Kubernetes/Ubuntu 20 pod

    fuse device not found - console-client not running in Kubernetes/Ubuntu 20 pod

    I cannot get the console-client running in a Kubernetes pod, Ubuntu 20.04 image. Getting the console-client compiled also needs some tweaking, see below, so any experience could help here.

    My goal is a stand-alone Kubernetes container that logs in to pCloud, backups / mirrors data to local storage, and quits/"dies".

    Issues I found (and will propably open as separate topics):

    pCloud Login Error: The console-client works with US, not EU accounts, only.

    • potential Solution (not tested): https://github.com/pcloudcom/console-client/issues/130
    • URL of the API endpoint needs to be changed to EU endpoint, then re-make
    • I run my tests with an US account for the time being

    Error: pcloudcc reports: lsb_release: not found

    • Solution: https://stackoverflow.com/questions/58395566/lsb-release-command-not-found-in-latest-ubuntu-docker-container
    • apt-get update && apt-get install -y lsb-release && apt-get clean all

    Error: pcloudcc reports: fusermount: fuse device not found, try 'modprobe fuse' first

    • potential Solution: apt install -y linux-generic at least gets modprobe fuse running in bash.
    • Although the attached behaviour of the CLI does NOT change and pcloudcc does not succeed:
    pcloudcc -u '[email protected]' -p -m '/data/pcloud'
    Please, enter password
    Down: Everything Downloaded| Up: Everything Uploaded, status is LOGIN_REQUIRED
    logging in
    Down: Everything Downloaded| Up: Everything Uploaded, status is CONNECTING
    fusermount: fuse device not found, try 'modprobe fuse' first
    Down: Everything Downloaded| Up: Everything Uploaded, status is SCANNING
    Down: Everything Downloaded| Up: Everything Uploaded, status is READY
    fusermount: fuse device not found, try 'modprobe fuse' first
    
    opened by realaxl 0
  • Mount option / chmod to remove access for other

    Mount option / chmod to remove access for other

    Hey,

    Thx for "reviewing" the project! The (old) client mount the pCloudDrive with read permissions for other. However, for security reasons, in some case I would prefer to either run chmod o-rwx or set a 0770 mask when mounting - or any other approach to reach the result that only user and group can access the files. Is there an option to do that which I am missing?

    opened by TiFaBl 0
Releases(v3.0.0-a2)
  • v3.0.0-a2(Aug 28, 2021)

    Removals

    • Removed psync_rendir macro.
    • Removed psync_file_rename function.
    • Removed requirements.txt file from the project. It was only needed to install conan at CI phase.
    • Drop Windows support. In fact, this project never built natively on Windows. All users could do is to build it using Cygwin or Msys. However, this project depends on some components (for ex. FUSE, POSIX threads and UNIX sockets) that either don't work under Windows, or have poor support, or require significant support costs. Given the fact that this project is intended for UNIX/Linux users, Windows support becomes an unaffordable luxury. Anyway, in the WSL/Docker era, things get a little easier, even for Windows users.
    • Removed no longer used PSYNC_THREAD macro in favor of __thread.
    • Removed no longer used PSYNC_DEFAULT_WINDOWS_DBNAME macro.
    • Removed no longer used PSYNC_DEFAULT_WINDOWS_DIR macro.
    • Removed no longer used psync_32to64 macro.
    • Removed no longer used psync_bool_to_zero macro.
    • Removed no longer used P_PRI_D64 macro.
    • Removed no longer used psync_stat_ctime macro.
    • Removed no longer used psync_inode_supported macro.
    • Removed no longer used psync_sock_err_t typedef.
    • Removed no longer used PSYNC_DIRECTORY_SEPARATOR macro.
    • Removed no longer used PSYNC_DIRECTORY_SEPARATORC macro.
    • Removed no longer used P_SEEK_CUR macro.
    • Removed no longer used P_SEEK_END macro.

    Features

    • Added -dumpversion program option alias for --dumpversion.
    • Amended tests.
    • Provided launchd integration for macOS.
    • Provided support to build project under arm64/aarch64 architectures.

    Bugfix

    • #87: Define _FILE_OFFSET_BITS to 64 on arm64 architectures. For more info about this macro refer to https://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html.

    Changes

    • Renamed overlay_callback pointer to function to poverlay_callback.
    • Renamed overlay_message_t overlay data type to poverlay_message_t.
    • Restructured the layout of CLI application.
    • Bumped minimal C++ language version from C++11 to C++14.
    • psync_check_result() now is macro, not function.
    • Created a dedicated namespace for compat functions. Now they will all be in pcloudcc/compat/*.h
      • pcloudcc/compat/string.h: Some extra string manipulation functions not present in all standard C runtimes.
      • pcloudcc/compat/compiler.h: Compilers compatibility constants
    Source code(tar.gz)
    Source code(zip)
  • v3.0.0-a1(Jul 25, 2021)

    Removals

    • Code cleanup. Removed not used, old and duplicate stuff to avoid confusion.
    • Removed hardcoded Mbed TLS library.
    • Removed hardcoded SQLite3 library.
    • Removed useless logs. Were removed macro from the PRINT_RETURN family.
    • The original version of client, when some errors occurred with the database, sent debug information to the pCloud's servers. This debug information included psync library version, file name, line number, function name, and the error message itself. This project isn't maintained by the pCloud's employees, so this functionality has been removed.
    • Removed finalize command from commands mode as it was almost useless and errors prone. For example, we were forced to hard terminate the program, w/o response on socket request and this has always been regarded as a communication error. To stop already running daemon just stop it in the same way as you started it - using standard system tools.
    • Removed never used and no longer required PSYNC_CRYPTO_*_NOT_SUPPORTED defines.

    Features

    • Build project using single CMake command only.
    • Introduced the CI process through GitHub Actions.
    • Provided systemd integration on Linux platforms.
    • Install project dependencies using Conan.
    • Provided ability to use custom installation path using CMAKE_INSTALL_PREFIX.
    • Provide ability to enable maintainer logs using log.c library.
    • Added possibility to use EU region servers.
    • Provided ability to generate the API documentation.
    • Provided a brand-new libpsync API to get and set device information used during the pCloud API calls.
    • Reworked commands mode to provide better user experience.
    • Added -V, --version program options to display program version information.
    • Added --dumpversion program option to print the version of the client and don't do anything else.
    • Added --vernum program option to print the version of the client as integer and quit.

    Bugfix

    • Fixed typos and misspellings in the documentation.
    • Fixed redefinition of some macro.
    • Added return result to functions where it was skipped by mistake.
    • Fixed incorrect function signatures detected by the static analyzer.
    • Fixed device name by removing extra characters from output lsb_release on some systems. For example double quotes in "Gentoo Base System release 2.7"
    • Fixed reading response message while processing commands leading to a segfault.
    • The previous version of the client output the user's crypto password in cleartext to the standard output. This behavior has been changed.
    • Previously, when trying to start a crypto session with an incorrect password, the client reported success, although the crypto session didn't start. This has been fixed.
    • Previously, when trying to stop not started crypto session, client reported success. This has been fixed.

    Changes

    • Improved documentation.
    • CMake < 3.12 is no longer supported.
    • Reorganized project structure to follow modern C/C++ projects structure.
    • Instructed the compiler to use -std=gnu99 when this is needed.
    • Rename pcloudcc_lib static library to shared libpsync.
    • Bumped libpsync soversion from 1 to 2.
    • Bumped Mbed TLS from 1.3.10 to 2.25.0.
    • Bumped SQLite3 from 3.12.0 to 3.36.0.
    • Replaced deprecated readdir_r() function with readdir().
    • Replaced deprecated semaphores implementation on macOS with GCD semaphores.
    • Updated macOS versions list to identity caller on API calls.
    • Move Debian control files to the tools directory.
    • Reworked creation of overlay socket on Linux. Now the client will try to create a socket in XDG_RUNTIME_DIR or TMPDIR. The /tmp will be used if there are no such environment variables.
    • Provided ability to run tests (although there are still few of them, there is a technical possibility).
    • The default mount point on macOS where drive to be mounted is "pCloud Drive" now.
    • psync_check_result() now is function, not macro.
    • Reduce code duplication by merging poverlay-linux.c and poverlay-macos.c into poverlay-posix.c.
    • Moved PSYNC_CRYPTO_* defines from psynclib.h to pcloudcrypto.h.
    • Replace boost::program_options by more lightweight and specialized library CLI11.
    • Renamed --commands_only CLI option to --commands-only.
    • Renamed message overlay data type to overlay_message_t.
    • Renamed get_answer_to_request() to psync_overlay_process_request().
    • Renamed psync_add_overlay_callback() to psync_overlay_add_callback().
    • Split poverlay.h into public (pcloudcc/psync/overlay.h) and private part.
    Source code(tar.gz)
    Source code(zip)
MinIO C++ Client SDK for Amazon S3 Compatible Cloud Storage

The MinIO C++ Client SDK provides simple APIs to access any Amazon S3 compatible object storage.

Multi-Cloud Object Storage 20 Jun 17, 2022
Spacex Storage is an offchain storage work inspector of Mannheim Network running inside TEE enclave.

Spacex Storage Spacex Storage is an offchain storage work inspector of Mannheim Network running inside TEE enclave. Contribution Thank you for conside

Mannheim Network 8 Mar 22, 2022
Cloud Native Data Plane (CNDP) is a collection of user space libraries to accelerate packet processing for cloud applications.

CNDP - Cloud Native Data Plane Overview Cloud Native Data Plane (CNDP) is a collection of userspace libraries for accelerating packet processing for c

Cloud Native Data Plane 19 Jun 28, 2022
Simple c++ library for work with console colors.

LCCS - Linux Console Control Sequences Simple c++ library for work with console colors. Example program color::SetColor(1,color::BLUE); cout << "ABOBA

Artem Vanty 1 Dec 23, 2021
A simple localization framework that can re-localize in one point-cloud map.

Livox-Localization This repository implements a point-cloud map based localization framework. The odometry information is published with FAST-LIO. And

Siyuan Huang 71 Jun 20, 2022
Poseidon OS (POS) is a light-weight storage OS

Poseidon OS Poseidon OS (POS) is a light-weight storage OS that offers the best performance and valuable features over storage network. POS exploits t

null 45 Jun 23, 2022
XTAO Unified Distributed Storage

Anna - A branch project from CEPH Anna is a XTAO project branched from CEPH distributed storage. CEPH is a nice opensource project for unified distrib

XTAO Technolgy 3 Nov 12, 2021
An efficient, small mobile key-value storage framework developed by WeChat. Works on Android, iOS, macOS, Windows, and POSIX.

中文版本请参看这里 MMKV is an efficient, small, easy-to-use mobile key-value storage framework used in the WeChat application. It's currently available on Andr

Tencent 14.7k Jun 27, 2022
Modern transactional key-value/row storage library.

Sophia is advanced transactional MVCC key-value/row storage library. How does it differ from other storages? Sophia is RAM-Disk hybrid storage. It is

Dmitry Simonenko 1.8k Jun 25, 2022
The OpenEXR project provides the specification and reference implementation of the EXR file format, the professional-grade image storage format of the motion picture industry.

OpenEXR OpenEXR provides the specification and reference implementation of the EXR file format, the professional-grade image storage format of the mot

Academy Software Foundation 1.2k Jun 27, 2022
A demonstration PoC for CVE-2022-21877 (storage spaces controller memory leak)

POC CVE-2022-21877 This repository contains a POC for the CVE-2022-21877, found by Quang Linh, working at STAR Labs. This is an information leak found

null 4 Mar 8, 2022
PlotFS is a fuse filesystem for efficient storage of Chia plot files.

PlotFS PlotFS is a fuse filesystem for efficient storage of Chia plot files. PlotFS is not a traditional filesystem. It is mounted read only for farmi

Matthew Szatmary 44 Jun 20, 2022
C++ implementation for a binary data storage format.

bsmlib- A C++ library for loading and writing binary data to and from files. bsmlib provides functions for loading, modifying, and saving BSM (Binary

Colleen 3 May 23, 2022
un programma in console scritto in c++ che fa parodia a ordissimo OS // a program written in c++ that is a parody of ordissimo OS

un programma in console scritto in c++ che fa parodia a ordissimo OS // a program written in c++ that is a parody of ordissimo OS -what is this? -its

alex 5 Oct 31, 2021
the ares multi-system console emulation suite

ares ares is a multi-system emulator that began development on October 14th, 2004. It is a descendent of higan and bsnes, and focuses on accuracy and

higan 289 Jun 21, 2022
A console application using CPP that manages the guest details and check in and quarantine period of individual

A console application using CPP that manages the guest details and check in and quarantine period of individual(14 days). Efficient searching of guest, sorting and availability of room details can be found using the applications.

KAZI SAHARIAR RAHI 2 Nov 24, 2021
Play video by fonts in a console window by composing characters

FontVideo Play video by fonts in a console window by composing characters. Using FFmpeg API to decode the input file, then the video stream is rendere

0xaa55 8 Feb 23, 2022
Convenient, high-performance RGB color and position control for console output

Oof (omnipotent output friend) It's common for C++ programs to write output to the console. But consoles are far more capable than what they are usual

Sebastian Werhausen 739 Jun 21, 2022
the ares multi-system console emulation suite

ares is a multi-system emulator that began development on October 14th, 2004. It is a descendent of higan and bsnes, and focuses on accuracy and prese

ares 291 Jun 24, 2022