(define-module (sherlock) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages compression) #:use-module (guix build-system python) #:use-module (guix build-system pyproject) #:use-module (guix build utils) #:use-module (guix git-download) #:use-module (guix packages) #:use-module (guix gexp) #:use-module (gnu packages) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-science) #:use-module (gnu packages python-web) #:use-module (gnu packages check) #:use-module (gnu packages certs) #:use-module (guix download) #:use-module (guix licenses) ) (define-public python-requests-futures (package (name "python-requests-futures") (version "1.0.1") (source (origin (method url-fetch) (uri (pypi-uri "requests-futures" version)) (sha256 (base32 "0wv3cwmqw56zim6khd7xjddz5sps5cyi4wqygn78bqkh03w4wnpm")))) (build-system pyproject-build-system) (arguments (list #:phases #~(modify-phases %standard-phases (delete 'check)))) (propagated-inputs (list python-requests)) (native-inputs (list python-black python-isort python-pyflakes python-pytest python-pytest-cov ;python-pytest-network python-readme-renderer python-twine)) (home-page "https://github.com/ross/requests-futures") (synopsis "Asynchronous Python HTTP for Humans.") (description "Asynchronous Python HTTP for Humans.") (license asl2.0))) (define-public python-exrex (package (name "python-exrex") (version "0.11.0") (source (origin (method url-fetch) (uri (pypi-uri "exrex" version)) (sha256 (base32 "1284g3p3lz6wq1vqw5gx80b7zq4zr8vkr5hdn5k5jyjn6h12z4ar")))) (build-system pyproject-build-system) (home-page "https://github.com/asciimoo/exrex") (synopsis "Irregular methods for regular expressions") (description "Irregular methods for regular expressions") (license agpl3))) (define-public python-torrequest (package (name "python-torrequest") (version "0.1.0") (source (origin (method url-fetch) (uri (pypi-uri "torrequest" version)) (sha256 (base32 "10mf9p6r4wwk9m50jh5bpmvsnymkmn3wfqs30dx8vagx7zmd8i9p")))) (build-system pyproject-build-system) (propagated-inputs (list python-pysocks python-requests python-stem)) (home-page "http://github.com/erdiaker/torrequest") (synopsis "A simple interface for HTTP(s) requests over Tor") (description "This package provides a simple interface for HTTP(s) requests over Tor") (license expat))) (define-public python-sherlock (package (name "sherlock") (version "31ab96675caae23c18f80dc724f2db4fbe9b78f3") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/sherlock-project/sherlock.git") (commit version) )) (sha256 (base32 "0qv3ngyqj8bbbvk4fdf7n9948fz97vic5hbypmvzq1s4spdjksch")) (modules '((guix build utils))) (patches (search-patches "aux-files/sherlock/setuppy-support.patch")) (snippet '(begin (delete-file-recursively "images") #t)) )) (build-system pyproject-build-system) (arguments (list #:tests? #f #:phases #~(modify-phases %standard-phases (delete 'sanity-check) ;we're going crazy, since sanity crashes. ))) (native-inputs (list poetry )) (propagated-inputs (list python-certifi python-pandas python-colorama python-pysocks python-requests python-exrex python-torrequest python-requests python-requests-futures python-stem)) (home-page "https://sherlock-project.github.io/") (synopsis "Hunt down social media accounts by username across social networks.") (description "Hunt down social media accounts by username across social networks.") (license expat)))