When adding a repository via eselect repository, there is no possibility to specify repository options such as priority, sync depth, git commit signature verification, etc. One has to add options later by hand. This has following downsides: 1) Its less efficient from a usability perspective. 2) The editing makes it quite hard for scripting. Especially, since the repositories are all saved in one file (eselect-repo.conf) one needs to fully parse the file format in order to add an option to a specific repository. 3) One does not know what options are lost, when re-adding a repo (e.g., because the url is out of date) Proposals (in decreasing priority): a) I suggest to add parameters to specify repository options in the add and enable operation. This could simply follow the same syntax as in the repos.conf file. Thus, eselect-repository does not need to verify the option on its own. b) Consequently, there should be a show and modify command, to display and change options of an existing repository. c) It might be helpful to have some kind of template, to be able to define some kind of default behavior (e.g., always add "sync-depth = 1" to git repositories). d) It might be helpful to have an update command to apply changes (from repositories.xml and the template) to the repository and keep the custom options. However, this might introduce the extra burden to keep track of custom settings. I hope this are not to many proposals in one bug, but they are all somehow related to each other.
I don't mind enhancing this but I currently don't really have time to work on it.