rednaga / APKiD

Android Application Identifier for Packers, Protectors, Obfuscators and Oddities - PEiD for Android
Other
2.05k stars 296 forks source link

[Installation Problem] FileNotFoundError: [Errno 2] No such file or directory: 'yara-python/README.rst' #377

Open juanur opened 11 months ago

juanur commented 11 months ago

Hi, I was trying to install APKID from kali linux and I received the following error:

  1. Trying via pip.
  2. Via docker.

1. Via pip:

pip install apkid                                                          
Collecting apkid                                                                                                                              
  Obtaining dependency information for apkid from https://files.pythonhosted.org/packages/50/61/cd3ec3aded6034df0e306cfebee9070d4197a0f40108f93094aa64a01de4/apkid-2.1.5-py2.py3-none-any.whl.metadata
  Using cached apkid-2.1.5-py2.py3-none-any.whl.metadata (7.4 kB)
Collecting yara-python-dex>=1.0.1 (from apkid)
  Using cached yara-python-dex-1.0.5.tar.gz (259 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-64hl_ca2/yara-python-dex_1ac32c3b68284cc8b29b9ce7e613f846/setup.py", line 310, in <module>
          with open('yara-python/README.rst', 'r', 'utf-8') as f:
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "<frozen codecs>", line 906, in open
      FileNotFoundError: [Errno 2] No such file or directory: 'yara-python/README.rst'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

2. Using Docker:

┌──(kali㉿kali)-[~/APKiD]
└─$ docker build . -t rednaga:apkid
Sending build context to Docker daemon  10.97MB
Step 1/11 : FROM python:3.9-slim
 ---> aea69c146f63
Step 2/11 : LABEL maintainer="RedNaga <rednaga@protonmail.com>"
 ---> Using cache
 ---> ce38ff67f7d2
Step 3/11 : RUN groupadd -g 999 appuser &&     useradd -r -u 999 -g appuser appuser
 ---> Using cache
 ---> eb8cd4fc165f
Step 4/11 : WORKDIR /apkid
 ---> Using cache
 ---> d6deda5f137c
Step 5/11 : COPY . .
 ---> Using cache
 ---> dc84aaf69c4e
Step 6/11 : RUN python -m pip install --no-cache-dir --upgrade pip setuptools wheel     && python setup.py install     && python prep-release.py     && pip install -e .
 ---> Running in c9a1c89382c1
Requirement already satisfied: pip in /usr/local/lib/python3.9/site-packages (23.0.1)
Collecting pip
  Downloading pip-23.3.1-py3-none-any.whl (2.1 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.1/2.1 MB 119.0 kB/s eta 0:00:00
Requirement already satisfied: setuptools in /usr/local/lib/python3.9/site-packages (58.1.0)
Collecting setuptools
  Downloading setuptools-69.0.2-py3-none-any.whl (819 kB)                                                                 
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 819.5/819.5 kB 154.0 kB/s eta 0:00:00                                          
Requirement already satisfied: wheel in /usr/local/lib/python3.9/site-packages (0.41.3)                                   
Collecting wheel                                                                                                                              
  Downloading wheel-0.42.0-py3-none-any.whl (65 kB)                                                                                           
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.4/65.4 kB 127.8 kB/s eta 0:00:00                                                              
Installing collected packages: wheel, setuptools, pip                                                                                         
  Attempting uninstall: wheel                                                                                                                 
    Found existing installation: wheel 0.41.3                                                                                                 
    Uninstalling wheel-0.41.3:                                                                                                                
      Successfully uninstalled wheel-0.41.3                                                                                                   
  Attempting uninstall: setuptools                                                                                                            
    Found existing installation: setuptools 58.1.0                                                                                                                         
    Uninstalling setuptools-58.1.0:                                                                                                                                        
      Successfully uninstalled setuptools-58.1.0                                                                                                                           
  Attempting uninstall: pip                                                                                                                                                
    Found existing installation: pip 23.0.1                                                                                                                                                                           
    Uninstalling pip-23.0.1:                                                                                                                                                                                          
      Successfully uninstalled pip-23.0.1                                                                                                                                                                             
Successfully installed pip-23.3.1 setuptools-69.0.2 wheel-0.42.0                                                                                                                                                      
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
/usr/local/lib/python3.9/site-packages/setuptools/dist.py:472: SetuptoolsDeprecationWarning: Invalid dash-separated options                                                                                           
!!                                                                                                                                                                                                                                                                                           

        ********************************************************************************                                                                                                                                                                                                     
        Usage of dash-separated 'description-file' will not be supported in future                                                                                                                                                                                                           
        versions. Please use the underscore name 'description_file' instead.                                                                                                                                                                                                                 

        By 2024-Sep-26, you need to update your project and remove deprecated calls                                                                                                                                                                                                          
        or your builds will no longer be supported.                                                                                                                                                                                                                                          

        See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.                                                                                                                                                                                              
        ********************************************************************************                                                                                                                                                                                                     

!!                                                                                                                                                                                                                                                                                           
  opt = self.warn_dash_deprecation(opt, section)                                                                                                                                                                                                                                             
running install                                                                                                                                                                                                                                                                              
/usr/local/lib/python3.9/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.                                                                                                                                                        
!!                                                                                                                                                                                                                                                                                           

        ********************************************************************************                                                                                                                                                                                                     
        Please avoid running ``setup.py`` directly.                                                                                                                                                                                                                                          
        Instead, use pypa/build, pypa/installer or other                                                                                                                                                                                                                                     
        standards-based tools.                                                                                                                                                                                                                                                               

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.                                                                                                                                                                                                   
        ********************************************************************************                                                                                                                                                                                                                                                                                                                                                    

!!                                                                                                                                                                                                                                                                                                                                                                                                                                          
  self.initialize_options()                                                                                                                                                                                                                                                                                                                                                                                                                 
/usr/local/lib/python3.9/site-packages/setuptools/_distutils/cmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.                                                                                                                                                                                                                                                                                                  
!!                                                                                                                                                                                                                                                                                                                                                                                                                                          

        ********************************************************************************                                                                                                                                                                                                                                                                                                                                                    
        Please avoid running ``setup.py`` and ``easy_install``.                                                                                                                                                                                                                                                                                                                                                                             
        Instead, use pypa/build, pypa/installer or other                                                                                                                                                                                                                                                                                                                                                                                    
        standards-based tools.                                                                                                                                                                                                                                                                                                                                                                                                              

        See https://github.com/pypa/setuptools/issues/917 for details.                                                                                                                                                                                                                                                                                                                                                                      
        ********************************************************************************                                                                                                                                                                                                                                                                                                                                                    

!!                                                                                                                                                                                                                                                                                                                                                                                                                                          
  self.initialize_options()                                                                                                                                                                                                                                                                                                                                                                                                                 
running bdist_egg                                                                                                                                                                                                                                                                                                                                                                                                                           
running egg_info                                                                                                                                                                                                                                                                                                                                                                                                                            
creating apkid.egg-info                                                                                                                                                                                                                                                                                                                                                                                                                     
writing apkid.egg-info/PKG-INFO                                                                                                                                                                                                                                                                                                                                                                                                             
writing dependency_links to apkid.egg-info/dependency_links.txt                                                                                                                                                                                                                                                                                                                                                                             
writing entry points to apkid.egg-info/entry_points.txt                                                                                                                                                                                                                                                                                                                                                                                     
writing requirements to apkid.egg-info/requires.txt                                                                                                                                                                                                                                                                                                                                                                                         
writing top-level names to apkid.egg-info/top_level.txt                                                                                                                                                                                                                                                                                                                                                                                     
writing manifest file 'apkid.egg-info/SOURCES.txt'                                                                                                                                                                                                                                                                                                                                                                                          
reading manifest file 'apkid.egg-info/SOURCES.txt'                                                                                                                                                                                                                                                                                                                                                                                          
reading manifest template 'MANIFEST.in'                                                                                                                                                                                                                                                                                                                                                                                                     
warning: no files found matching 'apkid/rules/rules.yarc'                                                                                                                                                                                                                                                                                                                                                                                   
adding license file 'LICENSE.COMMERCIAL'                                                                                                                                                                                                                                                                                                                                                                                                    
adding license file 'LICENSE.GPL'                                                                                                                                                                                                                                                                                                                                                                                                           
adding license file 'AUTHORS.txt'                                                                                                                                                                                                                                                                                                                                                                                                           
writing manifest file 'apkid.egg-info/SOURCES.txt'                                                                                                                                                                                                                                                                                                                                                                                          
installing library code to build/bdist.linux-aarch64/egg                                                                                                                                                                                                                                                                                                                                                                                    
running install_lib                                                                                                                                                                                                                                                                                                                                                                                                                         
running build_py                                                                                                                                                                                                                                                                                                                                                                                                                            
creating build                                                                                                                                                                                                                                                                                                                                                                                                                              
creating build/lib                                                                                                                                                                                                                                                                                                                                                                                                                          
creating build/lib/apkid                                                                                                                                                                                                                                                                                                                                                                                                                    
copying apkid/apkid.py -> build/lib/apkid                                                                                                                                                                                                                                                                                                                                                                                                   
copying apkid/rules.py -> build/lib/apkid                                                                                                                                                                                                                                                                                                                                                                                                   
copying apkid/__init__.py -> build/lib/apkid                                                                                                                                                                                                                                                                                                                                                                                                
copying apkid/main.py -> build/lib/apkid                                                                                                                                                                                                                                                                                                                                                                                                    
copying apkid/output.py -> build/lib/apkid                                                                                                                                                                                                                                                                                                                                                                                                  
creating build/bdist.linux-aarch64                                                                                                                                                                                                                                                                                                                                                                                                          
creating build/bdist.linux-aarch64/egg                                                                                                                                                                                                                                                                                                                                                                                                      
creating build/bdist.linux-aarch64/egg/apkid                                                                                                                                                                                                                                                                                                                                                                                                
copying build/lib/apkid/apkid.py -> build/bdist.linux-aarch64/egg/apkid                                                                                                                                                                                                                                                                                                                                                                     
copying build/lib/apkid/rules.py -> build/bdist.linux-aarch64/egg/apkid                                                                                                                                                                                                                                                                                                                                                                     
copying build/lib/apkid/__init__.py -> build/bdist.linux-aarch64/egg/apkid                                                                                                                                                                                                                                                                                                                                                                  
copying build/lib/apkid/main.py -> build/bdist.linux-aarch64/egg/apkid                                                                                                                                                                                                                                                                                                                                                                      
copying build/lib/apkid/output.py -> build/bdist.linux-aarch64/egg/apkid                                                                                                                                                                                                                                                                                                                                                                    
byte-compiling build/bdist.linux-aarch64/egg/apkid/apkid.py to apkid.cpython-39.pyc                                                                                                                                                                                                                                                                                                                                                         
byte-compiling build/bdist.linux-aarch64/egg/apkid/rules.py to rules.cpython-39.pyc                                                                                                                                                                                                                                                                                                                                                         
byte-compiling build/bdist.linux-aarch64/egg/apkid/__init__.py to __init__.cpython-39.pyc                                                                                                                                                                                                                                                                                                                                                   
byte-compiling build/bdist.linux-aarch64/egg/apkid/main.py to main.cpython-39.pyc                                                                                                                                                                                                                                                                                                                                                           
byte-compiling build/bdist.linux-aarch64/egg/apkid/output.py to output.cpython-39.pyc                                                                                                                                                                                                                                                                                                                                                       
creating build/bdist.linux-aarch64/egg/EGG-INFO                                                                                                                                                                                                                                                                                                                                                                                             
copying apkid.egg-info/PKG-INFO -> build/bdist.linux-aarch64/egg/EGG-INFO                                                                                                                                                                                                                                                                                                                                                                   
copying apkid.egg-info/SOURCES.txt -> build/bdist.linux-aarch64/egg/EGG-INFO                                                                                                                                                                                                                                                                                                                                                                
copying apkid.egg-info/dependency_links.txt -> build/bdist.linux-aarch64/egg/EGG-INFO                                                                                                                                                                                                                                                                                                                                                       
copying apkid.egg-info/entry_points.txt -> build/bdist.linux-aarch64/egg/EGG-INFO
copying apkid.egg-info/not-zip-safe -> build/bdist.linux-aarch64/egg/EGG-INFO
copying apkid.egg-info/requires.txt -> build/bdist.linux-aarch64/egg/EGG-INFO
copying apkid.egg-info/top_level.txt -> build/bdist.linux-aarch64/egg/EGG-INFO
creating dist
creating 'dist/apkid-2.1.5-py3.9.egg' and adding 'build/bdist.linux-aarch64/egg' to it
removing 'build/bdist.linux-aarch64/egg' (and everything under it)
Processing apkid-2.1.5-py3.9.egg
creating /usr/local/lib/python3.9/site-packages/apkid-2.1.5-py3.9.egg
Extracting apkid-2.1.5-py3.9.egg to /usr/local/lib/python3.9/site-packages
Adding apkid 2.1.5 to easy-install.pth file
Installing apkid script to /usr/local/bin

Installed /usr/local/lib/python3.9/site-packages/apkid-2.1.5-py3.9.egg
Processing dependencies for apkid==2.1.5
Searching for yara-python-dex>=1.0.1
Reading https://pypi.org/simple/yara-python-dex/
Downloading https://files.pythonhosted.org/packages/ff/5e/f305a5997ba504e3e87ca45ba58e814f34f635ede013965b9f9f1d7f6cf4/yara-python-dex-1.0.5.tar.gz#sha256=5c876d476b41c1fce5dddae3edd4f09fbde825193253f1cd6949153c4724fdce
Best match: yara-python-dex 1.0.5
Processing yara-python-dex-1.0.5.tar.gz
Writing /tmp/easy_install-83gyd17r/yara-python-dex-1.0.5/setup.cfg
Running yara-python-dex-1.0.5/setup.py -q bdist_egg --dist-dir /tmp/easy_install-83gyd17r/yara-python-dex-1.0.5/egg-dist-tmp-x6_7bzfn
error: [Errno 2] No such file or directory: 'yara-python/README.rst'
The command '/bin/sh -c python -m pip install --no-cache-dir --upgrade pip setuptools wheel     && python setup.py install     && python prep-release.py     && pip install -e .' returned a non-zero code: 1                                                                                                                                                                                                                               

┌──(kali㉿kali)-[~/APKiD]

Kali VM Version: └─$ uname -a Linux kali 6.5.0-kali3-arm64 #1 SMP Debian 6.5.6-1kali1 (2023-10-09) aarch64 GNU/Linux

enovella commented 11 months ago

Hi @juanur,

Thanks for letting us know :)

ctaggmk commented 2 months ago

+1 when using Docker build