1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
{
bpylist2,
buildPythonPackage,
click,
coloredlogs,
construct,
construct-typing,
cryptography,
daemonize,
developer-disk-image,
fastapi,
fetchFromGitHub,
gpxpy,
hexdump,
hyperframe,
ifaddr,
inquirer3,
ipsw-parser,
ipython,
lib,
nest-asyncio,
opack2,
packaging,
parameter-decorators,
pillow,
plumbum,
psutil,
pycrashreport,
pygments,
pygnuutils,
pykdebugparser,
pytest-asyncio,
pytestCheckHook,
python-pcapng,
pytun-pmd3,
pyusb,
qh3,
requests,
setuptools,
setuptools-scm,
srptools,
sslpsk-pmd3,
tqdm,
uvicorn,
wsproto,
xonsh,
}:
buildPythonPackage rec {
pname = "pymobiledevice3";
version = "6.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "doronz88";
repo = "pymobiledevice3";
tag = "v${version}";
hash = "sha256-Sc02p2zZb/CPYFU+lz6fe1UZgWhdJYH2/pSJ5gVE0iY=";
};
build-system = [
setuptools
setuptools-scm
];
dependencies = [
bpylist2
click
coloredlogs
construct
construct-typing
cryptography
daemonize
developer-disk-image
fastapi
gpxpy
hexdump
hyperframe
ifaddr
inquirer3
ipsw-parser
ipython
nest-asyncio
opack2
packaging
parameter-decorators
pillow
plumbum
psutil
pycrashreport
pygments
pygnuutils
pykdebugparser
python-pcapng
pytun-pmd3
pyusb
qh3
requests
srptools
sslpsk-pmd3
tqdm
uvicorn
wsproto
xonsh
]
++ fastapi.optional-dependencies.all;
pythonImportsCheck = [ "pymobiledevice3" ];
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
];
# Upstream only runs tests marked with 'cli' in CI:
# https://github.com/doronz88/pymobiledevice3/blob/v4.27.1/.github/workflows/python-app.yml#L45
enabledTestMarks = [ "cli" ];
meta = {
changelog = "https://github.com/doronz88/pymobiledevice3/releases/tag/${src.tag}";
description = "Pure python3 implementation for working with iDevices (iPhone, etc.)";
homepage = "https://github.com/doronz88/pymobiledevice3";
license = lib.licenses.gpl3Plus;
mainProgram = "pymobiledevice3";
maintainers = [ lib.maintainers.dotlambda ];
};
}
|