only conditionally ask for global configuration in setup wizard

This commit is contained in:
Techatrix 2022-08-30 01:07:46 +02:00
parent b502134769
commit 7be7496ec8

View File

@ -121,18 +121,18 @@ pub fn wizard(allocator: std.mem.Allocator) !void {
defer if (local_path) |d| allocator.free(d); defer if (local_path) |d| allocator.free(d);
defer if (global_path) |d| allocator.free(d); defer if (global_path) |d| allocator.free(d);
const can_access_global = blk: {
std.fs.accessAbsolute(global_path orelse break :blk false, .{}) catch break :blk false;
break :blk true;
};
if (global_path == null and local_path == null) { if (global_path == null and local_path == null) {
write("Could not open a global or local config directory.\n"); write("Could not open a global or local config directory.\n");
return; return;
} }
var config_path: []const u8 = undefined; var config_path: []const u8 = undefined;
if (try askBool("Should this configuration be system-wide?")) { if (can_access_global and global_path != null and try askBool("Should this configuration be system-wide?")) {
if (global_path) |p| { config_path = global_path.?;
config_path = p;
} else {
write("Could not find a global config directory.\n");
return;
}
} else { } else {
if (local_path) |p| { if (local_path) |p| {
config_path = p; config_path = p;