@libzypp-14.21.0 currently abvailable in obs://build.opensuse.org/zypp:Head
Testing the latest changes regarding 'service handling' I created a local service for openSUSE. As it was quite inconvenient to manually edit the file, I hacked a simple form of variable substitution into libzypps repoindex parser: - (key,value) pairs are defined as atributes to the <repoindex> node - after definition %{key} occurring in any attribute value is expanded - Within a <repo> additionally %{alias} is available after definition. It's IMO not that bad, so I'm thinking about leaving this enabled. Any concerns? If you want to give it a try: - create /{SOMEWHERE}/repo/repoindex.xml (see below) - zypper as dir:///{SOMEWHERE} openSUSE - zypper ref -s After editing the repoindex.xml you need an explicit 'zypper ref -s' unless you have turned on autorefresh for the openSUSE service. Note @repo/distro_target: If defined, the option hides the repo if it is not matching the currently installed distro. Basically you could have repos for "openSUSE-12.3-x86_64" and "openSUSE-13.1-x86_64" in one service. Repos without 'distro_target' (or an empty one) are visible on all systems. Note @migrating to a 13.2: Without using the 'distro_target' it should simply be distver="13.2" disttarget="" Provided 13.2 will use the same repo structure this ('zypper ref -s') will switch all repos to 13.2. With 'distro_target' it's more complicated because before a 'zypper dup' you'd need: distver="13.2" disttarget="openSUSE-13.1-x86_64" But after the dup again: distver="13.2" disttarget="openSUSE-%{distver}-x86_64" (actually after the openSUSE-release package got updated. The new /etc/products.d/openSUSE.prod file changes the distro version) =====[/Local/Service/repo/repoindex.xml]======================================== <repoindex disturl="http://download.opensuse.org" distver="13.1" disttarget="openSUSE-%{distver}-x86_64" debugenable="false" sourceenable="false"> <repo url="%{disturl}/distribution/%{distver}/repo/oss" alias="repo-oss" name="%{alias} (%{distver})" enabled="true" autorefresh="true" distro_target="%{disttarget}"/> <repo url="%{disturl}/update/%{distver}" alias="repo-oss-update" name="%{alias} (%{distver})" enabled="true" autorefresh="true" distro_target="%{disttarget}"/> <repo url="%{disturl}/distribution/%{distver}/repo/non-oss" alias="repo-non-oss" name="%{alias} (%{distver})" enabled="true" autorefresh="true" distro_target="%{disttarget}"/> <repo url="%{disturl}/update/%{distver}-non-oss" alias="repo-non-oss-update" name="%{alias} (%{distver})" enabled="true" autorefresh="true" distro_target="%{disttarget}"/> <repo url="%{disturl}/debug/distribution/%{distver}/repo/oss" alias="repo-debug" name="%{alias} (%{distver})" enabled="%{debugenable}" autorefresh="true" distro_target="%{disttarget}"/> <repo url="%{disturl}/debug/update/13.1" alias="repo-debug-update" name="%{alias} (%{distver})" enabled="%{debugenable}" autorefresh="true" distro_target="%{disttarget}"/> <repo url="%{disturl}/debug/update/13.1-non-oss" alias="repo-debug-update-non-oss" name="%{alias} (%{distver})" enabled="%{debugenable}" autorefresh="true" distro_target="%{disttarget}"/> <repo url="%{disturl}/source/distribution/%{distver}/repo/oss" alias="repo-source" name="%{alias} (%{distver})" enabled="%{sourceenable}" autorefresh="true" distro_target="%{disttarget}"/> </repoindex> =====[/Local/Service/repo/repoindex.xml]======================================== -- cu, Michael Andres +------------------------------------------------------------------+ Key fingerprint = 2DFA 5D73 18B1 E7EF A862 27AC 3FB8 9E3A 27C6 B0E4 +------------------------------------------------------------------+ Michael Andres SUSE LINUX Products GmbH, Development, m...@suse.de GF:Jeff Hawn,Jennifer Guild,Felix Imendörffer, HRB16746(AG Nürnberg) Maxfeldstrasse 5, D-90409 Nuernberg, Germany, ++49 (0)911 - 740 53-0 +------------------------------------------------------------------+ -- To unsubscribe, e-mail: zypp-devel+unsubscr...@opensuse.org To contact the owner, e-mail: zypp-devel+ow...@opensuse.org