diff options
Diffstat (limited to 'metadata/news/2015-02-04-portage-sync-changes/2015-02-04-portage-sync-changes.en.txt')
-rw-r--r-- | metadata/news/2015-02-04-portage-sync-changes/2015-02-04-portage-sync-changes.en.txt | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/metadata/news/2015-02-04-portage-sync-changes/2015-02-04-portage-sync-changes.en.txt b/metadata/news/2015-02-04-portage-sync-changes/2015-02-04-portage-sync-changes.en.txt new file mode 100644 index 000000000000..5a2d2124ba42 --- /dev/null +++ b/metadata/news/2015-02-04-portage-sync-changes/2015-02-04-portage-sync-changes.en.txt @@ -0,0 +1,77 @@ +Title: New portage plug-in sync system +Author: Brian Dolbec <dolsen@gentoo.org> +Content-Type: text/plain +Posted: 2015-02-02 +Revision: 1 +News-Item-Format: 1.0 +Display-If-Installed: sys-apps/portage + +There is a new plug-in sync system in >=sys-apps/portage-2.2.16. +This system will allow third party modules to be easily installed. Look +for a new layman plug-in sync module in layman's next release. Next is +a brief look at the changes. See the url [1] listed below for detailed +descriptions and usage. + +Changes: /etc/portage/repos.conf/* + New setting for all repository types (needed): + auto-sync = yes/no, true/false # default if absent: yes/true + + New for git sync-type: (applies to clone only) + sync-depth = n where n = {0,1,2,3,...} (optional, default = 1) + 0 -- full history + 1 -- shallow clone, only current state (default) + 2,3,... number of history changes to download + + New sync-type modules: + sync-type = svn # sync a subversion repository + sync-type = websync # Perform an emerge-webrsync operation + sync-type = laymanator # (if installed) runs a layman -s action + + New native portage postsync hooks + /etc/portage/postsync.d/* + Runs hooks once, only after all repos have been synced. + /etc/portage/repo.postsync.d/* + Runs each script with three arguments: + repo name, sync-uri, location + Each script is run at the completion of every repo synced. + +Migration: + Edit /etc/portage/repos.conf/*.conf files, add the auto-sync option + to each repository definition. Edit sync-type option to one of the + supported types {rsync, git, cvs, svn, websync, laymanator}. + [some-repo] + ... + sync-type = rsync + auto-sync = yes + + For an existing /etc/portage/repos.conf/layman.conf file: + 1) change/add the sync-type + sync-type = laymanator + 2) Ensure you have the correct layman version installed with + it's laymanator module also installed. + Alternate method: + Please see the wiki page url [1] for detailed instructions. + +Primary control of all sync operations has been moved from emerge to +emaint. "emerge --sync" now just calls the emaint sync module with the +--auto option. The --auto option performs a sync on only those +repositories with the auto-sync setting not set to 'no' or 'false'. If +it is absent, then it will default to yes and "emerge --sync" will sync +the repository. + +NOTE: As a result of the default auto-sync = True/Yes setting, commands + like "eix-sync", "esync -l", "emerge --sync && layman -S" will cause + many repositories to be synced multiple times in a row. Please edit + your configs or scripts to adjust for the new operation. + +WARNING: + Due to the above default. For any repos that you EXPLICITLY do not + want to be synced. You MUST set "auto-sync = no" + +The 'emaint sync' module operates similar to layman. It can sync +single or multiple repos. See "emaint --help" or for more details and +examples see the wiki page listed below [1]. + +Additional help and project API documentation can be found at: + +[1] https://wiki.gentoo.org/wiki/Project:Portage/Sync |