1 #ifndef APT_PRIVATE_INSTALL_H
2 #define APT_PRIVATE_INSTALL_H
4 #include <apt-pkg/cachefile.h>
5 #include <apt-pkg/configuration.h>
6 #include <apt-pkg/pkgcache.h>
7 #include <apt-pkg/cacheiterators.h>
8 #include <apt-pkg/cacheset.h>
9 #include <apt-pkg/macros.h>
17 class pkgProblemResolver
;
19 APT_PUBLIC
bool DoInstall(CommandLine
&Cmd
);
21 bool DoCacheManipulationFromCommandLine(CommandLine
&CmdL
, std::vector
<std::string
> &VolatileCmdL
, CacheFile
&Cache
,
22 std::map
<unsigned short, APT::VersionSet
> &verset
, int UpgradeMode
);
23 bool DoCacheManipulationFromCommandLine(CommandLine
&CmdL
, std::vector
<std::string
> &VolatileCmdL
, CacheFile
&Cache
, int UpgradeMode
);
24 bool DoCacheManipulationFromCommandLine(CommandLine
&CmdL
, CacheFile
&Cache
, int UpgradeMode
);
26 APT_PUBLIC
bool InstallPackages(CacheFile
&Cache
,bool ShwKept
,bool Ask
= true,
29 bool CheckNothingBroken(CacheFile
&Cache
);
30 bool DoAutomaticRemove(CacheFile
&Cache
);
32 // TryToInstall - Mark a package for installation /*{{{*/
35 pkgProblemResolver
* Fix
;
37 unsigned long AutoMarkChanged
;
38 APT::PackageSet doAutoInstallLater
;
40 TryToInstall(pkgCacheFile
&Cache
, pkgProblemResolver
*PM
, bool const FixBroken
) : Cache(&Cache
), Fix(PM
),
41 FixBroken(FixBroken
), AutoMarkChanged(0) {};
43 void operator() (pkgCache::VerIterator
const &Ver
);
44 bool propergateReleaseCandiateSwitching(std::list
<std::pair
<pkgCache::VerIterator
, std::string
> > const &start
, std::ostream
&out
);
48 // TryToRemove - Mark a package for removal /*{{{*/
51 pkgProblemResolver
* Fix
;
54 TryToRemove(pkgCacheFile
&Cache
, pkgProblemResolver
*PM
) : Cache(&Cache
), Fix(PM
),
55 PurgePkgs(_config
->FindB("APT::Get::Purge", false)) {};
57 void operator() (pkgCache::VerIterator
const &Ver
);