Files
.hive/modules/programs/lap/_derivation.nix
T

41 lines
1.1 KiB
Nix

{
appimageTools,
fetchurl,
makeWrapper,
...
}: let
pname = "lap";
version = "0.3.2";
src = fetchurl {
url = "https://github.com/julyx10/lap/releases/download/v${version}/Lap_0.3.2_amd64.AppImage";
sha256 = "sha256-1lUfBBFI7agDdvUX9+U9roaao1Sn4dLhESvhAY9ROqc=";
};
appimageContents = appimageTools.extract {
inherit pname version src;
};
in
appimageTools.wrapType2 {
inherit pname version src;
nativeBuildInputs = [makeWrapper];
extraInstallCommands = ''
wrapProgram $out/bin/${pname} --add-flags "--no-sandbox"
# Create a minimal .desktop file manually
mkdir -p $out/share/applications
cat > $out/share/applications/${pname}.desktop <<EOF
[Desktop Entry]
Name=${pname}
Exec=${pname} %U
Icon=${pname}
Type=Application
Categories=Utility;
EOF
# Optionally extract icon from AppImage (if available)
# You can also manually install an icon here:
mkdir -p $out/share/icons/hicolor/0x0/apps
cp ${appimageContents}/usr/share/icons/hicolor/0x0/apps/${pname}.png $out/share/icons/hicolor/0x0/apps/${pname}.png || true
'';
}