## vendors = nvidia,suse,opensuse
##
## ------------------------- file contains end -----------------------
-## Libzypp makes an string comparision (like strncmp, case-insensitive)
-## whereas the beginning of the strings are compared only.
+## Libzypp makes an string comparision (like strncmp, case-insensitive)
+## whereas the beginning of the strings are compared only.
## e.G. vendor "opensuse11.0" is compatible to "openSuSE".
##
## Valid values: A directory
# solver.onlyRequires = false
##
-## This file contains requirements/conflicts which fulfill the
+## This file contains requirements/conflicts which fulfill the
## needs of a running system.
## For example the system would be broken if not glibc or kernel is
-## installed.
+## installed.
## So the user will be informed if these packages will be deleted.
-##
+##
## format: Each line represents one dependency:
## e.g.
## requires:kernel
# solver.checkSystemFile = /etc/zypp/systemCheck
##
-## Packages which are parallel installable with
+## Packages which are parallel installable with
## diffent versions
##
# multiversion = kernel-default,kernel-smp
##
# update.scriptsdir = /var/adm/update-scripts
-
+##
+## Options for package installation: excludedocs
+##
+## Don't install any files which are marked as documentation.
+##
+## Valid values: boolean
+## Default value: no
+##
+# rpm.install.excludedocs = no
}
else if ( entry == "multiversion" )
{
- std::list<std::string> multi;
+ std::list<std::string> multi;
str::split( value, back_inserter(multi), ", \t" );
for ( std::list<string>::const_iterator it = multi.begin();
it != multi.end(); it++) {
- multiversion.insert (IdString(*it));
+ multiversion.insert (IdString(*it));
}
- }
+ }
else if ( entry == "locksfile.path" )
{
locks_file = Pathname(value);
{
update_messages_path = Pathname(value);
}
-
+ else if ( entry == "rpm.install.excludedocs" )
+ {
+ rpmInstallExcludedocs = true;
+ }
}
}
}
bool solver_onlyRequires;
Pathname solver_checkSystemFile;
-
- std::set<IdString> multiversion;
+
+ std::set<IdString> multiversion;
bool apply_locks_file;
+ DefaultIntegral<bool,false> rpmInstallExcludedocs;
+
};
///////////////////////////////////////////////////////////////////
void ZConfig::addMultiversion(std::string &name)
{ _pimpl->multiversion.insert(IdString(name)); }
-
+
bool ZConfig::removeMultiversion(std::string &name)
- { return _pimpl->multiversion.erase(IdString(name)); }
+ { return _pimpl->multiversion.erase(IdString(name)); }
bool ZConfig::apply_locks_file() const
{
? Pathname(update_dataPath()/"update-scripts") : _pimpl->update_scripts_path );
}
+ ///////////////////////////////////////////////////////////////////
+
+ bool ZConfig::rpmInstallExcludedocs() const
+ { return _pimpl->rpmInstallExcludedocs; }
+
/////////////////////////////////////////////////////////////////
} // namespace zypp
///////////////////////////////////////////////////////////////////
/**
* Packages which can be installed parallel with different versions
* Returning a set of package names (IdString)
- */
+ */
std::set<IdString> multiversion() const;
void addMultiversion(std::string &name);
- bool removeMultiversion(std::string &name);
+ bool removeMultiversion(std::string &name);
/**
* Path where zypp can find or create lock file (configPath()/locks)
Pathname locksFile() const;
/**
- * Whether locks file should be read and applied after start
+ * Whether locks file should be read and applied after start (true)
*/
bool apply_locks_file() const;
Pathname update_messagesPath() const;
public:
+ /** \name Options for package installation */
+ //@{
+ /** Don't install any files which are marked as documentation (false). */
+ bool rpmInstallExcludedocs() const;
+ //@}
+
+ public:
class Impl;
/** Dtor */
~ZConfig();
// create the anonymous unique id
// this value is used for statistics
Pathname idpath( home() / "AnonymousUniqueId");
-
+
if ( ! PathInfo( idpath ).isExist() )
{
MIL << "creating anonymous unique id" << endl;
-
+
// if the file does not exist we need to generate the uuid file
const char* argv[] =
{
line = prog.receiveLine() )
{
MIL << line << endl;
-
+
idfile << line;
}
prog.close();
//
if (p->installOnly()) flags |= rpm::RpmDb::RPMINST_NOUPGRADE;
if (policy_r.dryRun()) flags |= rpm::RpmDb::RPMINST_TEST;
+ if (policy_r.rpmExcludeDocs()) flags |= rpm::RpmDb::RPMINST_NODOCS;
if (policy_r.rpmNoSignature()) flags |= rpm::RpmDb::RPMINST_NOSIGNATURE;
try