You are not logged in.
I am trying to share a local repo with several hosts on a LAN using pacserve.
/etc/pacman.conf :
[options]
HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -C - -f %u %o
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
Architecture = auto
SigLevel = Never
[local-repo]
Include = /etc/pacman.d/pacserve
Server = file:///opt/pkg/etc/pacman.d/pacserve:
# Adjust the port to match options in /etc/conf.d/pacserve
Server = http://localhost:15678/pkg/?repo=$repo&arch=$arch&file=sudo pacman -Syv
Root : /
Conf File : /etc/pacman.conf
DB Path : /var/lib/pacman/
Cache Dirs: /var/cache/pacman/pkg/
Lock File : /var/lib/pacman/db.lck
Log File : /var/log/pacman.log
GPG Dir : /etc/pacman.d/gnupg/
Targets : None
:: Synchronising package databases...
error: failed retrieving file 'local-repo.db' from localhost:15678 : Protocol "file" not supported or disabled in libcurl
local-repo is up to dateWhich is a lie because:
$ curl -V
curl 7.38.0 (x86_64-unknown-linux-gnu) libcurl/7.38.0 OpenSSL/1.0.1j zlib/1.2.8 libssh2/1.4.3
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile GSS-API SPNEGO NTLM NTLM_WB SSL libz TLS-SRPIf I comment out
#Include = /etc/pacman.d/pacservein pacman.conf
$ sudo pacman -Syv
Root : /
Conf File : /etc/pacman.conf
DB Path : /var/lib/pacman/
Cache Dirs: /var/cache/pacman/pkg/
Lock File : /var/lib/pacman/db.lck
Log File : /var/log/pacman.log
GPG Dir : /etc/pacman.d/gnupg/
Targets : None
:: Synchronising package databases...
local-repo is up to datethen pacman appears to work normally but, of course, the repo is not shared via pacserve.
Can anyone tell me what to change in order to use pacserve with a local repo? Thanks.
Last edited by myles (2014-11-25 00:13:05)
Offline
Server = http://localhost:15678/pkg/?repo=$repo&arch=$arch&file=Do you have a webserver running for localhost ?
Last edited by Lone_Wolf (2014-11-24 12:26:02)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
I did have nginx running but I stopped it and there is no difference to what is reported above.
Offline
Pacserve only checks the local Pacman cache(s) for the requested files. If it does not find them there then it redirects the request to the (external) mirror. What you are trying to do is use Pacserve as a full mirror for transferring databases and packages, which is not what it does.
On the system that hosts [local-repo], it makes no sense to use Pacserve because the "file" scheme is necessarily local. If the package were already in the cache then it would not be added to the download queue. If it's not, then Pacserve would just redirect to the local machine anyway. The error about the "file" protocol not being supported is due to Pacserve issuing an HTTP redirect command. HTTP cannot be redirected to a "file" scheme in this way.
I have updated python3-threaded_servers to 404 on requests for "file" scheme URLs.
To do what you want to do, you will need to run a local server for [local-repo]. You could do this with nginx or even quickserve. If the server is local then all downloads from the server will be local as well and Pacserve will not save you any bandwidth.
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
Thanks for clear explanation, I'll go with nginx because I am already using it for something else. Thanks for pacserve too by the way, it saves me a lot of bandwidth.
Offline
I did run pacserve in the past, but it download each package file to the computer to be updated first and then upgrade normally. Pacserve was an answer to nfs mounting the pacman cache of another machine, but I found it was actually quicker to use nfs mounts. The only problem I had with nfs is if it was a big package like sage-mathematics, that it would take forever to stream it to pacman in order to update everything. Pacserve is better tuned to download and go scenarios where you aren't worried about taking the recent packages with you somewhere to upgrade a machine somewhere else.
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline