Merge pull request #280643 from Enzime/add/icloudpd

icloudpd: init at 1.17.3

authored by kirillrdy and committed by GitHub 44e993f0 ac1638d0

+83
+83
pkgs/by-name/ic/icloudpd/package.nix
··· 1 + { lib 2 + , python3Packages 3 + , fetchFromGitHub 4 + , nix-update-script 5 + , testers 6 + , icloudpd 7 + }: 8 + 9 + python3Packages.buildPythonApplication rec { 10 + pname = "icloudpd"; 11 + version = "1.17.3"; 12 + pyproject = true; 13 + 14 + src = fetchFromGitHub { 15 + owner = "icloud-photos-downloader"; 16 + repo = "icloud_photos_downloader"; 17 + rev = "v${version}"; 18 + hash = "sha256-GS6GqlZfj5kfjKLImkOTDAgQDGJQHl74uTqbZHVpbac="; 19 + }; 20 + 21 + pythonRelaxDeps = true; 22 + 23 + nativeBuildInputs = with python3Packages; [ 24 + pythonRelaxDepsHook 25 + ]; 26 + 27 + propagatedBuildInputs = with python3Packages; [ 28 + wheel 29 + setuptools 30 + requests 31 + schema 32 + click 33 + python-dateutil 34 + tqdm 35 + piexif 36 + urllib3 37 + six 38 + tzlocal 39 + pytz 40 + certifi 41 + keyring 42 + keyrings-alt 43 + ]; 44 + 45 + nativeCheckInputs = with python3Packages; [ 46 + pytestCheckHook 47 + mock 48 + freezegun 49 + vcrpy 50 + pytest-timeout 51 + ]; 52 + 53 + disabledTests = [ 54 + # touches network 55 + "test_autodelete_photos" 56 + "test_download_autodelete_photos" 57 + "test_retry_delete_after_download_session_error" 58 + "test_retry_fail_delete_after_download_session_error" 59 + "test_retry_delete_after_download_internal_error" 60 + "test_autodelete_photos_dry_run" 61 + "test_retry_fail_delete_after_download_internal_error" 62 + "test_autodelete_invalid_creation_date" 63 + ]; 64 + 65 + passthru = { 66 + updateScript = nix-update-script { }; 67 + tests = testers.testVersion { package = icloudpd; }; 68 + }; 69 + 70 + preBuild = '' 71 + substituteInPlace pyproject.toml \ 72 + --replace "setuptools==69.0.2" "setuptools" \ 73 + --replace "wheel==0.42.0" "wheel" 74 + ''; 75 + 76 + meta = with lib; { 77 + homepage = "https://github.com/icloud-photos-downloader/icloud_photos_downloader"; 78 + description = "iCloud Photos Downloader"; 79 + license = licenses.mit; 80 + mainProgram = "icloudpd"; 81 + maintainers = with maintainers; [ anpin Enzime ]; 82 + }; 83 + }