116 lines
2.0 KiB
Nix
116 lines
2.0 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
fetchurl,
|
|
autoPatchelfHook,
|
|
alsa-lib,
|
|
atk,
|
|
at-spi2-atk,
|
|
at-spi2-core,
|
|
cairo,
|
|
cups,
|
|
dbus,
|
|
fontconfig,
|
|
freetype,
|
|
gdk-pixbuf,
|
|
glib,
|
|
gtk3,
|
|
libGL,
|
|
libX11,
|
|
libXcomposite,
|
|
libXdamage,
|
|
libXext,
|
|
libXfixes,
|
|
libXrandr,
|
|
libxcb,
|
|
libxkbcommon,
|
|
mesa,
|
|
nspr,
|
|
nss,
|
|
pango,
|
|
systemd,
|
|
wrapGAppsHook3,
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "zen-browser";
|
|
version = "1.19b";
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/zen-browser/desktop/releases/download/${version}/zen.linux-x86_64.tar.xz";
|
|
sha256 = "sha256-C9kieXWSSwKhswRVE2BVMHjlgv+a747uHqDKhqYfjgM=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
autoPatchelfHook
|
|
wrapGAppsHook3
|
|
];
|
|
|
|
buildInputs = [
|
|
alsa-lib
|
|
atk
|
|
at-spi2-atk
|
|
at-spi2-core
|
|
cairo
|
|
cups
|
|
dbus
|
|
fontconfig
|
|
freetype
|
|
gdk-pixbuf
|
|
glib
|
|
gtk3
|
|
libGL
|
|
libX11
|
|
libXcomposite
|
|
libXdamage
|
|
libXext
|
|
libXfixes
|
|
libXrandr
|
|
libxcb
|
|
libxkbcommon
|
|
mesa
|
|
nspr
|
|
nss
|
|
pango
|
|
systemd
|
|
];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/bin $out/lib/zen-browser
|
|
cp -r * $out/lib/zen-browser/
|
|
|
|
# Create the main executable script that wraps the browser
|
|
cat <<EOF > $out/bin/zen-browser
|
|
#!/bin/sh
|
|
exec $out/lib/zen-browser/zen "\$@"
|
|
EOF
|
|
chmod +x $out/bin/zen-browser
|
|
|
|
# Setup the desktop file
|
|
mkdir -p $out/share/applications $out/share/pixmaps
|
|
cp browser/chrome/icons/default/default128.png $out/share/pixmaps/zen-browser.png
|
|
|
|
cat <<EOF > $out/share/applications/zen-browser.desktop
|
|
[Desktop Entry]
|
|
Name=Zen Browser
|
|
GenericName=Web Browser
|
|
Exec=$out/bin/zen-browser %u
|
|
Icon=$out/share/pixmaps/zen-browser.png
|
|
Terminal=false
|
|
Type=Application
|
|
Categories=Network;WebBrowser;
|
|
EOF
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Experience tranquillity while browsing the web without people tracking you!";
|
|
homepage = "https://github.com/zen-browser/desktop";
|
|
platforms = platforms.linux;
|
|
mainProgram = "zen-browser";
|
|
};
|
|
}
|