From 202c5e35c9c3ae68e5faae9a090090155d689e46 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Sun, 24 Feb 2013 10:00:23 -0500 Subject: [PATCH] core: Use default /sysroot/ostree/repo or just /ostree/repo as appropriate The old logic was just weird, special casing root, and we can easily autodetect the case where we need /ostree/repo. --- src/ostree/ot-main.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/ostree/ot-main.c b/src/ostree/ot-main.c index 0045f32a..7e9699e9 100644 --- a/src/ostree/ot-main.c +++ b/src/ostree/ot-main.c @@ -84,12 +84,13 @@ ostree_run (int argc, GError *error = NULL; int cmd_argc; char **cmd_argv = NULL; - gboolean am_root; gboolean have_repo_arg; const char *binname = NULL; const char *slash = NULL; const char *cmd = NULL; const char *repo = NULL; + const char *sysroot_repo_path = "/sysroot/ostree/repo"; + const char *host_repo_path = "/ostree/repo"; GFile *repo_file = NULL; int arg_off; @@ -103,15 +104,19 @@ ostree_run (int argc, if (argc < 2) return ostree_usage (argv, commands, TRUE); - am_root = getuid () == 0; have_repo_arg = g_str_has_prefix (argv[1], "--repo="); - if (!have_repo_arg && am_root) - repo = "/sysroot/ostree/repo"; - else if (have_repo_arg) - repo = argv[1] + strlen ("--repo="); + if (have_repo_arg) + { + repo = argv[1] + strlen ("--repo="); + } else - repo = NULL; + { + if (g_file_test (sysroot_repo_path, G_FILE_TEST_EXISTS)) + repo = sysroot_repo_path; + else if (g_file_test (host_repo_path, G_FILE_TEST_EXISTS)) + repo = host_repo_path; + } if (repo) repo_file = g_file_new_for_path (repo);