A .desktop
file might be what you’re looking for.
https://developer.gnome.org/integration-guide/stable/desktop-files.html.en
https://specifications.freedesktop.org/desktop-entry-spec/latest/apa.html
https://community.clearlinux.org/t/how-to-create-custom-launcher-in-gnome-desktop/