#!/usr/bin/python3
import json,os,subprocess,sys
runtime='/run/anolis-demo'
os.chdir('/home/desktopdemo')
args=['runuser','-u','desktopdemo','--','env','HOME=/home/desktopdemo','XDG_RUNTIME_DIR='+runtime]
instances=json.loads(subprocess.check_output(args+['hyprctl','-j','instances']))
if len(instances)!=1: raise SystemExit('Expected one Anolis demo instance; check anolis-demo-desktop.service')
i=instances[0]; display=i['wl_socket']
if isinstance(display,int): display='wayland-'+str(display)
context=json.loads(open(runtime+'/session.json').read())
args+=['HYPRLAND_INSTANCE_SIGNATURE='+i['instance'],'WAYLAND_DISPLAY='+display,'DISPLAY='+context.get('DISPLAY',':0'),'DBUS_SESSION_BUS_ADDRESS='+context['DBUS_SESSION_BUS_ADDRESS']]
os.execvp(args[0],args+sys.argv[1:])
