mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-04-07 03:10:15 -04:00
www-plugins/firefoxpwa: add 2.17.1
Signed-off-by: Filip Štamcar <projects@filips.si> Part-of: https://github.com/gentoo/guru/pull/377 Signed-off-by: David Roman <davidroman96@gmail.com>
This commit is contained in:
committed by
David Roman
parent
507baff6c0
commit
b6f0a1c475
@@ -133,6 +133,8 @@ DIST filetime-0.2.25.crate 14940 BLAKE2B 1ffcbad3b2023ba5e9b2d71e279fd8c3564458b
|
||||
DIST firefoxpwa-2.14.0.tar.gz 558002 BLAKE2B 976673bdd08625d751499b1addde397965af74113abcd12893cb7f43b6abfae7f9e70d4cfeb653163c1ff2c731e1a8bdb5dd619551d64b2060bf9bc9f9504a81 SHA512 deef4924ce74ce6895d889d49781637972ae73593331a7d8971f1a848a95b462cb2badd82d88e15d531cd2342216248b9937a775fef7827bb570ea0120293828
|
||||
DIST firefoxpwa-2.14.1.tar.gz 558077 BLAKE2B 225b6cff2b0a66a39b42f274beb86f311d962371292929c0d92f214d4a9e4a6d3c6717022d06f760e2d202509f078fb0c5fb0b5b1c3fd016269ec7106db6c548 SHA512 7573900f410cf1d992f07e924be22c8fc00c21fa1e0e75313ac484ba09d06cc1789acdd71a496d5d83442f0ec2b54b3c09601c987af8a937b6f9f74c444ecb79
|
||||
DIST firefoxpwa-2.15.0.tar.gz 553132 BLAKE2B 5d27c44e87ca0e2b13ee2ece76ff5963ab07f3ebe1230cb48ec548821f5b318e1cc96d16ee84a26cbc488fc36fb82890610ce1cef339c5bf5e6bca6db124c2b6 SHA512 aa9ca3dce073ee2d46ce62896cbdf378a8d5916c4a583a649c56e43b5118233a1371a993a2945a4e8fb404a6956169aa56c9ad2c41015a6479234c7ac5163837
|
||||
DIST firefoxpwa-2.17.1-crates.tar.xz 41370764 BLAKE2B c2d1000075eb96695afeae3602b0a1bed495599ed28c44cefd939f20bcb8eba4a9096527bafa43ad774b5064ee6912944fa4fb425e3d98fa2b4dec140b8611dc SHA512 98db529176f224fcd9329be60a20479252e2d7e4531ef6d5dc6080d30ec925e5ab5640d50b301f5f5b42cecfca63250e27ba6bba97a65106dd37e3d1a1e558d6
|
||||
DIST firefoxpwa-2.17.1.tar.gz 556832 BLAKE2B a30ad1e60d2cbbe26b7b66d5144ab1bb3fdb5188e619a8be6289bcdb3c2b22fe25fb8c796d047a0a95359f44f4f43bd013ba8fecc1bd08ce774b98978c1ca811 SHA512 8eb9e168fd51820d5e961bc9c081e64a19d0c22a77c9838586f3a708ddfef9f233016d76259d79bfe26871cd054e5095256cfaa22d9657cdafbacff61519dd99
|
||||
DIST flate2-1.0.35.crate 109188 BLAKE2B 8bd6e51c3bcc06044e5b8d7ead950c3beab6c6337052fd48e86175f0fc98c8d12804274308ee515dc6156bbedb2277dfa2706cdcd7baaf2a789122473248486e SHA512 aa2c4f0ad46cfbc7d2bfbdffd226eaa37f5223a34d132d8fb2dfd04c20d15a96c4882cc377fd72afbc7d13e512f5e9934386b0390a0ab2b171d081335c58fad4
|
||||
DIST flate2-1.1.2.crate 76495 BLAKE2B 0266329bcd766be392e09ab75a135bea7cb44e9d9f1eebcabbd4aa3615d66688add24628326dad8e0e03182f0a4d65a3e23db9e7ea8c71b1775d575cef3f1e8c SHA512 467f7d6680510cf3c960e4e466876a97e5416e3605e0d4b52781547295e52f2b0e778fc06a6636ff43d9f6e47734e5835172178c4d6b85bbff597f8748d0d87d
|
||||
DIST float-cmp-0.9.0.crate 10102 BLAKE2B 46bce5f7e838a947bbbdd22b085435e795b67fd23479780f65bf1586a70e7a35f04f9af086be98bff24e2583eeac7c9688727a2ddbd1ce978526dc01abf67dfd SHA512 f8dad12ecf8a278769054fd78794999dae8dedbcfde5e77bdf6cea12fdeaadeeb2f1f3ca62df9aadc1bc3f61457236c4854d6d6923ad6d03ae7f23af600572e8
|
||||
|
||||
170
www-plugins/firefoxpwa/firefoxpwa-2.17.1.ebuild
Normal file
170
www-plugins/firefoxpwa/firefoxpwa-2.17.1.ebuild
Normal file
@@ -0,0 +1,170 @@
|
||||
# Copyright 2023-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CRATES="
|
||||
"
|
||||
|
||||
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
|
||||
"
|
||||
|
||||
if [[ ${PKGBUMPING} != ${PVR} ]]; then
|
||||
SRC_URI+="
|
||||
https://github.com/filips123/PWAsForFirefox/releases/download/v${PV}/firefoxpwa-${PV}-crates.tar.xz
|
||||
${CARGO_CRATE_URIS}
|
||||
"
|
||||
fi
|
||||
|
||||
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 ISC MIT MPL-2.0
|
||||
UoI-NCSA Unicode-3.0 ZLIB
|
||||
"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
IUSE="custom-cflags lto static"
|
||||
|
||||
DEPEND="
|
||||
!static? (
|
||||
app-arch/zstd:=
|
||||
app-arch/xz-utils:=
|
||||
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? (
|
||||
llvm-core/clang
|
||||
llvm-core/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.sys.mjs || 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 $(cargo_target_dir)/firefoxpwa
|
||||
exeinto /usr/libexec
|
||||
doexe $(cargo_target_dir)/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 $(cargo_target_dir)/completions/firefoxpwa.bash firefoxpwa
|
||||
dofishcomp $(cargo_target_dir)/completions/firefoxpwa.fish
|
||||
dozshcomp $(cargo_target_dir)/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: https://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
|
||||
}
|
||||
Reference in New Issue
Block a user