{
 "app_id": "net.astralvixen.geforceinfinity",
 "source_url": "https://raw.githubusercontent.com/AstralVixen/GeForce-Infinity/master/net.astralvixen.geforceinfinity.yml",
 "runtime": "org.freedesktop.Platform",
 "runtime_version": "24.08",
 "sdk": "org.freedesktop.Sdk",
 "finish_args": [
  "--share=network",
  "--socket=x11",
  "--socket=wayland",
  "--filesystem=home",
  "--device=dri",
  "--socket=system-bus",
  "--allow=devel",
  "--talk-name=org.freedesktop.Flatpak",
  "--env=ELECTRON_DISABLE_SANDBOX=1",
  "--filesystem=xdg-run/discord-ipc-0",
  "--filesystem=xdg-run/discord",
  "--socket=pulseaudio",
  "--talk-name=org.freedesktop.portal.Desktop",
  "--talk-name=org.freedesktop.portal.Freedesktop",
  "--talk-name=org.freedesktop.portal.Audio",
  "--talk-name=org.freedesktop.portal.Camera"
 ],
 "module_count": 1,
 "fetched_at": "2026-09-21T13:25:44.178746+00:00",
 "manifest": {
  "id": "net.astralvixen.geforceinfinity",
  "app-id": "net.astralvixen.geforceinfinity",
  "runtime": "org.freedesktop.Platform",
  "runtime-version": "24.08",
  "sdk": "org.freedesktop.Sdk",
  "sdk-extensions": [
   "org.freedesktop.Sdk.Extension.node20"
  ],
  "command": "run.sh",
  "finish-args": [
   "--share=network",
   "--socket=x11",
   "--socket=wayland",
   "--filesystem=home",
   "--device=dri",
   "--socket=system-bus",
   "--allow=devel",
   "--talk-name=org.freedesktop.Flatpak",
   "--env=ELECTRON_DISABLE_SANDBOX=1",
   "--filesystem=xdg-run/discord-ipc-0",
   "--filesystem=xdg-run/discord",
   "--socket=pulseaudio",
   "--talk-name=org.freedesktop.portal.Desktop",
   "--talk-name=org.freedesktop.portal.Freedesktop",
   "--talk-name=org.freedesktop.portal.Audio",
   "--talk-name=org.freedesktop.portal.Camera"
  ],
  "modules": [
   {
    "name": "geforce-infinity",
    "buildsystem": "simple",
    "build-commands": [
     "export PATH=/usr/lib/sdk/node20/bin:$PATH\n\n# Create directory structure\nmkdir -p /app/bin\nmkdir -p /app/share/geforce-infinity\nmkdir -p /app/share/icons/hicolor/512x512/apps\nmkdir -p /app/share/applications\n\n# Copy application files\ncp -r package.json node_modules dist /app/share/geforce-infinity/\n\n# Install icon if available\nif [ -f dist/assets/resources/infinitylogo.png ]; then \n    cp dist/assets/resources/infinitylogo.png /app/share/icons/hicolor/512x512/apps/net.astralvixen.geforceinfinity.png;\nfi\n\n# Create run script with sandbox workaround\ncat > /app/bin/run.sh <<EOF\n#!/bin/sh\ncd /app/share/geforce-infinity\n\n# Fix sandbox permissions\nchmod 4755 ./node_modules/electron/dist/chrome-sandbox || true\n\n# Run with sandbox disabled\nexec ./node_modules/electron/dist/electron --no-sandbox dist/electron/main.js \"\\$@\"\nEOF\nchmod +x /app/bin/run.sh\n\n# Create desktop file\ncat > /app/share/applications/net.astralvixen.geforceinfinity.desktop <<EOF\n[Desktop Entry]\nEncoding=UTF-8\nName=GeForce Infinity\nComment=Enhance your GeForce NOW application experience!\nTerminal=false\nType=Application\nExec=run.sh\nIcon=net.astralvixen.geforceinfinity\nStartupWMClass=geforce infinity\nCategories=Network;Game;\nStartupNotify=false\nKeywords=Game;Streaming;Nvidia;GeForce;NOW;GFN;Infinity;\nMimeType=x-scheme-handler/geforceinfinity;\nEOF\n"
    ],
    "sources": [
     {
      "type": "dir",
      "path": "./"
     }
    ]
   }
  ]
 }
}