<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 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>
    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:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">
    <br>
    I am thinking that rather than keep the metadata regarding Sugar
    activities, it might be better to include it in <a 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:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" 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:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" 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:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">
    <br>
    I would appreciate your help in setting up the authorizations
    needed. </div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">
    <br>
    Thanks,<br>
    <br>
    Tony<div><div class="h5"><br>
    <br>
    <br>
    <div class="m_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 href="mailto:dhankhar.jatin@gmail.com" target="_blank">dhankhar.jatin@gmail.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;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 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 href="http://activities.sugarlabs.org" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-freetext" href="http://activities.sugarlabs" target="_blank">http://activities.sugarlabs</a>.o<wbr>rg instead
                of <a href="http://download.sugarlabs.org/" target="_blank">http://download.sugarlabs.o<wbr>rg/</a>,
                right ? <br>
                Also for scraping, <a 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_6307486910291391069HOEnZb"><font color="#888888">
                  <div><br>
                  </div>
                  <div>- Jatin Dhankhar</div>
                  <div> </div>
                </font></span></div>
            <div class="m_6307486910291391069HOEnZb">
              <div class="m_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 href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-abbreviated" 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, 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 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_6307486910291391069m_6722767647619661501HOEnZb"><font color="#888888"><br>
                            <br>
                            Tony</font></span>
                        <div>
                          <div class="m_6307486910291391069m_6722767647619661501h5"><br>
                            <br>
                            <div class="m_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 href="https://wiki.mozilla.org/Update:Remora_Server_Requirements#SVN.2C_DB_and_app_config" target="_blank">https://wiki.mozilla.org/Updat<wbr>e:Remora_Server_Requirements#S<wbr>VN.2C_DB_and_app_config</a> data

                                is stored in mysql database. I don't
                                have access to the production server
                                where ASLO is currently running,
                                following file <a href="https://github.com/sugarlabs/aslo/blob/master/aslo/db-update.sh#L9" target="_blank">https://github.com/sugarl<wbr>abs/aslo/blob/master/aslo/db-u<wbr>pdate.sh#L9</a> 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 href="https://gitter.im" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-freetext" href="https://gitter.im" target="_blank">https://gitter.im</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 href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-abbreviated" 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"> 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 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_6307486910291391069m_6722767647619661501m_-7011079753232270224HOEnZb"><font color="#888888"><br>
                                          <br>
                                          Tony</font></span>
                                      <div>
                                        <div class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224h5"><br>
                                          <br>
                                          <div class="m_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 class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224moz-txt-link-freetext" href="http://chat.sugarlabs.org" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-freetext" href="http://chat.sugarlabs.org" target="_blank">http://chat.sugarlabs.org</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 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 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 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 class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-abbreviated" 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, Jatin<br>
                                                    <br>
                                                    Normally, we use <a class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942m_2297804042014618975moz-txt-link-freetext" href="http://chat.sugarlabs.org" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-freetext" href="http://chat.sugarlabs.org" target="_blank">http://chat.sugarlabs.org</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 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 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_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942HOEnZb"><font color="#888888"><br>
                                                        <br>
                                                        Tony</font></span>
                                                    <div>
                                                      <div class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942h5"><br>
                                                        <br>
                                                        <div class="m_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 class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-abbreviated" 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, 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 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_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942m_2297804042014618975HOEnZb"><font color="#888888"><br>
                                                          <br>
                                                          Tony</font></span><span><br>
                                                          <div class="m_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 class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-abbreviated" 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, 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 class="m_6307486910291391069m_6722767647619661501m_-7011079753232270224moz-txt-link-freetext" href="https://www.djangoproject.com" target="_blank"></a><a class="m_6307486910291391069moz-txt-link-freetext" href="https://www.djangoproject.com" target="_blank">https://www.djangoproject.com</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 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_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 href="mailto:ASLO@lists.sugarlabs.org" target="_blank">ASLO@lists.sugarlabs.org</a><br>
            <a href="http://lists.sugarlabs.org/listinfo/aslo" rel="noreferrer" target="_blank">http://lists.sugarlabs.org/lis<wbr>tinfo/aslo</a><br>
            <br>
          </blockquote>
        </div>
        <br>
        <br clear="all">
        <div><br>
        </div>
        -- <br>
        <div class="m_6307486910291391069gmail_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 href="http://www.sugarlabs.org" target="_blank"><font>http://www.sugarlabs.org</font></a></font><br>
              <br>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
  </div></div></div>

</blockquote></div><br></div></div>