diff options
| author | root <root@alpha.trunkmasters.com> | 2026-09-15 16:25:10 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-09-15 16:25:10 -0500 |
| commit | 709cefca42ef2a976a9aff8afb44a95ffc545b79 (patch) | |
| tree | 4a0c9baada24031c4187bce895ad742f7f5eb85f /www-client/microsoft-edge-dev | |
| parent | c012d247f03a893c117c88f73bcf6cb6494dcd22 (diff) | |
| download | baldeagleos-repo-709cefca42ef2a976a9aff8afb44a95ffc545b79.tar.gz baldeagleos-repo-709cefca42ef2a976a9aff8afb44a95ffc545b79.tar.xz baldeagleos-repo-709cefca42ef2a976a9aff8afb44a95ffc545b79.zip | |
Adding metadata
Diffstat (limited to 'www-client/microsoft-edge-dev')
| -rw-r--r-- | www-client/microsoft-edge-dev/metadata.xml | 2 | ||||
| -rw-r--r-- | www-client/microsoft-edge-dev/microsoft-edge-dev-155.0.4268.0-r1.ebuild | 165 |
2 files changed, 167 insertions, 0 deletions
diff --git a/www-client/microsoft-edge-dev/metadata.xml b/www-client/microsoft-edge-dev/metadata.xml index 7f32d2114308..5109c133ebc6 100644 --- a/www-client/microsoft-edge-dev/metadata.xml +++ b/www-client/microsoft-edge-dev/metadata.xml @@ -10,6 +10,8 @@ sophisticated technology to make the web faster, safer, and easier. </longdescription> <use> + <flag name="gtk3">Pull in <pkg>x11-libs/gtk+</pkg> for the user interface.</flag> + <flag name="gtk4">Pull in <pkg>gui-libs/gtk</pkg> for the user interface.</flag> <flag name="mip">Install Microsoft Information Protection plugin.</flag> </use> <origin>baldeagleos-repo</origin> diff --git a/www-client/microsoft-edge-dev/microsoft-edge-dev-155.0.4268.0-r1.ebuild b/www-client/microsoft-edge-dev/microsoft-edge-dev-155.0.4268.0-r1.ebuild new file mode 100644 index 000000000000..801a663b7ab4 --- /dev/null +++ b/www-client/microsoft-edge-dev/microsoft-edge-dev-155.0.4268.0-r1.ebuild @@ -0,0 +1,165 @@ +# Copyright 2011-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit chromium-2 desktop pax-utils unpacker xdg + +DESCRIPTION="The web browser from Microsoft" +HOMEPAGE="https://www.microsoft.com/edge" + +if [[ ${PN} == microsoft-edge ]]; then + MY_PN=${PN}-stable +else + MY_PN=${PN} +fi + +MY_P="${MY_PN}_${PV}-1" +SRC_URI="https://packages.microsoft.com/repos/edge/pool/main/m/${MY_PN}/${MY_P}_amd64.deb" +S=${WORKDIR} + +LICENSE="microsoft-edge" +SLOT="0" +KEYWORDS="-* amd64" + +IUSE="gtk3 +gtk4 qt6" +RESTRICT="bindist mirror strip" +REQUIRED_USE="|| ( gtk3 gtk4 )" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + app-crypt/libsecret + app-misc/ca-certificates + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + media-fonts/liberation-fonts + media-libs/alsa-lib + media-libs/mesa[gbm(+)] + net-misc/curl[ssl] + net-print/cups + sys-apps/dbus + sys-apps/util-linux + sys-libs/glibc + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/libxshmfence + x11-libs/pango + x11-misc/xdg-utils + gtk3? ( x11-libs/gtk+:3[X] ) + gtk4? ( gui-libs/gtk:4[X] ) + qt6? ( dev-qt/qtbase:6[gui,widgets] ) +" + +QA_PREBUILT="*" +QA_DESKTOP_FILE="usr/share/applications/microsoft-edge.*\\.desktop" +EDGE_HOME="opt/microsoft/msedge${PN#microsoft-edge}" + +pkg_nofetch() { + eerror "Please wait 24 hours and sync your tree before reporting a bug for microsoft-edge fetch failures." +} + +pkg_pretend() { + # Protect against people using autounmask overzealously + use amd64 || die "microsoft-edge only works on amd64" +} + +pkg_setup() { + chromium_suid_sandbox_check_kernel_config +} + +src_unpack() { + : +} + +src_install() { + dodir / + cd "${ED}" || die + unpacker + + rm -f _gpgorigin || die + + mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die + + # Microsoft Edge comes with its own bundled cron + # scripts which invoke `apt` directly. Useless on Gentoo! + rm -r etc/cron.daily || die "Failed to remove cron scripts" + rm -r "${EDGE_HOME}"/cron || die "Failed to remove cron scripts" + + gzip -d usr/share/doc/${PF}/changelog.gz || die + gzip -d usr/share/man/man1/${MY_PN}.1.gz || die + if [[ -L usr/share/man/man1/${PN}.1.gz ]]; then + rm usr/share/man/man1/${PN}.1.gz || die + dosym ${MY_PN}.1 usr/share/man/man1/${PN}.1 + fi + + local size + # channel suffix: "" stable, "_channel" for beta/dev. + local channel=${PN#microsoft-edge} + channel=${channel/-/_} + for size in 16 24 32 48 64 128 256 ; do + newicon -s ${size} "${EDGE_HOME}/product_logo_${size}${channel}.png" ${PN}.png + done + + rm "${EDGE_HOME}/libqt5_shim.so" || die + if ! use qt6; then + rm "${EDGE_HOME}/libqt6_shim.so" || die + fi + + pax-mark m "${EDGE_HOME}/msedge" + + # MS Edge includes channel information in the wrapper script, so rather than replace it like with Chromium, + # We'll inject additional logic to look for and use user-defined flags in /etc/msedge/*. + local wrapper="${ED}/${EDGE_HOME}/${PN}" + local inject="${T}/msedge-wrapper-flags.inc" + local wrapper_tmp="${T}/msedge-wrapper.new" + + cat > "${inject}" <<'EOF' + +# Allow the user to override command-line flags, bug #357629. +for f in /etc/msedge/*; do + case "${f}" in + *~|*.bak|*.old|*.swp|*.tmp|*/.*) continue ;; + esac + [[ -f "${f}" ]] && source "${f}" +done + +# Prefer user-defined MSEDGE_USER_FLAGS over MSEDGE_FLAGS from /etc/msedge/default. +MSEDGE_FLAGS=${MSEDGE_USER_FLAGS:-"$MSEDGE_FLAGS"} + +EOF + + { + # shebang and copyright notice; hasn't changed in 15 years. + head -n 5 "${wrapper}" || die + cat "${inject}" || die + tail -n +7 "${wrapper}" | \ + sed 's|^exec -a "\$0" "\$HERE/msedge" "\$@"$|exec -a "$0" "$HERE/msedge" ${MSEDGE_FLAGS} "$@"|' || die + } > "${wrapper_tmp}" || die "Failed to build wrapper with injected logic" + + cat "${wrapper_tmp}" > "${wrapper}" || die "Failed to update wrapper logic" + rm -f "${wrapper_tmp}" || die "Failed to clean temporary wrapper" + + grep -q 'exec -a "\$0" "\$HERE/msedge" ${MSEDGE_FLAGS} "\$@"' "${wrapper}" || + die "Failed to update wrapper exec flags" +} + +pkg_postinst() { + if use gtk4 && has_version x11-libs/gtk+; then + einfo "GTK4 has been selected, however x11-libs/gtk+ is also installed." + einfo "MS Edge will prefer GTK3 at runtime as a result; if you prefer GTK4," + einfo "please create \`/etc/msedge/default\` and set \`MSEDGE_FLAGS=\"--gtk-version=4\"\`" + fi + xdg_desktop_database_update + xdg_icon_cache_update +} |
