Ejemplo n.º 1
0
/**
 * pk_backend_initialize:
 */
void pk_backend_initialize(GKeyFile *conf, PkBackend *backend)
{
    g_debug("APTcc Initializing");

    // Disable apt-listbugs as it freezes PK
    setenv("APT_LISTBUGS_FRONTEND", "none", 1);

    // Set apt-listchanges frontend to "debconf" to make it's output visible
    // (without using the debconf frontend, PK will freeze)
    setenv("APT_LISTCHANGES_FRONTEND", "debconf", 1);

    // pkgInitConfig makes sure the config is ready for the
    // get-filters call which needs to know about multi-arch
    if (!pkgInitConfig(*_config)) {
        g_debug("ERROR initializing backend configuration");
    }

    // pkgInitSystem is needed to compare the changelog verstion to
    // current package using DoCmpVersion()
    if (!pkgInitSystem(*_config, _system)) {
        g_debug("ERROR initializing backend system");
    }

    spawn = pk_backend_spawn_new(conf);
    //     pk_backend_spawn_set_job(spawn, backend);
    pk_backend_spawn_set_name(spawn, "aptcc");
}
Ejemplo n.º 2
0
/*
 * call-seq: init() -> nil
 *
 * Shorthand for doing init_config() and init_system().
 *
 *   Debian::AptPkg.init # => nil
 *
 **/
static VALUE
init(VALUE self)
{
  pkgInitConfig(*_config);
  pkgInitSystem(*_config, _system);
  return Qnil;
}
Ejemplo n.º 3
0
int main(int argc, char *argv[]) {

    if (2 != argc || '-' != argv[1][0] || strlen(argv[1]) != 2) {
        usage();
        return 1;
    }

    const char mode = argv[1][1];

    // _config and _system are defined in the libapt header files
    pkgInitConfig(*_config);
    pkgInitSystem(*_config, _system);

    pkgCacheFile cache_file;
//    pkgCache* cache = cache_file.GetPkgCache();

    if ('s' == mode) {
        src(cache_file.GetSourceList());
    }

    if ('b' == mode) {
        bin(cache_file.GetPkgCache());
    }
    return 0;
}
Ejemplo n.º 4
0
int main(const int argc, const char ** const argv) {
	CommandLine CmdL(Args, _config);
	if (!pkgInitConfig(*_config) ||
	    !CmdL.Parse(argc, argv) ||
	    !ensure_command(CmdL) ||
	    !pkgInitSystem(*_config, _system) ||
	    !CmdL.DispatchArg(Cmds)) {
		_error->DumpErrors();
		return 1;
	}
}
Ejemplo n.º 5
0
/**
 * backend_initialize:
 */
static void
backend_initialize (PkBackend *backend)
{
	egg_debug ("APTcc Initializing");

	// make sure we do not get a graphical debconf
	setenv("DEBIAN_FRONTEND", "noninteractive", 1);
	setenv("APT_LISTCHANGES_FRONTEND", "none", 1);

	if (pkgInitConfig(*_config) == false ||
	    pkgInitSystem(*_config, _system) == false)
	{
		egg_debug ("ERROR initializing backend");
	}
}
Ejemplo n.º 6
0
/**
 * pk_backend_initialize:
 */
void pk_backend_initialize(PkBackend *backend)
{
    g_debug("APTcc Initializing");

    // Disable apt-listbugs as it freezes PK
    setenv("APT_LISTBUGS_FRONTEND", "none", 1);

    // Set apt-listchanges frontend to "debconf" to make it's output visible
    // (without using the debconf frontend, PK will freeze)
    setenv("APT_LISTCHANGES_FRONTEND", "debconf", 1);

    // Make sure the config is ready for the get-filters
    // call which needs to know about multi-arch
    pkgInitConfig(*_config);

    spawn = pk_backend_spawn_new();
//     pk_backend_spawn_set_job(spawn, backend);
    pk_backend_spawn_set_name(spawn, "aptcc");
}
Ejemplo n.º 7
0
QueryData genAptSrcs(QueryContext& context) {
  QueryData results;

  // Load our apt configuration into memory
  // Note: _config comes from apt-pkg/configuration.h
  //       _system comes from apt-pkg/pkgsystem.h
  pkgInitConfig(*_config);
  if (pkgInitSystem(*_config, _system) == false)
  {
      return results;
  }

  pkgCacheFile cache_file;
  pkgCache* cache = cache_file.GetPkgCache();
  pkgSourceList* src_list = cache_file.GetSourceList();
  if (cache == nullptr || src_list == nullptr) {
    cache_file.Close();
    closeConfig();
    return results;
  }

  // For each apt cache file that contains packages
  for (pkgCache::PkgFileIterator file = cache->FileBegin(); file && !file.end();
       ++file) {

    // Locate the associated index files to ensure the repository is installed
    pkgIndexFile* pkgIndex;
    if (!src_list->FindIndex(file, pkgIndex)) {
      continue;
    }

    extractAptSourceInfo(file, pkgIndex, results);
  }

  // Cleanup
  cache_file.Close();
  closeConfig();

  return results;
}
Ejemplo n.º 8
0
/*
 * call-seq: init_config() -> bool
 *
 * Load the default configuration and the config file.
 *
 *   Debian::AptPkg.init_config # => false
 *
 **/
static VALUE
init_config(VALUE self)
{
  int res = pkgInitConfig(*_config);
  return INT2BOOL(res);
}