Yes, much better phrasing: > A single bitbake invocation always builds a single distro for a specific target machine
Thanks On Fri, Jun 1, 2018 at 12:18 PM, Alexander Kanavin <[email protected]> wrote: > If a build is 'a single bitbake invocation', then yes - it builds for a > single distro and for a specific target machine, but it can build multiple > recipes (which includes multiple images, as images are defined with > recipes). > > Alex > > > 2018-06-01 13:07 GMT+03:00 Alan Martinovic <[email protected]>: > >> Hey Alexander, >> you seem to have a good understanding on the concepts. >> Would you say that: >> >> > A build always builds a single distro >> >> is somewhat of a rule? >> >> >> >> >> On Fri, Jun 1, 2018 at 11:24 AM, Alexander Kanavin < >> [email protected]> wrote: >> >>> I have to say defining multiple distros and then tweaking recipes >>> according to those definitions is not a good practice, as recipes should >>> generally only access DISTRO_FEATURES and otherwise be distro-agnostic. The >>> above iptables scenario should be handled with different image recipes, >>> which pull in (via packages) or create different configurations. >>> >>> Alex >>> >>> 2018-06-01 12:04 GMT+03:00 Iván Castell <[email protected]>: >>> >>>> I can provide more details. My custom layer has these files related >>>> with distro: >>>> >>>> my_layer/conf/distro/include/common.conf >>>> my_layer/conf/distro/develop.conf >>>> my_layer/conf/distro/production.conf >>>> my_layer/conf/distro/integration.conf >>>> >>>> As an example of the previous files, >>>> my_layer/conf/distro/include/develop.conf >>>> has this content: >>>> >>>> require conf/distro/include/common.conf >>>> DISTRO = "my-distro-development" >>>> DISTRO_NAME = "OS Development" >>>> DISTRO_STAGE = "development" >>>> # And here more customizations as setting root password, >>>> PRSERV_HOST, or PACKAGE_FEED_URIS >>>> >>>> In common.conf I define all features common to all my distros >>>> (PACKAGE_CLASSES and so on) >>>> >>>> I have custom iptables rules, then I have different files for that >>>> rules: >>>> >>>> my/layer/recipes-extended/iptables/files/iptables.rules.development >>>> my/layer/recipes-extended/iptables/files/iptables.rules.production >>>> my/layer/recipes-extended/iptables/files/iptables.rules.integration >>>> >>>> I use a bbappend recipe for iptables, modifiying do_install_append task >>>> like this: >>>> >>>> install -m 0600 ${WORKDIR}/iptables.rules.${DISTRO_STAGE} >>>> ${D}/etc/iptables/iptables.rules >>>> >>>> I use a single image recipe to define all packages installed in my >>>> final image (all of them have the same set if packages, but with different >>>> customizations) >>>> >>>> Finally, I wrote a setup-build-env.sh script in my custom layer to >>>> configure the build easily. That script creates >>>> build-${DISTRO_STAGE}/conf/bblayers.conf and >>>> build-${DISTRO_STAGE}/conf/local.conf files with the proper setup, >>>> setting MACHINE, DISTRO and DL_DIR (shared by all distros) properly. >>>> >>>> Hope this helps! >>>> >>>> >>>> >>>> >>>> >>>> 2018-06-01 10:21 GMT+02:00 Alan Martinovic <[email protected]>: >>>> >>>>> Hey, >>>>> would really like to see your example. >>>>> Am struggling to get creation of these types of images for a while now. >>>>> >>>>> So far have avoided diving into multiple distros because would like to >>>>> have the option >>>>> of building all the images at the same time (so they are basically the >>>>> same distro). >>>>> >>>>> On Fri, Jun 1, 2018 at 8:13 AM, Iván Castell < >>>>> [email protected]> wrote: >>>>> >>>>>> I fixed this issue defining different distro.conf files in my custom >>>>>> layer, adding a custom variable DISTRO_STAGE with the name of my distro >>>>>> (production, rnd, retail, and so on), Then you setup DISTRO in your >>>>>> local.conf to the proper value you want to use. Finally you can use that >>>>>> DISTRO_STAGE variable in your custom .bb or .bbappend recipes to decide >>>>>> the >>>>>> proper configuration files you want to install in your final image. That >>>>>> works as expected. Hope this helps! >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> 2018-06-01 7:46 GMT+02:00 Damien LEFEVRE <[email protected]>: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> For the same MACHINE I create the following images: >>>>>>> - myimage-production >>>>>>> - myimage-rnd >>>>>>> - myimage-retail >>>>>>> >>>>>>> The production one has production assisted tools for flashing >>>>>>> peripheral HW, testing vital HW components, writing some serial numbers, >>>>>>> etc. >>>>>>> >>>>>>> The rnd one has more packages than the retail one just to help rnd >>>>>>> work and debugging in device, but none of the rnd image extra packages. >>>>>>> >>>>>>> The retail one has the final product image. >>>>>>> >>>>>>> I'm using web and FTP servers. I would like for the rnd version of >>>>>>> the image to have a different nginx configuration to set the root >>>>>>> directory >>>>>>> to a development folder, or set an alias. >>>>>>> >>>>>>> Furthermore, I'll have different variant of the device where only >>>>>>> the device SW changes but the platform is identical. So I'll end up with >>>>>>> - myimage2-production >>>>>>> - myimage2-rnd >>>>>>> - myimage2-retail >>>>>>> >>>>>>> I know how to make MACHINE based configuration. How could I do this >>>>>>> in my nginx.bbappend based on image name? >>>>>>> >>>>>>> Thanks, >>>>>>> -Damien >>>>>>> >>>>>>> -- >>>>>>> _______________________________________________ >>>>>>> yocto mailing list >>>>>>> [email protected] >>>>>>> https://lists.yoctoproject.org/listinfo/yocto >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> *NOTA LEGAL* >>>>>> Este correo electrónico y, en su caso, cualquier fichero anexo al >>>>>> mismo, contiene información de carácter confidencial exclusivamente >>>>>> dirigida a su destinatario y se encuentra protegido por Ley. Cualquier >>>>>> persona distinta de su destinataria tiene prohibida su reproducción, uso, >>>>>> divulgación, copia o impresión total o parcial. Si ha recibido este >>>>>> correo >>>>>> electrónico por error, se ruega lo notifique de inmediato al remitente >>>>>> borrando el mensaje original juntamente con sus ficheros anexos. Gracias. >>>>>> >>>>>> De conformidad con lo establecido en la LOPD, NAYAR SYSTEMS SL >>>>>> garantiza la adopción de las medidas necesarias para asegurar el >>>>>> tratamiento confidencial de los datos de carácter personal. Así mismo le >>>>>> informamos de la inclusión de sus datos en un fichero bajo la >>>>>> responsabilidad de NAYAR SYSTEMS SL, con la finalidad de poder atender >>>>>> los >>>>>> compromisos derivados de la relación que mantenemos con usted. Si lo >>>>>> desea, >>>>>> puede ejercer sus derechos de acceso, rectificación, cancelación y >>>>>> oposición mediante un escrito a la siguiente dirección: >>>>>> [email protected] >>>>>> >>>>>> *LEGAL NOTE* >>>>>> This email and any attachments to it contains is confidential >>>>>> information exclusively intended for the recipients. Any divulgation, >>>>>> copy >>>>>> or distribution to third parties is prohibited without written permission >>>>>> of NAYAR SYSTEMS SL. If you have received this e-mail in error, please >>>>>> notify the sender immediately. In accordance with Law 15/1999 of 13 >>>>>> December on the Protection of Personal Data, the NAYAR SYSTEMS SL >>>>>> guarantees that it has adopted the necessary measures to ensure the >>>>>> confidential treatment of personal information. We also inform you that >>>>>> you >>>>>> can exercise your access, rectification, cancellation and opposition >>>>>> rights >>>>>> by send us a mail to: [email protected] >>>>>> >>>>>> >>>>>> -- >>>>>> _______________________________________________ >>>>>> yocto mailing list >>>>>> [email protected] >>>>>> https://lists.yoctoproject.org/listinfo/yocto >>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> >>>> >>>> >>>> >>>> *NOTA LEGAL* >>>> Este correo electrónico y, en su caso, cualquier fichero anexo al >>>> mismo, contiene información de carácter confidencial exclusivamente >>>> dirigida a su destinatario y se encuentra protegido por Ley. Cualquier >>>> persona distinta de su destinataria tiene prohibida su reproducción, uso, >>>> divulgación, copia o impresión total o parcial. Si ha recibido este correo >>>> electrónico por error, se ruega lo notifique de inmediato al remitente >>>> borrando el mensaje original juntamente con sus ficheros anexos. Gracias. >>>> >>>> De conformidad con lo establecido en la LOPD, NAYAR SYSTEMS SL >>>> garantiza la adopción de las medidas necesarias para asegurar el >>>> tratamiento confidencial de los datos de carácter personal. Así mismo le >>>> informamos de la inclusión de sus datos en un fichero bajo la >>>> responsabilidad de NAYAR SYSTEMS SL, con la finalidad de poder atender los >>>> compromisos derivados de la relación que mantenemos con usted. Si lo desea, >>>> puede ejercer sus derechos de acceso, rectificación, cancelación y >>>> oposición mediante un escrito a la siguiente dirección: >>>> [email protected] >>>> >>>> *LEGAL NOTE* >>>> This email and any attachments to it contains is confidential >>>> information exclusively intended for the recipients. Any divulgation, copy >>>> or distribution to third parties is prohibited without written permission >>>> of NAYAR SYSTEMS SL. If you have received this e-mail in error, please >>>> notify the sender immediately. In accordance with Law 15/1999 of 13 >>>> December on the Protection of Personal Data, the NAYAR SYSTEMS SL >>>> guarantees that it has adopted the necessary measures to ensure the >>>> confidential treatment of personal information. We also inform you that you >>>> can exercise your access, rectification, cancellation and opposition rights >>>> by send us a mail to: [email protected] >>>> >>>> >>>> -- >>>> _______________________________________________ >>>> yocto mailing list >>>> [email protected] >>>> https://lists.yoctoproject.org/listinfo/yocto >>>> >>>> >>> >> >
-- _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto
