brave: 0.25.2 -> 0.56.12

wip/yesman
rht 6 years ago
parent ff2b0316b4
commit e46f25addc
No known key found for this signature in database
GPG Key ID: B718346BD289EB8C
  1. 50
      pkgs/applications/networking/browsers/brave/default.nix

@ -30,7 +30,8 @@
pango,
udev,
xorg,
zlib
zlib,
xdg_utils
}:
let rpath = lib.makeLibraryPath [
@ -65,32 +66,67 @@ let rpath = lib.makeLibraryPath [
udev
xorg.libxcb
zlib
xdg_utils
];
in stdenv.mkDerivation rec {
name = "brave";
version = "0.25.2";
version = "0.56.12";
src = fetchurl {
url = "https://github.com/brave/browser-laptop/releases/download/v${version}dev/brave_${version}_amd64.deb";
sha256 = "1r3rsa6szps7mvvpqyw0mg16zn36x451dxq4nmn2l5ds5cp1f017";
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
sha256 = "1pvablwchpsm1fdhfp9kr2912yv4812r8prv5fn799qpflzxvyai";
};
phases = [ "unpackPhase" "installPhase" ];
dontConfigure = true;
dontBuild = true;
dontPatchELF = true;
nativeBuildInputs = [ dpkg ];
unpackPhase = "dpkg-deb -x $src .";
unpackPhase = "dpkg-deb --fsys-tarfile $src | tar -x --no-same-permissions --no-same-owner";
installPhase = ''
mkdir -p $out
cp -R usr/* $out
cp -R opt/ $out/opt
export BINARYWRAPPER=$out/opt/brave.com/brave/brave-browser
# Fix path to bash in $BINARYWRAPPER
substituteInPlace $BINARYWRAPPER \
--replace /bin/bash ${stdenv.shell}
ln -sf $BINARYWRAPPER $out/bin/brave
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${rpath}" $out/bin/brave
--set-rpath "${rpath}" $out/opt/brave.com/brave/brave
# Fix paths
substituteInPlace $out/share/applications/brave-browser.desktop \
--replace /usr/bin/brave-browser $out/bin/brave
substituteInPlace $out/share/gnome-control-center/default-apps/brave-browser.xml \
--replace /opt/brave.com $out/opt/brave.com
substituteInPlace $out/share/menu/brave-browser.menu \
--replace /opt/brave.com $out/opt/brave.com
substituteInPlace $out/opt/brave.com/brave/default-app-block \
--replace /opt/brave.com $out/opt/brave.com
# Correct icons location
icon_sizes=("16" "22" "24" "32" "48" "64" "128" "256")
for icon in ''${icon_sizes[*]}
do
mkdir -p $out/share/icons/hicolor/$icon\x$icon/apps
ln -s $out/opt/brave.com/brave/product_logo_$icon.png $out/share/icons/hicolor/$icon\x$icon/apps/brave-browser.png
done
# Replace xdg-settings and xdg-mime
ln -sf ${xdg_utils}/bin/xdg-settings $out/opt/brave.com/brave/xdg-settings
ln -sf ${xdg_utils}/bin/xdg-mime $out/opt/brave.com/brave/xdg-mime
'';
meta = with stdenv.lib; {

Loading…
Cancel
Save