[ASLO] !
Tony Anderson
tony_anderson at usa.net
Wed Apr 12 20:21:31 EDT 2017
Great!
Tony
On 04/13/2017 01:40 AM, Walter Bender wrote:
> Let's try to get Sam C., who currently maintains ASLO into the loop. I
> think he'll have lots of good advice for us.
>
> regards.
>
> -walter
>
> On Wed, Apr 12, 2017 at 1:14 PM, Jatin Dhankhar
> <dhankhar.jatin at gmail.com <mailto:dhankhar.jatin at gmail.com>> wrote:
>
> Hi,
>
> I think we need to agree on the use of IRC. If you want to
> communicate with members of the community, you must go where
> they are (#sugar). If you want a one-to-one meeting on IRC
> with me, I would suggest #sugar-newbies. It is normally
> dormant but works well and saves a log for later review. It
> worked well for meetings with Utkarsh Tiwari during last
> year's GSOC.
>
> Sure, whatever works :). What is your IRC nickname ?
>
> There are two things that you will need to have local to the
> django project. First is the directory download.sugarlabs.org
> <http://download.sugarlabs.org/> which has the Sugar activity
> bundles
>
> Do I need to mirror the whole setup/directory ?
>
> When talking about scraping you probably meant
> http://activities.sugarlabs.org
> <http://activities.sugarlabs.org> instead of
> http://download.sugarlabs.org/ <http://download.sugarlabs.org/>,
> right ?
> Also for scraping, Scrapy <https://scrapy.org/> seems to more
> popular than beautifulsoup ?
>
> Also a big thanks for including Walter in the discussion :D
>
> - Jatin Dhankhar
>
> On Wed, Apr 12, 2017 at 6:30 AM, Tony Anderson
> <tony_anderson at usa.net <mailto:tony_anderson at usa.net>> wrote:
>
> Hi, Jatin
>
> I think we need to agree on the use of IRC. If you want to
> communicate with members of the community, you must go where
> they are (#sugar). If you want a one-to-one meeting on IRC
> with me, I would suggest #sugar-newbies. It is normally
> dormant but works well and saves a log for later review. It
> worked well for meetings with Utkarsh Tiwari during last
> year's GSOC.
>
> There are two things that you will need to have local to the
> django project. First is the directory download.sugarlabs.org
> <http://download.sugarlabs.org> which has the Sugar activity
> bundles. The second is the 'metadata' in the mysql db. For
> scraping, I would recommend BeautifulSoup (bs4). The trick
> will be to decide what data we want to capture and add to the
> json.
>
> The json fields in activities.json are ones I chose for the
> minimal system. You may want to include other information such
> as the number of downloads, which collections (should be
> entered as tags in a tag-field) and so on. One item I have
> referred to as flags (I marked some as X but don't remember
> what that meant, oh well). The intent is to record the
> platforms where the activity works. We also should provide
> links to the homepage, repository page, and update page
> (whatever that is). I think if you have a working scrape tool,
> the data it collects can be expanded as needed (assuming the
> tool runs in a reasonable time).
>
> Naturally, it would be easier if you have access to the db
> directly.
>
> Tony
>
>
> On 04/12/2017 01:40 AM, Jatin Dhankhar wrote:
>>
>> One thing you could look at. On activities.sugarlabs,org,
>> can you determine from Remora where the metadata is
>> stored? I assume a db. Currently I am thinking to use
>> BeautifulSoup to scrape the site to get that data, but it
>> would be much easier to access the data directly.
>>
>> As per wiki
>> https://wiki.mozilla.org/Update:Remora_Server_Requirements#SVN.2C_DB_and_app_config
>> <https://wiki.mozilla.org/Update:Remora_Server_Requirements#SVN.2C_DB_and_app_config> data
>> is stored in mysql database. I don't have access to the
>> production server where ASLO is currently running, following
>> file
>> https://github.com/sugarlabs/aslo/blob/master/aslo/db-update.sh#L9
>> <https://github.com/sugarlabs/aslo/blob/master/aslo/db-update.sh#L9> confirms
>> that data is stored in a mysql db. However it would be
>> interesting and fun to scrape the data from live site. I
>> would do that.
>>
>> Thanks will poke around the code, looks to me it's a django
>> app and I have to mount it on my django project, thanks :)
>>
>> If you are talking about IRC as a place to meet Sugar
>> community members, use the freenode #sugar. This is
>> probably most active from 8-17 EST (UTC-5). I am
>> currently in the Philippines which is UTC+ 7.
>>
>>
>> Yes, tried that. https://gitter.im fits in naturally with
>> Github (really sorry for suggesting a new mode of
>> communication everyday) 😅
>>
>> - Jatin Dhankhar
>>
>>
>> On Tue, Apr 11, 2017 at 6:14 AM, Tony Anderson
>> <tony_anderson at usa.net <mailto:tony_anderson at usa.net>> wrote:
>>
>> If you are talking about IRC as a place to meet Sugar
>> community members, use the freenode #sugar. This is
>> probably most active from 8-17 EST (UTC-5). I am
>> currently in the Philippines which is UTC+ 7.
>>
>> Localization of Python activities is done by Pootle, when
>> implemented by the developer. The developer does
>> something like the following:
>>
>> from gettext import gettext as _
>>
>> self.copy.set_tooltip(_('Copy'))
>>
>> In this way, all text displayed is taken from a po file
>> based on the locale (e.g. en.po or hi.po). This is a
>> simplification as the actual file is compressed: en.mo,
>> hi.mo. These files are in the activity bundle. The detail
>> is that when a new version is released, there is a master
>> file: Paint.pot from which the local language files are
>> built. This needs to be submitted to
>> translate.sugarlabs.org <http://translate.sugarlabs.org>
>> which maintains a copy. However, then the localized
>> version needs to be added back to the bundle. However,
>> the localizations can take months for 100 languages so
>> how synchronize the po directory with the activity
>> release is difficult.
>>
>> The sugar3 vs sugar issue is decided. The community wants
>> to move to sugar3 (gtk3). The problem is that less that
>> 20% of the activities have been converted.
>> The ones that have been converted are low hanging fruit.
>> The unconverted ones may require intensive work (gimp
>> which developed gtk originally has not made the conversion).
>>
>> One thing you could look at. On activities.sugarlabs,org,
>> can you determine from Remora where the metadata is
>> stored? I assume a db. Currently I am thinking to use
>> BeautifulSoup to scrape the site to get that data, but it
>> would be much easier to access the data directly.
>>
>> Yesterday afternoon, the ISP restored service. Last time
>> it died after two days, but I am keeping my fingers
>> crossed. I am attaching the django stuff.
>>
>> Tony
>>
>>
>> On 04/11/2017 01:36 AM, Jatin Dhankhar wrote:
>>> Hi Tony,
>>>
>>> Normally, we use http://chat.sugarlabs.orgor on
>>> freenode: sugar-meeting or sugar-newbies. These are
>>> logged sites so that there is a record. The second
>>> is more appropriate since sugar-meeting is used for
>>> SLOB meetings and the like. The real problem with
>>> IRC is time zones. Email has the advantage that
>>> either party can send or receive at any time. Last
>>> year with a GSOC mentee we used sugar-newbies by
>>> arranging a specific meeting time in advance.
>>>
>>> Yes, that is correct, main issue in communication
>>> barrier is due to timezone issues. Since most of the
>>> people are familiar and are available on IRC, it's seems
>>> to be the primary channel of communication along with
>>> mailing lists and email. But since you said we can use
>>> anything else, giving Slack a try won't hurt (if issue
>>> is about not using closed source software then IRC is
>>> fine, or we can try Mattermost
>>> <https://about.mattermost.com/>).
>>>
>>> Another part of the process is how to update
>>> 'translate.sugarlabs.org
>>> <http://translate.sugarlabs.org/>' with the
>>> corresponding POT file to enable localization. We
>>> can get help from Chris Leonard on this.
>>>
>>>
>>> I am not aware on how localization works. Do we need to
>>> download relevant files and bundle them with the
>>> acitvity before making it available on ASLO ?
>>>
>>> I have my Django version available - but the
>>> internet problems here are still unresolved. The
>>> technician is supposed to make another visit today
>>> to see what is wrong with our connection. Let me
>>> know if and when you think this will be useful to you.
>>>
>>> Let me know when your connection is stable and I would
>>> start.
>>> What are the things you need me to do in the meantime ?
>>>
>>> One open issue is sugar3 vs sugar. Currently two
>>> versions of Sugar are released. The sugar version
>>> supports gtk while sugar3 supports gtk3.
>>> Unfortunately, gtk3 was developed to be totally
>>> incompatible with gtk. For example, incorporation of
>>> one gtk3 feature requires that all direct and
>>> indirect references to gtk be removed or the
>>> activity will throw an exception. Several of the
>>> gtk3 conversions failed to meet this test and so
>>> fail. The issue is whether curated activities be
>>> limited to ones converted to gtk3. The positive is
>>> that Sugar could revert to releasing and maintaining
>>> only a single version. The downside is that 100 or
>>> more activities will no longer be available.
>>> Specifically, in our implementation of ASLO, we need
>>> to show which versions of an activity work on which
>>> versions of Sugar (e.g. i86, arm, amd64, sugar or
>>> sugar3, and so on). We also need to show which ones
>>> support localization. There are many English
>>> activities and many Spanish activities that make no
>>> provision for localization. Luckily there are many
>>> that have no language component. However, for many
>>> of these, some kind of help is needed to convey the
>>> way the activity works.
>>>
>>>
>>> Some people believe GTK3 is slightly better
>>> <https://www.reddit.com/r/linux/comments/3e3q8n/is_there_a_technical_reason_why_gtk3_is_better/> and
>>> I think GTK3 will stay but that should be asked in
>>> community and voted upon and taking in considerations
>>> cost of development and porting, only a discussion will
>>> help in this one.
>>>
>>> You are wading into a deep and vast body of water!
>>>
>>> As long as I have something to hold onto, I will not
>>> drown 😅
>>>
>>> Thanks,
>>> Jatin Dhankhar
>>>
>>> On Mon, Apr 10, 2017 at 9:11 AM, Tony Anderson
>>> <tony_anderson at usa.net <mailto:tony_anderson at usa.net>>
>>> wrote:
>>>
>>> Hi, Jatin
>>>
>>> Normally, we use http://chat.sugarlabs.org or on
>>> freenode: sugar-meeting or sugar-newbies. These are
>>> logged sites so that there is a record. The second
>>> is more appropriate since sugar-meeting is used for
>>> SLOB meetings and the like. The real problem with
>>> IRC is time zones. Email has the advantage that
>>> either party can send or receive at any time. Last
>>> year with a GSOC mentee we used sugar-newbies by
>>> arranging a specific meeting time in advance.
>>>
>>> I haven't heard from Walter, but my preference would
>>> be to use the Sugarlabs server since the content is
>>> largely already there and it would be easier to make
>>> it the official site if that were decided. So in the
>>> short run, I think you should do whatever is best
>>> for your own development process.
>>>
>>> I am not sure how CI fits into this. If the activity
>>> development is done on GitHub, then the deployment
>>> model is to run setup.py to create an xo bundle and
>>> then copy that bundle to the appropriate location in
>>> the download.sugarlabs.org
>>> <http://download.sugarlabs.org> tree. Assuming the
>>> update results from a PR, the deployer would need to
>>> update the activity information on ASLO
>>> appropriately. However, that process depends on
>>> where that data (metadata) is stored. Another part
>>> of the process is how to update
>>> 'translate.sugarlabs.org
>>> <http://translate.sugarlabs.org>' with the
>>> corresponding POT file to enable localization. We
>>> can get help from Chris Leonard on this.
>>>
>>> I have my Django version available - but the
>>> internet problems here are still unresolved. The
>>> technician is supposed to make another visit today
>>> to see what is wrong with our connection. Let me
>>> know if and when you think this will be useful to you.
>>>
>>> I have now tested most of the activities (~400). I
>>> was optimistic in the number that work out of the
>>> box. However, a part of this is running them in the
>>> Ubuntu version of Sugar (amd64). There are many
>>> activities which launch object code (mostly c) which
>>> is dependent on the architecture. I am now trying to
>>> repeat the tests on an XO-1.75. One issue on Ubuntu
>>> is that many activities assume a 1200x900 screen and
>>> so on a 1024X768 screen overflow. This makes some of
>>> the games unusable since part of the controls are
>>> off the screen. Because of the internet problems,
>>> the untested activities tend to be new ones since I
>>> was using my local repository which is a snapshot
>>> taken several months ago. The other group are the
>>> GCompris activities (about 70).
>>>
>>> My intent is to build a 'curated' repository of
>>> activities known to work and be usable on the XO and
>>> on Ubuntu (or such other platform that Sugar may
>>> choose to support). Most of the currently not work
>>> activities have software dependencies no longer
>>> included in the current Sugar release. So the
>>> curated library will grow as activities are repaired
>>> over time.
>>>
>>> One open issue is sugar3 vs sugar. Currently two
>>> versions of Sugar are released. The sugar version
>>> supports gtk while sugar3 supports gtk3.
>>> Unfortunately, gtk3 was developed to be totally
>>> incompatible with gtk. For example, incorporation of
>>> one gtk3 feature requires that all direct and
>>> indirect references to gtk be removed or the
>>> activity will throw an exception. Several of the
>>> gtk3 conversions failed to meet this test and so
>>> fail. The issue is whether curated activities be
>>> limited to ones converted to gtk3. The positive is
>>> that Sugar could revert to releasing and maintaining
>>> only a single version. The downside is that 100 or
>>> more activities will no longer be available.
>>> Specifically, in our implementation of ASLO, we need
>>> to show which versions of an activity work on which
>>> versions of Sugar (e.g. i86, arm, amd64, sugar or
>>> sugar3, and so on). We also need to show which ones
>>> support localization. There are many English
>>> activities and many Spanish activities that make no
>>> provision for localization. Luckily there are many
>>> that have no language component. However, for many
>>> of these, some kind of help is needed to convey the
>>> way the activity works.
>>>
>>> You are wading into a deep and vast body of water!
>>>
>>> Tony
>>>
>>>
>>> On 04/10/2017 12:00 AM, Jatin Dhankhar wrote:
>>>> Hi,
>>>> Sorry for the delay. I went through the polls
>>>> tutorials and I think I am getting hang of Django.
>>>> I have one query that is out of context, what is
>>>> your IRC setup ? IRC doesn't allow message to be
>>>> delivered or stored once either party is offline,
>>>> people login through a external server for IRC's to
>>>> maintain their availability in a channel. May I
>>>> suggest something like Slack or Flock for
>>>> communication. IRC is good for quick and fast
>>>> connection but Slack and alternatives allow easy
>>>> communication. (Just a suggestion, though)
>>>>
>>>> Should I deploy the same polls app on DigitalOcean
>>>> along with CI pipeline and branching model in the
>>>> meantime with code hosted on Github ?
>>>>
>>>> Thanks,
>>>> Jatin Dhankhar
>>>>
>>>> On Sat, Apr 8, 2017 at 6:28 AM, Tony Anderson
>>>> <tony_anderson at usa.net
>>>> <mailto:tony_anderson at usa.net>> wrote:
>>>>
>>>> Hi, Jatin
>>>>
>>>> I abbreviated this thread because I am getting
>>>> complaints from the list that the emails are
>>>> too long.
>>>>
>>>> Yesterday, I was able to complete a set of 25
>>>> activities to use as a test base. The Django
>>>> app now has two views. First is a display of
>>>> all of the
>>>> activities with the icon and name. A link for
>>>> each opens the full activity page. The data for
>>>> the views is in a file which is a list of
>>>> jsons, one json per line.
>>>> The views.py reads this file and builds the
>>>> view from the jsons.
>>>>
>>>> So the app consists of:
>>>> urls.py
>>>> views.py
>>>> templates/
>>>> base.html
>>>> list.html
>>>> activity.html
>>>>
>>>> with the data:
>>>> fixtures/activities.json
>>>> icons/
>>>> xo/
>>>>
>>>> The icons directory has the activity icons (*.svg)
>>>> The xo directory has the activity bundles (*.xo)
>>>>
>>>> Meanwhile, I am having more troubles with the
>>>> ISP (a new one). When that gets resolved, I
>>>> should be able to send the above to you.
>>>>
>>>> I have also mentioned our dialog to Walter
>>>> Bender suggesting that you could set up your
>>>> working model as activities3.sugarlabs.org
>>>> <http://activities3.sugarlabs.org>. This would
>>>> give you a permanent place to do the
>>>> development and make your project visible to
>>>> the community so that we can obtain feedback. I
>>>> aslo suggested that the project repository
>>>> could be placed on GitHub so that again the
>>>> community can comment and potentially contribute.
>>>>
>>>> Tony
>>>> On 04/07/2017 12:23 AM, Jatin Dhankhar wrote:
>>>>> Hi,
>>>>>
>>>>> I am setting up Django now and going through
>>>>> some tutorials. I will setup the code with a
>>>>> very basic and barebones version of what we
>>>>> want to achieve and put it in a private repo.
>>>>> We can even host it online, since I have some
>>>>> DigitalOcean credit left. Will keep you posted.
>>>>>
>>>>> Thanks.
>>>>> Jatin Dhankhar
>>>>>
>>>>> On Thu, Apr 6, 2017 at 7:11 AM, Tony Anderson
>>>>> <tony_anderson at usa.net
>>>>> <mailto:tony_anderson at usa.net>> wrote:
>>>>>
>>>>> Hi, Jatin
>>>>>
>>>>> In setting up Django, I think you will do
>>>>> it on your computer not on a separate
>>>>> server. Django handles that through its
>>>>> own server and has sgqlite as a database
>>>>> built-in. A good first start would be to
>>>>> set up the tutorial app
>>>>> (https://www.djangoproject.com/).
>>>>> Essentially you will need to install
>>>>> django and then set up the tutorial app
>>>>> 'poll'. Working through this tutorial will
>>>>> help a lot later on. The key point is that
>>>>> after initial setup, there are three
>>>>> important elements: url.py which defines
>>>>> the urls to access the application,
>>>>> views.py which is the python code that
>>>>> responds to a request by accessing the db
>>>>> and delivering the relevant information to
>>>>> a template. The template is an html file
>>>>> with variables of the form {{
>>>>> activity.name <http://activity.name> }}
>>>>> transferring information from the view to
>>>>> the template.
>>>>>
>>>>> What I have is an application: aslo. Once
>>>>> you have Django installed and have run the
>>>>> tutorial app through Django's server,
>>>>> you'll be ready. Essentially, you will
>>>>> only need to add aslo as a second app in
>>>>> the settings. One possible confusion is
>>>>> that DJango lives in a project -
>>>>> essentially a directory containing its
>>>>> manage.py admin interface. In the
>>>>> directory is another directory of the same
>>>>> name with the settings.py and url.py. The
>>>>> poll app is a directory in the top-level
>>>>> alongside the inner directory with the
>>>>> project name.
>>>>>
>>>>> For example, my project is schoolsite. So
>>>>> my setup looks like:
>>>>>
>>>>> /library/schoolsite/schoolsite
>>>>> /library/schoolsite/aslo
>>>>>
>>>>> Meanwhile my code links directly to an
>>>>> activity page with no index. I'll add an
>>>>> index so the essential structure will be
>>>>> there. I'll also include the 'fixtures' to
>>>>> set up a 25 activity capability. Fixtures
>>>>> are csv files from which the database
>>>>> (metadata) can be loaded.
>>>>>
>>>>> Tony
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>
>
> _______________________________________________
> 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>
>
>
>
>
> --
> Walter Bender
> Sugar Labs
> http://www.sugarlabs.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/aslo/attachments/20170413/e134fb2b/attachment-0001.html>
More information about the ASLO
mailing list