[opensuse] Using zypper ar -k rpms - do delta RPMS have to remain under original i586/x86_64 dir?
Listmates, I am working on a script that will run on network clients running openSuSE 11.0+ that will parse the rpms under /var/cache/zypp/packages, rsync the rpms to my server for the local net and then create or update the resulting local update server. I have 2 approaches and I need to know which way would be best. I think the answer to the question will turn on whether the delta rpms must be stored in the same directory as the associated noarch, i586 or x86_64 rpm *or* whether it is OK to put all delta rpms in their own directory. (1) Currently I have all clients sending all saved rpms to the server under the directory structure of: 09:04 nirvana:/home/backup/rpms> ls -1 openSUSE_11.0/ delta i586 i686 noarch repodata src x86_64 Where, for example, the delta directory holds the delta rpms for both 1586 and x86_64. Initially, it looks like that would be OK since the delta.rpms have the associated architecture identified: 09:05 nirvana:/home/backup/rpms> ls -1 openSUSE_11.0/delta/ <snip> wireshark-1.0.0-17.1_17.2.i586.delta.rpm wireshark-1.0.0-17.2_17.7.i586.delta.rpm wireshark-1.0.0-17.2_17.7.x86_64.delta.rpm wireshark-1.0.0-17.7_17.9.i586.delta.rpm wireshark-1.0.0-17.7_17.9.x86_64.delta.rpm <snip> and ... the delta rpms are only from the updates repositories. My question and request for comment is -- "Is that doable??" (2) Second option for the local repository on the server is to leave the delta rpms mixed-in under the i586 or x86_64 directories where they originated. I did *not* want to do that because I am consolidating a lot of rpms from a number of different repository directories and wanted to keep the rpm types separate. Question, "Do I have to leave the delta rpms under the original directories?" It matters because I have cached rpms from the following repos (not all enabled): [09:11 alchemy:/var/cache/zypp/packages] # ls -1 backports cc++ community compiz cpplib database edu games gcc gcctools gfax gnome_comm http:__download.opensuse.org_repositories_games_openSUSE_11.0_ http:__download.opensuse.org_repositories_home:_pikerhog:_utils_openSUSE_11.0 http:__download.opensuse.org_repositories_KDE:_Backports_openSUSE_11.0_ http:__download.opensuse.org_repositories_KDE:_Community_openSUSE_11.0_ http:__download.opensuse.org_repositories_OpenOffice.org:_STABLE_openSUSE_11.0_ http:__download.opensuse.org_repositories_openSUSE:_Tools_openSUSE_11.0 http:__download.opensuse.org_repositories_server:_database_openSUSE_11.0_ http:__download.opensuse.org_repositories_X11:_XGL_openSUSE_11.0_ http:__download.videolan.org_pub_videolan_vlc_SuSE_11.0_ http:__ftp.skynet.be_pub_packman_suse_11.0_ http:__www2.ati.com_suse_11.0 http:__www.opensuse-education.org_download_repo_1.0_11.0 javapkg kde monitor mono multimedia-photo ooxmission openoffice openSUSE-11.0-Updates openSUSE-DVD 11.0 packman php qt44 repo repo-non-oss repo-oss ruby-ext subpixel repository sugar tools updates updatesgwdg videolan wm wordpress x11 X11:Compiz I wanted the top-level layout for my local repositories to be: 09:17 nirvana:/home/backup/rpms> l total 16 drwxr-xr-x 9 david dcr 4096 2009-03-22 23:26 openSUSE_11.0/ drwxr-xr-x 2 david dcr 4096 2009-03-23 09:17 openSUSE_11.1/ Then I wanted the layout under each release to be: 09:04 nirvana:/home/backup/rpms> ls -1 openSUSE_11.0/ delta i586 i686 noarch repodata src x86_64 and the same thing for 11.1. Right now, this is how the script works. If the delta.rpms have to be under the original directory, then the top-level would change to: 09:17 nirvana:/home/backup/rpms> ls -1 openSUSE_11.0 openSUSE_11.1 updates_11.0 updates_11.1 I would prefer a single repo for each release if it will work. createrepo works fine with my current setup, but I wanted to check with the repository gurus to make sure I wasn't screwing myself in some unknown way. Thanks. -- David C. Rankin, J.D.,P.E. Rankin Law Firm, PLLC 510 Ochiltree Street Nacogdoches, Texas 75961 Telephone: (936) 715-9333 Facsimile: (936) 715-9339 www.rankinlawfirm.com -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
On Mon, Mar 23, 2009 at 09:24:06AM -0500, David C. Rankin wrote:
I have 2 approaches and I need to know which way would be best. I think the answer to the question will turn on whether the delta rpms must be stored in the same directory as the associated noarch, i586 or x86_64 rpm *or* whether it is OK to put all delta rpms in their own directory.
You can put them anywhere you like as long as the "deltainfo.xml.gz" file contains the corresponding filename entries. Cheers, Michael. -- Michael Schroeder mls@suse.de SUSE LINUX Products GmbH, GF Markus Rex, HRB 16746 AG Nuernberg main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);} -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
Michael Schroeder wrote:
On Mon, Mar 23, 2009 at 09:24:06AM -0500, David C. Rankin wrote:
I have 2 approaches and I need to know which way would be best. I think the answer to the question will turn on whether the delta rpms must be stored in the same directory as the associated noarch, i586 or x86_64 rpm *or* whether it is OK to put all delta rpms in their own directory.
You can put them anywhere you like as long as the "deltainfo.xml.gz" file contains the corresponding filename entries.
Cheers, Michael.
Michael, Thank you. Now how do I generate the "deltainfo.xml.gz" file on 11.0? I have used the following createrepo commands to create and then update the repository: createrepo -p -d openSUSE_11.0 createrepo --update However, the repo meta data files do not contain the deltainfo file: [14:38 nirvana/home/backup/rpms/openSUSE_11.0] # l repodata/ total 40652 drwxr-xr-x 2 root root 4096 2009-03-22 23:26 ./ drwxr-xr-x 9 david dcr 4096 2009-03-22 23:26 ../ -rw-r--r-- 1 david dcr 6192520 2009-03-21 04:26 filelists.sqlite.bz2 -rw-r--r-- 1 root root 7031628 2009-03-22 23:26 filelists.xml.gz -rw-r--r-- 1 david dcr 7816214 2009-03-21 04:26 other.sqlite.bz2 -rw-r--r-- 1 root root 16010865 2009-03-22 23:26 other.xml.gz -rw-r--r-- 1 david dcr 2420193 2009-03-21 04:26 primary.sqlite.bz2 -rw-r--r-- 1 root root 2070630 2009-03-22 23:26 primary.xml.gz -rw-r--r-- 1 root root 951 2009-03-22 23:26 repomd.xml What's the trick. -- David C. Rankin, J.D.,P.E. Rankin Law Firm, PLLC 510 Ochiltree Street Nacogdoches, Texas 75961 Telephone: (936) 715-9333 Facsimile: (936) 715-9339 www.rankinlawfirm.com -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org
participants (2)
-
David C. Rankin
-
Michael Schroeder