diff --git a/README.md b/README.md index 2923697..8f08c09 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # libaura -A cross-platform base for native Nickvision applications. +Logo + +**A cross-platform base for native Nickvision applications.** libaura provides Nickvision apps with a common set of cross-platform (Windows and Linux) APIs for managing system and desktop app functionality such as network management, taskbar icons, translations, app updates, and more. @@ -8,18 +10,39 @@ libaura provides Nickvision apps with a common set of cross-platform (Windows an Documentation for this library and its modules can be found [here](/docs). -## Installation with Conan +## Dependencies + +The following are a list of dependencies and their versions used by libaura. + +These dependencies should also be installed on your system and linked to your project when using libaura as well, since some libaura headers reference these dependencies. + +Following the [build instructions](#building-and-installation) below using conan, will ensure these dependencies and their proper versions are installed for your platform. + +**However, note, as stated above, when linking to libaura in your project, you MUST also link to these dependencies to ensure proper linkage to libaura.** + +### All Platforms +- boost/1.83.0 +- gtest/1.14.0 (**Only if building test suite**) +- jsoncpp/1.9.5 +- libcurl/8.4.0 +- libgettext/0.22 +- maddy/1.3.0 +- sqlcipher/4.5.1 -TODO +### Linux Only +The above dependencies must be installed, plus the following for linux systems: +- glib/2.78.1 +- libsecret/0.20.5 +- libuuid/1.0.3 -## Manual Building and Installation -libaura uses Conan package manager for resolving dependencies and CMake as it's build system. +## Building and Installation +libaura uses Conan package manager for resolving dependencies and CMake as its build system. -Ensure both `conan` and `cmake` are installed on your system before building libaura. +Ensure both `conan` and `cmake` are installed on your system before building and installing libaura. A C++20 compiler is also required to build libaura. -### Windows +### Windows 10/11 Visual Studio 2022 with C++ Desktop workload is required to be installed. 1. First, clone/download the repo. @@ -30,10 +53,11 @@ Visual Studio 2022 with C++ Desktop workload is required to be installed. 1. From the `build` folder, run `cmake .. -G "Visual Studio 17 2022" -DCMAKE_TOOLCHAIN_FILE="generators/conan_toolchain.cmake"`. - To skip building libaura's test suite, add `-DBUILD_TESTING="Off"` to the end of the command. 1. From the `build` folder, run ``cmake --build . --config Release`. -1. After these commands, libaura will be successfully built and its binaries can be found in the `Release` folder of the `build` folder. +1. After these commands complete, libaura will be successfully built and its binaries can be found in the `Release` folder of the `build` folder. 1. To install libaura to the system, from the `build` folder, run `cmake --install . --prefix "PATH_TO_INSTALL_DIR"`. - - Replace `PATH_TO_INSTALL_DIR` with the path to a folder to install libaura to. This is usually a dependencies folder set up by the programmer, added to the PATH variable, to allow linking to said dependencies. -1. If contributing to upstream, remove `conanfile-windows.txt` and `conanprofile-windows.txt` from the repo's root directory as to not accidentally add and commit them. + - Replace `PATH_TO_INSTALL_DIR` with the path to a folder to install libaura to. + - This is usually a dependencies folder set up by the programmer, added to the PATH variable, to allow linking to said dependencies. +1. If contributing to upstream, remove `conanfile.py` and `conanprofile-windows.txt` from the repo's root directory as to not accidentally add and commit them. ### Linux 1. First, clone/download the repo. @@ -46,8 +70,9 @@ Visual Studio 2022 with C++ Desktop workload is required to be installed. 1. From the `build` folder, run `cmake .. -DCMAKE_TOOLCHAIN_FILE="Release/generators/conan_toolchain.cmake" -DCMAKE_BUILD_TYPE=Release`. - To skip building libaura's test suite, add `-DBUILD_TESTING="Off"` to the end of the command. 1. From the `build` folder, run `cmake --build`. -1. After these commands, libaura will be successfully built and its binaries can be found in the `Release` folder of the `build` folder. +1. After these commands complete, libaura will be successfully built and its binaries can be found in the `Release` folder of the `build` folder. 1. To install libaura to the system, from the `build` folder, run `cmake --install . --prefix "PATH_TO_INSTALL_DIR"`. - - Replace `PATH_TO_INSTALL_DIR` with the path to a folder to install libaura to. This is usually a dependencies folder set up by the programmer, added to the PATH variable, to allow linking to said dependencies. + - Replace `PATH_TO_INSTALL_DIR` with the path to a folder to install libaura to. + - This is usually a dependencies folder set up by the programmer, added to the PATH variable, to allow linking to said dependencies. - On linux, `PATH_TO_INSTALL_DIR` would usually be `/usr`. -1. If contributing to upstream, remove `conanfile-windows.txt` and `conanprofile-windows.txt` from the repo's root directory as to not accidentally add and commit them. \ No newline at end of file +1. If contributing to upstream, remove `conanfile.py` and `conanprofile-windows.txt` from the repo's root directory as to not accidentally add and commit them. \ No newline at end of file diff --git a/resources/aura-symbolic.svg b/resources/aura-symbolic.svg new file mode 100644 index 0000000..6daae71 --- /dev/null +++ b/resources/aura-symbolic.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/logo-r.png b/resources/logo-r.png new file mode 100644 index 0000000..3336ec0 Binary files /dev/null and b/resources/logo-r.png differ diff --git a/resources/logo-r.svg b/resources/logo-r.svg new file mode 100644 index 0000000..6693c3c --- /dev/null +++ b/resources/logo-r.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + diff --git a/resources/logo.png b/resources/logo.png new file mode 100644 index 0000000..462c931 Binary files /dev/null and b/resources/logo.png differ diff --git a/resources/logo.svg b/resources/logo.svg new file mode 100644 index 0000000..fd1afee --- /dev/null +++ b/resources/logo.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + +