tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
picoscope: 6.14.44 -> 7.0.83
Ellie Hermaszewska
4 years ago
03f9ced5
ea5c3d75
+58
-134
3 changed files
expand all
collapse all
unified
split
pkgs
applications
science
electronics
picoscope
default.nix
sources.json
update.py
+14
-13
pkgs/applications/science/electronics/picoscope/default.nix
···
1
-
{ stdenv, lib, fetchurl, dpkg, makeWrapper , mono, gtk-sharp-2_0
2
-
, glib, libusb1 , zlib, gtk2-x11, gnome2, callPackage
3
, scopes ? [
4
-
"pl1000"
5
"ps2000"
6
"ps2000a"
7
"ps3000"
···
12
"ps5000a"
13
"ps6000"
14
"ps6000a"
15
-
"usbdrdaq"
16
] }:
17
18
let
···
20
with lib; {
21
homepage = "https://www.picotech.com/downloads/linux";
22
maintainers = with maintainers; [ expipiplus1 yorickvp wirew0rm ];
23
-
platforms = [ "x86_64-linux" "armv7l-linux" ];
24
license = licenses.unfree;
25
};
26
···
45
description = "library for picotech oscilloscope software";
46
};
47
}) { };
0
0
0
48
sources =
49
-
(builtins.fromJSON (builtins.readFile ./sources.json)).${stdenv.system};
0
50
scopePkg = name:
51
{ url, version, sha256 }:
52
stdenv.mkDerivation rec {
···
78
src = fetchurl { inherit (sources.picoscope) url sha256; };
79
80
nativeBuildInputs = [ dpkg makeWrapper ];
81
-
buildInputs = [ gtk-sharp-2_0 mono glib libusb1 zlib ];
82
83
unpackCmd = "dpkg-deb -x $src .";
84
sourceRoot = ".";
85
scopeLibs = lib.attrVals (map (x: "lib${x}") scopes) scopePkgs;
86
-
MONO_PATH = "${gtk-sharp-2_0}/lib/mono/gtk-sharp-2.0:" + (lib.makeLibraryPath
87
([
88
glib
89
-
gtk2-x11
90
-
gnome2.libglade
91
-
gtk-sharp-2_0
92
-
libpicoipp
93
libusb1
94
zlib
95
-
stdenv.cc.cc.lib
96
] ++ scopeLibs));
97
98
installPhase = ''
···
1
+
{ stdenv, lib, fetchurl, dpkg, makeWrapper , mono, gtk-sharp-3_0
2
+
, glib, libusb1 , zlib, gtk3-x11, callPackage
3
, scopes ? [
4
+
"picocv"
5
"ps2000"
6
"ps2000a"
7
"ps3000"
···
12
"ps5000a"
13
"ps6000"
14
"ps6000a"
0
15
] }:
16
17
let
···
19
with lib; {
20
homepage = "https://www.picotech.com/downloads/linux";
21
maintainers = with maintainers; [ expipiplus1 yorickvp wirew0rm ];
22
+
platforms = [ "x86_64-linux" ];
23
license = licenses.unfree;
24
};
25
···
44
description = "library for picotech oscilloscope software";
45
};
46
}) { };
47
+
48
+
# If we don't have a platform available, put a dummy version here, so at
49
+
# least evaluation succeeds.
50
sources =
51
+
(lib.importJSON ./sources.json).${stdenv.system} or { picoscope.version = "unknown"; };
52
+
53
scopePkg = name:
54
{ url, version, sha256 }:
55
stdenv.mkDerivation rec {
···
81
src = fetchurl { inherit (sources.picoscope) url sha256; };
82
83
nativeBuildInputs = [ dpkg makeWrapper ];
84
+
buildInputs = [ gtk-sharp-3_0 mono glib libusb1 zlib ];
85
86
unpackCmd = "dpkg-deb -x $src .";
87
sourceRoot = ".";
88
scopeLibs = lib.attrVals (map (x: "lib${x}") scopes) scopePkgs;
89
+
MONO_PATH = "${gtk-sharp-3_0}/lib/mono/gtk-sharp-3.0:" + (lib.makeLibraryPath
90
([
91
glib
92
+
gtk3-x11
93
+
gtk-sharp-3_0
0
0
94
libusb1
95
zlib
96
+
libpicoipp
97
] ++ scopeLibs));
98
99
installPhase = ''
+41
-118
pkgs/applications/science/electronics/picoscope/sources.json
···
1
{
2
-
"armv7l-linux": {
3
-
"libpl1000": {
4
-
"sha256": "10827029023fb1fd8085f216fc75e09010acb081fdaa4a65f81cfd7436bed84b",
5
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libpl1000/libpl1000_2.0.61-1r2597_armhf.deb",
6
-
"version": "2.0.61-1r2597"
7
-
},
8
-
"libps2000": {
9
-
"sha256": "21d09b8a792ad7c6cd90dc51ba073c21c7dbd17ec6e5c88752b7c2c5a15be73f",
10
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps2000/libps2000_3.0.63-3r2621_armhf.deb",
11
-
"version": "3.0.63-3r2621"
12
-
},
13
-
"libps2000a": {
14
-
"sha256": "8293fe86d6d0f12dcefc67d3bf694ec7922dd28c80baab8aa6bc5a01a152e0a9",
15
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps2000a/libps2000a_2.1.61-5r2597_armhf.deb",
16
-
"version": "2.1.61-5r2597"
17
-
},
18
-
"libps3000": {
19
-
"sha256": "3289ad3671767ab767f9308106d664a57a09578142a82fc62ec4b68df23e8ef1",
20
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps3000/libps3000_4.0.63-3r2621_armhf.deb",
21
-
"version": "4.0.63-3r2621"
22
-
},
23
-
"libps3000a": {
24
-
"sha256": "e5c8c1dc94cc9924ec08a821fd92351c8ef05df8bb53bd2855e59d81358a33d6",
25
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps3000a/libps3000a_2.1.61-6r2597_armhf.deb",
26
-
"version": "2.1.61-6r2597"
27
-
},
28
-
"libps4000": {
29
-
"sha256": "5c2abeb819964c2902e5a17b22ecf184d5fb78cd399cf56b3d0301428f7e4631",
30
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps4000/libps4000_2.1.61-2r2597_armhf.deb",
31
-
"version": "2.1.61-2r2597"
32
-
},
33
-
"libps4000a": {
34
-
"sha256": "fd3a37c9d22137bed5c7a7013e0afc408e7dc9abac759b900ac23733fcd736e8",
35
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps4000a/libps4000a_2.1.61-2r2597_armhf.deb",
36
-
"version": "2.1.61-2r2597"
37
-
},
38
-
"libps5000": {
39
-
"sha256": "5554829e24778b77da4a4ea30d074859bec30b56c1400aa4771429961050a7d6",
40
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps5000/libps5000_2.1.61-3r2597_armhf.deb",
41
-
"version": "2.1.61-3r2597"
42
-
},
43
-
"libps5000a": {
44
-
"sha256": "ee88e0c5f4f1f398c62b9672c30a08a94b14e1402d4769b66ed90c3dd9368d38",
45
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps5000a/libps5000a_2.1.61-5r2597_armhf.deb",
46
-
"version": "2.1.61-5r2597"
47
-
},
48
-
"libps6000": {
49
-
"sha256": "1470ca16d2b48141d0385e903d5aab883164fa6c9f29abd79713b52abc532442",
50
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps6000/libps6000_2.1.61-6r2597_armhf.deb",
51
-
"version": "2.1.61-6r2597"
52
-
},
53
-
"libps6000a": {
54
-
"sha256": "7eb5668fe22c6f042a63a218e1b2eed983d8d9d92bfc525a98bd95a37f3de3ef",
55
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps6000a/libps6000a_1.0.61-0r2608_armhf.deb",
56
-
"version": "1.0.61-0r2608"
57
-
},
58
-
"libusbdrdaq": {
59
-
"sha256": "3dc7c4ea506eb0384d2b81214c00f39951bfaf196988ccf373a3e3e2dd342c41",
60
-
"url": "https://labs.picotech.com/debian/pool/main/libu/libusbdrdaq/libusbdrdaq_2.0.61-1r2597_armhf.deb",
61
-
"version": "2.0.61-1r2597"
62
-
},
63
-
"picoscope": {
64
-
"sha256": "448cfebcb20b18e7b27c05b0af4f44779d087b2d6046ad99d98c773321fb3e17",
65
-
"url": "https://labs.picotech.com/debian/pool/main/p/picoscope/picoscope_6.14.44-4r5870_all.deb",
66
-
"version": "6.14.44-4r5870"
67
-
}
68
-
},
69
"x86_64-linux": {
0
0
0
0
0
70
"libpicoipp": {
71
-
"sha256": "c7c052d2214f1fc54c07dbe20b6cf650e9b1d658aa7b989acdaeb7c1639ba761",
72
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libpicoipp/libpicoipp_1.3.0-4r78_amd64.deb",
73
-
"version": "1.3.0-4r78"
74
-
},
75
-
"libpl1000": {
76
-
"sha256": "c6b7bb916129a7cf821c2e28e42914b9ac1a23cc1521fb78dec5aa59283790ac",
77
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libpl1000/libpl1000_2.0.61-1r2597_amd64.deb",
78
-
"version": "2.0.61-1r2597"
79
},
80
"libps2000": {
81
-
"sha256": "9b4af7a07f53d8cc056386e036ecd3731519d4ebf8f62a02def5c022509255ac",
82
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps2000/libps2000_3.0.63-3r2621_amd64.deb",
83
-
"version": "3.0.63-3r2621"
84
},
85
"libps2000a": {
86
-
"sha256": "cfecbf6c04330a4439e8609c9973192f7a249a3b2853e6df1d63ab24a4d0ef89",
87
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps2000a/libps2000a_2.1.61-5r2597_amd64.deb",
88
-
"version": "2.1.61-5r2597"
89
},
90
"libps3000": {
91
-
"sha256": "7052b872463e95c78f118f494d546c2b0758e1505297e9eaa3916dba5e24d85e",
92
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps3000/libps3000_4.0.63-3r2621_amd64.deb",
93
-
"version": "4.0.63-3r2621"
94
},
95
"libps3000a": {
96
-
"sha256": "fbc64876731c6a8b7e1dc5b95113568819e7122acebc84dcabe102b900dfbb0d",
97
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps3000a/libps3000a_2.1.61-6r2597_amd64.deb",
98
-
"version": "2.1.61-6r2597"
99
},
100
"libps4000": {
101
-
"sha256": "84cc299e05d2ff73ef11d5f36e1f944e1cc8a93a19541a17db30d3cd45b383c1",
102
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps4000/libps4000_2.1.61-2r2597_amd64.deb",
103
-
"version": "2.1.61-2r2597"
104
},
105
"libps4000a": {
106
-
"sha256": "1839d654407dee76435f918c4df35d78edebcc45f442649fc964ee0470fcee30",
107
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps4000a/libps4000a_2.1.61-2r2597_amd64.deb",
108
-
"version": "2.1.61-2r2597"
109
},
110
"libps5000": {
111
-
"sha256": "ed2bd627f08fd98e93a22f824b8e81fc7ff7342dabd9fae748e12a10ec95d08a",
112
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps5000/libps5000_2.1.61-3r2597_amd64.deb",
113
-
"version": "2.1.61-3r2597"
114
},
115
"libps5000a": {
116
-
"sha256": "78fd28bbc7817098f57ba886e847fe76e65e0321c1bf0880b0b3066499626c5e",
117
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps5000a/libps5000a_2.1.61-5r2597_amd64.deb",
118
-
"version": "2.1.61-5r2597"
119
},
120
"libps6000": {
121
-
"sha256": "bb05cf15661b837bb4def618828214bc7aedd99f42737d3f4b77757a113f66ae",
122
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps6000/libps6000_2.1.61-6r2597_amd64.deb",
123
-
"version": "2.1.61-6r2597"
124
},
125
"libps6000a": {
126
-
"sha256": "4fd31727e30c2f6833729e15ff7d88d8fa30876031707b5727752b4ce3582cc7",
127
-
"url": "https://labs.picotech.com/debian/pool/main/libp/libps6000a/libps6000a_1.0.61-0r2608_amd64.deb",
128
-
"version": "1.0.61-0r2608"
129
-
},
130
-
"libusbdrdaq": {
131
-
"sha256": "44badb6f876db1d47612bd1c37fdab8b27e95cc0ed4f2bd71dcec08adec74ce1",
132
-
"url": "https://labs.picotech.com/debian/pool/main/libu/libusbdrdaq/libusbdrdaq_2.0.61-1r2597_amd64.deb",
133
-
"version": "2.0.61-1r2597"
134
-
},
135
-
"picomono": {
136
-
"sha256": "2baf917e4e727ee8d6e395545a32b9ecb3820ffbc66cd28bc56e8aaeafbb0433",
137
-
"url": "https://labs.picotech.com/debian/pool/main/p/picomono/picomono_4.6.2.16-1r02_amd64.deb",
138
-
"version": "4.6.2.16-1r02"
139
},
140
"picoscope": {
141
-
"sha256": "448cfebcb20b18e7b27c05b0af4f44779d087b2d6046ad99d98c773321fb3e17",
142
-
"url": "https://labs.picotech.com/debian/pool/main/p/picoscope/picoscope_6.14.44-4r5870_all.deb",
143
-
"version": "6.14.44-4r5870"
144
}
145
}
146
}
···
1
{
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
"x86_64-linux": {
3
+
"libpicocv": {
4
+
"sha256": "c2e74c2b0679df0226993d063b38d0eda5b05ff59f29bbfa12ded5226df37024",
5
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libpicocv/libpicocv_1.1.27-1r153_amd64.deb",
6
+
"version": "1.1.27-1r153"
7
+
},
8
"libpicoipp": {
9
+
"sha256": "87ae49cd5e8dda4a73a835b95ea13e4c3fc4d1c4c9d6495c9affdf6fa6b1b4aa",
10
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libpicoipp/libpicoipp_1.3.0-4r121_amd64.deb",
11
+
"version": "1.3.0-4r121"
0
0
0
0
0
12
},
13
"libps2000": {
14
+
"sha256": "792e506c08cebbd617e833e1547d3e5a13a186f93cea3f84608b7ed9451fb077",
15
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps2000/libps2000_3.0.75-3r2957_amd64.deb",
16
+
"version": "3.0.75-3r2957"
17
},
18
"libps2000a": {
19
+
"sha256": "f31b3a8e9c6af14a59e348e4b302f12f582cdb08a47a3c04d8a6a612b4630305",
20
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps2000a/libps2000a_2.1.75-5r2957_amd64.deb",
21
+
"version": "2.1.75-5r2957"
22
},
23
"libps3000": {
24
+
"sha256": "27dce3c924bb0169768a4964ce567b4a18ce74079537ca1fcba61e9234691580",
25
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps3000/libps3000_4.0.75-3r2957_amd64.deb",
26
+
"version": "4.0.75-3r2957"
27
},
28
"libps3000a": {
29
+
"sha256": "31cf00ce136526af6e8b211a44a56b221d137de6eaec4d6fd7f31593b4245d62",
30
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps3000a/libps3000a_2.1.75-6r2957_amd64.deb",
31
+
"version": "2.1.75-6r2957"
32
},
33
"libps4000": {
34
+
"sha256": "c976f09647f1fd2c980aafd1efe7f557bfc7c283fb9c135725c38dd59cc297e9",
35
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps4000/libps4000_2.1.75-2r2957_amd64.deb",
36
+
"version": "2.1.75-2r2957"
37
},
38
"libps4000a": {
39
+
"sha256": "727f24fa74759385902d41d52a26a4636b3e3f08a8743901d15cc49622207b97",
40
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps4000a/libps4000a_2.1.75-2r2957_amd64.deb",
41
+
"version": "2.1.75-2r2957"
42
},
43
"libps5000": {
44
+
"sha256": "3237c1dfdb384079b7039d2b4a8e0b0126e804830b29d60e89ae018182667edb",
45
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps5000/libps5000_2.1.75-3r2957_amd64.deb",
46
+
"version": "2.1.75-3r2957"
47
},
48
"libps5000a": {
49
+
"sha256": "27947f8461a16cf59d64cd23d7a78ddd27826e38dfe9fca3902e3b553591fb19",
50
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps5000a/libps5000a_2.1.75-5r2957_amd64.deb",
51
+
"version": "2.1.75-5r2957"
52
},
53
"libps6000": {
54
+
"sha256": "d65e923db969e306fb9f3f3892229a297d6187574d901dde44375270cc1e1404",
55
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps6000/libps6000_2.1.75-6r2957_amd64.deb",
56
+
"version": "2.1.75-6r2957"
57
},
58
"libps6000a": {
59
+
"sha256": "eff8644ad44f9cc1cf9052e27786a1480a4ab599766c1c01e370fef40a76b224",
60
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/libp/libps6000a/libps6000a_1.0.75-0r2957_amd64.deb",
61
+
"version": "1.0.75-0r2957"
0
0
0
0
0
0
0
0
0
0
62
},
63
"picoscope": {
64
+
"sha256": "3d2a0e360c8143fc03c29b394c16bfc2387164e33099a46b6905af992cfab440",
65
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/pool/main/p/picoscope/picoscope_7.0.83-1r9320_amd64.deb",
66
+
"version": "7.0.83-1r9320"
67
}
68
}
69
}
+3
-3
pkgs/applications/science/electronics/picoscope/update.py
···
23
sources_spec = {}
24
for pkg in pkgs:
25
sources_spec[pkg['Package']] = {
26
-
"url": "https://labs.picotech.com/debian/" + pkg["Filename"],
27
"sha256": pkg["SHA256"],
28
"version": pkg["Version"]
29
}
30
return sources_spec
31
32
out = {}
33
-
for nix_system, release in {"x86_64-linux": "amd64", "armv7l-linux": "armhf"}.items():
34
-
resp = requests.get("https://labs.picotech.com/debian/dists/picoscope/main/binary-"+release+"/Packages")
35
if resp.status_code != 200:
36
print("error: could not fetch data for release {} (code {})".format(release, resp.code), file=sys.stderr)
37
sys.exit(1)
···
23
sources_spec = {}
24
for pkg in pkgs:
25
sources_spec[pkg['Package']] = {
26
+
"url": "https://labs.picotech.com/rc/picoscope7/debian/" + pkg["Filename"],
27
"sha256": pkg["SHA256"],
28
"version": pkg["Version"]
29
}
30
return sources_spec
31
32
out = {}
33
+
for nix_system, release in {"x86_64-linux": "amd64"}.items():
34
+
resp = requests.get("https://labs.picotech.com/rc/picoscope7/debian//dists/picoscope/main/binary-"+release+"/Packages")
35
if resp.status_code != 200:
36
print("error: could not fetch data for release {} (code {})".format(release, resp.code), file=sys.stderr)
37
sys.exit(1)