示例#1
0
int
clib_package_install_dependencies(clib_package_t *pkg, const char *dir, int verbose) {
  if (!pkg || !dir) return -1;
  if (NULL == pkg->dependencies) return 0;

  return install_packages(pkg->dependencies, dir, verbose);
}
示例#2
0
int
clib_package_install_development(clib_package_t *pkg, const char *dir, int verbose) {
  if (!pkg || !dir) return -1;
  if (NULL == pkg->development) return 0;

  return install_packages(pkg->development, dir, verbose);
}
示例#3
0
static void
confirm_search_dialog_response_cb (GtkDialog *dialog,
				   int        response_id,
				   gpointer   user_data)
{
	InstallerData *idata = user_data;

	gtk_widget_destroy (GTK_WIDGET (dialog));

	if (response_id == GTK_RESPONSE_YES) {
		install_packages (idata);
	}
	else {
		fr_window_stop_batch (idata->window);
		installer_data_free (idata);
	}
}
示例#4
0
int
main(int argc, char *argv[]) {
#ifdef _WIN32
  opts.dir = ".\\deps";
#else
  opts.dir = "./deps";
#endif
  opts.verbose = 1;
  opts.dev = 0;

  command_t program;

  command_init(&program
    , "clib-install"
    , CLIB_VERSION);

  program.usage = "[options] [name ...]";

  command_option(&program
    , "-o"
    , "--out <dir>"
    , "change the output directory [deps]"
    , setopt_dir);
  command_option(&program
    , "-q"
    , "--quiet"
    , "disable verbose output"
    , setopt_quiet);
  command_option(&program
    , "-d"
    , "--dev"
    , "install development dependencies"
    , setopt_dev);
  command_parse(&program, argc, argv);

  int code = 0 == program.argc
    ? install_local_packages()
    : install_packages(program.argc, program.argv);

  command_free(&program);
  return code;
}
示例#5
0
文件: main.c 项目: clee/razor
static int
command_install(int argc, const char *argv[])
{
	struct razor_root *root;
	struct razor_set *system, *upstream, *next;
	struct razor_transaction *trans;
	int i = 0, dependencies = 1;

	if (i < argc && strcmp(argv[i], "--no-dependencies") == 0) {
		dependencies = 0;
		i++;
	}

	root = razor_root_open(install_root);
	if (root == NULL)
		return 1;

	system = razor_root_get_system_set(root);
	upstream = razor_set_open(rawhide_repo_filename);
	if (upstream == NULL ||
	    razor_set_open_details(upstream, "rawhide-details.rzdb") ||
	    razor_set_open_files(upstream, "rawhide-files.rzdb")) {
			fprintf(stderr, "couldn't open rawhide repo\n");
			razor_root_close(root);
			return 1;
	}		

	trans = razor_transaction_create(system, upstream);

	for (; i < argc; i++) {
		if (mark_packages_for_update(trans, upstream, argv[i]) == 0) {
			fprintf(stderr, "no package matched %s\n", argv[i]);
			razor_root_close(root);
			return 1;
		}
	}

	if (dependencies) {
		razor_transaction_resolve(trans);
		if (razor_transaction_describe(trans) > 0) {
			razor_root_close(root);
			return 1;
		}
	}

	next = razor_transaction_finish(trans);

	razor_root_update(root, next);

	if (mkdir("rpms", 0777) && errno != EEXIST) {
		fprintf(stderr, "failed to create rpms directory.\n");
		razor_root_close(root);
		return 1;
	}

	if (download_packages(system, next) < 0) {
		razor_root_close(root);
                return 1;
        }

	install_packages(system, next);

	razor_set_destroy(next);
	razor_set_destroy(upstream);

	return razor_root_commit(root);
}