Bug 3252 - Binary level package selection and configuration tool.
Summary: Binary level package selection and configuration tool.
Status: RESOLVED OBSOLETE
Alias: None
Product: Package Management Issues
Classification: Runtime
Component: package-management-issues (show other bugs)
Version: 1.4
Hardware: All Multiple
: Low enhancement
Target Milestone: Future
Assignee: Unassigned
QA Contact:
URL: https://wiki.yoctoproject.org/wiki/Bi...
Whiteboard:
Depends on: 4728
Blocks: 4729
  Show dependency tree
 
Reported: 2012-10-09 06:54 UTC by venkata ramana g
Modified: 2024-02-08 16:15 UTC (History)
13 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Don't know


Attachments
Sample configuration file format to meet configuration needs (2.93 KB, text/plain)
2013-06-13 13:28 UTC, venkata ramana g
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description venkata ramana g 2012-10-09 06:54:47 UTC
---Requirement:

Binary level package selection and configuration tool.

	a) Selects/deselects and integrates binary packages, i,e., OS packages & Various Applications packages from package pool, to generate the final image ready to deploy.
	b) Binary level offline configuration includes 
		Configure the users/passwords
		Configure the network	
		Configure the host name	
		Select the services to be started by default
		Security related configuration
		Generate initrd in ramfs/ext3/... format

---Use case:

1) In the case where OS, Application Development and product customization teams are separate teams,
   the challenge is each teams need to have clean and clear deliveries from one to other, so that integration, final target image creation and customization becomes easy.

	a) OS team: should be able to create OS package pool specific to machine and also should deliver tool chain and ADT to Application Development team.
	b) Application development team: should use the deliverables to build, debug & test applications and should be able to generate the application package(s).
	c) Product team: selects/deselects and integrates binary OS packages & Various binary Applications packages from different teams and will generate the final image ready to deploy.
   	Product team also needs to customize the binary image and do some offline configuration before generating the final image.
	Product team also needs to deploy the final image to target.
	

2) In the case where same board is used for various needs and OS need not be built again, but already built OS image needed to be customized and used.

---Suggestions:

Tentative changes need to be done to current model to support this requirement include

1) Poky should able to generate a OS Package pool.
2) A tool to support integrating the binary packages from OS package pool and ADT built packages to generate OS image.
   Also can think whether HOB can be modified to support the same.ie.,without building from sources
3) A tool to support binary level offline configuration
   Also can think whether HOB can be enhanced to support Offline image configuration.
4) ADT and Eclipse plugin should generate the binary application packages in the format allowing binary package integration.
Comment 1 Jessica 2012-10-11 14:40:11 UTC
Venkata,

This is too broad as a requirement so mark it for future.  But if you have anything specific that you think is a 1.4 candidate, could you please file more specific bugs for them?

Thanks,
Jessica
Comment 2 venkata ramana g 2013-04-01 05:43:24 UTC
Posted RFC: Post build configuration.
https://lists.yoctoproject.org/pipermail/yocto/2013-March/015095.html

Looking forward this enhancement as part of 1.5
Working to make a prototype, with a configuration file and command line interface to configure.
Comment 3 Paul Eggleton 2013-05-23 10:05:50 UTC
Reclassifying (since this is not related to Hob) and moving to 1.5 as requested.
Comment 4 venkata ramana g 2013-06-13 13:21:45 UTC
Develop post build configuration platform which supports extending the configurations for various configuration needs. The platform should
1. support various package level and image level binary configurations.
2. work with poky and outside poky at binary level.
3. support Configuration file format, Human readable and writable.
Comment 5 venkata ramana g 2013-06-13 13:28:24 UTC
Created attachment 1267 [details]
Sample configuration file format to meet configuration needs

#   Description   : This is a sample format, only for reference however actual functions configuration funtions will differ
#   version       : 0.1
#
#   BNF for conf file:
#
        # sectiondef    : '[' sectioninfo ']' [statements]
        # statements    : [ statement ]*
        # statement     : operation '(' [paramlist] ')'
        # operation     : identifier
        # paramlist     : param [, param ]*
        # param         : directparam | fullparam | embstatement
        # directparam   : nondelimiters | '"' anycharcters '"'
        # fullparam     : identifier '=' (directparam | embstatement)
        # embstatement  : statement
        # identifier    : [ alphanums_-. ]
        # nondelimiters : <anycharcters except [ or ( or " or , or ) or ] >
Comment 6 venkata ramana g 2013-06-13 13:45:06 UTC
Configuration support contains following components:

ConfFile - Configuration file
ConfLib  - Various Configuration methods supported, contains both package level
            and image level configurations.

ConfParser - Parser for configuration file, as per its Conf BNF
ConfApply  - Support applying the configuration options on the image
ConfQuery  - Support querying various configuration options/data from Conf file,
             after parsing the conf file. 
             (also can provide interface to update the conf file from UI tool 
               in future)
ConfDoc    - Prints the list of various configuration methods supported as part
             of ConfLib and thier usage. Help information.
Comment 7 venkata ramana g 2013-08-20 12:20:14 UTC
Please find the design details of the feature @
https://wiki.yoctoproject.org/wiki/Binary_configuration_support
Comment 8 Richard Purdie 2022-02-03 16:32:00 UTC
There is likely still a need for something like this but the people, ideas and exact requirements have changed in the 10 years since. I think it would make sense to restart any efforts in this area from a fresh perspective although ideas can be taken from the info here.
Comment 9 Randy MacLeod 2022-02-03 16:36:16 UTC
I've CCed Hongxu, since he wrote much of the Linux Assembly Tool ( https://github.com/Wind-River/meta-lat ) so if people are interested, they can take a look at that layer. Also Hongxu might want to look at the requirements here to see if there are ideas that could be implemented in LAT. I'm not suggesting that there are since only know a tiny bit about LAT.
Comment 10 Randy MacLeod 2024-02-08 16:15:32 UTC
The world has changed since this issue was raised and we'd need to re-evaluate the proposal.