···
8
+
electronPackage ? electron_33,
13
+
electron = electronPackage;
15
+
stdenv.mkDerivation rec {
16
+
pname = "catalyst-browser";
20
+
url = "https://github.com/CatalystDevOrg/Catalyst/releases/download/v${version}/catalyst-${version}.AppImage";
21
+
hash = "sha256-6t1RAxmRc/1fAQT4Qnd42kh3cxgRZr74k8gwebTb0Ic=";
22
+
name = "catalyst-${version}.AppImage";
25
+
appimageContents = appimageTools.extractType2 {
26
+
inherit pname src version;
30
+
dontConfigure = true;
33
+
nativeBuildInputs = [
41
+
mkdir -p $out/bin $out/share/catalyst $out/share/applications
42
+
mkdir -p $out/share/catalyst/resources/
44
+
cp -a ${appimageContents}/locales $out/share/catalyst
45
+
cp -a ${appimageContents}/catalyst.desktop $out/share/applications/catalyst.desktop
46
+
mkdir -p $out/share/pixmaps
47
+
cp -r ${appimageContents}/usr/share/icons/hicolor/0x0/apps/catalyst.png $out/share/pixmaps/
48
+
asar extract ${appimageContents}/resources/app.asar resources/
49
+
rm -rf resources/.github
50
+
rm -rf resources/.vscode
51
+
rm -rf resources/.eslintrc.json
52
+
rm -rf resources/.gitignore
53
+
rm -rf resources/.pnpm-debug.log
54
+
rm -rf resources/contributing.md
55
+
rm -rf resources/pnpm-lock.yaml
56
+
rm -rf resources/README.md
57
+
rm -rf resources/CODE_OF_CONDUCT.md
59
+
substituteInPlace resources/src/index.html \
60
+
--replace-fail 'catalyst-default-distrib' 'catalyst-default-nixpkgs'
62
+
substituteInPlace $out/share/applications/catalyst.desktop \
63
+
--replace-fail 'Exec=AppRun' 'Exec=${meta.mainProgram}'
65
+
asar pack resources/ $out/share/catalyst/resources/app.asar
71
+
makeWrapper ${electron}/bin/electron $out/bin/${meta.mainProgram} \
72
+
--add-flags $out/share/catalyst/resources/app.asar \
73
+
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ]}"
77
+
description = "Minimal, functional, and customizable user-focused FOSS web browser based on Chromium";
78
+
homepage = "https://getcatalyst.eu.org";
79
+
license = lib.licenses.mit;
80
+
mainProgram = "catalyst";
81
+
maintainers = with lib.maintainers; [ jdev082 ];
82
+
platforms = [ "x86_64-linux" ];
83
+
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];