portage version 2.1.6.4flybynite wrote:I seem to remember fixing this a while ago, I guess it might be changing again? What version of replicator and portage are you running?
and http-replicator version 3.0-r1 (~x86)
Thanks,
melinux
Portage switched from portage_manifest to portage.manifest in version 2.2-r6 or greater and repcacheman is fixed for that version. Now the change seems to have been backported to at least your portage version 2.1.6.4melinux wrote: portage version 2.1.6.4
Code: Select all
mkdir /root/repcachemantest
cd /root/repcachemantest
cp /usr/portage/net-proxy/http-replicator/files/http-replicator-3.0-repcacheman-0.44-r1 .
./http-replicator-3.0-repcacheman-0.44-r1

I was having the same warnings with portage 2.1.6.7. I ran the repcacheman script as you described, and then it did not display the warnings.flybynite wrote: Could you check to see if the current fix works for you to confirm this?
Just cp the file /usr/portage/net-proxy/http-replicator/files/http-replicator-3.0-repcacheman-0.44-r1 somewhere and run it instead of the system version.
At present I can't test that pc as its not working (hardware - overheating problems) right now...jongeek wrote:I was having the same warnings with portage 2.1.6.7. I ran the repcacheman script as you described, and then it did not display the warnings.flybynite wrote: Could you check to see if the current fix works for you to confirm this?
Just cp the file /usr/portage/net-proxy/http-replicator/files/http-replicator-3.0-repcacheman-0.44-r1 somewhere and run it instead of the system version.
Code: Select all
quickpkg --include-config=y <package>
Onkl wrote:Is there a way to make http-replicator also serve those files, or make quickpkg to set the correct permissions?
Code: Select all
h2 ~ # quickpkg --help
--umask=UMASK umask used during package creation (default is 0077)
Code: Select all
h2 ~ # quickpkg --umask=022 nano
h2 ~ # ls -l /var/tmp/packages/All/nano*
-rw-r--r-- 1 root root 202145 2009-12-03 20:53 /var/tmp/packages/All/nano-2.1.10.tbz2
Code: Select all
alias quickpkg='quickpkg --umask=022'depontius ... when this migration happend openrc intoduced an implimentation of systemd's tmpfiles.d. This implimentation is 100% compatable with the above linked manpage, though openrc doesn't create the configuration dir /etc/tmpfiles.d on install.depontius wrote:A while back Linux adopted a tmpfs-based /run directory, and /var/run became a symlink to /run. When it was in /var/run it was persistent, and the emerge process could chown /var/run/http-replicator to portage, and it would stick. Now that /run is tmpfs, it's recreated on every boot, and such things don't stick. The fix would be to do a chown against /run/http-replicator in the initscript, prior to changing to the portage userid.
Code: Select all
# equery files =sys-apps/openrc-0.11.8 |grep tmpfiles
/etc/conf.d/tmpfiles
/etc/init.d/tmpfiles.setup
/lib/rc/sh/tmpfiles.sh
/usr/share/openrc/runlevels/boot/tmpfiles.setupCode: Select all
/etc/init.d/http-replicator start
* Caching service dependencies ... [ ok ]
* Starting Http-Replicator ...
Traceback (most recent call last):
File "/usr/bin/http-replicator", line 4, in <module>
import Params, Request, Response, fiber, weakref
ImportError: No module named Params
* start-stop-daemon: failed to start `/usr/bin/http-replicator'
* Failed to start Http-Replicator [ !! ]
* ERROR: http-replicator failed to start
+ 05 Jun 2013; Tom Wijsman <TomWij@gentoo.org>
+ +http-replicator-4.0_alpha2-r1.ebuild:
+ Revision bump, added missing Python modules. Fixes bug #472122 reported by
+ Russell Knighton.
This is incorrect - http-replicator will serve binpkgs by itself and doesn't require installing apache,lighttpd, or any other http server. It is way more than just a simple proxy.It appears you're trying to use http-replicator as a regular HTTP server to serve up your binpkgs, which won't work: it is only a proxy, and does nothing unless you have a proper server
Code: Select all
000C Accepted request from [192.168.1.2]:34974
000C Waiting at 16: RECV(4,20:03:29)
000C Client sends GET /distfiles/layout.conf HTTP/1.1
000C Error: invalid url: /distfiles/layout.conf
[ IDLE ] Sun Feb 2 20:03:14 2020
[ BUSY ] Sun Feb 2 20:03:15 2020
[ 000D ] Sun Feb 2 20:03:15 2020
000D Accepted request from [192.168.1.2]:34976
000D Waiting at 16: RECV(4,20:03:30)
000D Client sends GET /distfiles/layout.conf HTTP/1.1
000D Error: invalid url: /distfiles/layout.conf
[ IDLE ] Sun Feb 2 20:03:15 2020
[ BUSY ] Sun Feb 2 20:03:17 2020
[ 000E ] Sun Feb 2 20:03:17 2020
000E Accepted request from [192.168.1.2]:34978
000E Waiting at 16: RECV(4,20:03:32)
000E Client sends GET /distfiles/layout.conf HTTP/1.1
000E Error: invalid url: /distfiles/layout.conf
[ IDLE ] Sun Feb 2 20:03:17 2020
[ BUSY ] Sun Feb 2 20:03:17 2020
[ 000F ] Sun Feb 2 20:03:17 2020
000F Accepted request from [192.168.1.2]:34980
000F Waiting at 16: RECV(4,20:03:32)
000F Client sends GET /distfiles/libgweather-3.32.2.tar.xz HTTP/1.1
000F Error: invalid url: /distfiles/libgweather-3.32.2.tar.xz
[ IDLE ] Sun Feb 2 20:03:17 2020
Code: Select all
>>> Emerging (1 of 1) dev-libs/libgweather-3.32.2-r1::gentoo
>>> Downloading 'http://pig2:8080/distfiles/layout.conf'
--2020-02-02 20:03:14-- http://pig2:8080/distfiles/layout.conf
Resolving pig2... 192.168.1.4
Connecting to pig2|192.168.1.4|:8080... connected.
HTTP request sent, awaiting response... No data received.
Retrying.
--2020-02-02 20:03:15-- (try: 2) http://pig2:8080/distfiles/layout.conf
Connecting to pig2|192.168.1.4|:8080... connected.
HTTP request sent, awaiting response... No data received.
Retrying.
--2020-02-02 20:03:17-- (try: 3) http://pig2:8080/distfiles/layout.conf
Connecting to pig2|192.168.1.4|:8080... connected.
HTTP request sent, awaiting response... No data received.
Giving up.
!!! Couldn't download '.layout.conf.pig2'. Aborting.
>>> Downloading 'http://pig2:8080/distfiles/libgweather-3.32.2.tar.xz'
--2020-02-02 20:03:17-- http://pig2:8080/distfiles/libgweather-3.32.2.tar.xz
Resolving pig2... 192.168.1.4
Connecting to pig2|192.168.1.4|:8080... connected.
HTTP request sent, awaiting response... No data received.
Retrying.
Yes, mines was very similar.Gatak wrote:I did an alternative setup. I exported my distfiles over samba with a password so that each client can fetch and update the central repository. This also works with the portage tree itself, if you like. This way only one client needs to run six-sync, and all others just do eix-update.
Code: Select all
[ IDLE ] Mon Feb 3 16:58:02 2020
[ BUSY ] Mon Feb 3 16:58:02 2020
[ 0001 ] Mon Feb 3 16:58:02 2020
0001 Accepted request from [192.168.1.2]:37812
0001 Waiting at 16: RECV(4,16:58:17)
0001 Client sends GET http://pig2:8080/distfiles/libgweather-3.32.2.tar.xz HTTP/1.1
0001 Switching to HttpProtocol
0001 Cache position: libgweather-3.32.2.tar.xz
0001 Requesting address info for pig2:8080
0001 Connecting to [127.0.0.1]:8080
0001 Waiting at 36: SEND(5,16:58:17)
[ 0002 ] Mon Feb 3 16:58:02 2020
0001 Waiting at 39: RECV(5,16:58:17)
0002 Accepted request from [127.0.0.1]:49830
0002 Waiting at 16: RECV(6,16:58:17)
0002 Client sends GET /distfiles/libgweather-3.32.2.tar.xz HTTP/1.1
0002 Error: invalid url: /distfiles/libgweather-3.32.2.tar.xz
0001 Switching to ExceptionResponse
0001 Traceback (most recent call last):
0001 File "/usr/lib/python-exec/python2.7/http-replicator", line 40, in Replicator
0001 protocol.recv( server )
0001 File "/usr/lib/python2.7/site-packages/Protocol.py", line 149, in recv
0001 assert chunk, 'server closed connection before sending a complete message header'
0001 AssertionError: server closed connection before sending a complete message header
0001 Waiting at 52: SEND(4,16:58:17)
0001 Transaction successfully completed
[ IDLE ] Mon Feb 3 16:58:02 2020

It's a real shame The Replicator doesn't work anymore.Thistled wrote:Does anyone actually have http-replicator working out of the box today?
I do observe this particular forum post has gone very quiet, is it because the replicator just doesn't work now and is no longer maintained?