app-editors/typora: add 1.8.10, drop 1.7.6
[gentoo-zh.git] / www-apps / chatgpt-desktop / chatgpt-desktop-1.1.0.ebuild
blob02be03419f62e05de3d99247f2d33e4bf1c6c111
1 # Copyright 2023 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
4 # Autogenerated by pycargoebuild 0.10
6 EAPI=8
8 CRATES="
9         adler@1.0.2
10         ahash@0.7.6
11         aho-corasick@0.7.20
12         aho-corasick@1.0.1
13         alloc-no-stdlib@2.0.4
14         alloc-stdlib@0.2.2
15         android_system_properties@0.1.5
16         anyhow@1.0.71
17         async-broadcast@0.5.1
18         async-channel@1.8.0
19         async-executor@1.5.1
20         async-fs@1.6.0
21         async-io@1.13.0
22         async-lock@2.7.0
23         async-process@1.7.0
24         async-recursion@1.0.4
25         async-task@4.4.0
26         async-trait@0.1.68
27         atk-sys@0.15.1
28         atk@0.15.1
29         atomic-waker@1.1.1
30         attohttpc@0.22.0
31         atty@0.2.14
32         auto-launch@0.4.0
33         autocfg@1.1.0
34         base64@0.13.1
35         base64@0.21.0
36         bincode@1.3.3
37         bitflags@1.3.2
38         bitflags@2.2.1
39         block-buffer@0.10.4
40         block@0.1.6
41         blocking@1.3.1
42         brotli-decompressor@2.3.4
43         brotli@3.3.4
44         bstr@1.4.0
45         bumpalo@3.12.2
46         byte-unit@4.0.19
47         bytemuck@1.13.1
48         byteorder@1.4.3
49         bytes@1.4.0
50         cairo-rs@0.15.12
51         cairo-sys-rs@0.15.1
52         cargo_toml@0.15.2
53         cc@1.0.79
54         cesu8@1.1.0
55         cfb@0.7.3
56         cfg-expr@0.15.1
57         cfg-expr@0.9.1
58         cfg-if@1.0.0
59         chrono@0.4.24
60         cocoa-foundation@0.1.1
61         cocoa@0.24.1
62         color_quant@1.1.0
63         colored@1.9.3
64         combine@4.6.6
65         concurrent-queue@2.2.0
66         convert_case@0.4.0
67         core-foundation-sys@0.8.4
68         core-foundation@0.9.3
69         core-graphics-types@0.1.1
70         core-graphics@0.22.3
71         cpufeatures@0.2.7
72         crc32fast@1.3.2
73         crossbeam-channel@0.5.8
74         crossbeam-utils@0.8.15
75         crypto-common@0.1.6
76         cssparser-macros@0.6.0
77         cssparser@0.27.2
78         csv-core@0.1.10
79         csv@1.2.1
80         ctor@0.1.26
81         cty@0.2.2
82         dark-light@1.0.0
83         darling@0.20.1
84         darling_core@0.20.1
85         darling_macro@0.20.1
86         dconf_rs@0.3.0
87         derivative@2.2.0
88         derive_more@0.99.17
89         detect-desktop-environment@0.2.0
90         digest@0.10.6
91         dirs-next@2.0.0
92         dirs-sys-next@0.1.2
93         dirs-sys@0.3.7
94         dirs@4.0.0
95         dispatch@0.2.0
96         dlv-list@0.3.0
97         dtoa-short@0.3.3
98         dtoa@0.4.8
99         dunce@1.0.4
100         embed-resource@2.1.1
101         embed_plist@1.2.2
102         encoding_rs@0.8.32
103         enumflags2@0.7.7
104         enumflags2_derive@0.7.7
105         errno-dragonfly@0.1.2
106         errno@0.3.1
107         event-listener@2.5.3
108         fastrand@1.9.0
109         fdeflate@0.3.0
110         fern@0.6.2
111         field-offset@0.3.5
112         filetime@0.2.21
113         flate2@1.0.26
114         fnv@1.0.7
115         foreign-types-shared@0.1.1
116         foreign-types@0.3.2
117         form_urlencoded@1.1.0
118         futf@0.1.5
119         futures-channel@0.3.28
120         futures-core@0.3.28
121         futures-executor@0.3.28
122         futures-io@0.3.28
123         futures-lite@1.13.0
124         futures-macro@0.3.28
125         futures-sink@0.3.28
126         futures-task@0.3.28
127         futures-util@0.3.28
128         fxhash@0.2.1
129         gdk-pixbuf-sys@0.15.10
130         gdk-pixbuf@0.15.11
131         gdk-sys@0.15.1
132         gdk@0.15.4
133         gdkwayland-sys@0.15.3
134         gdkx11-sys@0.15.1
135         generator@0.7.4
136         generic-array@0.14.7
137         getrandom@0.1.16
138         getrandom@0.2.9
139         gio-sys@0.15.10
140         gio@0.15.12
141         glib-macros@0.15.13
142         glib-sys@0.15.10
143         glib@0.15.12
144         glob@0.3.1
145         globset@0.4.10
146         gobject-sys@0.15.10
147         gtk-sys@0.15.3
148         gtk3-macros@0.15.6
149         gtk@0.15.5
150         h2@0.3.19
151         hashbrown@0.12.3
152         heck@0.3.3
153         heck@0.4.1
154         hermit-abi@0.1.19
155         hermit-abi@0.2.6
156         hermit-abi@0.3.1
157         hex@0.4.3
158         html5ever@0.25.2
159         http-body@0.4.5
160         http-range@0.1.5
161         http@0.2.9
162         httparse@1.8.0
163         httpdate@1.0.2
164         hyper-tls@0.5.0
165         hyper@0.14.26
166         iana-time-zone-haiku@0.1.2
167         iana-time-zone@0.1.56
168         ico@0.3.0
169         ident_case@1.0.1
170         idna@0.3.0
171         ignore@0.4.18
172         image@0.24.6
173         indexmap@1.9.3
174         infer@0.12.0
175         instant@0.1.12
176         io-lifetimes@1.0.10
177         ipnet@2.7.2
178         itoa@0.4.8
179         itoa@1.0.6
180         javascriptcore-rs-sys@0.4.0
181         javascriptcore-rs@0.16.0
182         jni-sys@0.3.0
183         jni@0.20.0
184         js-sys@0.3.63
185         json-patch@1.0.0
186         kuchiki@0.8.1
187         lazy_static@1.4.0
188         libappindicator-sys@0.7.3
189         libappindicator@0.7.1
190         libc@0.2.144
191         libloading@0.7.4
192         line-wrap@0.1.1
193         linux-raw-sys@0.3.7
194         lock_api@0.4.9
195         log@0.4.17
196         loom@0.5.6
197         mac@0.1.1
198         malloc_buf@0.0.6
199         markup5ever@0.10.1
200         matchers@0.1.0
201         matches@0.1.10
202         memchr@2.5.0
203         memoffset@0.7.1
204         memoffset@0.8.0
205         mime@0.3.17
206         minisign-verify@0.2.1
207         miniz_oxide@0.7.1
208         mio@0.8.6
209         native-tls@0.2.11
210         ndk-context@0.1.1
211         ndk-sys@0.3.0
212         ndk@0.6.0
213         new_debug_unreachable@1.0.4
214         nix@0.26.2
215         nodrop@0.1.14
216         nu-ansi-term@0.46.0
217         num-integer@0.1.45
218         num-rational@0.4.1
219         num-traits@0.2.15
220         num_cpus@1.15.0
221         num_enum@0.5.11
222         num_enum_derive@0.5.11
223         num_threads@0.1.6
224         objc-foundation@0.1.1
225         objc@0.2.7
226         objc_exception@0.1.2
227         objc_id@0.1.1
228         once_cell@1.17.1
229         open@3.2.0
230         openssl-macros@0.1.1
231         openssl-probe@0.1.5
232         openssl-sys@0.9.87
233         openssl@0.10.52
234         ordered-multimap@0.4.3
235         ordered-stream@0.2.0
236         os_info@3.7.0
237         os_pipe@1.1.4
238         overload@0.1.1
239         pango-sys@0.15.10
240         pango@0.15.10
241         parking@2.1.0
242         parking_lot@0.12.1
243         parking_lot_core@0.9.7
244         pathdiff@0.2.1
245         percent-encoding@2.2.0
246         phf@0.10.1
247         phf@0.8.0
248         phf_codegen@0.8.0
249         phf_generator@0.10.0
250         phf_generator@0.8.0
251         phf_macros@0.10.0
252         phf_macros@0.8.0
253         phf_shared@0.10.0
254         phf_shared@0.8.0
255         pin-project-lite@0.2.9
256         pin-utils@0.1.0
257         pkg-config@0.3.27
258         plist@1.4.3
259         png@0.17.8
260         polling@2.8.0
261         ppv-lite86@0.2.17
262         precomputed-hash@0.1.1
263         proc-macro-crate@1.3.1
264         proc-macro-error-attr@1.0.4
265         proc-macro-error@1.0.4
266         proc-macro-hack@0.5.20+deprecated
267         proc-macro2@1.0.57
268         quick-xml@0.28.2
269         quote@1.0.27
270         rand@0.7.3
271         rand@0.8.5
272         rand_chacha@0.2.2
273         rand_chacha@0.3.1
274         rand_core@0.5.1
275         rand_core@0.6.4
276         rand_hc@0.2.0
277         rand_pcg@0.2.1
278         raw-window-handle@0.5.0
279         redox_syscall@0.2.16
280         redox_syscall@0.3.5
281         redox_users@0.4.3
282         regex-automata@0.1.10
283         regex-syntax@0.6.29
284         regex-syntax@0.7.1
285         regex@1.8.1
286         reqwest@0.11.17
287         rfd@0.10.0
288         rust-ini@0.18.0
289         rustc_version@0.4.0
290         rustix@0.37.19
291         rustversion@1.0.12
292         ryu@1.0.13
293         safemem@0.3.3
294         same-file@1.0.6
295         schannel@0.1.21
296         scoped-tls@1.0.1
297         scopeguard@1.1.0
298         security-framework-sys@2.9.0
299         security-framework@2.9.0
300         selectors@0.22.0
301         semver@1.0.17
302         serde@1.0.163
303         serde_derive@1.0.163
304         serde_json@1.0.96
305         serde_repr@0.1.12
306         serde_spanned@0.6.1
307         serde_urlencoded@0.7.1
308         serde_with@2.3.3
309         serde_with_macros@2.3.3
310         serialize-to-javascript-impl@0.1.1
311         serialize-to-javascript@0.1.1
312         servo_arc@0.1.1
313         sha1@0.10.5
314         sha2@0.10.6
315         sharded-slab@0.1.4
316         shared_child@1.0.0
317         signal-hook-registry@1.4.1
318         signal-hook@0.3.15
319         simd-adler32@0.3.5
320         siphasher@0.3.10
321         slab@0.4.8
322         smallvec@1.10.0
323         socket2@0.4.9
324         soup2-sys@0.2.0
325         soup2@0.2.1
326         stable_deref_trait@1.2.0
327         state@0.5.3
328         static_assertions@1.1.0
329         string_cache@0.8.7
330         string_cache_codegen@0.5.2
331         strsim@0.10.0
332         syn@1.0.109
333         syn@2.0.16
334         system-deps@5.0.0
335         system-deps@6.1.0
336         tao-macros@0.1.1
337         tao@0.16.1
338         tar@0.4.38
339         target-lexicon@0.12.7
340         tauri-build@1.3.0
341         tauri-codegen@1.3.0
342         tauri-macros@1.3.0
343         tauri-runtime-wry@0.13.0
344         tauri-runtime@0.13.0
345         tauri-utils@1.3.0
346         tauri-winres@0.1.1
347         tauri@1.3.0
348         tempfile@3.5.0
349         tendril@0.4.3
350         thin-slice@0.1.1
351         thiserror-impl@1.0.40
352         thiserror@1.0.40
353         thread_local@1.1.7
354         time@0.3.15
355         tinyvec@1.6.0
356         tinyvec_macros@0.1.1
357         tokio-macros@2.1.0
358         tokio-native-tls@0.3.1
359         tokio-util@0.7.8
360         tokio@1.28.1
361         toml@0.5.11
362         toml@0.7.3
363         toml_datetime@0.6.1
364         toml_edit@0.19.8
365         tower-service@0.3.2
366         tracing-attributes@0.1.24
367         tracing-core@0.1.31
368         tracing-log@0.1.3
369         tracing-subscriber@0.3.17
370         tracing@0.1.37
371         treediff@4.0.2
372         try-lock@0.2.4
373         typenum@1.16.0
374         uds_windows@1.0.2
375         unicode-bidi@0.3.13
376         unicode-ident@1.0.8
377         unicode-normalization@0.1.22
378         unicode-segmentation@1.10.1
379         url@2.3.1
380         utf-8@0.7.6
381         utf8-width@0.1.6
382         uuid@1.3.3
383         valuable@0.1.0
384         value-bag@1.0.0-alpha.9
385         vcpkg@0.2.15
386         version-compare@0.0.11
387         version-compare@0.1.1
388         version_check@0.9.4
389         vswhom-sys@0.1.2
390         vswhom@0.1.0
391         waker-fn@1.1.0
392         walkdir@2.3.3
393         want@0.3.0
394         wasi@0.11.0+wasi-snapshot-preview1
395         wasi@0.9.0+wasi-snapshot-preview1
396         wasm-bindgen-backend@0.2.86
397         wasm-bindgen-futures@0.4.36
398         wasm-bindgen-macro-support@0.2.86
399         wasm-bindgen-macro@0.2.86
400         wasm-bindgen-shared@0.2.86
401         wasm-bindgen@0.2.86
402         web-sys@0.3.63
403         webkit2gtk-sys@0.18.0
404         webkit2gtk@0.18.2
405         webview2-com-macros@0.6.0
406         webview2-com-sys@0.19.0
407         webview2-com@0.19.1
408         winapi-i686-pc-windows-gnu@0.4.0
409         winapi-util@0.1.5
410         winapi-x86_64-pc-windows-gnu@0.4.0
411         winapi@0.3.9
412         windows-bindgen@0.39.0
413         windows-implement@0.39.0
414         windows-metadata@0.39.0
415         windows-sys@0.42.0
416         windows-sys@0.45.0
417         windows-sys@0.48.0
418         windows-targets@0.42.2
419         windows-targets@0.48.0
420         windows-tokens@0.39.0
421         windows@0.37.0
422         windows@0.39.0
423         windows@0.48.0
424         windows_aarch64_gnullvm@0.42.2
425         windows_aarch64_gnullvm@0.48.0
426         windows_aarch64_msvc@0.37.0
427         windows_aarch64_msvc@0.39.0
428         windows_aarch64_msvc@0.42.2
429         windows_aarch64_msvc@0.48.0
430         windows_i686_gnu@0.37.0
431         windows_i686_gnu@0.39.0
432         windows_i686_gnu@0.42.2
433         windows_i686_gnu@0.48.0
434         windows_i686_msvc@0.37.0
435         windows_i686_msvc@0.39.0
436         windows_i686_msvc@0.42.2
437         windows_i686_msvc@0.48.0
438         windows_x86_64_gnu@0.37.0
439         windows_x86_64_gnu@0.39.0
440         windows_x86_64_gnu@0.42.2
441         windows_x86_64_gnu@0.48.0
442         windows_x86_64_gnullvm@0.42.2
443         windows_x86_64_gnullvm@0.48.0
444         windows_x86_64_msvc@0.37.0
445         windows_x86_64_msvc@0.39.0
446         windows_x86_64_msvc@0.42.2
447         windows_x86_64_msvc@0.48.0
448         winnow@0.4.1
449         winreg@0.10.1
450         winreg@0.11.0
451         wry@0.24.3
452         x11-dl@2.21.0
453         x11@2.21.0
454         xattr@0.2.3
455         xdg-home@1.0.0
456         zbus@3.13.1
457         zbus_macros@3.13.1
458         zbus_names@2.5.1
459         zip@0.6.6
460         zvariant@3.14.0
461         zvariant_derive@3.14.0
462         zvariant_utils@1.0.1
465 declare -A GIT_CRATES=(
466         [tauri-plugin-autostart]='https://github.com/lencx/tauri-plugins-workspace;bec9f6091a5a5233bc464754ebb215d07363b747;tauri-plugins-workspace-%commit%/plugins/autostart'
467         [tauri-plugin-log]='https://github.com/lencx/tauri-plugins-workspace;bec9f6091a5a5233bc464754ebb215d07363b747;tauri-plugins-workspace-%commit%/plugins/log'
468         [tauri-plugin-positioner]='https://github.com/lencx/tauri-plugins-workspace;bec9f6091a5a5233bc464754ebb215d07363b747;tauri-plugins-workspace-%commit%/plugins/positioner'
469         [tauri-plugin-window-state]='https://github.com/lencx/tauri-plugins-workspace;bec9f6091a5a5233bc464754ebb215d07363b747;tauri-plugins-workspace-%commit%/plugins/window-state'
472 inherit cargo xdg desktop toolchain-funcs
474 MY_PN="ChatGPT"
475 DESCRIPTION="ChatGPT Desktop Application"
476 HOMEPAGE="
477         https://nofwl.com
478         https://github.com/lencx/ChatGPT
480 SRC_URI="
481         https://github.com/lencx/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
482         ${CARGO_CRATE_URIS}
484 SRC_URI+="
485         https://github.com/liuyujielol/gentoo-go-deps/releases/download/${P}/${P}-node_modules.tar.xz
488 LICENSE="MIT"
489 # Dependent crate licenses
490 LICENSE+="
491         Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD ISC MIT MPL-2.0
492         Unicode-DFS-2016
494 SLOT="0"
495 KEYWORDS="~amd64"
497 RESTRICT="mirror strip"
499 DEPEND="
500         net-libs/webkit-gtk:4
501         x11-misc/appmenu-gtk-module
502         x11-libs/gtk+:3
503         gnome-base/librsvg
504         media-libs/vips
505         dev-libs/libayatana-appindicator
506         dev-libs/openssl
508 RDEPEND="${DEPEND}"
509 BDEPEND="
510         >=dev-util/tauri-cli-1.3.1
511         <dev-util/tauri-cli-2
512         net-libs/nodejs[npm]
513         dev-lang/typescript
516 S="${WORKDIR}/${MY_PN}-${PV}"
518 src_prepare() {
519         ln -sv "${WORKDIR}/node_modules" "${S}/node_modules" || die
520         mkdir -v "${S}/dist" || die
521         default
524 src_compile() {
525         debug-print-function ${FUNCNAME} "$@"
527         [[ ${_CARGO_GEN_CONFIG_HAS_RUN} ]] ||
528                 die "FATAL: please call cargo_gen_config before using ${FUNCNAME}"
530         tc-export AR CC CXX PKG_CONFIG
532         set -- cargo tauri build --bundles app $(usex debug --debug "") ${ECARGO_ARGS[@]} "$@"
533         einfo "${@}"
534         "${@}" || die "cargo build failed"
537 src_install() {
538         newbin "${S}/target/$(usex debug debug release)/chat-gpt" "${PN}"
540         newicon -s 256 "${S}/src-tauri/icons/128x128@2x.png" "${PN}.png"
541         newicon -s 128 "${S}/src-tauri/icons/128x128.png" "${PN}.png"
542         newicon -s 32 "${S}/src-tauri/icons/32x32.png" "${PN}.png"
544         make_desktop_entry "${PN}" "ChatGPT Desktop" "${PN}" "Development;"