Sancus: Overview
NOTE: Sancus currently expects deep integration with the build system, and is difficult to deploy to environments dissimilar to the X-Software environment. We do not have our tooling set up to accept external contributions at this time.
Sancus is an open-source tool that extracts third-party license information from a deployment-ready application.
Currently, Sancus solely operates on AppDir packages consisting of VCPKG libraries and operating system libraries. It collects information from both sources to extract licenses of all shared libraries that an application uses directly or indirectly within the AppDir. The result is a JSON file containing all license types and the texts.
The obtained third-party license information can be exported to directory structure in the AppDir or the
If you've never used Sancus before, or if you're trying to figure out how to use it, check out our Getting Started section.
Table of Contents
Getting Started
Quick Start
Integration into a rust project
Prerequisites:
Add the following line to your Cargo.toml.
sancus = { git = "https://github.com/x-software-com/sancus" }
Development: Linux
Prerequisites:
First, download and setup the repository.
To build the Sancus execute:
Installing Linux Developer Tools
Across the different distributions of Linux, there are different packages you'll need to install:
- AlmaLinux, Rocky Linux, CentOS and other RedHat-based distributions:
- Debian, Ubuntu, popOS, and other Debian-based distributions:
- ArchLinux, Manjaro Linux, EndeavourOS, and other ArchLinux-based distributions:
For any other distributions, make sure you're installing at least gcc and g++. If you want to add instructions for your specific distribution, [please open a PR][contributing:submit-pr]!
Privacy
We believe that privacy is a human right, period.
Sancus does respect your privacy, we collect no data and do not send any telemetry or usage data.
License
The code in this repository is licensed under either of APACHE-2.0 License or MIT License at your option.