games-action/vintagestory: add 1.20.0_rc2, drop 1.20.0_rc1
[gentoo-zh.git] / media-sound / netease-cloud-music-gtk / netease-cloud-music-gtk-2.5.0.ebuild
blob2c00b3fcd6cbcdffb944956df45cba6b95b24f98
1 # Copyright 2023-2024 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
4 # Autogenerated by pycargoebuild 0.13.4
6 EAPI=8
8 CRATES="
9         adler2@2.0.0
10         aho-corasick@1.1.3
11         android-tzdata@0.1.1
12         android_system_properties@0.1.5
13         anstream@0.6.18
14         anstyle-parse@0.2.6
15         anstyle-query@1.1.2
16         anstyle-wincon@3.0.6
17         anstyle@1.0.10
18         anyhow@1.0.93
19         async-broadcast@0.7.1
20         async-channel@1.9.0
21         async-channel@2.3.1
22         async-executor@1.13.1
23         async-fs@2.1.2
24         async-io@2.3.4
25         async-lock@3.4.0
26         async-process@2.3.0
27         async-recursion@1.1.1
28         async-signal@0.2.10
29         async-task@4.7.1
30         async-trait@0.1.83
31         atomic-waker@1.1.2
32         atomic_refcell@0.1.13
33         autocfg@1.4.0
34         base64@0.22.1
35         bitflags@1.3.2
36         bitflags@2.6.0
37         block-buffer@0.10.4
38         block@0.1.6
39         blocking@1.6.1
40         bumpalo@3.16.0
41         bytemuck@1.19.0
42         byteorder@1.5.0
43         bytes@1.8.0
44         cairo-rs@0.20.5
45         cairo-sys-rs@0.20.0
46         castaway@0.1.2
47         cc@1.1.36
48         cfg-expr@0.17.0
49         cfg-if@1.0.0
50         cfg_aliases@0.2.1
51         chrono@0.4.38
52         color_quant@1.1.0
53         colorchoice@1.0.3
54         concurrent-queue@2.5.0
55         cookie@0.18.1
56         cookie_store@0.21.0
57         core-foundation-sys@0.8.7
58         cpufeatures@0.2.14
59         crc32fast@1.4.2
60         crossbeam-utils@0.8.20
61         crypto-common@0.1.6
62         curl-sys@0.4.77+curl-8.10.1
63         curl@0.4.47
64         deranged@0.3.11
65         digest@0.10.7
66         displaydoc@0.2.5
67         either@1.13.0
68         encoding_rs@0.8.35
69         endi@1.1.0
70         enumflags2@0.7.10
71         enumflags2_derive@0.7.10
72         env_filter@0.1.2
73         env_logger@0.11.5
74         equivalent@1.0.1
75         errno@0.3.9
76         event-listener-strategy@0.5.2
77         event-listener@2.5.3
78         event-listener@5.3.1
79         fastrand@1.9.0
80         fastrand@2.1.1
81         fdeflate@0.3.6
82         field-offset@0.3.6
83         flate2@1.0.34
84         fnv@1.0.7
85         foreign-types-shared@0.1.1
86         foreign-types@0.3.2
87         form_urlencoded@1.2.1
88         futures-channel@0.3.31
89         futures-core@0.3.31
90         futures-executor@0.3.31
91         futures-io@0.3.31
92         futures-lite@1.13.0
93         futures-lite@2.4.0
94         futures-macro@0.3.31
95         futures-sink@0.3.31
96         futures-task@0.3.31
97         futures-util@0.3.31
98         gdk-pixbuf-sys@0.20.4
99         gdk-pixbuf@0.20.4
100         gdk4-sys@0.9.3
101         gdk4@0.9.3
102         generic-array@0.14.7
103         getrandom@0.2.15
104         gettext-rs@0.7.0
105         gettext-sys@0.21.4
106         gio-sys@0.20.5
107         gio@0.20.5
108         glib-macros@0.20.5
109         glib-sys@0.20.5
110         glib@0.20.5
111         gobject-sys@0.20.4
112         graphene-rs@0.20.4
113         graphene-sys@0.20.4
114         gsk4-sys@0.9.3
115         gsk4@0.9.3
116         gstreamer-base-sys@0.23.3
117         gstreamer-base@0.23.3
118         gstreamer-play-sys@0.23.2
119         gstreamer-play@0.23.2
120         gstreamer-sys@0.23.3
121         gstreamer-video-sys@0.23.3
122         gstreamer-video@0.23.3
123         gstreamer@0.23.3
124         gtk4-macros@0.9.3
125         gtk4-sys@0.9.3
126         gtk4@0.9.3
127         hashbrown@0.15.1
128         heck@0.5.0
129         hermit-abi@0.4.0
130         hex@0.4.3
131         html-escape@0.2.13
132         http@0.2.12
133         httpdate@1.0.3
134         humantime@2.1.0
135         iana-time-zone-haiku@0.1.2
136         iana-time-zone@0.1.61
137         icu_collections@1.5.0
138         icu_locid@1.5.0
139         icu_locid_transform@1.5.0
140         icu_locid_transform_data@1.5.0
141         icu_normalizer@1.5.0
142         icu_normalizer_data@1.5.0
143         icu_properties@1.5.1
144         icu_properties_data@1.5.0
145         icu_provider@1.5.0
146         icu_provider_macros@1.5.0
147         idna@0.3.0
148         idna@0.5.0
149         idna@1.0.3
150         idna_adapter@1.2.0
151         image@0.24.9
152         indexmap@2.6.0
153         instant@0.1.13
154         is_terminal_polyfill@1.70.1
155         isahc@1.7.2
156         itertools@0.13.0
157         itoa@1.0.11
158         js-sys@0.3.72
159         lazy_static@1.5.0
160         libadwaita-sys@0.7.1
161         libadwaita@0.7.1
162         libc@0.2.161
163         libnghttp2-sys@0.1.10+1.61.0
164         libz-sys@1.1.20
165         linux-raw-sys@0.4.14
166         litemap@0.7.3
167         locale_config@0.3.0
168         log@0.4.22
169         malloc_buf@0.0.6
170         memchr@2.7.4
171         memoffset@0.9.1
172         mime@0.3.17
173         miniz_oxide@0.8.0
174         mpris-server@0.8.1
175         muldiv@1.0.1
176         nix@0.29.0
177         num-conv@0.1.0
178         num-integer@0.1.46
179         num-rational@0.4.2
180         num-traits@0.2.19
181         objc-foundation@0.1.1
182         objc@0.2.7
183         objc_id@0.1.1
184         once_cell@1.19.0
185         openssl-macros@0.1.1
186         openssl-probe@0.1.5
187         openssl-sys@0.9.104
188         openssl@0.10.68
189         option-operations@0.5.0
190         ordered-stream@0.2.0
191         pango-sys@0.20.4
192         pango@0.20.4
193         parking@2.2.1
194         paste@1.0.15
195         percent-encoding@2.3.1
196         pin-project-internal@1.1.7
197         pin-project-lite@0.2.15
198         pin-project@1.1.7
199         pin-utils@0.1.0
200         piper@0.2.4
201         pkg-config@0.3.31
202         png@0.17.14
203         polling@2.8.0
204         polling@3.7.3
205         powerfmt@0.2.0
206         ppv-lite86@0.2.20
207         proc-macro-crate@3.2.0
208         proc-macro2@1.0.89
209         psl-types@2.0.11
210         publicsuffix@2.2.3
211         qrcode-generator@4.1.9
212         qrcodegen@1.8.0
213         quote@1.0.37
214         rand@0.8.5
215         rand_chacha@0.3.1
216         rand_core@0.6.4
217         regex-automata@0.4.8
218         regex-syntax@0.8.5
219         regex@1.10.6
220         rustc_version@0.4.1
221         rustix@0.38.39
222         ryu@1.0.18
223         schannel@0.1.26
224         semver@1.0.23
225         serde@1.0.214
226         serde_derive@1.0.214
227         serde_json@1.0.132
228         serde_repr@0.1.19
229         serde_spanned@0.6.8
230         sha1@0.10.6
231         shlex@1.3.0
232         signal-hook-registry@1.4.2
233         simd-adler32@0.3.7
234         slab@0.4.9
235         sluice@0.5.5
236         smallvec@1.13.2
237         socket2@0.5.7
238         stable_deref_trait@1.2.0
239         static_assertions@1.1.0
240         syn@2.0.87
241         synstructure@0.13.1
242         system-deps@7.0.3
243         target-lexicon@0.12.16
244         temp-dir@0.1.14
245         tempfile@3.13.0
246         thiserror-impl@1.0.68
247         thiserror@1.0.68
248         time-core@0.1.2
249         time-macros@0.2.18
250         time@0.3.36
251         tinystr@0.7.6
252         tinyvec@1.8.0
253         tinyvec_macros@0.1.1
254         toml@0.8.19
255         toml_datetime@0.6.8
256         toml_edit@0.22.22
257         tracing-attributes@0.1.27
258         tracing-core@0.1.32
259         tracing-futures@0.2.5
260         tracing@0.1.40
261         trait-variant@0.1.2
262         typenum@1.17.0
263         uds_windows@1.1.0
264         unicode-bidi@0.3.17
265         unicode-ident@1.0.13
266         unicode-normalization@0.1.24
267         url@2.5.3
268         urlqstring@0.3.5
269         utf16_iter@1.0.5
270         utf8-width@0.1.7
271         utf8_iter@1.0.4
272         utf8parse@0.2.2
273         vcpkg@0.2.15
274         version-compare@0.2.0
275         version_check@0.9.5
276         waker-fn@1.2.0
277         wasi@0.11.0+wasi-snapshot-preview1
278         wasm-bindgen-backend@0.2.95
279         wasm-bindgen-macro-support@0.2.95
280         wasm-bindgen-macro@0.2.95
281         wasm-bindgen-shared@0.2.95
282         wasm-bindgen@0.2.95
283         winapi-i686-pc-windows-gnu@0.4.0
284         winapi-x86_64-pc-windows-gnu@0.4.0
285         winapi@0.3.9
286         windows-core@0.52.0
287         windows-sys@0.48.0
288         windows-sys@0.52.0
289         windows-sys@0.59.0
290         windows-targets@0.48.5
291         windows-targets@0.52.6
292         windows_aarch64_gnullvm@0.48.5
293         windows_aarch64_gnullvm@0.52.6
294         windows_aarch64_msvc@0.48.5
295         windows_aarch64_msvc@0.52.6
296         windows_i686_gnu@0.48.5
297         windows_i686_gnu@0.52.6
298         windows_i686_gnullvm@0.52.6
299         windows_i686_msvc@0.48.5
300         windows_i686_msvc@0.52.6
301         windows_x86_64_gnu@0.48.5
302         windows_x86_64_gnu@0.52.6
303         windows_x86_64_gnullvm@0.48.5
304         windows_x86_64_gnullvm@0.52.6
305         windows_x86_64_msvc@0.48.5
306         windows_x86_64_msvc@0.52.6
307         winnow@0.6.20
308         write16@1.0.0
309         writeable@0.5.5
310         xdg-home@1.3.0
311         yoke-derive@0.7.4
312         yoke@0.7.4
313         zbus@4.4.0
314         zbus_macros@4.4.0
315         zbus_names@3.0.0
316         zerocopy-derive@0.7.35
317         zerocopy@0.7.35
318         zerofrom-derive@0.1.4
319         zerofrom@0.1.4
320         zerovec-derive@0.10.3
321         zerovec@0.10.4
322         zvariant@4.2.0
323         zvariant_derive@4.2.0
324         zvariant_utils@2.1.0
327 NCM_API_TAG='1.5.0'
328 NCM_API_COMMIT='2af4140314eec93cb6fc0a5697a1e12bd34aeda2'
329 declare -A GIT_CRATES=(
330         [netease-cloud-music-api]="https://github.com/gmg137/netease-cloud-music-api;${NCM_API_COMMIT};netease-cloud-music-api-%commit%"
333 inherit cargo gnome2-utils meson optfeature xdg
335 DESCRIPTION="netease cloud music player based on Rust & GTK for Linux"
336 HOMEPAGE="https://github.com/gmg137/netease-cloud-music-gtk"
338 SRC_URI="
339         https://github.com/gmg137/netease-cloud-music-gtk/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
340         ${CARGO_CRATE_URIS}
343 LICENSE="GPL-3"
344 # Dependent crate licenses
345 LICENSE+="
346         Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT MPL-2.0
347         Unicode-DFS-2016
349 SLOT="0"
350 KEYWORDS="~amd64"
352 DEPEND="
353         dev-libs/glib:2
354         dev-libs/openssl:*
355         media-libs/gst-plugins-bad:1.0
356         media-libs/gst-plugins-base:1.0
357         media-libs/gst-plugins-good
358         media-libs/gst-plugins-ugly
359         media-libs/gstreamer:1.0
360         media-plugins/gst-plugins-libav
361         media-plugins/gst-plugins-soup
362         sys-apps/dbus
363         sys-libs/zlib
364         x11-libs/cairo
365         x11-libs/gdk-pixbuf:2
366         gui-libs/gtk:4
367         gui-libs/libadwaita:1
368         x11-libs/pango
370 RDEPEND="${DEPEND}"
371 BDEPEND="
372         sys-devel/gettext
375 src_unpack() {
376         cargo_src_unpack
379 src_prepare() {
380         # cargo will try to update crates online despite
381         # cargo_gen_config set [patch] table in cargo config
382         # modify Cargo.toml with unpacked git crate (ncm-api)
383         #local ncm_api_git="git = \"https://github.com/gmg137/netease-cloud-music-api.git\", tag = \"${NCM_API_TAG}\""
384         local ncm_api_git="git = \"https://gitee.com/gmg137/netease-cloud-music-api.git\", tag = \"${NCM_API_TAG}\""
385         local ncm_api_path="path = \"${WORKDIR}/netease-cloud-music-api-${NCM_API_COMMIT}\""
387         sed -i -E "s#${ncm_api_git}#${ncm_api_path}#g" "${S}/Cargo.toml" || die "ncm-api workaround failed"
389         default
392 src_configure() {
393         local emesonargs=(
394                 -Dlocaledir=share/locale
395                 -Ddatadir=share
396         )
397         use debug || EMESON_BUILDTYPE=release
398         meson_src_configure
401 pkg_postinst() {
402         optfeature "osdlyrics integration" media-plugins/osdlyrics
404         xdg_pkg_postinst
405         gnome2_schemas_update
406         gnome2_gdk_pixbuf_update
407         gnome2_giomodule_cache_update
410 pkg_postrm() {
411         xdg_pkg_postrm
412         gnome2_schemas_update
413         gnome2_giomodule_cache_update