Project Home
Project Home
Trackers
Trackers
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
wiki2979: F27DetailedDesign (Version 2)

Getting list of F27 packages#

Data Provider#

  • The data provider uses a package definition file hosted on F27 to get the list of packages

Package definition file#

  • Similar to a memento. It contains packages details including:
    • Title - name of the package
    • Release - package version
    • CPU - target CPU variant
    • Vendor - package provider (mainly QNX)
    • Repository - The F27 repository (e.g. http://community.qnx.com/svn/repos/coreos_pub)
    • Location - the F27 hosting URL within the repository (e.g. trunk/services/system)
    • Description - the package detailed description
  • The definition file will be maintained by F27 admin (?)
  • The file is publicly accessible, can be downloaded without authentication. Location of the file is - TBD
  • The IDE does not cache any package information locally but always queries this the definition file in every new import section

How packages are defined?#

  • What is the granularity?
  • Source or binary format?
  • Make sure packages are build-able before posting?

Gettting F27 login information#

There are two ways to get the user name and password

A per repository login prompt#

  • Similar to the update manager login panel
  • User can have different username and password on different repositories (possible?)
  • Username and password are recorded to "Team -> SVN -> Password Management" for future re-use

A preference page to save login username and password#

  • Applicable when using the same login info for all repositories
  • Has to encypt the password. Leverage the platform "Secure Storage" mechanism (?)
  • Still has limitation - save in workspace only. Shall it be able to exported to other workspace?

Parsing dependencies#

Dependencies definition#

  • Defined in the "module.tmpl" <requires> tab, example for trunk/services/system
	<!-- Dependencies -->
	<requires>
		<part build="false" location="lib/elf"/>
		<part build="true"  location="lib/c"/>
		<part build="false" location="hardware/startup/lib"/>
		<part build="false" location="utils/m/mkasmoff"/>
	</requires>

Presenting packages#

The model#

User tree#

Action#

Checking out dependencies packages#

Creating projects#