Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 534070

Summary: sys-apps/portage: support sync of submodules such as glsa, news, and profiles
Product: Portage Development Reporter: Zac Medico <zmedico>
Component: Core - Interface (emerge)Assignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: enhancement CC: chutzpah, esigra
Priority: Normal Keywords: InVCS
Version: unspecified   
Hardware: All   
OS: All   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 89641, 240187, 484436    

Description Zac Medico gentoo-dev 2014-12-31 08:00:53 UTC
It would be useful if 'emerge --sync' and 'emaint sync' supported a way to sync specific submodules, such as glsa, news, and sync. For example, we could add a new --sync-submodule <glsa|news|profiles> option to both emerge and emaint. When this option is used with the sync action, only the selected submodules are synced. Each submodule is referenced using an abstract identifier, which serves to hide the implementation details involving the precise locations of specific submodules within each repository.
Comment 1 Zac Medico gentoo-dev 2014-12-31 08:10:42 UTC
I have a patch in the following branch:

	https://github.com/zmedico/portage/tree/sync-submodule

I've posted it for review here:

	http://thread.gmane.org/gmane.linux.gentoo.portage.devel/5052
Comment 2 Zac Medico gentoo-dev 2015-01-05 18:26:09 UTC
This is in the master branch now:

https://github.com/gentoo/portage/commit/c8a850685232b938cf0896fc2d80e72d57edad17
Comment 3 Brian Dolbec (RETIRED) gentoo-dev 2015-03-04 21:25:14 UTC
Released in portage-2.2.16
Comment 4 Joakim Tjernlund 2015-09-14 12:41:46 UTC
hmm just tried in portage 2.2.20 on ppc:


~ # emaint --sync-submodule=profiles sync

ERROR: module 'sync' does not have option '--check'

 sync module options:
  -A, --allrepos (sync module only): -A, --allrepos  Sync all repos that have a sync-url defined
  -a, --auto    (sync module only): -a, --auto  Sync auto-sync enabled repos only
  -r, --repo    (sync module only): -r, --repo  Sync the specified repo

Is it me or portage?


Could we get support for git submodule sync too?
Comment 5 Zac Medico gentoo-dev 2015-09-14 18:07:54 UTC
(In reply to Joakim Tjernlund from comment #4)
> hmm just tried in portage 2.2.20 on ppc:
> 
> 
> ~ # emaint --sync-submodule=profiles sync
> 
> ERROR: module 'sync' does not have option '--check'

The error message is confusing. If you don't include one of the following actions, then it tries to use --checks as the default action:

>  sync module options:
>   -A, --allrepos (sync module only): -A, --allrepos  Sync all repos that
> have a sync-url defined
>   -a, --auto    (sync module only): -a, --auto  Sync auto-sync enabled repos
> only
>   -r, --repo    (sync module only): -r, --repo  Sync the specified repo
> 
> Is it me or portage?

It will work if you include the -A action.

> Could we get support for git submodule sync too?

That's feasible. If we do that, then we might want to support moving metadata/layout.conf to profiles/layout.conf, since it makes sense to sync them together (see bug 559122).