Difference between revisions of "Deployment Platform/Deployment"

From Sugar Labs
Jump to navigation Jump to search
Line 6: Line 6:
 
* Trisquel-4.1 LTS for regular hardware.
 
* Trisquel-4.1 LTS for regular hardware.
  
In both cases, [[#Downstream packages|downstream packages]] are built on [https://packages.sugarlabs.org/ OBS] in [https://packages.sugarlabs.org/project/monitor?project=Hexokinase Hexokinase] project from the same [http://git.sugarlabs.org/hexokinase sources]. And composed to XO and Trisquel images.
+
In both cases, [[#Build_packages|downstream packages]] are built on [https://packages.sugarlabs.org/ OBS] in [https://packages.sugarlabs.org/project/monitor?project=Hexokinase Hexokinase] project from the same [http://git.sugarlabs.org/hexokinase sources]. And composed to XO and Trisquel images.
  
== Downstream packages ==
+
== Build packages ==
  
 
This is about how to create downstream packages on OBS to include them later to resulting images.
 
This is about how to create downstream packages on OBS to include them later to resulting images.
Line 22: Line 22:
 
For all packages, sources are being stored in Gitorious [http://git.sugarlabs.org/hexokinase hexokinase] project. Clone sources you want to create packages for.
 
For all packages, sources are being stored in Gitorious [http://git.sugarlabs.org/hexokinase hexokinase] project. Clone sources you want to create packages for.
  
All {{Code|sugar*}} source repositories are [[Platform_Team/gatch#Usage|downstream branches]] for {{Code|dextrose-0.94}} upstream branches from Gitorious [http://git.sugarlabs.org/sdk SDK] project. Thus, all of them are [[Platform_Team/Guide/Sweets_Packaging|sweet projects]] and:
+
All {{Code|sugar*}} source repositories are [[Platform_Team/gatch#Usage|downstream branches]] for {{Code|dextrose-0.94}} upstream branches from Gitorious [http://git.sugarlabs.org/sdk SDK] project. Thus, all of them are [[Platform_Team/Guide/Sweets_Packaging|sweet projects]] and contain [[Platform_Team/Recipe_Specification|sweets.recipe]] files that describe how to create packages on OBS.
 
 
* can be [[#Try sources|launched]] in local environment without any packaging;
 
* contain [[Platform_Team/Recipe_Specification|sweets.recipe]] files that describe how to create packages on OBS.
 
  
 
=== Sources re-base ===
 
=== Sources re-base ===
Line 41: Line 38:
 
The building process might be observed starting from OBS's [https://packages.sugarlabs.org/project/monitor?project=Hexokinase monitor] page. If build process is successful, the resulting packages will be hosted on [http://download.sugarlabs.org/packages/Hexokinase/ download.sugarlabs.org] site.
 
The building process might be observed starting from OBS's [https://packages.sugarlabs.org/project/monitor?project=Hexokinase monitor] page. If build process is successful, the resulting packages will be hosted on [http://download.sugarlabs.org/packages/Hexokinase/ download.sugarlabs.org] site.
  
=== Try sources ===
+
Since packages were built from sweet sources, all packages are located in {{Code|/opt/sweets}} instead of {{Code|/usr}}<br>This is useful when sugar packages require [re]building system packages, placing all downstream packages to {{Code|/opt}} will make it possible to use new system packages only with downstream Sugar and do not interfere with the rest of the system when user want to run, e.g, Gnome session.
 +
 
 +
=== Use packages ===
 +
 
 +
For all supported distributions:
 +
 
 +
* install {{Code|sweets-sugar}} package;
 +
* use {{Code|sweets-sugar}} to launch Sugar session;
 +
* use {{Code|sweets-sugar-emulator}} to launch Sugar session in Xephyr.
 +
 
 +
=== Fedora-14 ===
 +
 
 +
Create repository file {{Code|/etc/yum.repos.d/hexokinase.repo}}:
 +
 
 +
[hexokinase]
 +
name=hexokinase
 +
failovermethod=priority
 +
baseurl=http://download.sugarlabs.org/packages/Hexokinase/Fedora-14/
 +
enabled=1
 +
metadata_expire=1
 +
gpgcheck=0
 +
 
 +
Install Sugar packages:
 +
 
 +
yum install sweets-sugar
 +
 
 +
=== Trisquel-4.1 ===
 +
 
 +
Attach downstream repository:
 +
 
 +
sudo apt-add-repository 'deb http://download.sugarlabs.org/packages/Hexokinase/Ubuntu-10.04/ ./'
 +
wget -qO- http://download.sugarlabs.org/packages/Hexokinase/Ubuntu-10.04/Release.key | sudo apt-key add -
 +
apt-get update
 +
 
 +
Install Sugar packages:
 +
 
 +
apt-get install sweets-sugar
  
 
== Build images ==
 
== Build images ==

Revision as of 15:20, 19 January 2012

Summary

This is a Dextrose-3 based distribution that is being targeted to

  • Fedora-14 on XO-1 and XO-1.5 laptops, and
  • Trisquel-4.1 LTS for regular hardware.

In both cases, downstream packages are built on OBS in Hexokinase project from the same sources. And composed to XO and Trisquel images.

Build packages

This is about how to create downstream packages on OBS to include them later to resulting images.

Requirements

  • Install sweets utility
    Will be used for uploading package sources to the OBS.
  • Install gatch utility
    Will be used for re-basing package sources to pull recent upstream changes.
  • Have Sugar Labs account to login to OBS (ping alsroot to add your to Hexokinase project users).

Sources

For all packages, sources are being stored in Gitorious hexokinase project. Clone sources you want to create packages for.

All sugar* source repositories are downstream branches for dextrose-0.94 upstream branches from Gitorious SDK project. Thus, all of them are sweet projects and contain sweets.recipe files that describe how to create packages on OBS.

Sources re-base

Since, sugar sources are downstream branches for SDK project, if upstream sources where changed, hexokinase sources need to be re-based. Go to the particular source directory and type:

gatch merge

Build packages

If sources were updated, to create new packages, go to the particular source directory and type:

sweets commit -m <COMMIT-DESCRIPTION>

The building process might be observed starting from OBS's monitor page. If build process is successful, the resulting packages will be hosted on download.sugarlabs.org site.

Since packages were built from sweet sources, all packages are located in /opt/sweets instead of /usr
This is useful when sugar packages require [re]building system packages, placing all downstream packages to /opt will make it possible to use new system packages only with downstream Sugar and do not interfere with the rest of the system when user want to run, e.g, Gnome session.

Use packages

For all supported distributions:

  • install sweets-sugar package;
  • use sweets-sugar to launch Sugar session;
  • use sweets-sugar-emulator to launch Sugar session in Xephyr.

Fedora-14

Create repository file /etc/yum.repos.d/hexokinase.repo:

[hexokinase]
name=hexokinase
failovermethod=priority
baseurl=http://download.sugarlabs.org/packages/Hexokinase/Fedora-14/
enabled=1
metadata_expire=1
gpgcheck=0

Install Sugar packages:

yum install sweets-sugar

Trisquel-4.1

Attach downstream repository:

sudo apt-add-repository 'deb http://download.sugarlabs.org/packages/Hexokinase/Ubuntu-10.04/ ./'
wget -qO- http://download.sugarlabs.org/packages/Hexokinase/Ubuntu-10.04/Release.key | sudo apt-key add -
apt-get update

Install Sugar packages:

apt-get install sweets-sugar

Build images

XO

Trisquel

References