<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Fri, Dec 7, 2018 at 9:36 AM Belisko Marek <<a href="mailto:marek.belisko@gmail.com">marek.belisko@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Tomasz,<br>
<br>
On Fri, Dec 7, 2018 at 6:26 AM Tomasz Torcz <<a href="mailto:tomek@pipebreaker.pl" target="_blank">tomek@pipebreaker.pl</a>> wrote:<br>
><br>
> On Thu, Dec 06, 2018 at 10:58:31PM +0100, Belisko Marek wrote:<br>
> > Hi,<br>
> ><br>
> > I'm trying to run qt qml application on intel nuc but when booted from<br>
> > hdd I'll get an eror when app is started:<br>
> ><br>
> > I think it is some kind of timing issue as when booting same image<br>
> > from usb stick application will automatically start while when booting<br>
> > from hdd I get above error. Would be possible to postpone it somehow<br>
> > until DRM display is initialized? Thanks.<br>
><br>
>   This is exactly the problem GDM (GNOME Display Manager) encountered<br>
> few years ago. The solution was devised – your application needs to wait<br>
> until CanGraphical property goes to yes on the seat application is<br>
> using.<br>
Thanks for info. But I'm not suing any GDM (nor X) just qml<br>
application. So IIRC then I need to code something in my application<br>
to wait until<br>
CanGraphical is available?</blockquote><div><br></div><div>Yes, to use this method you would need to access logind's D-Bus API. I'm not sure whether QML provides D-Bus access, although Qt does.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I was thinking about<br>
approach that systemd can postpone starting of my application until<br>
DRM is available (not sure is such trigger exists though).<br></blockquote><div><br></div><div>It sounds more like you're looking for a dependency, not a trigger. (Although either would work, I guess.)</div><div><br></div><div>In systemd itself, the only available built-in dependency is "device now available in /dev or /sys". For example, you could use this, assuming there's only one card and it's always called "card0":</div><div><br></div><div>[Unit]</div><div>Requires=dev-dri-card0.device</div><div>After=dev-dri-card0.device<br></div><div><br></div><div>(Note: This also needs udev/rules.d/99-systemd.rules to be extended with an apropriate TAG+="systemd".)</div><div><br></div></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">Mantas Mikulėnas</div></div></div>