Thank you Jonathan for your answer. For now, uncommenting the xfercommand with curl almost totally fix the issue (well, once I decided to stop it because I was waiting for about 2 mins with no result, much harder to stop that way, have to use kill command rather than ^C), but after that it have gone well, I was able to download about 12 files of about 500k each, where I had to go about 3 times to get a 350k files before. It is not uncommon for the speed reported by curl to go to 0 for 20 seconds, then go as high as 25kB/sec for a short while, then going down to the normal 4kB/s speed. (I know, for most people, 4kB is way too slow, but that's what I expect). So, I suppose this is the out-of-order effect of TCP going on... that is, while it seems to be receiving nothing for the user-land, kernel is receiving packets, but transmit them only to userland when the next packet is received. I guess the 10 sec Timeout would not be so short, if it was really the kernel not receiving the packets for that much time, and not the user-space file not growing. That said, I would have to recompile pacman with a modified timeout to be sure it does really help... but I did not compile much if any packages yet outside the AUR ones. Not sure if it is as simple as makepkg. 2010/2/16, Jonathan Conder <j@skurvy.no-ip.org>:
On Tue, 2010-02-16 at 09:25 -0500, Paul Dufresne wrote:
Well, I have lots of errors while downloading packages with pacman, and almost never while downloading files from Shiretoko Firefox.
I have tried many mirrors, that's the same for each.
Oh... I use a 56k modem (Intel 536EP Data Fax modem).
But even while downloading in Firefox, it sometimes give me the feeling it has stopped downloading for about 40 secs... while pacman seems to give up after about 20 secs.
I did not tried yet to download with wget or curl (does pacman use one of them?).
Is there a constant I could change in the code, and rebuild it?... I did not download the code of pacman yet.
I am not a pacman developer, but I believe you can search for 'fetchTimeout' in pacman-3.3.3/lib/libalpm/dload.c and change it from 10 to whatever you want. Alternatively, you could use XferCommand in /etc/pacman.conf with wget, curl, etc. Read the man page for details.
Hope this helps Jonathan