Hi, some weeks ago, portage introduced /etc/portage/repos.conf support. Today I tried to use that feature, to get rid off layman. Reproducible: Always Steps to Reproduce: 1. mkdir -p /usr/overlays/test-overlay 2. Create "/etc/portage/repos.conf/test.conf" with the following content: [test-overlay] location = /usr/overlays/test-overlay sync-type = git sync-uri = https://git.overlays.gentoo.org/gitroot/dev/TomWij.git 3. Run "emerge --sync" Actual Results: >>> Synchronization of repository 'test-overlay' located in '/usr/overlays/test-overlay'... >>> Starting git pull in /usr/overlays/test-overlay... fatal: Not a git repository (or any of the parent directories): .git !!! git pull error in /usr/overlays/test-overlay. Expected Results: Because I did not find a notice in the man page, that I have to make the initial clone, I expect that portage should have notice, that /usr/overlays/test-overlay is empty and therefor create (clone) the repository first. Workaround: Actual you have to manually create the initial repository (=after step 1 go to /usr/overlays/test-overlay and manually run "git clone ..."). After that, every "emerge --sync" will also update the repository as expected.
Created attachment 367814 [details, diff] portage_add_git_clone.patch This patch makes portage test whether the target dir is a git repo and clones if it isn't. On hold for Portage submission since we may be redoing the sync setup in the very near future.
This should be fixed since 2.2.16 when we merged the modular sync support.
*** Bug 514926 has been marked as a duplicate of this bug. ***
(In reply to Chris Reffett from comment #1) > Created attachment 367814 [details, diff] [details, diff] > portage_add_git_clone.patch That's in the master branch: https://gitweb.gentoo.org/proj/portage.git/commit/?id=112cd2845874291719582e5cd11c2c757157c68d