#include <apt-pkg/acquire.h>
#include <apt-pkg/acquire-item.h>
#include <apt-pkg/cdrom.h>
+#include <apt-pkg/configuration.h>
+#include <apt-pkg/pkgsystem.h>
#include <locale.h>
#include <iostream>
#include <apti18n.h>
/*}}}*/
+static const char *W_NO_CDROM_FOUND = \
+ N_("No CD-ROM could be auto-detected or found using "
+ "the default mount point.\n"
+ "You may try the --cdrom option to set the CD-ROM mount point. "
+ "See 'man apt-cdrom' for more "
+ "information about the CD-ROM auto-detection and mount point.");
using namespace std;
return true;
}
/*}}}*/
-
// DoAdd - Add a new CDROM /*{{{*/
// ---------------------------------------------------------------------
/* This does the main add bit.. We show some status and things. The
bool AutoDetect = _config->FindB("Acquire::cdrom::AutoDetect", true);
unsigned int count = 0;
-
if (AutoDetect && UdevCdroms.Dlopen())
- {
while (AutoDetectCdrom(UdevCdroms, count))
res &= cdrom.Add(&log);
- } else {
+ if (count == 0) {
res = cdrom.Add(&log);
+ if (res == false) {
+ _error->Error("%s", _(W_NO_CDROM_FOUND));
+ }
}
if(res)
bool res = true;
bool AutoDetect = _config->FindB("Acquire::cdrom::AutoDetect");
+
unsigned int count = 0;
-
if (AutoDetect && UdevCdroms.Dlopen())
- {
while (AutoDetectCdrom(UdevCdroms, count))
res &= cdrom.Ident(ident, &log);
- } else {
- return cdrom.Ident(ident, &log);
+ if (count == 0) {
+ res = cdrom.Ident(ident, &log);
+ if (res == false) {
+ _error->Error("%s", _(W_NO_CDROM_FOUND));
+ }
}
-
return res;
}
/*}}}*/
/* */
int ShowHelp()
{
- ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,VERSION,
+ ioprintf(cout,_("%s %s for %s compiled on %s %s\n"),PACKAGE,PACKAGE_VERSION,
COMMON_ARCH,__DATE__,__TIME__);
if (_config->FindB("version") == true)
return 0;
" -m No mounting\n"
" -f Fast mode, don't check package files\n"
" -a Thorough scan mode\n"
- " --auto-detect Auto detect drive and mount point\n"
+ " --no-auto-detect Do not try to auto detect drive and mount point\n"
" -c=? Read this configuration file\n"
" -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n"
"See fstab(5)\n";
{
CommandLine::Args Args[] = {
{'h',"help","help",0},
- { 0,"auto-detect","Acquire::cdrom::AutoDetect",0},
+ { 0,"auto-detect","Acquire::cdrom::AutoDetect", CommandLine::Boolean},
{'v',"version","version",0},
{'d',"cdrom","Acquire::cdrom::mount",CommandLine::HasArg},
{'r',"rename","APT::CDROM::Rename",0},