commit:     0cb0b7e6c4d299a02e620513f8ab5b5525dc83ad
Author:     Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
AuthorDate: Fri May  3 07:42:53 2024 +0000
Commit:     David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Fri May  3 07:42:53 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=0cb0b7e6

www-plugins/firefoxpwa: unbundle zstd

Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq.in>

 www-plugins/firefoxpwa/firefoxpwa-2.12.0-r1.ebuild | 523 +++++++++++++++++++++
 1 file changed, 523 insertions(+)

diff --git a/www-plugins/firefoxpwa/firefoxpwa-2.12.0-r1.ebuild 
b/www-plugins/firefoxpwa/firefoxpwa-2.12.0-r1.ebuild
new file mode 100644
index 0000000000..11238aed74
--- /dev/null
+++ b/www-plugins/firefoxpwa/firefoxpwa-2.12.0-r1.ebuild
@@ -0,0 +1,523 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]+1.0.8
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]+3.2.1
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]+wasi-snapshot-preview1
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]+zstd.1.5.6
+       [email protected]
+       [email protected]
+       [email protected]
+       [email protected]
+"
+
+declare -A GIT_CRATES=(
+       
[mime-parse]='https://github.com/filips123/mime;57416f447a10c3343df7fe80deb0ae8a7c77cf0a;mime-%commit%/mime-parse'
+       
[mime]='https://github.com/filips123/mime;57416f447a10c3343df7fe80deb0ae8a7c77cf0a;mime-%commit%'
+       
[web_app_manifest]='https://github.com/filips123/WebAppManifestRS;477c5bbc7406eec01aea40e18338dafcec78c917;WebAppManifestRS-%commit%'
+)
+
+inherit cargo desktop flag-o-matic shell-completion toolchain-funcs xdg
+
+DESCRIPTION="A tool to install, manage and use PWAs in Mozilla Firefox (native 
component)"
+HOMEPAGE="https://pwasforfirefox.filips.si/";
+
+SRC_URI="
+       https://github.com/filips123/PWAsForFirefox/archive/v${PV}.tar.gz -> 
${P}.tar.gz
+       ${CARGO_CRATE_URIS}
+"
+
+S="${WORKDIR}/PWAsForFirefox-${PV}/native"
+
+# Main project license
+LICENSE="MPL-2.0"
+
+# Dependent crate licenses
+LICENSE+="
+       Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD MIT MPL-2.0
+       Unicode-DFS-2016 ZLIB
+"
+
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="custom-cflags lto static"
+
+# Add app-arch/bzip2 when it finally get pkg-config file
+DEPEND="
+       !static? (
+               app-arch/zstd:=
+               dev-libs/openssl:=
+       )
+"
+RDEPEND="${DEPEND}"
+# As Rust produces LLVM IR when using LTO, lld is needed to link. Furthermore,
+# as some crates contain C code, clang should be used to compile them to 
produce
+# compatible IR.
+BDEPEND="
+       lto? (
+               !custom-cflags? (
+                       sys-devel/clang
+                       sys-devel/lld
+               )
+       )
+       !static? ( virtual/pkgconfig )
+"
+
+QA_FLAGS_IGNORED="
+       usr/bin/firefoxpwa
+       usr/libexec/firefoxpwa-connector
+"
+
+src_prepare() {
+       default
+
+       # Set version in source files as per build instructions
+       sed -i "s/version = \"0.0.0\"/version = \"${PV}\"/g" Cargo.toml || die
+       sed -i "s/DISTRIBUTION_VERSION = '0.0.0'/DISTRIBUTION_VERSION = 
'${PV}'/g" \
+               userchrome/profile/chrome/pwa/chrome.jsm || die
+}
+
+src_configure() {
+       # Setup toolchain
+       export CARGO_PROFILE_RELEASE_LTO=$(usex lto true false)
+       strip-flags
+
+       if use lto; then
+               if ! use custom-cflags; then
+                       CC="${CHOST}-clang"
+                       CXX="${CHOST}-clang++"
+                       RUSTFLAGS="-Clinker=clang -Clink-arg=-fuse-ld=lld 
${RUSTFLAGS}"
+
+                       # Fix -flto[=n] not being recognized by clang.
+                       if tc-is-clang && is-flag "-flto=*"; then
+                               replace-flags "-flto=*" "-flto"
+                       fi
+               fi
+       else
+               filter-lto
+       fi
+
+       # Ask to use system dependencies
+       if ! use static; then
+               export PKG_CONFIG_ALLOW_CROSS=1
+               export ZSTD_SYS_USE_PKG_CONFIG=1
+               export OPENSSL_NO_VENDOR=1
+       fi
+
+       # Configure features
+       local myfeatures=(
+               $(usev static)
+       )
+
+       cargo_src_configure
+}
+
+src_install() {
+       # Executables
+       dobin target/*/firefoxpwa
+       exeinto /usr/libexec
+       doexe target/*/firefoxpwa-connector
+
+       # Manifest
+       local target_dirs=( /usr/lib{,64}/mozilla/native-messaging-hosts )
+       for target_dir in "${target_dirs[@]}"; do
+               insinto "${target_dir}"
+               newins manifests/linux.json firefoxpwa.json
+       done
+
+       # Completions
+       newbashcomp target/*/completions/firefoxpwa.bash firefoxpwa
+       dofishcomp target/*/completions/firefoxpwa.fish
+       dozshcomp target/*/completions/_firefoxpwa
+
+       # UserChrome
+       insinto /usr/share/firefoxpwa
+       doins -r ./userchrome
+
+       # Documentation
+       dodoc ../README.md
+       newdoc ../native/README.md README-NATIVE.md
+       newdoc ../extension/README.md README-EXTENSION.md
+
+       # AppStream Metadata
+       insinto /usr/share/metainfo
+       doins packages/appstream/si.filips.FirefoxPWA.metainfo.xml
+
+       # Icon
+       doicon -s scalable packages/appstream/si.filips.FirefoxPWA.svg
+}
+
+pkg_postinst() {
+       if [[ ! ${REPLACING_VERSIONS} ]]; then
+               elog "You have successfully installed the native part of the 
PWAsForFirefox project."
+               elog "You should also install the Firefox extension if you 
haven't already."
+               elog
+               elog "Download:"
+               elog 
"\thttps://addons.mozilla.org/firefox/addon/pwas-for-firefox/";
+       fi
+
+       xdg_pkg_postinst
+}
+
+pkg_postrm() {
+       if [[ ! ${REPLACED_BY_VERSION} ]]; then
+               elog "Runtime, profiles and web apps are still installed in 
user directories."
+               elog "You can remove them manually after this package is 
uninstalled."
+               elog "Doing that will remove all installed web apps and their 
data."
+       fi
+
+       xdg_pkg_postrm
+}

Reply via email to