{ config, pkgs, ... }: let freeshowAppImage = pkgs.stdenv.mkDerivation { pname = "freeshow-appimage"; version = "1.5.6"; src = pkgs.fetchurl { url = "https://github.com/ChurchApps/FreeShow/releases/download/v1.5.6/FreeShow-1.5.6-x86_64.AppImage"; sha256 = "10z1xgqzwfbs4api12myyx368yp8ahzbmjpfmwnh8c340f8b22f4"; }; dontUnpack = true; dontBuild = true; installPhase = '' mkdir -p $out/bin ln -s ${pkgs.appimage-run}/bin/appimage-run $out/bin/freeshow mkdir -p $out/share/applications cat > $out/share/applications/freeshow.desktop << EOF [Desktop Entry] Name=FreeShow Exec=${pkgs.appimage-run}/bin/appimage-run $src Icon=freeshow Type=Application Categories=Multimedia; EOF ''; meta = with pkgs.lib; { description = "FreeShow AppImage wrapper"; homepage = "https://github.com/ChurchApps/FreeShow"; license = licenses.gpl3Only; # Assuming GPLv3 based on GitHub repo platforms = platforms.linux; }; }; in { environment.systemPackages = [ freeshowAppImage ]; }