All of lore.kernel.org
 help / color / mirror / Atom feed
From: Saul Wold <saul.wold@intel.com>
To: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 0/1] Automatically generate package repos for rpm	and deb [bug #1024]
Date: Thu, 12 May 2011 11:43:00 -0700	[thread overview]
Message-ID: <4DCC2A34.7040709@intel.com> (raw)
In-Reply-To: <1865303E0DED764181A9D882DEF65FB69334F4BD99@shsmsx502.ccr.corp.intel.com>

On 05/12/2011 04:38 AM, Cui, Dexuan wrote:
> Dexuan Cui wrote:
>> From: Dexuan Cui<dexuan.cui@intel.com>
>>
>> This was made to address
>> http://bugzilla.yoctoproject.org/show_bug.cgi?id=1024. Please comment.
>>
>> Pull URL: git://git.pokylinux.org/poky-contrib.git
>>    Branch: dcui/master
>>    Browse:
>> http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dcui/master
>
> This is an improved and simple version that keeps 1  package-index recipe and updates the 3 kinds of packages at the same time:
> http://git.pokylinux.org/cgit/cgit.cgi/poky-contrib/commit/?h=dcui/package-index&id=fb26e81dcb6e27e2908294e406a3011baed0120d
> This avoids forcing the user to remember which package type they enabled when running "bitbake package-index".
> (I also past the new version at the end of this mail for easy reviewing)
>
Dexuan,

I am not sure that this is the correct approach.  I think that you 
should look at how the packages get generated based on which package 
classes are included via PACKAGE_CLASSES, then in each of those classes 
set it up so that when the package-index task is called you know which 
indexer to run. This would be moving what you have in the 
package-index-<packager>.bb files to their respective 
package_<packager>.bbclass files and use

do_package_index[recrdeptask] += package_index_<packager>

in the case of ipk it would be in package_ipk.bbclass

do_package_index[recrdeptask] += "package_update_index_ipk"

You will also need to move the do_package_index[depends]

Another thing to verify is the current package_update_index_* correct 
for the different package types? Looking at package_update_index_rpm, I 
am not sure since it does not call createrepo, there might be a reason 
for this that Mark H or Qing can comment on.

Hope that made sense, I am sure Richard will correct me if I got 
something wrong!

Sau!

> Thanks!
> -- Dexuan
>
> commit fb26e81dcb6e27e2908294e406a3011baed0120d
> Author: Dexuan Cui<dexuan.cui@intel.com>
> Date:   Thu May 12 19:15:59 2011 +0800
>
>      package-index.bb: also add the support for rpm/deb
>
>      [YOCTO #1024]
>
>      -------------------------------
>      (I'll make a new patch to add the below description to the manual).
>
>      How to generate and use repos:
>
>      1) run "bitbake package-index" after building some target;
>      2) export ${DEPLOY_DIR_RPM} and ${DEPLOY_DIR_IPK} by a webserver on the host
>      (let's assume the host IP is 192.168.7.1) at
>      http://192.168.7.1/rpm
>      http://192.168.7.1/ipk
>      3) inside the target, according to the packaging system (ipk, rpm, deb) used
>      when we generate the target image, we can use different ways to manage
>      packages:
>          3.1) RPM:  "zypper addrepo http://192.168.7.1/rpm main; zypper refresh"
>      to retrieve info about the repo; next, we can use zypper install/remove to
>      manage packages.
>          3.2) IPK:  add the repo info into opkg config file, i.e., in
>      /etc/opkg/arch.conf, we can add something like
>      src i586 http://192.168.7.1/ipk/i586, and next we run "opkg update" to make
>      opkg update the list of available packages, and next we can use
>      opkg install/remove to manage packages.
>          3.3) DEB:(To be added)
>
>      Signed-off-by: Dexuan Cui<dexuan.cui@intel.com>
>
> diff --git a/meta/recipes-core/meta/package-index.bb b/meta/recipes-core/meta/package-index.bb
> index 3c642cb..969430b 100644
> --- a/meta/recipes-core/meta/package-index.bb
> +++ b/meta/recipes-core/meta/package-index.bb
> @@ -22,10 +22,14 @@ do_package_index[nostamp] = "1"
>   do_package_index[dirs] = "${DEPLOY_DIR_IPK}"
>   do_package_index[depends] += "opkg-utils-native:do_populate_sysroot"
>   do_package_index[depends] += "opkg-native:do_populate_sysroot"
> +do_package_index[depends] += "createrepo-native:do_populate_sysroot"
> +do_package_index[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot"
>
>   do_package_index() {
>      set -ex
>      package_update_index_ipk
> +   createrepo "${DEPLOY_DIR_RPM}"
> +   package_update_index_deb
>      set +ex
>   }
>   addtask do_package_index before do_build
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>




  reply	other threads:[~2011-05-12 18:45 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-12 10:49 [PATCH 0/1] Automatically generate package repos for rpm and deb [bug #1024] Dexuan Cui
2011-05-12 10:49 ` [PATCH 1/1] [RFC]package-index-{ipk, rpm, deb}.bb: add the package-index for rpm and deb Dexuan Cui
2011-05-12 11:38 ` [PATCH 0/1] Automatically generate package repos for rpm and deb [bug #1024] Cui, Dexuan
2011-05-12 18:43   ` Saul Wold [this message]
2011-05-13  1:21     ` Cui, Dexuan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DCC2A34.7040709@intel.com \
    --to=saul.wold@intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.