30 lines
1.0 KiB
Nix
30 lines
1.0 KiB
Nix
{ ... }: {
|
|
perSystem = { pkgs, ... }: {
|
|
packages.zen-browser = pkgs.appimageTools.wrapType2 rec {
|
|
pname = "zen-browser";
|
|
version = "1.19.1b";
|
|
|
|
src = pkgs.fetchurl {
|
|
url = "https://github.com/zen-browser/desktop/releases/download/${version}/zen-x86_64.AppImage";
|
|
hash = "sha256-h3lza2C+SxptpcX897Uf/nM8dNILUBXScSNQZlvSIQg=";
|
|
};
|
|
|
|
extraInstallCommands = let
|
|
contents = pkgs.appimageTools.extract { inherit pname version src; };
|
|
in ''
|
|
desktop_file=$(find ${contents} -name "*.desktop" | head -n1)
|
|
if [ -n "$desktop_file" ]; then
|
|
install -m 444 -D "$desktop_file" "$out/share/applications/${pname}.desktop"
|
|
# The desktop file uses 'zen' as the binary name
|
|
substituteInPlace "$out/share/applications/${pname}.desktop" \
|
|
--replace 'Exec=zen' 'Exec=${pname}'
|
|
fi
|
|
|
|
if [ -d ${contents}/usr/share/icons ]; then
|
|
cp -r ${contents}/usr/share/icons $out/share
|
|
fi
|
|
'';
|
|
};
|
|
};
|
|
}
|