diff --git a/pkgs/by-name/mi/microsoft-edge/package.nix b/pkgs/by-name/mi/microsoft-edge/package.nix deleted file mode 100644 index 2a98eabf0032..000000000000 --- a/pkgs/by-name/mi/microsoft-edge/package.nix +++ /dev/null @@ -1,293 +0,0 @@ -{ - fetchurl, - lib, - makeWrapper, - patchelf, - stdenv, - - # Linked dynamic libraries. - alsa-lib, - at-spi2-atk, - at-spi2-core, - atk, - cairo, - cups, - dbus, - expat, - fontconfig, - freetype, - gcc-unwrapped, - gdk-pixbuf, - glib, - gtk3, - gtk4, - libdrm, - libglvnd, - libkrb5, - libX11, - libxcb, - libXcomposite, - libXcursor, - libXdamage, - libXext, - libXfixes, - libXi, - libxkbcommon, - libXrandr, - libXrender, - libXScrnSaver, - libxshmfence, - libXtst, - libgbm, - nspr, - nss, - pango, - pipewire, - vulkan-loader, - wayland, # ozone/wayland - - # Command line programs - coreutils, - - # command line arguments which are always set e.g "--disable-gpu" - commandLineArgs ? "", - - # Will crash without. - systemd, - - # Loaded at runtime. - libexif, - pciutils, - - # Additional dependencies according to other distros. - ## Ubuntu - curl, - liberation_ttf, - util-linux, - wget, - xdg-utils, - ## Arch Linux. - flac, - harfbuzz, - icu, - libopus, - libpng, - snappy, - speechd-minimal, - ## Gentoo - bzip2, - libcap, - - # Necessary for USB audio devices. - libpulseaudio, - pulseSupport ? true, - - adwaita-icon-theme, - gsettings-desktop-schemas, - - # For video acceleration via VA-API (--enable-features=VaapiVideoDecoder) - libva, - libvaSupport ? true, - - # For Vulkan support (--enable-features=Vulkan) - addDriverRunpath, - - # Edge AAD sync - cacert, - libsecret, - - # Edge Specific - libuuid, -}: - -let - - opusWithCustomModes = libopus.override { withCustomModes = true; }; - - deps = - [ - alsa-lib - at-spi2-atk - at-spi2-core - atk - bzip2 - cacert - cairo - coreutils - cups - curl - dbus - expat - flac - fontconfig - freetype - gcc-unwrapped.lib - gdk-pixbuf - glib - harfbuzz - icu - libcap - libdrm - liberation_ttf - libexif - libglvnd - libkrb5 - libpng - libX11 - libxcb - libXcomposite - libXcursor - libXdamage - libXext - libXfixes - libXi - libxkbcommon - libXrandr - libXrender - libXScrnSaver - libxshmfence - libXtst - libgbm - nspr - nss - opusWithCustomModes - pango - pciutils - pipewire - snappy - speechd-minimal - systemd - util-linux - vulkan-loader - wayland - wget - libsecret - libuuid - ] - ++ lib.optional pulseSupport libpulseaudio - ++ lib.optional libvaSupport libva - ++ [ - gtk3 - gtk4 - ]; -in - -stdenv.mkDerivation (finalAttrs: { - pname = "microsoft-edge"; - version = "136.0.3240.76"; - - src = fetchurl { - url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_${finalAttrs.version}-1_amd64.deb"; - hash = "sha256-biNM1exJ/xUcmhZjH7ZcFF9cYVqsPavbbtsJnRVlyFo="; - }; - - # With strictDeps on, some shebangs were not being patched correctly - # ie, $out/share/microsoft/msedge/microsoft-edge - strictDeps = false; - - nativeBuildInputs = [ - makeWrapper - patchelf - ]; - - buildInputs = [ - # needed for XDG_ICON_DIRS - adwaita-icon-theme - glib - gtk3 - gtk4 - # needed for GSETTINGS_SCHEMAS_PATH - gsettings-desktop-schemas - ]; - - unpackPhase = '' - runHook preUnpack - ar x $src - tar xf data.tar.xz - runHook postUnpack - ''; - - rpath = lib.makeLibraryPath deps + ":" + lib.makeSearchPathOutput "lib" "lib64" deps; - binpath = lib.makeBinPath deps; - - installPhase = '' - runHook preInstall - - appname=msedge - dist=stable - - exe=$out/bin/microsoft-edge - - mkdir -p $out/bin $out/share - cp -v -a opt/* $out/share - cp -v -a usr/share/* $out/share - - # replace bundled vulkan-loader - rm -v $out/share/microsoft/$appname/libvulkan.so.1 - ln -v -s -t "$out/share/microsoft/$appname" "${lib.getLib vulkan-loader}/lib/libvulkan.so.1" - - substituteInPlace $out/share/microsoft/$appname/microsoft-edge \ - --replace-fail 'CHROME_WRAPPER' 'WRAPPER' - substituteInPlace $out/share/applications/microsoft-edge.desktop \ - --replace-fail /usr/bin/microsoft-edge-$dist $exe - substituteInPlace $out/share/gnome-control-center/default-apps/microsoft-edge.xml \ - --replace-fail /opt/microsoft/msedge $exe - substituteInPlace $out/share/menu/microsoft-edge.menu \ - --replace-fail /opt $out/share \ - --replace-fail $out/share/microsoft/$appname/microsoft-edge $exe - - for icon_file in $out/share/microsoft/msedge/product_logo_[0-9]*.png; do - num_and_suffix="''${icon_file##*logo_}" - if [ $dist = "stable" ]; then - icon_size="''${num_and_suffix%.*}" - else - icon_size="''${num_and_suffix%_*}" - fi - logo_output_prefix="$out/share/icons/hicolor" - logo_output_path="$logo_output_prefix/''${icon_size}x''${icon_size}/apps" - mkdir -p "$logo_output_path" - mv "$icon_file" "$logo_output_path/microsoft-edge.png" - done - - # "--simulate-outdated-no-au" disables auto updates and browser outdated popup - makeWrapper "$out/share/microsoft/$appname/microsoft-edge" "$exe" \ - --prefix LD_LIBRARY_PATH : "$rpath" \ - --prefix PATH : "$binpath" \ - --suffix PATH : "${lib.makeBinPath [ xdg-utils ]}" \ - --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:${addDriverRunpath.driverLink}/share" \ - --set SSL_CERT_FILE "${cacert}/etc/ssl/certs/ca-bundle.crt" \ - --set CHROME_WRAPPER "microsoft-edge-$dist" \ - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" \ - --add-flags "--simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'" \ - --add-flags ${lib.escapeShellArg commandLineArgs} - - # Make sure that libGL and libvulkan are found by ANGLE libGLESv2.so - patchelf --set-rpath $rpath $out/share/microsoft/$appname/lib*GL* - - # Edge specific set liboneauth - patchelf --set-rpath $rpath $out/share/microsoft/$appname/liboneauth.so - - for elf in $out/share/microsoft/$appname/{msedge,msedge-sandbox,msedge_crashpad_handler}; do - patchelf --set-rpath $rpath $elf - patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $elf - done - - runHook postInstall - ''; - - passthru.updateScript = ./update.py; - - meta = { - changelog = "https://learn.microsoft.com/en-us/deployedge/microsoft-edge-relnote-stable-channel"; - description = "Web browser from Microsoft"; - homepage = "https://www.microsoft.com/en-us/edge"; - license = lib.licenses.unfree; - mainProgram = "microsoft-edge"; - maintainers = with lib.maintainers; [ - kuwii - rhysmdnz - ]; - platforms = [ "x86_64-linux" ]; - sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; - }; -}) diff --git a/pkgs/by-name/mi/microsoft-edge/update.py b/pkgs/by-name/mi/microsoft-edge/update.py deleted file mode 100755 index e0d007c12f17..000000000000 --- a/pkgs/by-name/mi/microsoft-edge/update.py +++ /dev/null @@ -1,44 +0,0 @@ -#! /usr/bin/env nix-shell -#! nix-shell -i python3 -p python3Packages.packaging python3Packages.python-debian common-updater-scripts - -import base64 -import textwrap -import os -from urllib import request - -from collections import OrderedDict -from debian.deb822 import Packages -from debian.debian_support import Version -from os.path import abspath, dirname - -PIN_PATH = dirname(abspath(__file__)) + '/default.nix' - -def packages(): - packages_url = 'https://packages.microsoft.com/repos/edge/dists/stable/main/binary-amd64/Packages' - handle = request.urlopen(packages_url) - return handle - - -def latest_packages(packages: bytes): - latest_packages: OrderedDict[str, Packages] = {} - for package in Packages.iter_paragraphs(packages, use_apt_pkg=False): - name: str = package['Package'] - if not name.startswith('microsoft-edge-stable'): - continue - channel = name.replace('microsoft-edge-', '') - if channel not in latest_packages: - latest_packages[channel] = package - else: - old_package = latest_packages[channel] - if old_package.get_version() < package.get_version(): # type: ignore - latest_packages[channel] = package - return OrderedDict(sorted(latest_packages.items(), key=lambda x:x[0])) - - -def write_expression(): - latest = latest_packages(packages()) - version = Version.re_valid_version.match(latest['stable']['Version']).group('upstream_version') - os.system(f'update-source-version microsoft-edge "{version}"') - - -write_expression() diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 91f5dd8bdf36..d767c8eb2842 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1218,6 +1218,7 @@ mapAliases { microcodeAmd = microcode-amd; # Added 2024-09-08 microcodeIntel = microcode-intel; # Added 2024-09-08 micropad = throw "micropad has been removed, since it was unmaintained and blocked the Electron 27 removal."; # Added 2025-02-24 + microsoft-edge = throw "microsoft-edge has been removed due to lack of maintenance in nixpkgs"; # Added 2025-05-19 microsoft_gsl = microsoft-gsl; # Added 2023-05-26 MIDIVisualizer = midivisualizer; # Added 2024-06-12 mikutter = throw "'mikutter' has been removed because the package was broken and had no maintainers"; # Added 2024-10-01