Skip to content
This repository has been archived by the owner on Oct 25, 2019. It is now read-only.
/ conan_inquiry Public archive

Website for searching for conan packages across many repositories

License

Notifications You must be signed in to change notification settings

Croydon/conan_inquiry

Repository files navigation

A way to search for Conan packages across the web, and view additional information about them. You can find it here.

Features

  • Search results updated-as-you-type
  • Packages from repositories outside conan-center
  • Quick information about what is packaged (description, licenses, authors, links, code example, etc.)
  • View README, the conanfile.py and more
  • See packages wishes rankes by their popularity

Getting started

If you just want to report an error in an existing package or notify us about a missing package you can skip the steps below and head straight to reporting an issues.

This repository consist of three things:

Workflow

When updating the list of packages the usual workflow is as follows:

  1. Add at least one package for each fully new repository
  2. Run mkdir build && cd build
  3. Run python -m conan_inquiry find to find new packages
  4. Run python -m conan_inquiry generate (see below for more information) to gather additional data and generate an aggregated package file
  5. Run python -m conan_inquiry validate to find any missing fields (start from the top of the output)
    1. Fix all (otherwise you'll waste ratelimit resource) severe issues it reports
    2. Repeat (generate -> validate -> fix) until there are no more issues
  6. Run python -m conan_inquiry wishlist to renew to wishlist data
  7. Run python -m conan_inquiry server and open localhost:8000 in a browser
  8. Run python -m conan_inquiry deploy to upload everything to a gh-pages branch

Prerequisites

You need to have Git and Python 3 installed. Then clone the project using git and install the dependencies using pip:

git clone https://github.com/Croydon/conan_inquiry
cd conan_inquiry
virtualenv -p /usr/bin/python3 ve
source ve/bin/activate
pip install -r requirements.txt

Note: It is highly recommended that you use a virtualenv.

Using the generator

In order to be able to test/use the web interface you need to run the generator.

Getting your access tokens

In order to be able to run the generator you need a couple of access tokens to different sites.

  • Github client ID and secret from here
  • Github token from here
  • Bintray API key from here -> API Key
  • Kitware GitLab token from here

Note: You currently need ALL of these in order to run the generator

Then put them in environment variables before running the generator:

  • GITHUB_CLIENT_ID
  • GITHUB_CLIENT_SECRET
  • GITHUB_TOKEN
  • BINTRAY_API_KEY
  • BINTRAY_USERNAME
  • GITLAB_GITLAB_KITWARE_COM_TOKEN

Running the generator

mkdir build && cd build
python python -m conan_inquiry generate

Developing the web interface

Copy a generated packages.js to conan_inquiry/data/web and open index.html in your browser of choice.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.

Authors

See also the list of contributors for everyone who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Everyone who has contributed to the Conan project
  • Bincrafters, who have created many of the package recipes
  • @PurpleBooth for the README template

About

Website for searching for conan packages across many repositories

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published