Debian & apt-get

Place to discuss Debian Linux and Debian based distributions
User avatar
Void Main
Site Admin
Site Admin
Posts: 5716
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA
Contact:

Post by Void Main » Tue Dec 14, 2004 5:02 pm

Now that I look at my sources.list I have all "http" repos. I just tried to use an ftp repo with no success. If you look at the man page for apt.conf you will see there is a section for ftp proxy which points you to some examples in /usr/share/doc/apt/examples/configure-index.gz. Sure enough there is an example in there but I didn't have any luck getting it to work (didn't have a lot of time to spend on it yet though). The easiest thing for you to do would be to switch to an http mirror of the repo in question.

Ice9
guru
guru
Posts: 577
Joined: Thu Jan 09, 2003 12:40 am
Location: Belgium
Contact:

Post by Ice9 » Wed Dec 15, 2004 2:28 am

I read a lot of man pages yesterday so forgive me if I don't remember exactly which one it was but I read that you could use an http proxy for ftp transfers but you couldn't put it in the configuration file.
So if I understand it correctly I can use the http://ftp proxy but I can't pin it down in my apt.conf file.
What strikes me as odd is that synaptic provides you with the http and ftp proxy option, and no matter what I try the ftp proxy just doesn't work, even after an export when apt (command line) works!
I tried to add the proxy entry in /etc/profile, /apt.conf, and a few other files from which I can't remember the exact name atm but nothing worked.

I could switch to http repositories no problem but I'll have to dig a little more into repository territory then because all the really interesting ones I found (like mplayer) are ftp repositories.

Edit:
found the reference to the man page again
from http://www.die.net/doc/linux/man/man5/s ... ist.5.html
Please note that a ftp proxy can be specified by using the ftp_proxy environment variable. It is possible to specify a http proxy (http proxy servers often understand ftp urls) using this method and ONLY this method. ftp proxies using http specified in the configuration file will be ignored.
Basically this means I'm screwed if I can't find any http repos, right?

User avatar
Void Main
Site Admin
Site Admin
Posts: 5716
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA
Contact:

Post by Void Main » Wed Dec 15, 2004 11:55 am

I can't imagine there not being an http mirror to the repos you are interested in. I find http repos to be all around much less hassle anyway (never get the "too many logged on users").

But like I said, there is an example of ftp proxy settings in the file I linked (I just coudn't get it to work in the time that I had to attempt it):

Code: Select all

// $Id: configure-index,v 1.8 2003/04/24 03:32:32 doogie Exp $
/* This file is an index of all APT configuration directives. It should
   NOT actually be used as a real config file, though it is a completely
   valid file. Most of the options have sane default values, unless
   you have specific needs you should NOT include arbitary items in a custom
   configuration.

   In some instances involving filenames it is possible to set the default
   directory when the path is evaluated. This means you can use relative
   paths within the sub scope.

   The configuration directives are specified in a tree with {} designating
   a subscope relative to the tag before the {}. You can further specify
   a subscope using scope notation eg,
     APT::Architecture "i386";
   This is prefixed with the current scope. Scope notation must be used
   if an option is specified on the command line with -o.
*/

// Options for APT in general
APT
{
  Architecture "i386";
  Build-Essential "build-essential";

  // Options for apt-get
  Get
  {
     Arch-Only "false";
     Download-Only "false";
     Simulate "false";
     Assume-Yes "false";
     Force-Yes "false";             // I would never set this.
     Fix-Broken "false";
     Fix-Missing "false";
     Show-Upgraded "false";
     Upgrade "true";
     Print-URIs "false";
     Compile "false";
     Download "true";
     Purge "false";
     List-Cleanup "true";
     ReInstall "false";
     Trivial-Only "false";
     Remove "true";
  };

  Cache
  {
     Important "false";
     AllVersions "false";
     GivenOnly "false";
     RecruseDepends "false";
  };

  CDROM
  {
     Rename "false";
     NoMount "false";
     Fast "false";
     NoAct "false";
  };

  // Some general options
  Ignore-Hold "false";
  Clean-Installed "true";
  Immediate-Configure "true";      // DO NOT turn this off, see the man page
  Force-LoopBreak "false";         // DO NOT turn this on, see the man page
  Cache-Limit "4194304";
  Default-Release "";
};

// Options for the downloading routines
Acquire
{
  Queue-Mode "host";       // host|access
  Retries "0";
  Source-Symlinks "true";

  // HTTP method configuration
  http
  {
    Proxy "http://127.0.0.1:3128";
    Proxy::http.us.debian.org "DIRECT";  // Specific per-host setting
    Timeout "120";
    Pipeline-Depth "5";

    // Cache Control. Note these do not work with Squid 2.0.2
    No-Cache "false";
    Max-Age "86400";     // 1 Day age on index files
    No-Store "false";    // Prevent the cache from storing archives
  };

  ftp
  {
    Proxy "ftp://127.0.0.1/";
    Proxy::http.us.debian.org "DIRECT"; // Specific per-host setting

    /* Required script to perform proxy login. This example should work
       for tisfwtk */
    ProxyLogin
    {
       "USER $(PROXY_USER)";
       "PASS $(PROXY_PASS)";
       "USER $(SITE_USER)@$(SITE):$(SITE_PORT)";
       "PASS $(SITE_PASS)";
    };

    Timeout "120";

    /* Passive mode control, proxy, non-proxy and per-host. Pasv mode
       is prefered if possible */
    Passive "true";
    Proxy::Passive "true";
    Passive::http.us.debian.org "true"; // Specific per-host setting
  };

  cdrom
  {
    Mount "/cdrom";

    // You need the trailing slash!
    "/cdrom/"
    {
       Mount "sleep 1000";
       UMount "sleep 500";
    }
  };
};

// Directory layout
Dir "/"
{
  // Location of the state dir
  State "var/lib/apt/"
  {
     lists "lists/";
     xstatus "xstatus";
     userstatus "status.user";
     status "/var/lib/dpkg/status";
     cdroms "cdroms.list";
  };

  // Location of the cache dir
  Cache "var/cache/apt/" {
     archives "archives/";
     srcpkgcache "srcpkgcache.bin";
     pkgcache "pkgcache.bin";
  };

  // Config files
  Etc "etc/apt/" {
     sourcelist "sources.list";
     main "apt.conf";
     preferences "preferences";
  };

  // Locations of binaries
  Bin {
     methods "/usr/lib/apt/methods/";
     gzip "/bin/gzip";
     dpkg "/usr/bin/dpkg";
     dpkg-source "/usr/bin/dpkg-source";
     dpkg-buildpackage "/usr/bin/dpkg-buildpackage"
     apt-get "/usr/bin/apt-get";
     apt-cache "/usr/bin/apt-cache";
  };
};

// Things that effect the APT dselect method
DSelect
{
   Clean "auto";   // always|auto|prompt|never
   Options "-f";
   UpdateOptions "";
   PromptAfterUpdate "no";
   CheckDir "no";
}

DPkg
{
   // Probably don't want to use force-downgrade..
   Options {"--force-overwrite";"--force-downgrade";}

   // Auto re-mounting of a readonly /usr
   Pre-Invoke {"mount -o remount,rw /usr";};
   Post-Invoke {"mount -o remount,ro /usr";};

   // Prevents daemons from getting cwd as something mountable (default)
   Run-Directory "/";

   // Build options for apt-get source --compile
   Build-Options "-b -uc";

   // Pre-configure all packages before they are installed using debconf.
   Pre-Install-Pkgs {"dpkg-preconfigure --apt --priority=low --frontend=dialog";};

   // Flush the contents of stdin before forking dpkg.
   FlushSTDIN "true";

   // Control the size of the command line passed to dpkg.
   MaxBytes 1024;
   MaxArgs 350;
}

/* Options you can set to see some debugging text They correspond to names
   of classes in the source code */
Debug
{
  pkgProblemResolver "false";
  pkgAcquire "false";
  pkgAcquire::Worker "false";
  pkgDPkgPM "false";
  pkgOrderList "false";

  pkgInitialize "false";   // This one will dump the configuration space
  NoLocking "false";
  Acquire::Ftp "false";    // Show ftp command traffic
  Acquire::Http "false";   // Show http command traffic
  aptcdrom "false";        // Show found package files
}

/* Whatever you do, do not use this configuration file!! Take out ONLY
   the portions you need! */
This Is Not A Valid Config File


Ice9
guru
guru
Posts: 577
Joined: Thu Jan 09, 2003 12:40 am
Location: Belgium
Contact:

Post by Ice9 » Wed Dec 15, 2004 1:28 pm

Ok, I'm at home now.
I'll take a look at it right away.

Ice9
guru
guru
Posts: 577
Joined: Thu Jan 09, 2003 12:40 am
Location: Belgium
Contact:

Post by Ice9 » Thu Dec 16, 2004 2:17 am

Well, I couldn't get it to work but on the other hand I found a couple of http repositories with lots of goodies :wink:
This is a situation I can perfectly live with, if I really have to use the ftp repo I can always use the command line to install any package I want, it's not like I use synaptic as often as before anyway.

This is really a killer distro, Yoper, Mepis, Suse and all the other distros I tried out are OK but nothing comes close to this!

chartoo
user
user
Posts: 32
Joined: Mon Mar 22, 2004 5:43 pm
Location: cerebral cortex
Contact:

Post by chartoo » Mon Jan 17, 2005 6:21 pm

Remember, sid is bleeding edge and may or may not get security updates like the other two.
Thanks for the heads up, I just installed Knoppix to hard drive and setup Debian unstable. After reading this thread I looked around, according to the Debian security FAQ unstable and testing don't get security updates.
Q: How is security handled for testing and unstable?

A: The short answer is: it's not. Testing and unstable are rapidly moving targets and the security team does not have the resources needed to properly support those. If you want to have a secure (and stable) server you are strongly encouraged to stay with stable. However, the security secretaries will try to fix problems in testing and unstable after they are fixed in the stable release.

Post Reply