<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 20, 2017 at 7:35 PM, 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>
    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 <a href="http://download.sugarlabs.org/activities" target="_blank">download.sugarlabs.org/<wbr>activities</a>
    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.<wbr>activity
</div></blockquote><div><br></div><div>Why not just download the git repo directly into ~/Activities? That should work. </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>
    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 <a href="http://activity.info" target="_blank">activity.info</a> 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="m_1093523794728921624moz-cite-prefix">On 04/20/2017 08:22 PM, Walter Bender
      wrote:<br>
    </div>
    <blockquote 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 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_1093523794728921624m_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 href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_1093523794728921624moz-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: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 href="https://github.com/sugarlabs/sugar-docs/blob/master/contributing.md" target="_blank">https://github.com/sugarlabs/s<wbr>ugar-docs/blob/master/contribu<wbr>ting.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_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_1093523794728921624moz-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: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 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_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072h5"><br>
                                            <br>
                                            <br>
                                            <div class="m_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-abbreviated" href="mailto:dhankhar.jatin@gmail.com" target="_blank"></a><a class="m_1093523794728921624moz-txt-link-abbreviated" href="mailto:dhankhar.jatin@gmail.com" target="_blank">dhankhar.jatin@gmail.com</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 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 class="m_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072moz-txt-link-freetext" href="http://activities.sugarlabs" target="_blank"></a><a class="m_1093523794728921624moz-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"></a><a class="m_1093523794728921624moz-txt-link-freetext" href="http://download.sugarlabs.o" target="_blank">http://download.sugarlabs.o</a><wbr>rg/,
                                                        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_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069HOEnZb"><font color="#888888">
                                                          <div><br>
                                                          </div>
                                                          <div>- Jatin
                                                          Dhankhar</div>
                                                          <div> </div>
                                                        </font></span></div>
                                                    <div class="m_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069HOEnZb">
                                                      <div class="m_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_1093523794728921624moz-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: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 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_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501HOEnZb"><font color="#888888"><br>
                                                          <br>
                                                          Tony</font></span>
                                                          <div>
                                                          <div class="m_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501h5"><br>
                                                          <br>
                                                          <div class="m_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-freetext" href="https://wiki.mozilla.org/Updat" target="_blank"></a><a class="m_1093523794728921624moz-txt-link-freetext" href="https://wiki.mozilla.org/Updat" target="_blank">https://wiki.mozilla.org/Updat</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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-freetext" href="https://github.com/sugarl" target="_blank"></a><a class="m_1093523794728921624moz-txt-link-freetext" href="https://github.com/sugarl" target="_blank">https://github.com/sugarl</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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-freetext" href="https://gitter.im" target="_blank"></a><a class="m_1093523794728921624moz-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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_1093523794728921624moz-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: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 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_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224HOEnZb"><font color="#888888"><br>
                                                          <br>
                                                          Tony</font></span>
                                                          <div>
                                                          <div class="m_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224h5"><br>
                                                          <br>
                                                          <div class="m_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-freetext" href="http://chat.sugarlabs.org" target="_blank"></a><a class="m_1093523794728921624moz-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_1093523794728921624m_2408988921113010574moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_1093523794728921624moz-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: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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-freetext" href="http://chat.sugarlabs.org" target="_blank"></a><a class="m_1093523794728921624moz-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_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942HOEnZb"><font color="#888888"><br>
                                                          <br>
                                                          Tony</font></span>
                                                          <div>
                                                          <div class="m_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942h5"><br>
                                                          <br>
                                                          <div class="m_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_1093523794728921624moz-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: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 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_1093523794728921624m_2408988921113010574gmail-m_5049279913999944072m_6307486910291391069m_6722767647619661501m_-7011079753232270224m_5089198513458135942m_2297804042014618975HOEnZb"><font color="#888888"><br>
                                                          <br>
                                                          Tony</font></span><span><br>
                                                          <div class="m_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-abbreviated" href="mailto:tony_anderson@usa.net" target="_blank"></a><a class="m_1093523794728921624moz-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: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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-freetext" href="https://www.djangoproject.com" target="_blank"></a><a class="m_1093523794728921624moz-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_1093523794728921624m_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 href="mailto:ASLO@lists.sugarlabs.org" target="_blank"></a><a class="m_1093523794728921624moz-txt-link-abbreviated" 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"></a><a class="m_1093523794728921624moz-txt-link-freetext" href="http://lists.sugarlabs.org/lis" target="_blank">http://lists.sugarlabs.org/lis</a><wbr>tinfo/aslo<br>
                                                    <br>
                                                  </blockquote>
                                                </div>
                                                <br>
                                                <br clear="all">
                                                <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888">
                                                        <div><br>
                                                        </div>
                                                        -- <br>
                                                        <div class="m_1093523794728921624m_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 class="m_1093523794728921624m_2408988921113010574moz-txt-link-freetext" href="http://www.sugarlabs.org" target="_blank"></a><a class="m_1093523794728921624moz-txt-link-freetext" href="http://www.sugarlabs.org" target="_blank">http://www.sugarlabs.org</a></font></font><br>
                                                          <br>
                                                          </div>
                                                          </div>
                                                        </div>
                                                      </font></span></font></span></div>
                                              <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888"> </font></span></font></span></blockquote>
                                            <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888"> <br>
                                                  </font></span></font></span></div>
                                          <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888"> </font></span></font></span></div>
                                        <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888"> </font></span></font></span></div>
                                      <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888"> </font></span></font></span></blockquote>
                                    <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888"> </font></span></font></span></div>
                                  <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <span class="m_1093523794728921624m_2408988921113010574gmail-HOEnZb"><font color="#888888"> <br>
                                        </font></span></font></span></div>
                                <span class="m_1093523794728921624HOEnZb"><font color="#888888"> </font></span></div>
                              <span class="m_1093523794728921624HOEnZb"><font color="#888888">
                                </font></span></blockquote>
                            <span class="m_1093523794728921624HOEnZb"><font color="#888888">
                                <br>
                              </font></span></div>
                          <span class="m_1093523794728921624HOEnZb"><font color="#888888"> </font></span></blockquote>
                        <span class="m_1093523794728921624HOEnZb"><font color="#888888"> </font></span></div>
                      <span class="m_1093523794728921624HOEnZb"><font color="#888888"> <br>
                          <br clear="all"><span class="HOEnZb"><font color="#888888">
                          <div><br>
                          </div>
                          -- <br>
                          <div class="m_1093523794728921624m_2408988921113010574gmail_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>
                        </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_1093523794728921624gmail_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>
        </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 href="http://www.sugarlabs.org" target="_blank"><font>http://www.sugarlabs.org</font></a></font><br><a href="http://www.sugarlabs.org" target="_blank"><font></font></a><br></div></div></div>
</div></div>