<div dir="ltr"><div class="gmail_default" style="font-size:small">Hmm, this may be flawed because it requires sudo to be installed and sudo may not be :(</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I will think of a better way.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">BruceS<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 25 Aug 2021 at 10:50, Bruce Steers <<a href="mailto:bsteers4@gmail.com">bsteers4@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"><div dir="ltr"><br><div class="gmail_default" style="font-size:small">I propose this modification to Desktop.class that now exists in gb.gui.base.</div><div class="gmail_default" style="font-size:small">(See attached file)<br></div><div class="gmail_default" style="font-size:small">I have added a property to it called UseRoot As Boolean = True<br></div><div class="gmail_default" style="font-size:small">And i have also added 2 r/o properties<br></div><div class="gmail_default" style="font-size:small">Desktop.UserName¬† and Desktop.UserHome</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">The purpose..</div><div class="gmail_default" style="font-size:small">If your application is run as root then User.Name is root and User.Home is roots home</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">the additional UseRoot property is set to True by default and Desktop.UserName will return root</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">If you set UseRoot = False then Desktop.UserName will return the standard user name not root.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Using the Env vars this method can be applied to all the xdg functions involving directory names</div><div class="gmail_default" style="font-size:small">I think this is ideal as nobody ever wants to know the roots desktop folder in an app run as superuser do they?</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">So i will also add a Desktop.GetDirectory(sName As String) that will also return info relevant to the UseRoot setting.<br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I have often found an issue with a program i am running as root when i want the normal users name.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">What do you think of something like this Ben?</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Respects</div><div class="gmail_default" style="font-size:small">BruceS</div><div class="gmail_default" style="font-size:small"><br></div></div>
</blockquote></div>