diff options
Diffstat (limited to 'gui-apps/espanso/espanso-2.1.8-r1.ebuild')
-rw-r--r-- | gui-apps/espanso/espanso-2.1.8-r1.ebuild | 436 |
1 files changed, 436 insertions, 0 deletions
diff --git a/gui-apps/espanso/espanso-2.1.8-r1.ebuild b/gui-apps/espanso/espanso-2.1.8-r1.ebuild new file mode 100644 index 000000000..1e900fef2 --- /dev/null +++ b/gui-apps/espanso/espanso-2.1.8-r1.ebuild @@ -0,0 +1,436 @@ +# Copyright 2023-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Auto-Generated by cargo-ebuild 0.5.4 + +EAPI=8 + +CRATES=" + adler@1.0.2 + aho-corasick@0.7.19 + ansi_term@0.11.0 + ansi_term@0.12.1 + anyhow@1.0.38 + arrayref@0.3.6 + arrayvec@0.5.2 + atty@0.2.14 + autocfg@1.0.1 + base64@0.13.0 + bitflags@0.9.1 + bitflags@1.2.1 + blake2b_simd@0.5.11 + block@0.1.6 + block-buffer@0.9.0 + bstr@0.2.15 + bumpalo@3.7.0 + byteorder@1.4.3 + bytes@1.1.0 + bzip2@0.4.3 + bzip2-sys@0.1.11+1.0.8 + calloop@0.9.3 + caps@0.5.2 + cc@1.0.73 + cfg-if@0.1.10 + cfg-if@1.0.0 + chrono@0.4.19 + clap@2.33.3 + colored@2.0.0 + console@0.14.1 + const-sha1@0.2.0 + const_format@0.2.14 + const_format_proc_macros@0.2.14 + constant_time_eq@0.1.5 + core-foundation@0.9.1 + core-foundation-sys@0.8.2 + cpufeatures@0.2.1 + crc32fast@1.2.1 + crossbeam@0.8.1 + crossbeam-channel@0.5.0 + crossbeam-deque@0.8.1 + crossbeam-epoch@0.9.8 + crossbeam-queue@0.3.5 + crossbeam-utils@0.8.8 + cstr_core@0.2.5 + ctor@0.1.20 + cty@0.2.2 + dbus@0.9.1 + dialoguer@0.8.0 + diff@0.1.12 + difference@2.0.0 + digest@0.9.0 + dirs@1.0.5 + dirs@3.0.1 + dirs-sys@0.3.5 + dlib@0.5.0 + downcast@0.10.0 + downcast-rs@1.2.0 + dtoa@0.4.7 + dunce@1.0.1 + either@1.6.1 + encode_unicode@0.3.6 + encoding_rs@0.8.28 + enum-as-inner@0.3.3 + errno@0.2.7 + errno-dragonfly@0.1.1 + filetime@0.2.14 + flate2@1.0.20 + float-cmp@0.8.0 + fnv@1.0.7 + foreign-types@0.3.2 + foreign-types-shared@0.1.1 + form_urlencoded@1.0.1 + fragile@1.0.0 + fs2@0.4.3 + fs_extra@1.2.0 + fsevent@0.4.0 + fsevent-sys@2.0.1 + fuchsia-cprng@0.1.1 + fuchsia-zircon@0.3.3 + fuchsia-zircon-sys@0.3.3 + futf@0.1.4 + futures-channel@0.3.17 + futures-core@0.3.17 + futures-io@0.3.17 + futures-macro@0.3.17 + futures-sink@0.3.17 + futures-task@0.3.17 + futures-util@0.3.17 + gcc@0.3.55 + generic-array@0.14.4 + getrandom@0.1.16 + getrandom@0.2.2 + glob@0.3.0 + h2@0.3.4 + hashbrown@0.11.2 + heck@0.3.2 + hermit-abi@0.1.18 + hex@0.4.3 + html2text@0.2.1 + html5ever@0.25.1 + http@0.2.4 + http-body@0.4.3 + httparse@1.5.1 + httpdate@1.0.1 + hyper@0.14.12 + hyper-rustls@0.22.1 + hyper-tls@0.5.0 + idna@0.2.3 + include_dir@0.6.0 + include_dir_impl@0.6.0 + indexmap@1.7.0 + indoc@1.0.3 + inotify@0.7.1 + inotify-sys@0.1.5 + iovec@0.1.4 + ipnet@2.3.1 + itertools@0.10.0 + itoa@0.4.7 + js-sys@0.3.53 + kernel32-sys@0.2.2 + lazy_static@1.4.0 + lazycell@1.3.0 + libc@0.2.126 + libdbus-sys@0.2.1 + libloading@0.7.0 + linked-hash-map@0.5.4 + log@0.4.14 + log-panics@2.0.0 + mac@0.1.1 + mac-notification-sys@0.3.0 + malloc_buf@0.0.6 + maplit@1.0.2 + markdown@0.3.0 + markup5ever@0.10.1 + markup5ever_rcdom@0.1.0 + matches@0.1.9 + memchr@2.5.0 + memmap2@0.3.1 + memoffset@0.6.5 + mime@0.3.16 + miniz_oxide@0.4.4 + mio@0.6.23 + mio@0.7.13 + mio-extras@2.0.6 + miow@0.2.2 + miow@0.3.7 + mockall@0.9.1 + mockall_derive@0.9.1 + named_pipe@0.4.1 + native-tls@0.2.8 + natord@1.0.9 + net2@0.2.37 + new_debug_unreachable@1.0.4 + nix@0.22.3 + nix@0.24.2 + nom@6.1.2 + normalize-line-endings@0.3.0 + notify@4.0.17 + notify-rust@4.2.2 + ntapi@0.3.6 + num-integer@0.1.44 + num-traits@0.2.14 + num_cpus@1.13.0 + objc@0.2.7 + objc-foundation@0.1.1 + objc_id@0.1.1 + once_cell@1.8.0 + opaque-debug@0.3.0 + opener@0.5.0 + openssl@0.10.36 + openssl-probe@0.1.4 + openssl-sys@0.9.66 + ordered-float@2.1.1 + output_vt100@0.1.2 + path-slash@0.1.4 + percent-encoding@2.1.0 + phf@0.8.0 + phf_codegen@0.8.0 + phf_generator@0.8.0 + phf_shared@0.8.0 + pin-project-lite@0.2.7 + pin-utils@0.1.0 + pipeline@0.5.0 + pkg-config@0.3.19 + ppv-lite86@0.2.10 + precomputed-hash@0.1.1 + predicates@1.0.8 + predicates-core@1.0.2 + predicates-tree@1.0.2 + pretty_assertions@0.7.2 + proc-macro-hack@0.5.19 + proc-macro-nested@0.1.7 + proc-macro2@1.0.24 + pure-rust-locales@0.5.6 + quote@0.3.15 + quote@1.0.9 + rand@0.4.6 + rand@0.7.3 + rand@0.8.3 + rand_chacha@0.2.2 + rand_chacha@0.3.0 + rand_core@0.3.1 + rand_core@0.4.2 + rand_core@0.5.1 + rand_core@0.6.2 + rand_hc@0.2.0 + rand_hc@0.3.0 + rand_pcg@0.2.1 + rayon@1.5.3 + rayon-core@1.9.3 + rdrand@0.4.0 + redox_syscall@0.1.57 + redox_syscall@0.2.5 + redox_users@0.3.5 + regex@1.5.5 + regex-automata@0.1.10 + regex-syntax@0.6.27 + remove_dir_all@0.5.3 + reqwest@0.11.4 + ring@0.16.20 + rust-argon2@0.8.3 + rustls@0.19.1 + ryu@1.0.5 + same-file@1.0.6 + schannel@0.1.19 + scoped-tls@1.0.0 + scopeguard@1.1.0 + sct@0.6.1 + security-framework@2.3.1 + security-framework-sys@2.3.0 + serde@1.0.123 + serde_derive@1.0.123 + serde_json@1.0.62 + serde_urlencoded@0.7.0 + serde_yaml@0.8.17 + sha2@0.9.6 + simplelog@0.9.0 + siphasher@0.3.6 + slab@0.4.3 + smallvec@1.6.1 + smithay-client-toolkit@0.15.4 + socket2@0.4.1 + spin@0.5.2 + squote@0.1.2 + string_cache@0.8.1 + string_cache_codegen@0.5.1 + strsim@0.8.0 + strum@0.8.0 + strum@0.20.0 + strum_macros@0.8.0 + strum_macros@0.20.1 + syn@0.11.11 + syn@1.0.67 + synom@0.11.3 + sys-locale@0.1.0 + sysinfo@0.24.5 + tempdir@0.3.7 + tempfile@3.2.0 + tendril@0.4.2 + termcolor@1.1.2 + terminal_size@0.1.17 + test-case@1.1.0 + textwrap@0.11.0 + thiserror@1.0.23 + thiserror-impl@1.0.23 + time@0.1.44 + tinyvec@1.3.1 + tinyvec_macros@0.1.0 + tokio@1.10.1 + tokio-native-tls@0.3.0 + tokio-rustls@0.22.0 + tokio-util@0.6.7 + toml@0.5.8 + tower-service@0.3.1 + tracing@0.1.26 + tracing-core@0.1.19 + treeline@0.1.0 + try-lock@0.2.3 + typenum@1.14.0 + unicase@2.6.0 + unicode-bidi@0.3.6 + unicode-normalization@0.1.19 + unicode-segmentation@1.7.1 + unicode-width@0.1.8 + unicode-xid@0.0.4 + unicode-xid@0.2.1 + unindent@0.1.7 + untrusted@0.7.1 + url@2.2.2 + utf-8@0.7.6 + vcpkg@0.2.15 + vec_map@0.8.2 + version_check@0.9.2 + wait-timeout@0.2.0 + walkdir@2.3.1 + want@0.3.0 + wasi-0.9.0+wasi-snapshot@preview1 + wasi-0.10.0+wasi-snapshot@preview1 + wasm-bindgen@0.2.76 + wasm-bindgen-backend@0.2.76 + wasm-bindgen-futures@0.4.26 + wasm-bindgen-macro@0.2.76 + wasm-bindgen-macro-support@0.2.76 + wasm-bindgen-shared@0.2.76 + wayland-client@0.29.5 + wayland-commons@0.29.5 + wayland-cursor@0.29.5 + wayland-protocols@0.29.5 + wayland-scanner@0.29.5 + wayland-sys@0.29.5 + web-sys@0.3.53 + webpki@0.21.4 + webpki-roots@0.21.1 + widestring@0.4.3 + winapi@0.2.8 + winapi@0.3.9 + winapi-build@0.1.1 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-util@0.1.5 + winapi-x86_64-pc-windows-gnu@0.4.0 + windows@0.3.1 + windows_gen@0.3.1 + windows_gen_macros@0.3.1 + windows_macros@0.3.1 + windows_winmd@0.3.1 + windows_winmd_macros@0.3.1 + winreg@0.7.0 + winreg@0.9.0 + winres@0.1.11 + winrt@0.4.0 + winrt-notification@0.2.2 + winrt-notification@0.3.1 + ws2_32-sys@0.2.1 + xcursor@0.3.3 + xml-rs@0.6.1 + xml-rs@0.8.3 + xml5ever@0.16.1 + yaml-rust@0.4.5 + zeroize@1.3.0 + zip@0.5.13 +" + +# Needed because espanso-migrate depends on the git version of yaml-rust +declare -A GIT_CRATES=( + [yaml-rust]="https://github.com/federico-terzi/yaml-rust;454221bebabc93307bbf7aa7f556407dd3027363" +) + +inherit cargo desktop fcaps linux-info systemd xdg-utils + +DESCRIPTION="Cross-platform Text Expander written in Rust" +HOMEPAGE="https://espanso.org" +SRC_URI=" + https://github.com/espanso/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + ${CARGO_CRATE_URIS} +" + +# License set may be more restrictive as OR is not respected +# use cargo-license for a more accurate license picture +LICENSE="0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 Boost-1.0 CC0-1.0 GPL-3 ISC MIT MPL-2.0 Unlicense ZLIB" +SLOT="0" +KEYWORDS="~amd64" +IUSE="wayland" + +DEPEND=" + acct-group/input + dev-libs/openssl + x11-libs/wxGTK + wayland? ( + x11-libs/libxkbcommon[wayland] + ) + !wayland? ( + x11-libs/libX11 + x11-libs/libXtst + x11-libs/libxkbcommon[X] + ) +" +RDEPEND="${DEPEND}" + +QA_FLAGS_IGNORED="usr/bin/${PN}" + +pkg_setup() { + CONFIG_CHECK="~INPUT_UINPUT" + ERROR_INPUT_UINPUT="Espanso with Wayland needs the UINPUT" + ERROR_INPUT_UINPUT+=" input device driver to detect user inputs. Without it," + ERROR_INPUT_UINPUT+=" Espanso will not work as intended" + + # Now do the actual checks setup above, but only when using wayland + use wayland && linux-info_pkg_setup + rust_pkg_setup +} + +src_configure() { + local myfeatures=( + modulo + native-tls + $(usev wayland) + ) + cargo_src_configure --verbose --no-default-features +} + +src_compile() { + cargo_src_compile -p "${PN}" +} + +src_install() { + cargo_src_install --path "${PN}" + + newicon -s 128 "espanso/src/res/linux/icon.png" "${PN}.png" + domenu "espanso/src/res/linux/${PN}.desktop" + + # install the systemd-service (user level) + sed -i "s|{{{espanso_path}}}|/usr/bin/espanso|g" "espanso/src/res/linux/systemd.service" || die + systemd_newuserunit "espanso/src/res/linux/systemd.service" "${PN}.service" +} + +pkg_postinst() { + # See https://espanso.org/docs/install/linux/#adding-the-required-capabilities + use wayland && fcaps cap_dac_override "usr/bin/${PN}" + + xdg_icon_cache_update + xdg_desktop_database_update +} + +pkg_postrm() { + xdg_icon_cache_update + xdg_desktop_database_update +} |