[Sugar-devel] Mode of distribution of Sugar Activities

Srevin Saju srevinsaju at sugarlabs.org
Tue Jun 30 02:50:45 EDT 2020


> Remember that in my design for aslov4, it must "support activity
> bundles uploaded via ssh,"

I have seen and read the GSoC guidelines. I have also noticed that 
aslov4 should support activities uploaded by ssh. But it is almost 
impractical in my case. I do not own a ssh server so I cannot build / 
deploy a server / storage where I could publicly give ssh access to 
developers at sugarlabs. The best I could do is to make use of a free 
service (in this case, GitHub; but I have also mentioned of the 
alternatives to GitHub in my first email, (because personally I do not 
prefer Github too). If in case, I get access to a free ssh server on 
Google Cloud Platform or something, I will extend this feature. Because, 
I cannot implement a feature which I cannot test.

But this is absolutely possible, because sugarappstore-generator script 
is modular, I can easily provide the bundle location and it can 
automaticaly generate the static location. In this case, a custom 
`list_activities` needs to be defined to find uploaded bundles.

> and may also "for a specific list of
> activities, access the source repository and detect any change to a
> release tag (publish), create a bundle and extract release notes,"
I am not sure if you have noticed, I have added support for all 
activities to extract the release notes from the current tag. The 
problem with some repositories is that, they do not use annotated tags, 
so I cannot extract the Release notes from the tags. But I am able to 
extract the Release Notes from activity NEWS. I added this feature in 
the past week, maybe it went unnoticed.

To do some special testing / checking / checking out some commit or 
branch on the activity, the generator gives the option as given below

```

--build-entrypoint BUILD_ENTRYPOINT
                         Specify a path to any Linux compatible script 
which is intended to be executed on every build
   --build-override      Override `python setup.py dist_xo` with 
--build-entrypoint argument shell script
   --build-chdir         Changes directory to Activity dir

```

It implies, we could feed a custom build script, instead of using 
`python setup.py dist_xo` . So I hope that would do!

The idea of automatic building was to

  * increase the quality of activity (I will extend this to testing
    activities, (make sure it starts) using Continuous Integration)
  * an activity built on your system, should be equally built on another
    developer's system (i.e should be reproducible)
  * Reduce the time needed by developers to manually fill in the details
    and, upload binaries etc etc. I have used the exact same principle
    used by the https://appimage.org You can see their pull requests,
    which automatically tests if the appimage would work on Ubuntu
    Xenial (the oldest LTS).

Please let me know if there is anything I can do. I will try to get a 
server (temporarily) to add the ssh feature.


On 30/06/2020 09:24, James Cameron wrote:
> On Tue, Jun 30, 2020 at 12:22:41AM +0300, Srevin Saju wrote:
>> Thanks
>>
>>      Yes, there is no single source of Python 3 activity bundles.  There
>>      was for Python 2 activities; it was activities.sugarlabs.org.
>>
>> I hope aslov4 would solve this issue. I have now uploaded entire
>> successfully built Python3 bundles to
>> https://github.com/srevinsaju/sugar-activity-build/ releases. You
>> can check them out if you are interested and get some spare time.
> Thanks.  That there is no single source of Python 3 activity bundles
> doesn't really cause a problem for me.  I don't need aslov4 to fix it.
> There's more to the dependency problems than Python version.  That's
> why I said in the aslov4 idea "(a) ported to Python 3 and released,
> and (b) tested on Sugar Live Build."
>
>>      Yes, there is no single source of activity sources.  Best we have is
>>      GitHub sugarlabs org, where directory activity has a file
>>      activity.info which has a valid exec key.  But also gitorious.
>>
>> By 'no single source', is there any instance of python3 activities on
>> gitorious?
> You'd have to look.  I don't know of any.  Ibiam is probably right,
> but as Gitorious is still open, commits may be pushed, and so there is
> a possibility that a repository there may contain activity source
> compatible with Python 3.  I don't think you need to concern yourself
> with it though.
>
>> I wanted to know if all the python3 activities are either forked or
>> owned as a repository at sugarlabs GitHub organization? or does it
>> still exist at some other places?
> You'd have to look.  There can be activities for Sugar that are not
> part of the GitHub sugarlabs organisation.  We have seen several over
> the years, and we try to fork them, but there's no guarantee that we
> have been successful.  I don't think you need to concern yourself
> with it though.
>
> Remember that in my design for aslov4, it must "support activity
> bundles uploaded via ssh," and may also "for a specific list of
> activities, access the source repository and detect any change to a
> release tag (publish), create a bundle and extract release notes,"
>
> I'm looking forward to those two features in particular.
>
> Some source repositories are used to make multiple activity bundles;
> Wikipedia and TamTam are examples.
>
> I'm not interested in GitHub integration, because I don't always use
> GitHub, and some of the use cases for aslov4 are for situation where
> no internet access is available.
>
>>      Yes, aslov4 as specified in our GSoC project idea could look like it
>>      was a smaller than normal project, but if you iterate through each of
>>      the requirements it could easily fill the time available for a GSoC
>>      student working for 12 weeks of seven hours a weekday.
>>
>> Yes I agree. ASLOv4 is not an easy task. I am not sure when Manish
>> (radii.dev) would be free, I will try to complete the best I can, to
>> my knowledge.
> Thanks.
>
-- 
V/r
Srevin Saju

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20200630/a30e091c/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0x1007816766D390D7.asc
Type: application/pgp-keys
Size: 4849 bytes
Desc: not available
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20200630/a30e091c/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20200630/a30e091c/attachment-0001.sig>


More information about the Sugar-devel mailing list