manjaro / mdd

Manjaro Data Donor - WIP
MIT License
11 stars 3 forks source link

Manjaro Data Donor

MDD provides us with a secure way to receive anonymized data about the usage of Manjaro. This way we can learn how Manjaro is used by our users and we can focus our efforts on what matters most in order to improve the user experience.

The data is anonym in two ways:

The data is being stored in a database on one of our Hetzner servers. Visualizations of the data are made available via Grafana here. We plan on adding more charts for interesting data later on.

Setup Instructions

  1. Install package dependencies:
    sudo pacman -S git python-pip inxi
  2. Clone this repo to your computer and navigate to the project directory:
    git clone https://github.com/manjaro/mdd
    cd mdd
  3. Create a virtual environment (recommended) to manage dependencies:
    python -m venv venv
    source venv/bin/activate
  4. Install the dependencies listed in requirements.txt:
    pip install -r requirements.txt
  5. Run the script:
    python mdd.py
  6. Deactivate the virtual environment when done:
    deactivate

Usage

Dry Run

Run the script without any arguments to send data directly. The submitted data will be displayed on the terminal. Additionally you can first run

python mdd.py --dry-run

in order to only display the data that would be sent without actually doing so.

Telemetry

If you only want to count the device but not provide any data about your system, then run:

python mdd.py --disable-telemetry

If possible please provide all information though. It helps us with learning about what our users need. And the graphs look cool!

Debugging

The log level can be increased from WARNING to INFO/DEBUG with:

python mdd.py --log INFO

By default MDD tries to use inxi for gathering information about the system. For debugging this can be deactivated:

MDD_DISABLE_INXI=1 python mdd.py