Core - System components and backend.

Related tags

Cryptography core
Overview

Core

System backend and start session and more.

Compile dependencies

sudo pacman -S extra-cmake-modules pkgconf qt5-base qt5-quickcontrols2 qt5-x11extras qt5-tools\
    kwindowsystem polkit polkit-qt5 xorg-server-devel xf86-input-libinput xf86-input-synaptics

For Ubuntu:

sudo apt install libpolkit-agent-1-dev libpolkit-qt5-1-dev libsm-dev libxtst-dev\
    libxcb-randr0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxcb-composite0-dev libxcb-damage0-dev libxcb-image0-dev libxcb-util0-dev libkf5idletime-dev

(Yes it's annoying that so many xcb's packages here is needed to install. Isn't there a way to install one package and these libxcbs all get ready?)

For Debian:

sudo apt install extra-cmake-modules pkg-config xserver-xorg-input-libinput-dev libx11-xcb-dev libxcb1-dev libxcb-randr0-dev\
    libxcb-keysyms1-dev libxcursor-dev libxcb-xfixes0-dev libxcb-damage0-dev libxcb-composite0-dev libxcb-shm0-dev libxcb-util-dev\
    libxcb-image0-dev libxcb-dpms0-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-ewmh-dev libxcb-glx0-dev libxcb-record0-dev xserver-xorg-dev\
    xserver-xorg-input-synaptics-dev libxtst-dev libsm-dev libpolkit-qt5-1-dev libpolkit-agent-1-dev libkf5windowsystem-dev libkf5globalaccel-dev\
    libkf5coreaddons-dev libkf5idletime-dev libqt5x11extras5-dev qtbase5-dev qtdeclarative5-dev qtquickcontrols2-5-dev qttools5-dev qttools5-dev-tools

Runtime

Build

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
make

Install

sudo make install

License

This project has been licensed by GPLv3.

Issues
  • can't use lock screen

    can't use lock screen

    I compiled cutefishos in ubuntu 21.10,everything is ok. but i can't lock screen. when I run command in shell, and click lock sceen, it's seems not work. this is logs:

    /usr/local/bin/cutefish-shutdown
    qt.gui.icc: fromIccProfile: failed minimal tag size sanity
    qt.gui.icc: fromIccProfile: failed minimal tag size sanity
    qt.gui.icc: fromIccProfile: failed minimal tag size sanity
    qt.qpa.xcb: QXcbConnection: XCB error: 5 (BadAtom), sequence: 458, resource id: 0, major code: 20 (GetProperty), minor code: 0
    
    opened by Tlntin 1
  • Allow user to specify custom prefix for resource files.

    Allow user to specify custom prefix for resource files.

    This PR is successor of #9, removes all hardcoded path in build system.

    There's still some hardcoded path in C++ source. IMO, there's better way to fix them, maybe add new function to search those resources(e.g. search environment variable first, then search FHS path, finally search builtin path)


    • CMakeLists.txt: include GNUInstallDirs.

    • cpufreq/CMakeLists.txt: Replace hardcoded path with ${CMAKE_INSTALL_XXXXX} variables.

    • session/CMakeLists.txt: Ditto.

    • shutdown-ui/CMakeLists.txt: Ditto.

    • setting-daemon/CMakeLists.txt: Ditto.

    • screen-brightness/CMakeLists.txt: Ditto.

    • polkit-agent/CMakeLists.txt: Ditto.

    • screen-brightness/org.cutefish.brightness.pkexec.policy:

    Rename to file with ".in" extension. Replace hardcoded path with @[email protected] variables.

    • cpufreq/org.cutefish.cpufreq.pkexec.policy: Ditto.
    opened by cireu 1
  • Discord Toast Notifications Don't Work

    Discord Toast Notifications Don't Work

    The pop up notifications for Discord aren't working, despite having DND turned off in the settings app, having notifications turned on within Discord, and not having Discord open on my phone.

    opened by jeong-jaegyu 0
  • In settings Ethernet and Screen Management do not work

    In settings Ethernet and Screen Management do not work

    OS: Arch Linux Cutefish: 0.8 Watch the video:

    https://user-images.githubusercontent.com/2231969/167111729-c375de07-1bdb-4c39-a560-d152e123c67f.mp4

    I tried both bare metal and VirtualBox with guest additions installed and not, result is the same for both cases. On bare metal also could not connect to Wireless network.

    opened by Real-Gecko 0
  • Having issues compiling libcutefish

    Having issues compiling libcutefish

    -- The C compiler identification is GNU 11.2.0
    -- The CXX compiler identification is GNU 11.2.0
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Check for working C compiler: /usr/bin/cc - skipped
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Check for working CXX compiler: /usr/bin/c++ - skipped
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- qml directory:/usr/lib/qt/qml
    -- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.0") 
    -- Checking for one of the modules 'libnm>=1.4.0'
    -- Checking for one of the modules 'gio-2.0'
    -- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
    -- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
    -- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
    -- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
    -- Performing Test COMPILER_HAS_DEPRECATED_ATTR
    -- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
    -- Found X11: /usr/include   
    -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
    -- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so - found
    -- Looking for gethostbyname
    -- Looking for gethostbyname - found
    -- Looking for connect
    -- Looking for connect - found
    -- Looking for remove
    -- Looking for remove - found
    -- Looking for shmat
    -- Looking for shmat - found
    -- Looking for IceConnectionNumber in ICE
    -- Looking for IceConnectionNumber in ICE - found
    -- Found Canberra: /usr/lib/libcanberra.so (found version "0.30") 
    -- Found CanberraPulse: /usr/lib/libcanberra-0.30/libcanberra-pulse.so  
    CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
      The package name passed to `find_package_handle_standard_args`                                                                                                                               
      (SoundThemeFreeDesktop) does not match the name of the calling package                                                                                                                       
      (SoundThemeFreedesktop).  This can lead to problems in calling code that                                                                                                                     
      expects `find_package` result variables (e.g., `_FOUND`) to follow a                                                                                                                         
      certain pattern.                                                                                                                                                                             
    Call Stack (most recent call first):                                                                                                                                                           
      cmake/FindSoundThemeFreedesktop.cmake:17 (find_package_handle_standard_args)                                                                                                                 
      audio/CMakeLists.txt:57 (find_package)                                                                                                                                                       
    This warning is for project developers.  Use -Wno-dev to suppress it.                                                                                                                          
                                                                                                                                                                                                   
    -- Found SoundThemeFreeDesktop: /usr/share/sounds/freedesktop/index.theme  
    -- Checking for module 'libpulse'
    --   Found libpulse, version 15.0
    -- Checking for module 'libpulse-mainloop-glib'
    --   Found libpulse-mainloop-glib, version 15.0
    -- Configuring done
    -- Generating done
    -- Build files have been written to: /home/matt/.cache/yay/libcutefish-git/src/libcutefish
    [65/104] Building CXX object screen/CMakeFiles/cutefishscreen_qmlplugins.dir/outputmodel.cpp.o
    FAILED: screen/CMakeFiles/cutefishscreen_qmlplugins.dir/outputmodel.cpp.o 
    /usr/bin/c++ -DKCOREADDONS_LIB -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QUICK_LIB -DQT_SENSORS_LIB -DQT_TESTCASE_BUILDDIR=\"/home/matt/.cache/yay/libcutefish-git/src/libcutefish\" -DQT_TESTLIB_LIB -Dcutefishscreen_qmlplugins_EXPORTS -I/home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen -I/home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/cutefishscreen_qmlplugins_autogen/include -isystem /usr/include/qt -isystem /usr/include/qt/QtCore -isystem /usr/lib/qt/mkspecs/linux-g++ -isystem /usr/include/qt/QtQuick -isystem /usr/include/qt/QtQmlModels -isystem /usr/include/qt/QtQml -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtDBus -isystem /usr/include/qt/QtSensors -isystem /usr/include/qt/QtTest -isystem /usr/include/KF5/KScreen -isystem /usr/include/KF5/KIOCore -isystem /usr/include/KF5/KIO -isystem /usr/include/KF5 -isystem /usr/include/KF5/KCoreAddons -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/KConfig -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/qt/QtConcurrent -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -fPIC -fPIC -std=gnu++14 -MD -MT screen/CMakeFiles/cutefishscreen_qmlplugins.dir/outputmodel.cpp.o -MF screen/CMakeFiles/cutefishscreen_qmlplugins.dir/outputmodel.cpp.o.d -o screen/CMakeFiles/cutefishscreen_qmlplugins.dir/outputmodel.cpp.o -c /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/outputmodel.cpp
    /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/outputmodel.cpp: In member function ‘bool OutputModel::setReplicationSourceIndex(int, int)’:
    /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/outputmodel.cpp:606:21: error: ‘class KScreen::Output’ has no member named ‘setLogicalSize’
      606 |         output.ptr->setLogicalSize(QSizeF());
          |                     ^~~~~~~~~~~~~~
    /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/outputmodel.cpp:617:21: error: ‘class KScreen::Output’ has no member named ‘setLogicalSize’
      617 |         output.ptr->setLogicalSize(source->logicalSize());
          |                     ^~~~~~~~~~~~~~
    /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/outputmodel.cpp:617:44: error: ‘class KScreen::Output’ has no member named ‘logicalSize’
      617 |         output.ptr->setLogicalSize(source->logicalSize());
          |                                            ^~~~~~~~~~~
    [69/104] Building CXX object screen/CMakeFiles/cutefishscreen_qmlplugins.dir/screen.cpp.o
    /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/screen.cpp: In constructor ‘Screen::Screen(QObject*)’:
    /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/screen.cpp:12:33: warning: ‘int qmlRegisterType() [with T = OutputModel]’ is deprecated: Use qmlRegisterAnonymousType instead [-Wdeprecated-declarations]
       12 |     qmlRegisterType<OutputModel>();
          |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
    In file included from /usr/include/qt/QtQml/qqmlengine.h:47,
                     from /usr/include/qt/QtQml/QQmlEngine:1,
                     from /home/matt/.cache/yay/libcutefish-git/src/libcutefish/screen/screen.cpp:7:
    /usr/include/qt/QtQml/qqml.h:183:74: note: declared here
      183 | QT_DEPRECATED_VERSION_X_5_14("Use qmlRegisterAnonymousType instead") int qmlRegisterType()
          |                                                                          ^~~~~~~~~~~~~~~
    [82/104] Building CXX object audio/CMakeFiles/cutefishaudio_qmlplugins.dir/context.cpp.o
    ninja: build stopped: subcommand failed.
    ==> ERROR: A failure occurred in build().
        Aborting...
     -> error making: libcutefish-git
    
    opened by RyzenDew 0
Owner
CutefishOS
The goal is to create a better experience Linux desktop OS.
CutefishOS
Bitcoin Core integration/staging tree

Bitcoin is an experimental digital currency that enables instant payments to anyone, anywhere in the world. Bitcoin uses peer-to-peer technology to operate with no central authority: managing transactions and issuing money are carried out collectively by the network. Bitcoin Core is the name of open source software which enables the use of this currency.

Bitcoin 65.6k Aug 9, 2022
Bitcoin Core integration/staging tree

Bitcoin Core integration/staging tree https://bitcoincore.org For an immediately usable, binary version of the Bitcoin Core software, see https://bitc

Bitcoin Core 36 Jul 6, 2022
Elecrypt core protocol details

This codes are compatible with esp8266 nodemcu 1.0 on Arduino board.media/esp8266nodemcu.png

null 6 Oct 17, 2021
Distributed, Encrypted, Fractured File System - A custom distributed file system written in C with FUSE

A custom FUSE-based filesystem that distributes encrypted shards of data across machines on a local network, allowing those files to be accessible from any machine.

Charles Averill 14 May 18, 2022
A useful tool for identifying the architecture, platform type, compiler, and operating system specifications by preprocessor feature support.

Platform-Detector Cross-Platform Information Detector It is a useful tool for identifying the architecture, platform type, compiler, and operating sys

Kambiz Asadzadeh 10 Jul 27, 2022
A basic C++ cryptocurrency/block-chain. Includes a basic wallet system. See README.md for all the inclusions and future additions.

Cryptocurrency Project C++ cryptocurrency/block-chain. Mostly basic blockchain for now. New Additions are in the works(see below). This file details w

null 2 Dec 23, 2021
Internet Identity, a blockchain authentication system for the Internet Computer

Internet Identity Service See ./docs/internet-identity-spec.adoc for a details specification and technical documentation.

DFINITY 217 Jul 13, 2022
HIBA is a system built on top of regular OpenSSH certificate-based authentication that allows to manage flexible authorization of principals on pools of target hosts without the need to push customized authorized_users files periodically.

HIBA is a system built on top of regular OpenSSH certificate-based authentication that allows to manage flexible authorization of principals on pools of target hosts without the need to push customized authorized_users files periodically.

Google 322 Jul 30, 2022
High-level build system for distributed, multi-platform C/C++ projects.

fips fips is a highlevel build system wrapper written in Python for C/C++ projects. (this project has nothing to do with the Federal Information Proce

Andre Weissflog 416 Jul 30, 2022
x509cert is a tool and library for generating X.509 certificates and certificate requests.

x509cert is a tool and library for generating X.509 certificates and certificate requests. It is written in C99 and uses BearSSL to decode keys and compute signatures.

Michael Forney 9 Nov 25, 2021
HashLibPlus is a recommended C++11 hashing library that provides a fluent interface for computing hashes and checksums of strings, files, streams, bytearrays and untyped data to mention but a few.

HashLibPlus HashLibPlus is a recommended C++11 hashing library that provides a fluent interface for computing hashes and checksums of strings, files,

Telepati 7 Apr 11, 2022
Text-Crypt is a tool which encrypts and decrypts texts using a specific and certain key.

Text-Crypt is a tool which encrypts and decrypts texts using a specific and certain key. This tool uses Caesar Cypher Algorithm to encrypt and decrypt a given text.

AnonabdulJ 4 Dec 24, 2021
An open source, portable, easy to use, readable and flexible SSL library

README for Mbed TLS Mbed TLS is a C library that implements cryptographic primitives, X.509 certificate manipulation and the SSL/TLS and DTLS protocol

Arm Mbed 3.7k Jul 30, 2022
TLS/SSL and crypto library

Welcome to the OpenSSL Project OpenSSL is a robust, commercial-grade, full-featured Open Source Toolkit for the Transport Layer Security (TLS) protoco

OpenSSL 19k Jul 29, 2022
Library and command line tool to detect SHA-1 collision in a file

sha1collisiondetection Library and command line tool to detect SHA-1 collisions in files Copyright 2017 Marc Stevens [email protected] Distributed

Marc Stevens 1.2k Jul 25, 2022
Tink is a multi-language, cross-platform, open source library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse.

Tink A multi-language, cross-platform library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse. Ubuntu

Google 12.5k Aug 5, 2022
Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.

Themis provides strong, usable cryptography for busy people General purpose cryptographic library for storage and messaging for iOS (Swift, Obj-C), An

Cossack Labs 1.6k Aug 5, 2022