X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/7d6f9f8ffb7ba9caf7cc25dc102c59616150f36e..3eb9e257855d83d0486d7a5fa7cc5e2edebb6aaa:/apt-pkg/init.cc diff --git a/apt-pkg/init.cc b/apt-pkg/init.cc index 3c702af9b..a30f27844 100644 --- a/apt-pkg/init.cc +++ b/apt-pkg/init.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: init.cc,v 1.17 2001/12/05 07:22:39 tausq Exp $ +// $Id: init.cc,v 1.20 2003/02/09 20:31:05 doogie Exp $ /* ###################################################################### Init - Initialize the package library @@ -14,6 +14,7 @@ #include #include +#include #include /*}}}*/ @@ -23,8 +24,6 @@ const char *pkgVersion = VERSION; const char *pkgLibVersion = Stringfy(APT_PKG_MAJOR) "." Stringfy(APT_PKG_MINOR) "." Stringfy(APT_PKG_RELEASE); -const char *pkgCPU = COMMON_CPU; -const char *pkgOS = COMMON_OS; // pkgInitConfig - Initialize the configuration class /*{{{*/ // --------------------------------------------------------------------- @@ -34,12 +33,10 @@ const char *pkgOS = COMMON_OS; bool pkgInitConfig(Configuration &Cnf) { // General APT things - if (strcmp(COMMON_OS,"linux") == 0 || - strcmp(COMMON_OS,"unknown") == 0) - Cnf.Set("APT::Architecture",COMMON_CPU); - else - Cnf.Set("APT::Architecture",COMMON_OS "-" COMMON_CPU); + Cnf.Set("APT::Architecture", COMMON_ARCH); Cnf.Set("APT::Build-Essential::", "build-essential"); + Cnf.Set("APT::Install-Recommends", true); + Cnf.Set("APT::Install-Suggests", false); Cnf.Set("Dir","/"); // State @@ -54,7 +51,8 @@ bool pkgInitConfig(Configuration &Cnf) Cnf.Set("Dir::State::lists","lists/"); Cnf.Set("Dir::State::cdroms","cdroms.list"); - + Cnf.Set("Dir::State::mirrors","mirrors/"); + // Cache Cnf.Set("Dir::Cache","var/cache/apt/"); Cnf.Set("Dir::Cache::archives","archives/"); @@ -64,36 +62,73 @@ bool pkgInitConfig(Configuration &Cnf) // Configuration Cnf.Set("Dir::Etc","etc/apt/"); Cnf.Set("Dir::Etc::sourcelist","sources.list"); + Cnf.Set("Dir::Etc::sourceparts","sources.list.d"); Cnf.Set("Dir::Etc::vendorlist","vendors.list"); Cnf.Set("Dir::Etc::vendorparts","vendors.list.d"); Cnf.Set("Dir::Etc::main","apt.conf"); + Cnf.Set("Dir::Etc::netrc", "auth.conf"); Cnf.Set("Dir::Etc::parts","apt.conf.d"); Cnf.Set("Dir::Etc::preferences","preferences"); + Cnf.Set("Dir::Etc::preferencesparts","preferences.d"); + Cnf.Set("Dir::Etc::trusted", "trusted.gpg"); + Cnf.Set("Dir::Etc::trustedparts","trusted.gpg.d"); Cnf.Set("Dir::Bin::methods","/usr/lib/apt/methods"); - + Cnf.Set("Dir::Media::MountPath","/media/apt"); + + // State + Cnf.Set("Dir::Log","var/log/apt"); + Cnf.Set("Dir::Log::Terminal","term.log"); + Cnf.Set("Dir::Log::History","history.log"); + + Cnf.Set("Dir::Ignore-Files-Silently::", "~$"); + Cnf.Set("Dir::Ignore-Files-Silently::", "\\.disabled$"); + Cnf.Set("Dir::Ignore-Files-Silently::", "\\.bak$"); + Cnf.Set("Dir::Ignore-Files-Silently::", "\\.dpkg-[a-z]+$"); + + // Translation + Cnf.Set("APT::Acquire::Translation", "environment"); + + // Default cdrom mount point + Cnf.Set("Acquire::cdrom::mount", "/media/cdrom/"); + bool Res = true; // Read an alternate config file const char *Cfg = getenv("APT_CONFIG"); - if (Cfg != 0 && FileExists(Cfg) == true) - Res &= ReadConfigFile(Cnf,Cfg); - + if (Cfg != 0) + { + if (RealFileExists(Cfg) == true) + Res &= ReadConfigFile(Cnf,Cfg); + else + _error->WarningE("RealFileExists",_("Unable to read %s"),Cfg); + } + // Read the configuration parts dir string Parts = Cnf.FindDir("Dir::Etc::parts"); - if (FileExists(Parts) == true) + if (DirectoryExists(Parts) == true) Res &= ReadConfigDir(Cnf,Parts); - + else + _error->WarningE("DirectoryExists",_("Unable to read %s"),Parts.c_str()); + // Read the main config file string FName = Cnf.FindFile("Dir::Etc::main"); - if (FileExists(FName) == true) + if (RealFileExists(FName) == true) Res &= ReadConfigFile(Cnf,FName); - + if (Res == false) return false; - + if (Cnf.FindB("Debug::pkgInitConfig",false) == true) Cnf.Dump(); - + +#ifdef APT_DOMAIN + if (Cnf.Exists("Dir::Locale")) + { + bindtextdomain(APT_DOMAIN,Cnf.FindDir("Dir::Locale").c_str()); + bindtextdomain(textdomain(0),Cnf.FindDir("Dir::Locale").c_str()); + } +#endif + return true; } /*}}}*/ @@ -124,7 +159,7 @@ bool pkgInitSystem(Configuration &Cnf,pkgSystem *&Sys) } if (Sys == 0) - return _error->Error(_("Unable to determine a suitable system type")); + return _error->Error(_("Unable to determine a suitable packaging system type")); } return Sys->Initialize(Cnf);