All of lore.kernel.org
 help / color / mirror / Atom feed
* I'm confused about distributions, machines, and images
@ 2014-08-30  0:31 Matt Schuckmann
  2014-09-11 22:43 ` Denys Dmytriyenko
  0 siblings, 1 reply; 3+ messages in thread
From: Matt Schuckmann @ 2014-08-30  0:31 UTC (permalink / raw)
  To: meta-arago

I feel like I keep going around in circles on this and I'm looking for some wisdom and direction. I hope that I am posting this in the correct place.

I'm trying to get a Linux image setup for my custom board based on the AM335x.
I assume that I want to use the meta-arago layer because it has all the latest tested stuff. Correct?

Our board will not have any sound, screen, usbgadget, or video support so I assume that I'll want to create a new MACHINE, probably based on meta-arago/meta-arago-distro/conf/machine/arago-armv7.conf (correct?) but with a different definition for MACHINE_FEATURES. Is this the correct thing to do? Do I start with a completely scratch machine definition coping bits and pieces from the arago machine definitions, or do somehow inherit or include the definitions from the arago files and somehow override or filter out stuff that I don't want?

Next, I don't understand if I need to create a new distribution. It doesn't seem like I should, but I can see that meta-argo/meta-argo-distro/conf/distro/arago.conf defines DISTRO_FEATURES to include many things that my system won't need, including alsa, pcmcia, usbgadget, wifi, etc. I can't seem to find a complete description for what DISTRO_FEATURES does (same goes for MACHINE_FEATURES and IMAGE_FEATURES), does it mean that all of the things listed will be included in images based on the distribution or? Ultimately the question is: do I need to create a new distribution? And if I do how best to go about it.

Finally, I think that I need to create a new image that only includes the packages that I want, I would think that I would want to base it on one of the arago images (i.e. include something like arago-base-image.bb in my image). However when I look at arago-base-image.bb I see that it includes packagegroup-arago-base which RDEPENDS on alsa-lib and alsa-utils-aplay both of which I don't think are needed since my board doesn't support sound. Does this mean that I shouldn't base my image on an arago-base-image or is there a way to filter these packages out? 

I really appreciate any help, and I really need some direction, I feel like I'm starting to learn how to get around the open-embedded stack but there is still a lot that I have to learn. 

Matt S. 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: I'm confused about distributions, machines, and images
  2014-08-30  0:31 I'm confused about distributions, machines, and images Matt Schuckmann
@ 2014-09-11 22:43 ` Denys Dmytriyenko
  2014-09-15 18:15   ` Matt Schuckmann
  0 siblings, 1 reply; 3+ messages in thread
From: Denys Dmytriyenko @ 2014-09-11 22:43 UTC (permalink / raw)
  To: Matt Schuckmann; +Cc: meta-arago

Matt,

Sorry for the delay - unfortunately, your questions were too generic and there 
was no simple answer to them...


On Fri, Aug 29, 2014 at 05:31:02PM -0700, Matt Schuckmann wrote:
> I feel like I keep going around in circles on this and I'm looking for some 
> wisdom and direction. I hope that I am posting this in the correct place.
> 
> I'm trying to get a Linux image setup for my custom board based on the AM335x.
> I assume that I want to use the meta-arago layer because it has all the 
> latest tested stuff. Correct?

Well, meta-ti as a BSP layer, while meta-arago is a Distro layer. You should 
probably start with a basic BSP first.


> Our board will not have any sound, screen, usbgadget, or video support so I 
> assume that I'll want to create a new MACHINE, probably based on 
> meta-arago/meta-arago-distro/conf/machine/arago-armv7.conf (correct?) but 

Incorrect. Per above, meta-ti is the BSP layer that defines all the machines, 
such as am335x-evm one, while meta-arago doesn't define any machines. Those 
arago-armv7 and arago-armv5 files in meta-arago are not the actual machines 
and are used for special purposes.


> with a different definition for MACHINE_FEATURES. Is this the correct thing 
> to do? Do I start with a completely scratch machine definition coping bits 
> and pieces from the arago machine definitions, or do somehow inherit or 
> include the definitions from the arago files and somehow override or filter 
> out stuff that I don't want?
> 
> Next, I don't understand if I need to create a new distribution. It doesn't 

Distribution is something that defines all the software components that you 
use in a system. You can start with one of the existing distributions, such as 
Poky, or Arago, or even Angstrom. There are some ways to do simple 
customizations in the existing distros, if all you want is to add few 
additional components. You only need your own distro if you are looking into 
completely redefining the system and it's behavior.


> seem like I should, but I can see that 
> meta-argo/meta-argo-distro/conf/distro/arago.conf defines DISTRO_FEATURES to 
> include many things that my system won't need, including alsa, pcmcia, 
> usbgadget, wifi, etc. I can't seem to find a complete description for what 
> DISTRO_FEATURES does (same goes for MACHINE_FEATURES and IMAGE_FEATURES), 
> does it mean that all of the things listed will be included in images based 
> on the distribution or? Ultimately the question is: do I need to create a 
> new distribution? And if I do how best to go about it.

You should probably read the Yocto Project documentation.


> Finally, I think that I need to create a new image that only includes the 
> packages that I want, I would think that I would want to base it on one of 
> the arago images (i.e. include something like arago-base-image.bb in my 
> image). However when I look at arago-base-image.bb I see that it includes 
> packagegroup-arago-base which RDEPENDS on alsa-lib and alsa-utils-aplay both 
> of which I don't think are needed since my board doesn't support sound. Does 
> this mean that I shouldn't base my image on an arago-base-image or is there 
> a way to filter these packages out?

There are ways to filter out packages, but only you can determine if it's 
easier than creating a completely new image.


> I really appreciate any help, and I really need some direction, I feel like 
> I'm starting to learn how to get around the open-embedded stack but there is 
> still a lot that I have to learn.

As I said above, your questions are way too generic and the best answer would 
be to point you to a corresponding documentation...

-- 
Denys


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: I'm confused about distributions, machines, and images
  2014-09-11 22:43 ` Denys Dmytriyenko
@ 2014-09-15 18:15   ` Matt Schuckmann
  0 siblings, 0 replies; 3+ messages in thread
From: Matt Schuckmann @ 2014-09-15 18:15 UTC (permalink / raw)
  To: meta-arago

Deny's 

Thank you very much for the reply, I'm sorry that you find my questions too generic, as a new user generic is often where you start. I tried to focus on the IMAGE, DISTRIBUTION and MACHINE aspects and pose specific questions on what I should do. Try to think about my questions from the perspective of a new user with the task I outlined. I know that there are a lot of things that can be done but what would you as an expert do? 

For instance given that it's a custom board with no sound, display, or attached UI would you use the Arago, Anstrom, or Poky distributions directly? They all seem like over kill to me. 


> -----Original Message-----
> From: Denys Dmytriyenko [mailto:denys@ti.com]
> Sent: Thursday, September 11, 2014 3:44 PM
> To: Matt Schuckmann
> Cc: meta-arago@arago-project.org
> Subject: Re: [meta-arago] I'm confused about distributions, machines,
> and images
> 
> Matt,
> 
> Sorry for the delay - unfortunately, your questions were too generic
> and there was no simple answer to them...
> 
> 
> On Fri, Aug 29, 2014 at 05:31:02PM -0700, Matt Schuckmann wrote:
> > I feel like I keep going around in circles on this and I'm looking
> for some
> > wisdom and direction. I hope that I am posting this in the correct
> place.
> >
> > I'm trying to get a Linux image setup for my custom board based on
> the AM335x.
> > I assume that I want to use the meta-arago layer because it has all
> the
> > latest tested stuff. Correct?
> 
> Well, meta-ti as a BSP layer, while meta-arago is a Distro layer. You
> should
> probably start with a basic BSP first.

By "start with a basic BSP first" do you mean defining a new BSP layer? 
Does this include defining a new MACHINE type? Do I somehow inherit and override from the stuff in the meta-ti layer or do I just copy and edit to create my own? 

> 
> 
> > Our board will not have any sound, screen, usbgadget, or video
> support so I
> > assume that I'll want to create a new MACHINE, probably based on
> > meta-arago/meta-arago-distro/conf/machine/arago-armv7.conf (correct?)
> but
> 
> Incorrect. Per above, meta-ti is the BSP layer that defines all the
> machines,
> such as am335x-evm one, while meta-arago doesn't define any machines.
> Those
> arago-armv7 and arago-armv5 files in meta-arago are not the actual
> machines
> and are used for special purposes.
> 

Yes I realized my mistake shortly after posting the post. It is very confusing to someone just learning a system to have dummy files like this with no comments identifying them as such. 

> 
> > with a different definition for MACHINE_FEATURES. Is this the correct
> thing
> > to do? Do I start with a completely scratch machine definition coping
> bits
> > and pieces from the arago machine definitions, or do somehow inherit
> or
> > include the definitions from the arago files and somehow override or
> filter
> > out stuff that I don't want?
> >
> > Next, I don't understand if I need to create a new distribution. It
> doesn't
> 
> Distribution is something that defines all the software components that
> you
> use in a system. You can start with one of the existing distributions,
> such as
> Poky, or Arago, or even Angstrom. There are some ways to do simple
> customizations in the existing distros, if all you want is to add few
> additional components. You only need your own distro if you are looking
> into
> completely redefining the system and it's behavior.

I don't know really know what the differences between Poky, Arago, and Angstrom are or even what their respective intended behavior is so it is difficult to determine what should be done. Is there anything that compares and contrasts them in a way that can help one see the differences and decide? 
In general they all "seem" to include a fairly complete system including graphics, sound, USB, etc. As I said my system won't have much of this.

> 
> 
> > seem like I should, but I can see that
> > meta-argo/meta-argo-distro/conf/distro/arago.conf defines
> DISTRO_FEATURES to
> > include many things that my system won't need, including alsa,
> pcmcia,
> > usbgadget, wifi, etc. I can't seem to find a complete description for
> what
> > DISTRO_FEATURES does (same goes for MACHINE_FEATURES and
> IMAGE_FEATURES),
> > does it mean that all of the things listed will be included in images
> based
> > on the distribution or? Ultimately the question is: do I need to
> create a
> > new distribution? And if I do how best to go about it.
> 
> You should probably read the Yocto Project documentation.
> 

I've read "a lot" of documentation for the Yocto Project and otherwise and I still have questions. I understand that you understand the system and that you think the documentation is relatively complete but as new user there is a lot left out. 
How about a concrete example of how one would remove a feature (lets say ALSA) from all of these?
How about a concrete example of the impact of adding a feature to any one of these? 
Why is there so much overlap in the features that can be specified in DISTO_FEATURES and MACHINE_FEATURES? 

> 
> > Finally, I think that I need to create a new image that only includes
> the
> > packages that I want, I would think that I would want to base it on
> one of
> > the arago images (i.e. include something like arago-base-image.bb in
> my
> > image). However when I look at arago-base-image.bb I see that it
> includes
> > packagegroup-arago-base which RDEPENDS on alsa-lib and alsa-utils-
> aplay both
> > of which I don't think are needed since my board doesn't support
> sound. Does
> > this mean that I shouldn't base my image on an arago-base-image or is
> there
> > a way to filter these packages out?
> 
> There are ways to filter out packages, but only you can determine if
> it's
> easier than creating a completely new image.

Can you tell me about some of those ways to filter things out of packages? Or point me to specific places in the documentation.
How about how to remove things from RDEPENDS?

> 
> 
> > I really appreciate any help, and I really need some direction, I
> feel like
> > I'm starting to learn how to get around the open-embedded stack but
> there is
> > still a lot that I have to learn.
> 
> As I said above, your questions are way too generic and the best answer
> would
> be to point you to a corresponding documentation...
> 
> --
> Denys


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-09-15 18:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-30  0:31 I'm confused about distributions, machines, and images Matt Schuckmann
2014-09-11 22:43 ` Denys Dmytriyenko
2014-09-15 18:15   ` Matt Schuckmann

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.