<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Hi, Walter<br>
<br>
It is wonderful to see a discussion on technical matters concerning
Sugar. <br>
<br>
Assuming we plan to handle development and maintenance of activities
through GitHub, then the 'publishing' of an activity should be a
simple copy of the xo bundle to download.sugarlabs.org/activities
and an update so that version is the one shown by ASLO. The
developer hub and its authentication would no longer be needed.<br>
<br>
For the activities not now in GitHub, as I understand it, the
activity should first be copied to a personal repository on github
and then <br>
the systems mailing list be notified to make the transfer. Your
steps 2-4 should be done before the transfer. <br>
<br>
The word tedious applies also to the process of testing the
activities.<br>
<br>
1. Download the activity zip file from GitHub (made necessary as a
download from ASLO was often not the right version).<br>
2. Use setup.py to generate the xo bundle (python setup.py dist_xo).
<br>
3. Some activities did not have a setup.py or it failed. In this
case cp -r some-activity-master /home/tony/Activities/some.activity
<br>
4. Run the activity<br>
5. If failed to start, debug with the log<br>
6. If possible fix, and run again<br>
7. Go to GitHub and post issues reporting the problems<br>
<br>
I suspect this could be automated by a python script assuming that
an activity which starts successfully is working. Such a script
could 'lint' check the activity and activity.info to see that it
meets our standards. One problem will be to arrange tests on four
models of XO plus any other supported platforms (Ubuntu, RPi, ...).
<br>
<br>
Tony<br>
<br>
<br>
<br>
<div class="moz-cite-prefix">On 04/20/2017 08:22 PM, Walter Bender
wrote:<br>
</div>
<blockquote
cite="mid:CADf7C8spYpLK7Of4WYjtNaMKb-3KCpECwjMK9mEwbYdPAP9RQw@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Apr 20, 2017 at 3:45 AM, Tony
Anderson <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:tony_anderson@usa.net" target="_blank">tony_anderson@usa.net</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"> Hi, Walter<br>
<br>
I am new to this. I am registered as a member. However,
it may take an 'owner'. I assume that the process you
describe is how we expect our users to submit new
activities. However, this may become a distraction for
someone to keep having to move activities to Sugarlabs.<br>
</div>
</blockquote>
<div><br>
</div>
<div>It is a one-time effort per activity to "transfer" it
to sugarlabs.</div>
<div><br>
</div>
<div>What is tedious the process I am going through right
now to just update the version numbers of an activity:</div>
<div><br>
</div>
<div>1. clone the activity</div>
<div>2. update the version number</div>
<div>3. update NEWS with all of the commit info since the
last version update</div>
<div>4. often it is necessary to update the repo path as it
was not changed when the activity was transfered</div>
<div>5. make a PR</div>
<div>6, wait for someone to merge the PR</div>
<div>7. once the PR is merged, pull the updated repo</div>
<div>8. use setup.py to create new .xo and .tar bundles</div>
<div><br>
</div>
<div>Here is where things break down:</div>
<div><br>
</div>
<div>9. use admin privileges on ASLO to add myself to the
activity</div>
<div><br>
</div>
<div>10. upload a new version of the activity</div>
<div>11. scp the tar file to downloads</div>
<div><br>
</div>
<div>And here:</div>
<div><br>
</div>
<div>12. add a tag with the new version number to the repo
on GH/sugarlabs</div>
<div><br>
</div>
<div>Would be great to have some scripts that do most of
1-8.</div>
<div>Not sure about how to handle 9 properly.</div>
<div>Would be great to automate 10-11.</div>
<div>Not sure the proper protocol for 12.</div>
<div><br>
</div>
<div>Finally, what is the protocol for renaming repos in
GH/sugarlabs ? I renamed portfolio to portfolio-activity
for consistency. Lots of other activities should be
renamed. But I don't know how to do except unilaterally,</div>
<div><br>
</div>
<div>regards.</div>
<div><br>
</div>
<div>-walter</div>
<div><br>
</div>
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"> <br>
Tony<br>
<br>
<div class="m_2408988921113010574moz-cite-prefix">On
04/20/2017 09:26 AM, Walter Bender wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_extra"><br>
<div class="gmail_quote">On Wed, Apr 19, 2017 at
9:09 PM, Tony Anderson <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:tony_anderson@usa.net"
target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> I get the following
messages when trying to create a new
repository in sugarlabs:<br>
<br>
You don’t appear to have permission to
create repositories for this organization.
Sorry about that.<br>
</div>
</blockquote>
<div><br>
</div>
<div>That is by design. Only members can create
repositories on the project.</div>
<div><br>
</div>
<div>Quoting from <a moz-do-not-send="true"
href="https://github.com/sugarlabs/sugar-docs/blob/master/contributing.md"
target="_blank">https://github.com/sugarlabs/<wbr>sugar-docs/blob/master/<wbr>contributing.md</a></div>
<div><br>
</div>
<div>"For new activities, make a new repository
in your GitHub account, put the source code in
it, then ask the systems@ list to move it to
the sugarlabs organisation."</div>
<div><br>
</div>
<div>You can also of course ask to join the
sugarlabs project on GitHub.</div>
<div><br>
</div>
<div>-walter</div>
<div><br>
</div>
<div><br>
</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> Tony<br>
<br>
<div
class="m_2408988921113010574gmail-m_5049279913999944072moz-cite-prefix">On
04/20/2017 03:56 AM, Samuel Cantero wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Wed, Apr
19, 2017 at 1:40 AM, Tony Anderson <span
dir="ltr"><<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> Hi Walter<br>
<br>
We haven't heard from Sam C. <br>
</div>
</blockquote>
<div><br>
</div>
<div>Hi everyone! I'm sorry I
haven't replied before. I have
been very busy these days. I don't
know much about ASLO architecture.
I just have helped to keep it
working. Aleksey is the correct
guy here.</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> <br>
I am thinking that rather than
keep the metadata regarding
Sugar activities, it might be
better to include it in <a
moz-do-not-send="true"
href="http://activity.info"
target="_blank">activity.info</a>
(e.g. developers, summary,
description, what works, release
notes). This would enable ASLO
to generate its screens from the
bundle. <br>
<br>
Jatin now has a working minimal
prototype of the Django version.
It would be helpful if it were
on the Sugar servers supporting
ASLO.<br>
</div>
</blockquote>
<div><br>
</div>
<div>We can configure a dev
environment in our server and
enable CI. It would be good to
keep main repo in GitHub, inside
sugarlabs organization. This will
give us more chance to encourage
other people to help. Where is the
prototype right now? I would like
to take a look.</div>
<div><br>
</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> <br>
I would like to add some
activities from ASLO to the
github repository. Currently I
am a 'member'. Is that
sufficient to enable adding a
new activity?<br>
</div>
</blockquote>
<div><br>
</div>
<div>Try and tell me.</div>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> <br>
I have posted issues to each of
the activities I tested on the
github/sugarlabs. Several of the
activities can be fixed by
simple code changes. More
importantly, some order is
needed in the assignment of
version numbers and releasing
the updated activities to ASLO.
While I am a developer on ASLO,
I don't have the ability to
release new versions of
activities in general. </div>
</blockquote>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> <br>
I would appreciate your help in
setting up the authorizations
needed. </div>
</blockquote>
<blockquote class="gmail_quote"
style="margin:0px 0px 0px
0.8ex;border-left:1px solid
rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF"> <br>
Thanks,<br>
<br>
Tony
<div>
<div
class="m_2408988921113010574gmail-m_5049279913999944072h5"><br>
<br>
<br>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069moz-cite-prefix">On
04/13/2017 01:40 AM,
Walter Bender wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">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.
<div><br>
</div>
<div>regards.</div>
<div><br>
</div>
<div>-walter</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On
Wed, Apr 12, 2017 at
1:14 PM, Jatin
Dhankhar <span
dir="ltr"><<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-abbreviated"
href="mailto:dhankhar.jatin@gmail.com"
target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:dhankhar.jatin@gmail.com">dhankhar.jatin@gmail.com</a></a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex">
<div dir="ltr">Hi,<span>
<div><br>
</div>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">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.</span></blockquote>
</span>
<div>Sure,
whatever works
:). What is your
IRC nickname ?</div>
<span>
<div><br>
</div>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">There are two things that you will need to have
local to the
django
project. First
is the
directory </span><a
moz-do-not-send="true" href="http://download.sugarlabs.org/"
style="font-size:12.8px"
target="_blank">download.sugarlabs.o<wbr>rg</a><span
style="font-size:12.8px"> which
has the Sugar
activity
bundles</span></blockquote>
</span>
<div>Do I need to
mirror the whole
setup/directory
? <br>
</div>
<div><br>
</div>
<div>When talking
about scraping
you probably
meant <a
moz-do-not-send="true"
class="m_2408988921113010574gmail-m_5049279913999944072moz-txt-link-freetext"
href="http://activities.sugarlabs" target="_blank"><a class="moz-txt-link-freetext" href="http://activities.sugarlabs">http://activities.sugarlabs</a></a>.o<wbr>rg instead
of <a
moz-do-not-send="true"
href="http://download.sugarlabs.org/" target="_blank"><a class="moz-txt-link-freetext" href="http://download.sugarlabs.o">http://download.sugarlabs.o</a><wbr>rg/</a>,
right ? <br>
Also for
scraping, <a
moz-do-not-send="true"
href="https://scrapy.org/" target="_blank">Scrapy</a> seems to more
popular than
beautifulsoup ?<br>
<br>
Also a big
thanks for
including Walter
in the
discussion :D</div>
<span
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069HOEnZb"><font
color="#888888">
<div><br>
</div>
<div>- Jatin
Dhankhar</div>
<div> </div>
</font></span></div>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069HOEnZb">
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069h5">
<div
class="gmail_extra"><br>
<div
class="gmail_quote">On
Wed, Apr 12,
2017 at 6:30
AM, Tony
Anderson <span
dir="ltr"><<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex">
<div
bgcolor="#FFFFFF">
Hi, Jatin<br>
<br>
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.<br>
<br>
There are two
things that
you will need
to have local
to the django
project. First
is the
directory <a
moz-do-not-send="true" href="http://download.sugarlabs.org"
target="_blank">download.sugarlabs.org</a>
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.<br>
<br>
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).<br>
<br>
Naturally, it
would be
easier if you
have access to
the db
directly.<span
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501HOEnZb"><font
color="#888888"><br>
<br>
Tony</font></span>
<div>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501h5"><br>
<br>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224moz-cite-prefix">On
04/12/2017
01:40 AM,
Jatin Dhankhar
wrote:<br>
</div>
<blockquote
type="cite">
<div dir="ltr">
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">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.</span></blockquote>
As per wiki <a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-freetext"
href="https://wiki.mozilla.org/Updat" target="_blank"><a class="moz-txt-link-freetext" href="https://wiki.mozilla.org/Updat">https://wiki.mozilla.org/Updat</a></a><wbr>e:Remora_Server_Requirements#S<wbr>VN.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 <a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-freetext"
href="https://github.com/sugarl"
target="_blank"><a class="moz-txt-link-freetext" href="https://github.com/sugarl">https://github.com/sugarl</a></a><wbr>abs/aslo/blob/master/aslo/db-u<wbr>pdate.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.<br>
<div><br>
</div>
<div>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 :)</div>
<div><br>
</div>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">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. </span></blockquote>
<div><br>
</div>
<div> Yes,
tried that. <a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-freetext"
href="https://gitter.im" target="_blank"><a class="moz-txt-link-freetext" href="https://gitter.im">https://gitter.im</a></a> fits in
naturally with
Github (really
sorry for
suggesting a
new mode of
communication
everyday) 😅</div>
<div><br>
</div>
<div>- Jatin
Dhankhar</div>
<div><br>
</div>
</div>
<div
class="gmail_extra"><br>
<div
class="gmail_quote">On
Tue, Apr 11,
2017 at 6:14
AM, Tony
Anderson <span
dir="ltr"><<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex">
<div
bgcolor="#FFFFFF">
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. <br>
<br>
Localization
of Python
activities is
done by
Pootle, when
implemented by
the developer.
The developer
does something
like the
following:<br>
<br>
from
gettext import
gettext as _<br>
<br>
self.copy.set_tooltip(_('Copy'<wbr>))<br>
<br>
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 <a
moz-do-not-send="true" href="http://translate.sugarlabs.org"
target="_blank">translate.sugarlabs.org</a>
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. <br>
<br>
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.<br>
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). <br>
<br>
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.<br>
<br>
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.<span
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224HOEnZb"><font
color="#888888"><br>
<br>
Tony</font></span>
<div>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224h5"><br>
<br>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942moz-cite-prefix">On
04/11/2017
01:36 AM,
Jatin Dhankhar
wrote:<br>
</div>
<blockquote
type="cite">
<div dir="ltr">
<div>Hi Tony,</div>
<div> </div>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">Normally, we use </span><a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-freetext"
href="http://chat.sugarlabs.org"
target="_blank"><a class="moz-txt-link-freetext" href="http://chat.sugarlabs.org">http://chat.sugarlabs.org</a></a><span
style="font-size:12.8px"> <wbr>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. </span></blockquote>
<div>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 <a
moz-do-not-send="true" href="https://about.mattermost.com/"
target="_blank">Mattermost</a>).</div>
<div><br>
</div>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px"> Another part of the process is how to update '</span><a
moz-do-not-send="true" href="http://translate.sugarlabs.org/"
style="font-size:12.8px"
target="_blank">translate.sugarlabs.org</a><span
style="font-size:12.8px">'
with the
corresponding
POT file to
enable
localization.
We can get
help from
Chris Leonard
on this. </span></blockquote>
<div><br>
</div>
<div>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 ? </div>
<div><br>
</div>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">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.</span></blockquote>
<div>Let me
know when your
connection is
stable and I
would start.</div>
<div> What
are the
things you
need me to do
in the
meantime ? </div>
<div><br
style="font-size:12.8px">
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">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. </span></blockquote>
<div><br>
</div>
<div><a
moz-do-not-send="true"
href="https://www.reddit.com/r/linux/comments/3e3q8n/is_there_a_technical_reason_why_gtk3_is_better/"
target="_blank">Some people believe GTK3 is slightly better</a> 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.</div>
</div>
<div><br>
</div>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex"><span
style="font-size:12.8px">You are wading into a deep and vast body of
water!</span></blockquote>
<div>As long
as I have
something to
hold onto, I
will not drown
😅 </div>
<div><br>
</div>
<div>Thanks,</div>
<div>Jatin
Dhankhar</div>
</div>
<div
class="gmail_extra"><br>
<div
class="gmail_quote">On
Mon, Apr 10,
2017 at 9:11
AM, Tony
Anderson <span
dir="ltr"><<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex">
<div
bgcolor="#FFFFFF">
Hi, Jatin<br>
<br>
Normally, we
use <a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-freetext"
href="http://chat.sugarlabs.org"
target="_blank"><a class="moz-txt-link-freetext" href="http://chat.sugarlabs.org">http://chat.sugarlabs.org</a></a> 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. <br>
<br>
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. <br>
<br>
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 <a
moz-do-not-send="true"
href="http://download.sugarlabs.org" target="_blank">download.sugarlabs.org</a>
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 '<a
moz-do-not-send="true"
href="http://translate.sugarlabs.org" target="_blank">translate.sugarlabs.org</a>'
with the
corresponding
POT file to
enable
localization.
We can get
help from
Chris Leonard
on this. <br>
<br>
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.<br>
<br>
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). <br>
<br>
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. <br>
<br>
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. <br>
<br>
You are wading
into a deep
and vast body
of water!<span
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942HOEnZb"><font
color="#888888"><br>
<br>
Tony</font></span>
<div>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942h5"><br>
<br>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942m_2297804042014618975moz-cite-prefix">On
04/10/2017
12:00 AM,
Jatin Dhankhar
wrote:<br>
</div>
<blockquote
type="cite">
<div dir="ltr">Hi,
<div>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)</div>
<div><br>
</div>
<div>Should I
deploy the
same polls app
on
DigitalOcean
along with CI
pipeline and
branching
model in the
meantime with
code hosted on
Github ?</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Jatin
Dhankhar</div>
</div>
<div
class="gmail_extra"><br>
<div
class="gmail_quote">On
Sat, Apr 8,
2017 at 6:28
AM, Tony
Anderson <span
dir="ltr"><<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex">
<div
bgcolor="#FFFFFF">
Hi, Jatin<br>
<br>
I abbreviated
this thread
because I am
getting
complaints
from the list
that the
emails are too
long.<br>
<br>
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 <br>
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. <br>
The views.py
reads this
file and
builds the
view from the
jsons. <br>
<br>
So the app
consists of:<br>
urls.py<br>
views.py<br>
templates/<br>
base.html<br>
list.html<br>
activity.html<br>
<br>
with the data:<br>
fixtures/activities.json
<br>
icons/<br>
xo/<br>
<br>
The icons
directory has
the activity
icons (*.svg)<br>
The xo
directory has
the activity
bundles (*.xo)<br>
<br>
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.<br>
<br>
I have also
mentioned our
dialog to
Walter Bender
suggesting
that you could
set up your
working model
as <a
moz-do-not-send="true"
href="http://activities3.sugarlabs.org" target="_blank">activities3.sugarlabs.org</a>.
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.<span
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942m_2297804042014618975HOEnZb"><font
color="#888888"><br>
<br>
Tony</font></span><span><br>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942m_2297804042014618975m_-2022019510050925157moz-cite-prefix">On
04/07/2017
12:23 AM,
Jatin Dhankhar
wrote:<br>
</div>
<blockquote
type="cite">
<div dir="ltr">Hi,
<div><br>
</div>
<div>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. </div>
<div><br>
</div>
<div>Thanks.</div>
<div>Jatin
Dhankhar</div>
</div>
<div
class="gmail_extra"><br>
<div
class="gmail_quote">On
Thu, Apr 6,
2017 at 7:11
AM, Tony
Anderson <span
dir="ltr"><<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-abbreviated"
href="mailto:tony_anderson@usa.net" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net">tony_anderson@usa.net</a></a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0px
0px 0px
0.8ex;border-left:1px
solid
rgb(204,204,204);padding-left:1ex">
<div
bgcolor="#FFFFFF">
Hi, Jatin<br>
<br>
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 (<a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-freetext"
href="https://www.djangoproject.com" target="_blank"><a class="moz-txt-link-freetext" href="https://www.djangoproject.com">https://www.djangoproject.com</a></a><wbr>/).
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 {{ <a
moz-do-not-send="true" href="http://activity.name" target="_blank">activity.name</a>
}}
transferring
information
from the view
to the
template.<br>
<br>
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.<br>
<br>
For example,
my project is
schoolsite. So
my setup looks
like:<br>
<br>
/library/schoolsite/schoolsite<br>
/library/schoolsite/aslo<br>
<br>
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. <br>
<span
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942m_2297804042014618975m_-2022019510050925157HOEnZb"><font
color="#888888"> <br>
Tony</font></span></div>
</blockquote>
</div>
</div>
</blockquote>
<br>
</span></div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
<br>
______________________________<wbr>_________________<br>
ASLO mailing list<br>
<a
moz-do-not-send="true"
href="mailto:ASLO@lists.sugarlabs.org" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:ASLO@lists.sugarlabs.org">ASLO@lists.sugarlabs.org</a></a><br>
<a
moz-do-not-send="true"
href="http://lists.sugarlabs.org/listinfo/aslo" rel="noreferrer"
target="_blank"><a class="moz-txt-link-freetext" href="http://lists.sugarlabs.org/lis">http://lists.sugarlabs.org/lis</a><wbr>tinfo/aslo</a><br>
<br>
</blockquote>
</div>
<br>
<br clear="all">
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font color="#888888">
<div><br>
</div>
-- <br>
<div
class="m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069gmail_signature">
<div dir="ltr">
<div><font><font>Walter
Bender</font></font><br>
<font><font>Sugar
Labs</font></font></div>
<div><font><font><a
moz-do-not-send="true"
class="m_2408988921113010574moz-txt-link-freetext"
href="http://www.sugarlabs.org" target="_blank"><a class="moz-txt-link-freetext" href="http://www.sugarlabs.org">http://www.sugarlabs.org</a></a></font></font><br>
<br>
</div>
</div>
</div>
</font></span></font></span></div>
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font color="#888888"> </font></span></font></span></blockquote>
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font color="#888888"> <br>
</font></span></font></span></div>
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font
color="#888888"> </font></span></font></span></div>
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font
color="#888888"> </font></span></font></span></div>
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font
color="#888888"> </font></span></font></span></blockquote>
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font
color="#888888"> </font></span></font></span></div>
<span class="HOEnZb"><font
color="#888888"> <span
class="m_2408988921113010574gmail-HOEnZb"><font
color="#888888"> <br>
</font></span></font></span></div>
<span class="HOEnZb"><font
color="#888888"> </font></span></div>
<span class="HOEnZb"><font color="#888888">
</font></span></blockquote>
<span class="HOEnZb"><font color="#888888">
<br>
</font></span></div>
<span class="HOEnZb"><font color="#888888"> </font></span></blockquote>
<span class="HOEnZb"><font color="#888888"> </font></span></div>
<span class="HOEnZb"><font color="#888888"> <br>
<br clear="all">
<div><br>
</div>
-- <br>
<div
class="m_2408988921113010574gmail_signature">
<div dir="ltr">
<div><font><font>Walter Bender</font></font><br>
<font><font>Sugar Labs</font></font></div>
<div><font><a moz-do-not-send="true"
href="http://www.sugarlabs.org"
target="_blank"><font>http://www.sugarlabs.org</font></a></font><br>
<br>
</div>
</div>
</div>
</font></span></div>
</div>
</blockquote>
<br>
</div>
</blockquote>
</div>
<br>
<br clear="all">
<div><br>
</div>
-- <br>
<div class="gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr">
<div><font><font>Walter Bender</font></font><br>
<font><font>Sugar Labs</font></font></div>
<div><font><a moz-do-not-send="true"
href="http://www.sugarlabs.org" target="_blank"><font>http://www.sugarlabs.org</font></a></font><br>
<br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<br>
</body>
</html>