import snapd; import commandr; import std.file; import std.stdio : writeln; import core.stdc.stdlib : EXIT_SUCCESS, EXIT_FAILURE; private string programName = "snapd"; int main(string[] args) { auto argumets = new Program(programName, snapdVersion) .add(new Option("c", "config", "Сonfiguration file path") .optional .validateEachWith( opt => opt.exists && opt.isFile, "A JSON file path must be provided" ) ) .parse(args); string configFile = argumets.option("config", "snapd.json"); SnapdConfig config; try { config = new SnapdConfig(configFile); } catch (SnapdConfigException e) { e.print(); return EXIT_FAILURE; } return EXIT_SUCCESS; }