[ASLO] ASLO build and deployment process (Jatin Dhankhar)

Tony Anderson tony_anderson at usa.net
Sat Apr 1 05:50:52 EDT 2017


Hi, Jatin

The ASLO site is in desparate need of work. At the moment I am trying to 
find out which of the activities actually work in the current release of 
Sugar. The library currently has about 600 activities. A Sugar activity 
is intended to be self-contained (any dependencies not satisfied by 
Sugar are to be incorporated in the bundle). Naturally, an activity 
should work on any Sugar. However, this situation is becoming very 
complicated. First, two of the XO models (1 and 1.5) have Intel 32 bit 
architecture processors. The others (1.75 and 4) have Arm processors. 
Some of the activities incorporate binary modules which limit their use. 
The Sugar community wishes to support Sugar on a range of platforms. For 
mobile devices, Lionel Laske is developing Sugarizer. While traditional 
activities were implemented in Python (with some binary exceptions using 
Java or C), Sugarizer activities are written in Javascript (HTML5 and 
CSS). Naturally a trend in modern computers is to 64 bit architecture 
(AMD 64).

The website itself is implemented in PhP and is patterned after the 
Mozilla addons site. It has a repository of activity bundles (.xo files) 
which is visible at http://download.sugarlabs.org. Each activity has an 
'add-on' id (4000-4999 at the moment). Versions of activities are 
numbered beginning with 1 and incrementing by 1 with subsequent 
versions. So the directories in ASLO contain bundles for multiple 
bundles with the highest numbered version considered the latest. In 
addition to the bundle, the site contains metadata which is displayed in 
the pages devoted to an activity. I suspect this metadata is stored in a 
database but I haven't investigated to find out the details.

In the meantime, Sugar Labs has decided to create a repository for 
activities in github. The reasoning appears to be that this will make it 
easier for the community to undertake ongoing development and 
maintenance of these activities. Currently, the ASLO site has a 
'developer hub' which allows registered users to add or update their own 
activities. This function will need defined and moved to github.

How this will be done is a mystery to me. Logically, each of the 
versions of an activity should be commited in git so that a developer 
(or maintainer) can the changes made over time. Also, some method is 
needed to manage over 600 additional repositories in the Sugar Labs github.

If you look at the ASLO site, it seems clear that the page needs to 
specify more than which versions of Sugar are supported. It will need to 
specify which models of the XO are supported. It will also need to 
mention any restrictions on architecture or peripherals needed for the 
users system (microphone, camera, network connection - wired or 
wireless, and so on).

Over time, Sugar has dropped many packages which were ordinarily 
included. This has rendered many of the activities currently unusable. 
For example, Sugar switched from a browser based on hulahop to one based 
on WebKit. Some effort will be needed to update activities using hulahop 
to use WebKit. Sugar Labs hopes that activities will be ported to GTK3 
(called sugar3) from the original GTK (sugar). If this can be 
accomplished, the size and complexity of Sugar can be significantly 
reduced.

I hope you will consider this challenging and not discouraging.

Just for further background. Many deployments I work with have no access 
to the internet. To provide an alternative, I support a school server 
which XO users can access by wifi in the classroom. My hope is to 
provide a version of ASLO on the school server which will give these 
users the ability to install any of the activities they choose and for 
which their XO has storage capacity. That capability exists now (and has 
for some years). However, the selection is basically a list of 
activities by name and does not provide the metadata descriptions found 
on the ASLO pages. My plan is to use Django (which enables code to be in 
Python and not PhP). The school server already provides sqllite, 
mariadb, and postgresql so db support is readily available. Django is 
designed to support fusion - creating web pages dynamically based on 
information from a db and so should match the requirement.

Tony

On 04/01/2017 04:00 PM, Jatin Dhankhar wrote:
> Hi Tony,
>
>     There are two major elements to Sugar. The desktop interface -
>     Sugar and the activities. ASLO is a library of these activities.
>     Build only applies to Sugar.
>
>     For a non-XO version of Sugar, there are two easy choices: SOAS
>     and Sugar on Ubuntu. For Ubuntu, install 14.04 or more recent
>     version (I am using 16.04) and execute sudo apt-get install
>     sucrose. For SOAS, download the image and dd it to a usb stick. It
>     works as a livecd. 
>
>
> Thank you for all the information :)
>
>     Make Your Own Sugar Activities!
>     By James Simmons
>     <http://www.lulu.com/shop/search.ep?contributorId=739770>
>
>     Make sure to get the second edition.
>
> Specially the book, it's very detailed and comprehensive.
>
>     Another alternative is to build the 'development environment'.
>     This environment is intended for developers who are working
>     directly on PRs for Sugar modules. 
>
>
> Yes, I am looking to build the 'development environment', specially 
> the ASLO server but I am facing some issues. since sphinx is very old 
> and cannot be compiled (using make) properly. Wanted to know if there 
> is someone who maintains the ASLO and  can answer this specific query, 
> related to building ASLO locally and getting started on it
>
> Thanks,
> Jatin Dhankhar
>
> On Sat, Apr 1, 2017 at 6:31 AM, Tony Anderson <tony_anderson at usa.net 
> <mailto:tony_anderson at usa.net>> wrote:
>
>     Hi Jatin,
>
>     There are two major elements to Sugar. The desktop interface -
>     Sugar and the activities. ASLO is a library of these activities.
>     Build only applies to Sugar.
>
>     For a non-XO version of Sugar, there are two easy choices: SOAS
>     and Sugar on Ubuntu. For Ubuntu, install 14.04 or more recent
>     version (I am using 16.04) and execute sudo apt-get install
>     sucrose. For SOAS, download the image and dd it to a usb stick. It
>     works as a livecd.
>
>     Another alternative is to build the 'development environment'.
>     This environment is intended for developers who are working
>     directly on PRs for Sugar modules.
>
>     In deploying Sugar, the only fully supported platform is the XO.
>     The Ubuntu Sugar appears not to connect to networks and omits some
>     of the essential activities. These are the essential eight:
>     Browse, Record, Jukebox, Terminal, Log, Write, Read, and Image
>     Viewer. Several of these such as Record provide access to hardware
>     features of the platform such as the camera and microphone.
>     Naturally, these are more difficult to support on general platforms.
>
>     There are two programming environments for Sugar activities:
>     Python and Javascript. HelloWorld and HelloWeb are simple examples
>     of activities in Python and Javascript, respectively. There is an
>     excellent text available for download online:
>
>     Make Your Own Sugar Activities!
>     By James Simmons
>     <http://www.lulu.com/shop/search.ep?contributorId=739770>
>
>     Make sure to get the second edition.
>
>     Tony
>
>     On 04/01/2017 12:00 AM, aslo-request at lists.sugarlabs.org
>     <mailto:aslo-request at lists.sugarlabs.org> wrote:
>>     Send ASLO mailing list submissions to
>>     	aslo at lists.sugarlabs.org <mailto:aslo at lists.sugarlabs.org>
>>
>>     To subscribe or unsubscribe via the World Wide Web, visit
>>     	http://lists.sugarlabs.org/listinfo/aslo
>>     <http://lists.sugarlabs.org/listinfo/aslo>
>>     or, via email, send a message with subject or body 'help' to
>>     	aslo-request at lists.sugarlabs.org
>>     <mailto:aslo-request at lists.sugarlabs.org>
>>
>>     You can reach the person managing the list at
>>     	aslo-owner at lists.sugarlabs.org
>>     <mailto:aslo-owner at lists.sugarlabs.org>
>>
>>     When replying, please edit your Subject line so it is more specific
>>     than "Re: Contents of ASLO digest..."
>>
>>
>>     Today's Topics:
>>
>>         1. ASLO build and deployment process (Jatin Dhankhar)
>>
>>
>>     ----------------------------------------------------------------------
>>
>>     Message: 1
>>     Date: Fri, 31 Mar 2017 16:57:58 +0530
>>     From: Jatin Dhankhar<dhankhar.jatin at gmail.com> <mailto:dhankhar.jatin at gmail.com>
>>     To:aslo at lists.sugarlabs.org <mailto:aslo at lists.sugarlabs.org>
>>     Subject: [ASLO] ASLO build and deployment process
>>     Message-ID:
>>     	<CAD+LdAF26TWi9uPP0pPZPTFWm3L5HF3=ubc4_TBY9O8v_e=T1Q at mail.gmail.com>
>>     <mailto:CAD+LdAF26TWi9uPP0pPZPTFWm3L5HF3=ubc4_TBY9O8v_e=T1Q at mail.gmail.com>
>>     Content-Type: text/plain; charset="utf-8"
>>
>>     Hi,
>>
>>     I have few questions about how ASLO is actually build and deployed in
>>     production. Build process is carried out by using Fabfile, I tried using
>>       it and was not successful in building the sphinx ( since version used is
>>     0.9.9.rc2 and current series is 2.x).
>>     Relevant pull request and issue
>>     PR ->https://github.com/sugarlabs/aslo/pull/2
>>     <https://github.com/sugarlabs/aslo/pull/2>
>>     Issue ->https://github.com/sugarlabs/aslo/issues/1
>>     <https://github.com/sugarlabs/aslo/issues/1>
>>
>>     I am using Arch Linux and have installed all the necessary dependencies for
>>     development including mysql and postgres development libraries along with
>>     common development libraries. If anyone can point on how to successfully
>>     build the project that would help a lot.
>>     Some thread points out upgrading to new version of Sphinx but I wanted to
>>     mirror the current instance.
>>     Also project mentions something about Remora
>>     https://wiki.mozilla.org/Update:Remora
>>     <https://wiki.mozilla.org/Update:Remora>  and wiki says it's no longer
>>     maintained.
>>     It quotes
>>
>>>     Remora is no longer maintained. See AMO:Developers
>>>     <https://wiki.mozilla.org/AMO:Developers>
>>>     <https://wiki.mozilla.org/AMO:Developers>.
>>     Also wanted to know more about how ASLO is deployed in production. What
>>     techniques are used ? What are the pain points that need to be addressed
>>     and tips on how to get started with it. If anyone is familiar with ASLO or
>>     a long time maintainer, can they point out on how to reproduce a successful
>>     build of ASLO (a documentation on how to run would be awesome)
>>
>>     Thanks,
>>     Jatin Dhankhar
>>     -------------- next part --------------
>>     An HTML attachment was scrubbed...
>>     URL:<http://lists.sugarlabs.org/archive/aslo/attachments/20170331/12204ccc/attachment-0001.html>
>>     <http://lists.sugarlabs.org/archive/aslo/attachments/20170331/12204ccc/attachment-0001.html>
>>
>>     ------------------------------
>>
>>     Subject: Digest Footer
>>
>>     _______________________________________________
>>     ASLO mailing list
>>     ASLO at lists.sugarlabs.org <mailto:ASLO at lists.sugarlabs.org>
>>     http://lists.sugarlabs.org/listinfo/aslo
>>     <http://lists.sugarlabs.org/listinfo/aslo>
>>
>>
>>     ------------------------------
>>
>>     End of ASLO Digest, Vol 84, Issue 1
>>     ***********************************
>     _______________________________________________ ASLO mailing list
>     ASLO at lists.sugarlabs.org <mailto:ASLO at lists.sugarlabs.org>
>     http://lists.sugarlabs.org/listinfo/aslo
>     <http://lists.sugarlabs.org/listinfo/aslo> 
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/aslo/attachments/20170401/cf8d9132/attachment-0001.html>


More information about the ASLO mailing list