net-misc/hoppscotch-bin: bump version to 24.11.0.0
[gentoo-zh.git] / media-sound / termusic / termusic-0.9.1.ebuild
blobfc83fee884a4278f4ef7bccfb37f4d5c73bc9668
1 # Copyright 2022-2024 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
4 # Autogenerated by pycargoebuild 0.13.3
6 EAPI=8
8 CRATES="
9         addr2line@0.21.0
10         adler@1.0.2
11         ahash@0.8.11
12         aho-corasick@1.1.2
13         allocator-api2@0.2.16
14         alsa-sys@0.3.1
15         alsa@0.9.0
16         android-tzdata@0.1.1
17         android_system_properties@0.1.5
18         ansi_colours@1.2.2
19         anstream@0.6.13
20         anstyle-parse@0.2.3
21         anstyle-query@1.0.2
22         anstyle-wincon@3.0.2
23         anstyle@1.0.6
24         anyhow@1.0.81
25         arrayvec@0.7.4
26         async-channel@2.2.0
27         async-compression@0.4.6
28         async-stream-impl@0.3.5
29         async-stream@0.3.5
30         async-trait@0.1.78
31         atom_syndication@0.12.2
32         atomic@0.6.0
33         autocfg@1.1.0
34         axum-core@0.4.3
35         axum@0.7.5
36         backtrace@0.3.69
37         base64@0.21.7
38         base64@0.22.0
39         bindgen@0.68.1
40         bindgen@0.69.4
41         bit_field@0.10.2
42         bitflags@1.3.2
43         bitflags@2.6.0
44         block@0.1.6
45         bstr@1.9.1
46         bumpalo@3.15.4
47         bytemuck@1.15.0
48         byteorder@1.5.0
49         bytes@1.6.0
50         camino@1.1.6
51         cassowary@0.3.0
52         cc@1.1.6
53         cesu8@1.1.0
54         cexpr@0.6.0
55         cfg-expr@0.15.7
56         cfg-if@1.0.0
57         cfg_aliases@0.1.1
58         chrono@0.4.35
59         clang-sys@1.7.0
60         clap@4.5.3
61         clap_builder@4.5.2
62         clap_derive@4.5.3
63         clap_lex@0.7.0
64         cocoa-foundation@0.1.2
65         cocoa@0.24.1
66         color_quant@1.1.0
67         colorchoice@1.0.0
68         colored@2.1.0
69         combine@4.6.6
70         concurrent-queue@2.4.0
71         console@0.15.8
72         cookie@0.17.0
73         cookie_store@0.20.0
74         core-foundation-sys@0.8.6
75         core-foundation@0.9.4
76         core-graphics-types@0.1.3
77         core-graphics@0.22.3
78         coreaudio-rs@0.11.3
79         coreaudio-sys@0.2.15
80         cpal@0.15.3
81         crc32fast@1.4.0
82         crossbeam-deque@0.8.5
83         crossbeam-epoch@0.9.18
84         crossbeam-utils@0.8.19
85         crossterm@0.25.0
86         crossterm@0.27.0
87         crossterm_winapi@0.9.1
88         crunchy@0.2.2
89         ctrlc@3.4.4
90         darling@0.14.4
91         darling_core@0.14.4
92         darling_macro@0.14.4
93         dasp_sample@0.11.0
94         data-encoding@2.6.0
95         dbus-crossroads@0.5.2
96         dbus@0.9.7
97         deranged@0.3.11
98         derive_builder@0.12.0
99         derive_builder_core@0.12.0
100         derive_builder_macro@0.12.0
101         diff@0.1.13
102         diligent-date-parser@0.1.4
103         dirs-sys@0.4.1
104         dirs@5.0.1
105         discord-rich-presence@0.2.3
106         dispatch@0.2.0
107         educe@0.6.0
108         either@1.10.0
109         encode_unicode@0.3.6
110         encoding_rs@0.8.33
111         entities@1.0.1
112         enum-ordinalize-derive@4.3.1
113         enum-ordinalize@4.3.0
114         equivalent@1.0.1
115         errno@0.3.8
116         escaper@0.1.1
117         event-listener-strategy@0.5.0
118         event-listener@5.2.0
119         exr@1.72.0
120         extended@0.1.0
121         fallible-iterator@0.3.0
122         fallible-streaming-iterator@0.1.9
123         fastrand@2.0.1
124         fdeflate@0.3.4
125         figment@0.10.15
126         fixedbitset@0.4.2
127         flate2@1.0.30
128         flexi_logger@0.28.0
129         flume@0.11.0
130         fnv@1.0.7
131         foreign-types-shared@0.1.1
132         foreign-types@0.3.2
133         form_urlencoded@1.2.1
134         futures-channel@0.3.30
135         futures-core@0.3.30
136         futures-executor@0.3.30
137         futures-io@0.3.30
138         futures-macro@0.3.30
139         futures-sink@0.3.30
140         futures-task@0.3.30
141         futures-util@0.3.30
142         futures@0.3.30
143         getrandom@0.2.12
144         gif@0.13.1
145         gimli@0.28.1
146         gio-sys@0.20.0
147         glib-macros@0.20.0
148         glib-sys@0.20.0
149         glib@0.20.0
150         glob@0.3.1
151         gobject-sys@0.20.0
152         gstreamer-sys@0.23.0
153         gstreamer@0.23.0
154         h2@0.4.4
155         half@2.4.0
156         hard-xml-derive@1.36.0
157         hard-xml@1.36.0
158         hashbrown@0.12.3
159         hashbrown@0.14.3
160         hashlink@0.9.0
161         heck@0.5.0
162         hermit-abi@0.3.9
163         hex@0.4.3
164         home@0.5.9
165         http-body-util@0.1.1
166         http-body@1.0.0
167         http@1.1.0
168         httparse@1.8.0
169         httpdate@1.0.3
170         hyper-rustls@0.26.0
171         hyper-timeout@0.5.1
172         hyper-tls@0.6.0
173         hyper-util@0.1.6
174         hyper@1.4.1
175         iana-time-zone-haiku@0.1.2
176         iana-time-zone@0.1.60
177         id3@1.13.1
178         ident_case@1.0.1
179         idna@0.3.0
180         idna@0.5.0
181         image@0.24.9
182         include_dir@0.7.3
183         include_dir_macros@0.7.3
184         indexmap@1.9.3
185         indexmap@2.2.5
186         ipnet@2.9.0
187         is-terminal@0.4.12
188         itertools@0.12.1
189         itertools@0.13.0
190         itoa@1.0.10
191         jetscii@0.5.3
192         jni-sys@0.3.0
193         jni@0.21.1
194         jobserver@0.1.31
195         jpeg-decoder@0.3.1
196         js-sys@0.3.69
197         lazy-regex-proc_macros@2.4.1
198         lazy-regex@2.5.0
199         lazy_static@1.4.0
200         lazycell@1.3.0
201         lebe@0.5.2
202         libaes@0.7.0
203         libc@0.2.153
204         libdbus-sys@0.2.5
205         libloading@0.8.3
206         libmpv-sirno@2.0.2-fork.1
207         libmpv-sys-sirno@2.0.0-fork.1
208         libredox@0.0.1
209         libsqlite3-sys@0.30.0
210         linux-raw-sys@0.4.13
211         lock_api@0.4.11
212         lofty@0.20.0
213         lofty_attr@0.11.0
214         log@0.4.21
215         mach2@0.4.2
216         make-cmd@0.1.0
217         malloc_buf@0.0.6
218         matchit@0.7.3
219         md5@0.7.0
220         mediatype@0.19.18
221         memchr@2.7.4
222         mime@0.3.17
223         minimal-lexical@0.2.1
224         miniz_oxide@0.7.2
225         mio@0.8.11
226         muldiv@1.0.1
227         multimap@0.8.3
228         native-tls@0.2.11
229         ndk-context@0.1.1
230         ndk-sys@0.5.0+25.2.9519653
231         ndk@0.8.0
232         never@0.1.0
233         nix@0.28.0
234         nom@7.1.3
235         ntapi@0.4.1
236         nu-ansi-term@0.49.0
237         num-bigint@0.4.4
238         num-conv@0.1.0
239         num-derive@0.4.2
240         num-integer@0.1.46
241         num-rational@0.4.1
242         num-traits@0.2.18
243         num_cpus@1.16.0
244         num_enum@0.7.2
245         num_enum_derive@0.7.2
246         objc@0.2.7
247         object@0.32.2
248         oboe-sys@0.6.1
249         oboe@0.6.1
250         ogg_pager@0.6.1
251         once_cell@1.19.0
252         openssl-macros@0.1.1
253         openssl-probe@0.1.5
254         openssl-sys@0.9.101
255         openssl@0.10.64
256         opml@1.1.6
257         option-ext@0.2.0
258         option-operations@0.5.0
259         orange-trees@0.1.0
260         os_str_bytes@6.6.1
261         parking@2.2.0
262         parking_lot@0.12.1
263         parking_lot_core@0.9.9
264         paste@1.0.15
265         pathdiff@0.2.1
266         peeking_take_while@0.1.2
267         percent-encoding@2.3.1
268         petgraph@0.6.4
269         pin-project-internal@1.1.5
270         pin-project-lite@0.2.13
271         pin-project@1.1.5
272         pin-utils@0.1.0
273         pinyin@0.10.0
274         pkg-config@0.3.30
275         png@0.17.13
276         powerfmt@0.2.0
277         ppv-lite86@0.2.17
278         pretty_assertions@1.4.0
279         prettyplease@0.2.16
280         proc-macro-crate@3.1.0
281         proc-macro2@1.0.86
282         prost-build@0.13.1
283         prost-derive@0.13.1
284         prost-types@0.13.1
285         prost@0.13.1
286         psl-types@2.0.11
287         publicsuffix@2.2.3
288         qoi@0.4.1
289         quick-xml@0.30.0
290         quick-xml@0.36.0
291         quote@1.0.35
292         rand@0.8.5
293         rand_chacha@0.3.1
294         rand_core@0.6.4
295         rangemap@1.5.1
296         rayon-core@1.12.1
297         rayon@1.9.0
298         redox_syscall@0.4.1
299         redox_users@0.4.4
300         regex-automata@0.4.6
301         regex-syntax@0.8.2
302         regex@1.10.3
303         reqwest@0.12.3
304         rfc822_sanitizer@0.3.6
305         rgb@0.8.37
306         ring@0.17.8
307         rss@2.0.7
308         rusqlite@0.32.0
309         rustc-demangle@0.1.23
310         rustc-hash@1.1.0
311         rustix@0.38.31
312         rustls-pemfile@2.1.2
313         rustls-pki-types@1.4.1
314         rustls-webpki@0.102.2
315         rustls@0.22.3
316         rustversion@1.0.14
317         ryu@1.0.17
318         same-file@1.0.6
319         sanitize-filename@0.5.0
320         schannel@0.1.23
321         scopeguard@1.2.0
322         security-framework-sys@2.9.1
323         security-framework@2.9.2
324         semver@1.0.22
325         serde@1.0.197
326         serde_derive@1.0.197
327         serde_json@1.0.114
328         serde_spanned@0.6.5
329         serde_urlencoded@0.7.1
330         serde_yaml@0.9.34+deprecated
331         shellexpand@3.1.0
332         shlex@1.3.0
333         signal-hook-mio@0.2.3
334         signal-hook-registry@1.4.1
335         signal-hook@0.3.17
336         simd-adler32@0.3.7
337         sixel-rs@0.3.3
338         sixel-sys@0.3.1
339         slab@0.4.9
340         smallvec@1.13.1
341         smawk@0.3.2
342         socket2@0.5.6
343         soundtouch-ffi@0.2.0
344         soundtouch@0.4.1
345         souvlaki@0.7.3
346         spin@0.9.8
347         stream-download@0.6.0
348         strsim@0.10.0
349         strsim@0.11.0
350         subtle@2.5.0
351         symphonia-bundle-flac@0.5.4
352         symphonia-bundle-mp3@0.5.4
353         symphonia-codec-aac@0.5.4
354         symphonia-codec-adpcm@0.5.4
355         symphonia-codec-alac@0.5.4
356         symphonia-codec-pcm@0.5.4
357         symphonia-codec-vorbis@0.5.4
358         symphonia-core@0.5.4
359         symphonia-format-isomp4@0.5.4
360         symphonia-format-mkv@0.5.4
361         symphonia-format-ogg@0.5.4
362         symphonia-format-riff@0.5.4
363         symphonia-metadata@0.5.4
364         symphonia-utils-xiph@0.5.4
365         symphonia@0.5.4
366         syn@1.0.109
367         syn@2.0.72
368         sync_wrapper@0.1.2
369         sync_wrapper@1.0.1
370         sysinfo@0.30.7
371         system-configuration-sys@0.5.0
372         system-configuration@0.5.1
373         system-deps@7.0.1
374         tap@1.0.1
375         target-lexicon@0.12.14
376         tempfile@3.10.1
377         termcolor@1.4.1
378         textwrap@0.15.2
379         textwrap@0.16.1
380         thiserror-impl@1.0.58
381         thiserror@1.0.58
382         tiff@0.9.1
383         time-core@0.1.2
384         time-macros@0.2.18
385         time@0.3.36
386         tinyvec@1.6.0
387         tinyvec_macros@0.1.1
388         tokio-macros@2.2.0
389         tokio-native-tls@0.3.1
390         tokio-rustls@0.25.0
391         tokio-stream@0.1.15
392         tokio-util@0.7.10
393         tokio@1.37.0
394         toml@0.8.11
395         toml_datetime@0.6.5
396         toml_edit@0.21.1
397         toml_edit@0.22.7
398         tonic-build@0.12.1
399         tonic@0.12.1
400         tower-layer@0.3.2
401         tower-service@0.3.2
402         tower@0.4.13
403         tracing-attributes@0.1.27
404         tracing-core@0.1.32
405         tracing@0.1.40
406         try-lock@0.2.5
407         tui-realm-stdlib@1.2.0
408         tui-realm-treeview@1.1.0
409         tui@0.19.0
410         tuirealm@1.8.0
411         tuirealm_derive@1.0.0
412         uncased@0.9.10
413         unicode-bidi@0.3.15
414         unicode-ident@1.0.12
415         unicode-linebreak@0.1.5
416         unicode-normalization@0.1.23
417         unicode-segmentation@1.11.0
418         unicode-width@0.1.11
419         unsafe-libyaml@0.2.11
420         untrusted@0.9.0
421         url@2.5.0
422         urlencoding@2.1.3
423         utf8parse@0.2.1
424         uuid@0.8.2
425         vcpkg@0.2.15
426         version-compare@0.2.0
427         version_check@0.9.4
428         viuer@0.7.1
429         walkdir@2.5.0
430         want@0.3.1
431         wasi@0.11.0+wasi-snapshot-preview1
432         wasm-bindgen-backend@0.2.92
433         wasm-bindgen-futures@0.4.42
434         wasm-bindgen-macro-support@0.2.92
435         wasm-bindgen-macro@0.2.92
436         wasm-bindgen-shared@0.2.92
437         wasm-bindgen@0.2.92
438         wasm-streams@0.4.0
439         web-sys@0.3.69
440         webpki-roots@0.26.1
441         weezl@0.1.8
442         which@4.4.2
443         wildmatch@2.3.3
444         winapi-i686-pc-windows-gnu@0.4.0
445         winapi-util@0.1.6
446         winapi-x86_64-pc-windows-gnu@0.4.0
447         winapi@0.3.9
448         windows-core@0.52.0
449         windows-core@0.54.0
450         windows-core@0.58.0
451         windows-implement@0.58.0
452         windows-interface@0.58.0
453         windows-result@0.1.0
454         windows-result@0.2.0
455         windows-strings@0.1.0
456         windows-sys@0.45.0
457         windows-sys@0.48.0
458         windows-sys@0.52.0
459         windows-targets@0.42.2
460         windows-targets@0.48.5
461         windows-targets@0.52.6
462         windows@0.44.0
463         windows@0.52.0
464         windows@0.54.0
465         windows@0.58.0
466         windows_aarch64_gnullvm@0.42.2
467         windows_aarch64_gnullvm@0.48.5
468         windows_aarch64_gnullvm@0.52.6
469         windows_aarch64_msvc@0.42.2
470         windows_aarch64_msvc@0.48.5
471         windows_aarch64_msvc@0.52.6
472         windows_i686_gnu@0.42.2
473         windows_i686_gnu@0.48.5
474         windows_i686_gnu@0.52.6
475         windows_i686_gnullvm@0.52.6
476         windows_i686_msvc@0.42.2
477         windows_i686_msvc@0.48.5
478         windows_i686_msvc@0.52.6
479         windows_x86_64_gnu@0.42.2
480         windows_x86_64_gnu@0.48.5
481         windows_x86_64_gnu@0.52.6
482         windows_x86_64_gnullvm@0.42.2
483         windows_x86_64_gnullvm@0.48.5
484         windows_x86_64_gnullvm@0.52.6
485         windows_x86_64_msvc@0.42.2
486         windows_x86_64_msvc@0.48.5
487         windows_x86_64_msvc@0.52.6
488         winnow@0.5.40
489         winnow@0.6.5
490         winreg@0.52.0
491         xmlparser@0.13.6
492         yansi@0.5.1
493         ytd-rs@0.1.7
494         zerocopy-derive@0.7.32
495         zerocopy@0.7.32
496         zeroize@1.7.0
497         zune-inflate@0.2.54
500 inherit cargo
502 DESCRIPTION="Terminal Music and Podcast Player written in Rust"
503 HOMEPAGE="https://github.com/tramhao/termusic"
504 SRC_URI="
505         https://github.com/tramhao/termusic/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
506         ${CARGO_CRATE_URIS}
509 LICENSE="MIT"
510 # Dependent crate licenses
511 LICENSE+="
512         Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD GPL-3+ ISC LGPL-2.1
513         LGPL-3+ MIT MPL-2.0 Unicode-DFS-2016
515 SLOT="0"
516 KEYWORDS="~amd64"
518 IUSE="+symphonia gst mpv +yt-dlp"
519 REQUIRED_USE="^^ ( symphonia gst mpv )"
521 DEPEND="
522         symphonia? (
523                 media-libs/alsa-lib
524         )
526         gst? (
527                 dev-libs/glib:2
528                 media-libs/gstreamer:1.0
529                 media-libs/gst-plugins-base:1.0
530                 media-libs/gst-plugins-bad:1.0
531                 media-libs/gst-plugins-good
532                 media-libs/gst-plugins-ugly
533                 media-plugins/gst-plugins-libav
534         )
535         mpv? (
536                 media-video/mpv[libmpv]
537         )
538         media-libs/libsixel
539         dev-libs/protobuf
540         sys-apps/dbus
542 RDEPEND="
543         ${DEPEND}
544         yt-dlp? (
545                 media-video/ffmpeg
546                 net-misc/yt-dlp
547         )
550 src_configure() {
551         # default backend is *symphonia*
552         # feature gates : *gst* *mpv*
553         if use symphonia; then
554                 local myfeatures=(
555                         cover
556                 )
557                 cargo_src_configure
558         else
559                 local myfeatures=(
560                         cover
561                         $(usev gst)
562                         $(usev mpv)
563                 )
564                 cargo_src_configure --no-default-features
565         fi
568 src_install() {
569         dobin "$(cargo_target_dir)/termusic"
570         dobin "$(cargo_target_dir)/termusic-server"
572         local DOCS=(
573                 CHANGELOG.md README.md
574         )
575         einstalldocs
578 pkg_postinst() {
579         if [[ -z ${REPLACING_VERSIONS} ]]; then
580                 einfo "Configuration files for ${CATEGORY}/${PN} will be"
581                 einfo "written to \$HOME/.config/${PN} at first launch."
582         fi
584         einfo "For x11-terms/kitty, album cover support is built in"
585         einfo "Using media-gfx/ueberzugpp or media-gfx/ueberzug for other terminals"