luisbocanegra / kde-material-you-colors

Automatic color scheme generator from your wallpaper for KDE Plasma powered by Material You
https://store.kde.org/p/2136963
GNU General Public License v3.0
378 stars 6 forks source link

Pip install broken #177

Closed fighuass closed 8 months ago

fighuass commented 8 months ago

Describe the bug The install fails when trying to install kde-material-you-colors through Pip.

To Reproduce Steps to reproduce the behavior:

  1. Run pip install kde-material-you-colors.
  2. The install will fail on Building wheel for Pillow (pyproject.toml) ... error.

Expected behavior A working install.

Desktop (please complete the following information):

Additional context The error:

Building wheels for collected packages: Pillow
  Building wheel for Pillow (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for Pillow (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [203 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-cpython-312
      creating build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/BdfFontFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/BlpImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/BmpImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/BufrStubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ContainerIO.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/CurImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/DcxImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/DdsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/EpsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ExifTags.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/FitsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/FitsStubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/FliImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/FontFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/FpxImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/FtexImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/GbrImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/GdImageFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/GifImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/GimpGradientFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/GimpPaletteFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/GribStubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/Hdf5StubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/IcnsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/IcoImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/Image.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageChops.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageCms.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageColor.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageDraw.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageDraw2.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageEnhance.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageFilter.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageFont.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageGrab.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageMath.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageMode.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageMorph.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageOps.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImagePalette.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImagePath.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageQt.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageSequence.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageShow.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageStat.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageTk.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageTransform.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImageWin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/ImtImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/IptcImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/Jpeg2KImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/JpegImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/JpegPresets.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/McIdasImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/MicImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/MpegImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/MpoImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/MspImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PSDraw.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PaletteFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PalmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PcdImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PcfFontFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PcxImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PdfImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PdfParser.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PixarImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PngImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PpmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PsdImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/PyAccess.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/QoiImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/SgiImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/SpiderImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/SunImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/TarIO.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/TgaImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/TiffImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/TiffTags.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/WalImageFile.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/WebPImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/WmfImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/XVThumbImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/XbmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/XpmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/__init__.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/__main__.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/_binary.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/_deprecate.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/_tkinter_finder.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/_util.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/_version.py -> build/lib.linux-x86_64-cpython-312/PIL
      copying src/PIL/features.py -> build/lib.linux-x86_64-cpython-312/PIL
      running egg_info
      writing src/Pillow.egg-info/PKG-INFO
      writing dependency_links to src/Pillow.egg-info/dependency_links.txt
      writing requirements to src/Pillow.egg-info/requires.txt
      writing top-level names to src/Pillow.egg-info/top_level.txt
      reading manifest file 'src/Pillow.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      warning: no files found matching '*.c'
      warning: no files found matching '*.h'
      warning: no files found matching '*.sh'
      warning: no files found matching '*.txt'
      warning: no previously-included files found matching '.appveyor.yml'
      warning: no previously-included files found matching '.clang-format'
      warning: no previously-included files found matching '.coveragerc'
      warning: no previously-included files found matching '.editorconfig'
      warning: no previously-included files found matching '.readthedocs.yml'
      warning: no previously-included files found matching 'codecov.yml'
      warning: no previously-included files found matching 'renovate.json'
      warning: no previously-included files matching '.git*' found anywhere in distribution
      warning: no previously-included files matching '*.pyc' found anywhere in distribution
      warning: no previously-included files matching '*.so' found anywhere in distribution
      no previously-included directories found matching '.ci'
      adding license file 'LICENSE'
      writing manifest file 'src/Pillow.egg-info/SOURCES.txt'
      running build_ext

      The headers or library files could not be found for zlib,
      a required dependency when compiling Pillow from source.

      Please see the install instructions at:
         https://pillow.readthedocs.io/en/latest/installation.html

      Traceback (most recent call last):
        File "<string>", line 993, in <module>
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/__init__.py", line 103, in setup
          return distutils.core.setup(**attrs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 185, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
          dist.run_commands()
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 963, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/wheel/bdist_wheel.py", line 368, in run
          self.run_command("build")
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 963, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build.py", line 131, in run
          self.run_command(cmd_name)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 963, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/command/build_ext.py", line 88, in run
          _build_ext.run(self)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 345, in run
          self.build_extensions()
        File "<string>", line 809, in build_extensions
      RequiredDependencyException: zlib

      During handling of the above exception, another exception occurred:

      Traceback (most recent call last):
        File "/home/user/.local/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/home/user/.local/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/home/user/.local/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
          return _build_backend().build_wheel(wheel_directory, config_settings,
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 404, in build_wheel
          return self._build_with_temp_dir(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 389, in _build_with_temp_dir
          self.run_setup()
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 480, in run_setup
          super(_BuildMetaLegacyBackend, self).run_setup(setup_script=setup_script)
        File "/tmp/pip-build-env-hp4yy13e/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 311, in run_setup
          exec(code, locals())
        File "<string>", line 1010, in <module>
      RequiredDependencyException:

      The headers or library files could not be found for zlib,
      a required dependency when compiling Pillow from source.

      Please see the install instructions at:
         https://pillow.readthedocs.io/en/latest/installation.html

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for Pillow
Failed to build Pillow
ERROR: Could not build wheels for Pillow, which is required to install pyproject.toml-based projects
luisbocanegra commented 8 months ago

Looks like something is wrong with your environment, try updating your system packages/pip if they're not up-to-date, see: https://pillow.readthedocs.io/en/latest/installation.html Also, I would recommend to use pipx instead of pip https://github.com/pypa/pipx#how-is-it-different-from-pip

fighuass commented 8 months ago

That's kinda odd, as I actually did a clean reinstall of the entire OS today. I also made sure to update Pip.

Through pipx I get a different error:

Fatal error from pip prevented installation. Full pip output in file:
    /home/user/.local/state/pipx/log/cmd_2024-01-08_22.47.27_pip_errors.log

pip seemed to fail to build package:
    dbus-python>=1.3.2

Some possibly relevant errors from pip install:
    error: subprocess-exited-with-error
    ../meson.build:4:0: ERROR: Unknown compiler(s): [['cc'], ['gcc'], ['clang'], ['nvc'], ['pgcc'], ['icc'], ['icx']]
    Running `cc --version` gave "[Errno 2] No such file or directory: 'cc'"
    Running `gcc --version` gave "[Errno 2] No such file or directory: 'gcc'"
    Running `clang --version` gave "[Errno 2] No such file or directory: 'clang'"
    Running `nvc --version` gave "[Errno 2] No such file or directory: 'nvc'"
    Running `pgcc --version` gave "[Errno 2] No such file or directory: 'pgcc'"
    Running `icc --version` gave "[Errno 2] No such file or directory: 'icc'"
    Running `icx --version` gave "[Errno 2] No such file or directory: 'icx'"
    error: metadata-generation-failed

Error installing kde-material-you-colors.
luisbocanegra commented 8 months ago

That's kinda odd, as I actually did a clean reinstall of the entire OS today. I also made sure to update Pip.

Through pipx I get a different error:

Fatal error from pip prevented installation. Full pip output in file:
    /home/user/.local/state/pipx/log/cmd_2024-01-08_22.47.27_pip_errors.log

pip seemed to fail to build package:
    dbus-python>=1.3.2

Some possibly relevant errors from pip install:
    error: subprocess-exited-with-error
    ../meson.build:4:0: ERROR: Unknown compiler(s): [['cc'], ['gcc'], ['clang'], ['nvc'], ['pgcc'], ['icc'], ['icx']]
    Running `cc --version` gave "[Errno 2] No such file or directory: 'cc'"
    Running `gcc --version` gave "[Errno 2] No such file or directory: 'gcc'"
    Running `clang --version` gave "[Errno 2] No such file or directory: 'clang'"
    Running `nvc --version` gave "[Errno 2] No such file or directory: 'nvc'"
    Running `pgcc --version` gave "[Errno 2] No such file or directory: 'pgcc'"
    Running `icc --version` gave "[Errno 2] No such file or directory: 'icc'"
    Running `icx --version` gave "[Errno 2] No such file or directory: 'icx'"
    error: metadata-generation-failed

Error installing kde-material-you-colors.

Install the dependencies (fedora packages) requested, gcc and for Pillow you need other dependencies which are listed in the installation guide I linked

fighuass commented 8 months ago

Hm, I tried doing that but dbus-python seems to error with ERROR: Python dependency not found after installing all other dependencies.

gurpreet2188 commented 8 months ago

Hm, I tried doing that but dbus-python seems to error with ERROR: Python dependency not found after installing all other dependencies.

Had the same issue on fedora, it was missing the following deps on my system.

dbus-devel libjpeg-devel

These can be install from dnf.

fighuass commented 8 months ago

Odd, still same issue.

luisbocanegra commented 8 months ago

Tried Fedora KDE live in a VM and those are the packages I had to install:

pipx gcc dbus-devel glib2-devel python3-devel

For pillow (Pillow docs)

libtiff-devel libjpeg-devel openjpeg2-devel zlib-devel     freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel     harfbuzz-devel fribidi-devel libraqm-devel libimagequant-devel libxcb-devel

Finally pipx install kde-material-you-colors should work

fighuass commented 8 months ago

I hate to keep bothering you, but this also throws up an error.

Some possibly relevant errors from pip install:
    ERROR: Could not find a version that satisfies the requirement python3-devel (from versions: none)
    ERROR: No matching distribution found for python3-devel

I keep getting this, but with all of those packages. gcc, dbus-devel, python3-devel, etc.

luisbocanegra commented 8 months ago

I hate to keep bothering you, but this also throws up an error.

Some possibly relevant errors from pip install:
    ERROR: Could not find a version that satisfies the requirement python3-devel (from versions: none)
    ERROR: No matching distribution found for python3-devel

I keep getting this, but with all of those packages. gcc, dbus-devel, python3-devel, etc.

Hmm I am not sure what's going on here, are you using pip or pipx? please show the full command you are using to install kde-material-you-colors and the packages from my previous comment, (sould've been dnf install pipx gcc dbus-devel glib2-devel python3-devel libtiff-devel libjpeg-devel openjpeg2-devel zlib-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel harfbuzz-devel fribidi-devel libraqm-devel libimagequant-devel libxcb-devel)

fighuass commented 8 months ago

Hmm I might've done something wrong before then, I ran the dnf command you listed just now and then the pipx install worked afterwards. Thanks!