2 #include <zypp/ResObjects.h>
4 #include <zypp/sat/LookupAttr.h>
5 #include <zypp/PoolQuery.h>
7 static const Pathname sysRoot( "/tmp/ToolScanRepos" );
9 void addInstall( const std::string & pkgspec_r )
11 bool rewrote( false );
12 Capability pkgspec( Capability::guessPackageSpec( pkgspec_r, rewrote ) );
13 MIL << "Add '" << pkgspec << "' for '" << pkgspec_r << "'" << endl;
14 ResPool::instance().resolver().addRequire( pkgspec );
17 void addConflict( const std::string & pkgspec_r )
19 bool rewrote( false );
20 Capability pkgspec( Capability::guessPackageSpec( pkgspec_r, rewrote ) );
21 MIL << "Con '" << pkgspec << "' for '" << pkgspec_r << "'" << endl;
22 ResPool::instance().resolver().addConflict( pkgspec );
29 //zypp::base::LogControl::TmpLineWriter shutUp;
30 //ResPool::instance().resolver().setOnlyRequires( true );
31 rres = ResPool::instance().resolver().resolvePool();
35 ERR << "resolve " << rres << endl;
36 ResPool::instance().resolver().problems();
39 MIL << "resolve " << rres << endl;
40 vdumpPoolStats( USR << "Transacting:"<< endl,
41 make_filter_begin<resfilter::ByTransact>(ResPool::instance()),
42 make_filter_end<resfilter::ByTransact>(ResPool::instance()) ) << endl;
51 pol.rpmInstFlags( pol.rpmInstFlags().setFlag( target::rpm::RPMINST_JUSTDB ) );
52 SEC << getZYpp()->commit( pol ) << endl;
57 /******************************************************************
59 ** FUNCTION NAME : main
60 ** FUNCTION TYPE : int
62 int main( int argc, char * argv[] )
64 INT << "===[START]==========================================" << endl;
65 ///////////////////////////////////////////////////////////////////
67 ::unsetenv( "ZYPP_CONF" );
68 TestSetup::LoadSystemAt( sysRoot, Arch_x86_64 );
69 ///////////////////////////////////////////////////////////////////
70 ResPool pool( ResPool::instance() );
71 sat::Pool satpool( sat::Pool::instance() );
72 ///////////////////////////////////////////////////////////////////
74 // addConflict( "kernel-default" );
75 // addConflict( "kernel-default-base" );
79 INT << "===[END]============================================" << endl << endl;