Loading pkgs/tools/security/sherlock/default.nix +41 −29 Original line number Diff line number Diff line { stdenv, lib, fetchFromGitHub, python3, makeWrapper }: let pyenv = python3.withPackages (pp: with pp; [ beautifulsoup4 certifi colorama lxml pandas pysocks requests requests-futures soupsieve stem torrequest ]); in stdenv.mkDerivation rec { { lib , fetchFromGitHub , makeWrapper , python3 }: python3.pkgs.buildPythonApplication rec { pname = "sherlock"; version = "0.14.3"; version = "unstable-2023-10-06"; format = "other"; src = fetchFromGitHub { owner = "sherlock-project"; repo = pname; rev = "ab2f6788340903df797d8c336a97fa6e742daf77"; hash = "sha256-AbWZa33DNrDM0FdjoFSVMnz4Ph7mUiUe/erhI3w7GQQ"; rev = "7ec56895a37ada47edd6573249c553379254d14a"; hash = "sha256-bK5yEdh830vgKcsU3gLH7TybLncnX6eRIiYPUiVWM74="; }; nativeBuildInputs = [ makeWrapper ]; postPatch = '' substituteInPlace sherlock/sherlock.py \ --replace "os.path.dirname(__file__)" "\"$out/share\"" ''; propagatedBuildInputs = with python3.pkgs; [ certifi colorama pandas pysocks requests requests-futures stem torrequest ]; installPhase = '' runHook preInstall mkdir -p $out/bin $out/share cp ./sherlock/*.py $out/bin/ cp --recursive ./sherlock/resources/ $out/share makeWrapper ${pyenv.interpreter} $out/bin/sherlock --add-flags "$out/bin/sherlock.py" cp -R ./sherlock $out/share runHook postInstall ''; postFixup = '' makeWrapper ${python3.interpreter} $out/bin/sherlock \ --add-flags $out/share/sherlock/sherlock.py \ --prefix PYTHONPATH : "$PYTHONPATH" ''; checkInputs = with python3.pkgs; [ exrex ]; checkPhase = '' runHook preCheck cd $srcRoot/sherlock ${pyenv.interpreter} -m unittest tests.all.SherlockSiteCoverageTests --verbose cd $out/share/sherlock for tests in all test_multiple_usernames; do ${python3.interpreter} -m unittest tests.$tests --verbose done runHook postCheck ''; Loading @@ -52,6 +63,7 @@ stdenv.mkDerivation rec { homepage = "https://sherlock-project.github.io/"; description = "Hunt down social media accounts by username across social networks"; license = licenses.mit; mainProgram = "sherlock"; maintainers = with maintainers; [ applePrincess ]; }; } Loading
pkgs/tools/security/sherlock/default.nix +41 −29 Original line number Diff line number Diff line { stdenv, lib, fetchFromGitHub, python3, makeWrapper }: let pyenv = python3.withPackages (pp: with pp; [ beautifulsoup4 certifi colorama lxml pandas pysocks requests requests-futures soupsieve stem torrequest ]); in stdenv.mkDerivation rec { { lib , fetchFromGitHub , makeWrapper , python3 }: python3.pkgs.buildPythonApplication rec { pname = "sherlock"; version = "0.14.3"; version = "unstable-2023-10-06"; format = "other"; src = fetchFromGitHub { owner = "sherlock-project"; repo = pname; rev = "ab2f6788340903df797d8c336a97fa6e742daf77"; hash = "sha256-AbWZa33DNrDM0FdjoFSVMnz4Ph7mUiUe/erhI3w7GQQ"; rev = "7ec56895a37ada47edd6573249c553379254d14a"; hash = "sha256-bK5yEdh830vgKcsU3gLH7TybLncnX6eRIiYPUiVWM74="; }; nativeBuildInputs = [ makeWrapper ]; postPatch = '' substituteInPlace sherlock/sherlock.py \ --replace "os.path.dirname(__file__)" "\"$out/share\"" ''; propagatedBuildInputs = with python3.pkgs; [ certifi colorama pandas pysocks requests requests-futures stem torrequest ]; installPhase = '' runHook preInstall mkdir -p $out/bin $out/share cp ./sherlock/*.py $out/bin/ cp --recursive ./sherlock/resources/ $out/share makeWrapper ${pyenv.interpreter} $out/bin/sherlock --add-flags "$out/bin/sherlock.py" cp -R ./sherlock $out/share runHook postInstall ''; postFixup = '' makeWrapper ${python3.interpreter} $out/bin/sherlock \ --add-flags $out/share/sherlock/sherlock.py \ --prefix PYTHONPATH : "$PYTHONPATH" ''; checkInputs = with python3.pkgs; [ exrex ]; checkPhase = '' runHook preCheck cd $srcRoot/sherlock ${pyenv.interpreter} -m unittest tests.all.SherlockSiteCoverageTests --verbose cd $out/share/sherlock for tests in all test_multiple_usernames; do ${python3.interpreter} -m unittest tests.$tests --verbose done runHook postCheck ''; Loading @@ -52,6 +63,7 @@ stdenv.mkDerivation rec { homepage = "https://sherlock-project.github.io/"; description = "Hunt down social media accounts by username across social networks"; license = licenses.mit; mainProgram = "sherlock"; maintainers = with maintainers; [ applePrincess ]; }; }