Calling executable generated by dub with sudo

Paul Backus snarwin at gmail.com
Mon Dec 7 21:04:00 UTC 2020


On Monday, 7 December 2020 at 20:34:36 UTC, Selim Ozel wrote:
> Let's say I build my package using dub run from an Ubuntu 
> terminal. How can I add sudo as the executable is being run? I 
> tried adding preRunCommands to my dub.sdl as described in [1] 
> but that just runs sudo and terminal throws an error.
>
> Best,
> Selim
>
> [1] https://dub.pm/package-format-sdl

Something like this, I guess:

import core.sys.posix.unistd: getuid;
import std.process: execv;

void main(string[] args)
{
     if (getuid() != 0) {
         execv("sudo", args);
         return 1; // failed to exec
     }

     // The rest of your code goes here
}


More information about the Digitalmars-d-learn mailing list