1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 pefile, 6 pillow, 7 pythonOlder, 8 setuptools, 9}: 10 11buildPythonPackage rec { 12 pname = "icoextract"; 13 version = "0.1.5"; 14 pyproject = true; 15 16 disabled = pythonOlder "3.8"; 17 18 src = fetchPypi { 19 inherit pname version; 20 extension = "tar.gz"; 21 hash = "sha256-/UxnWNyRNtwI4Rxx97i5QyjeMrUr5Sq+TfLTmU0xWyc="; 22 }; 23 24 build-system = [ setuptools ]; 25 26 dependencies = [ 27 pefile 28 pillow 29 ]; 30 31 # tests expect mingw and multiarch 32 doCheck = false; 33 34 pythonImportsCheck = [ "icoextract" ]; 35 36 postInstall = '' 37 mkdir -p $out/share/thumbnailers 38 substituteAll ${./exe-thumbnailer.thumbnailer} $out/share/thumbnailers/exe-thumbnailer.thumbnailer 39 ''; 40 41 meta = with lib; { 42 description = "Extract icons from Windows PE files"; 43 homepage = "https://github.com/jlu5/icoextract"; 44 changelog = "https://github.com/jlu5/icoextract/blob/${version}/CHANGELOG.md"; 45 license = licenses.mit; 46 maintainers = with maintainers; [ 47 bryanasdev000 48 donovanglover 49 ]; 50 }; 51}