Re: [Sugar-devel] 0depend feature request
On Tue, Nov 24, 2009 at 03:01:07PM -0500, Michael Stone wrote: Aleksey wrote: To have some implementation mockups for next 0install debates, I've coded how(I'm thinking) 0install integration could be implemented in sugar[1]. To check existed code, pull sugar and sugar-toolkit cloned repos[2] and follow simple test case[3]. [1] http://wiki.sugarlabs.org/go/Zero_Depend [2] http://wiki.sugarlabs.org/go/Zero_Depend#Scope [3] http://wiki.sugarlabs.org/go/Zero_Depend#How_To_Test Aleksey, I tried out your patches in a Debian Sid chroot with zeroinstall-injector-0.42.1-1 installed and got the following exception in shell.log when running your test case: Traceback (most recent call last): File /usr/lib/python2.5/site-packages/jarabe/desktop/favoritesview.py, line 519, in __button_release_event_cb self._activate() File /usr/lib/python2.5/site-packages/jarabe/desktop/favoritesview.py, line 531, in _activate self._resume(self._journal_entries[0]) File /usr/lib/python2.5/site-packages/jarabe/desktop/favoritesview.py, line 524, in _resume shell.resume(journal_entry, self._activity_info.get_bundle_id()) File /usr/lib/python2.5/site-packages/jarabe/util/shell.py, line 222, in resume launch(bundle, handle, get_icon_color(metadata)) File /usr/lib/python2.5/site-packages/jarabe/util/shell.py, line 238, in launch launcher.add_launcher(bundle, activity_handle, color) File /usr/lib/python2.5/site-packages/jarabe/view/launcher.py, line 185, in add_launcher zdepend.fetch(zfeed, progress, create_activity, cancel) File /usr/lib/python2.5/site-packages/jarabe/util/zdepend.py, line 49, in fetch downloaded = policy.download_uncached_implementations() File /usr/lib/python2.5/site-packages/zeroinstall/injector/policy.py, line 393, in download_uncached_implementations assert self.solver.ready, Solver is not ready!\n%s % self.solver.selections AssertionError: Solver is not ready! {Interface http://rox.sourceforge.net/2005/interfaces/ROX-Lib: None, Interface /home/sugar/Activities/Terminal.activity/activity/0depend.xml: v1 (/home/sugar/Activities/Terminal.activity/activity)} The problem seems to be that you haven't told the policy object to solve the feeds. You can do that with policy.solve_with_downloads() and maybe in other ways too. yeah, in my testing environment I have remains from previous 0install sessions Anyway, after teaching zdepend.py to solve the policy, I ran into into further trouble because my zeroinstall trust-db doesn't contain the ROX keys. To deal with this, I think you need to construct the policy object with a Handler object http://0install.net/python-api/html/zeroinstall.injector.handler.Handler-class.html and override its confirm_keys method. I've pushed new commits with fixed these issues and added cancel button @Thomas, Rene: is this about right? Michael -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
Aleksey wrote: yeah, in my testing environment I have remains from previous 0install sessions I've pushed new commits with fixed these issues and added cancel button Aleksey, Your test case passes on my system with these additional commits. Nice work, Michael ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Thu, Nov 12, 2009 at 05:51:27AM +, Aleksey Lim wrote: Hi all, To have some implementation mockups for next 0install debates, I've coded how(I'm thinking) 0install integration could be implemented in sugar[1]. To check existed code, pull sugar and sugar-toolkit cloned repos[2] and follow simple test case[3]. [1] http://wiki.sugarlabs.org/go/Zero_Depend [2] http://wiki.sugarlabs.org/go/Zero_Depend#Scope [3] http://wiki.sugarlabs.org/go/Zero_Depend#How_To_Test I've changed this feature a bit, so now its a Zero Install integration[4] The reason for this feature is to cover situations: * an activity has dependencies that weren't included to the Sugar Platform * install/build activity specific binaries * run non-sugar applications that are not well packaged to GNU/Linux distributions [4] http://wiki.sugarlabs.org/go/Zero_Install_integration -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Mon, Nov 23, 2009 at 7:31 PM, Aleksey Lim alsr...@member.fsf.org wrote: I've changed this feature a bit, so now its a Zero Install integration[4] Good to see progress on this. Much appreciated. Some questions... - Why is the depcheck happening at first start time? Install time seems be more appropriate: install time means there is a src of software, needed deps can be grabbed from the same src if present... - What happens if the deps are missing? If the user is offline? - What happens when the build fails? cheers, m -- martin.langh...@gmail.com mar...@laptop.org -- School Server Architect - ask interesting questions - don't get distracted with shiny stuff - working code first - http://wiki.laptop.org/go/User:Martinlanghoff ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Mon, Nov 23, 2009 at 07:39:14PM +0100, Martin Langhoff wrote: On Mon, Nov 23, 2009 at 7:31 PM, Aleksey Lim alsr...@member.fsf.org wrote: I've changed this feature a bit, so now its a Zero Install integration[4] Good to see progress on this. Much appreciated. Some questions... - Why is the depcheck happening at first start time? Install time seems be more appropriate: install time means there is a src of software, needed deps can be grabbed from the same src if present... in that case we entirely depend on 0install, so sugar provide just new GUI for 0launch(here just for downloading/building dependencies). - What happens if the deps are missing? If the user is offline? activity fails to start but in case of offline, 0install provides some options that could be useful for users(0share, 0mirror). - What happens when the build fails? activity just fails, and of course we can add some kind of bugreporting feature. -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Mon, Nov 23, 2009 at 07:06:19PM +, Gary C Martin wrote: Hi Aleksey, On 23 Nov 2009, at 18:45, Aleksey Lim wrote: On Mon, Nov 23, 2009 at 07:39:14PM +0100, Martin Langhoff wrote: On Mon, Nov 23, 2009 at 7:31 PM, Aleksey Lim alsr...@member.fsf.org wrote: I've changed this feature a bit, so now its a Zero Install integration[4] Good to see progress on this. Much appreciated. Some questions... - Why is the depcheck happening at first start time? Install time seems be more appropriate: install time means there is a src of software, needed deps can be grabbed from the same src if present... in that case we entirely depend on 0install, so sugar provide just new GUI for 0launch(here just for downloading/building dependencies). - What happens if the deps are missing? If the user is offline? activity fails to start but in case of offline, 0install provides some options that could be useful for users(0share, 0mirror). - What happens when the build fails? activity just fails, and of course we can add some kind of bugreporting feature. First up, to be honest, I don't plan to use or involve myself with 0install for any activities I'm involved with (may be if it works invisibly as a worst case fallback)... if you have ready to use 0depend.xml file(for example from another activity which uses the same deps) you as developer should only place it to activity/ directory and for users starting this activity means only having additional downloading progressbar(for the first time). But, if a deployment/teacher wanted to distribute one (or several) of these non-Sugar compliant installs on a USB stick for remote class installation, is it a trivial step for them to put 'the activity' on a stick so it can be installed without any network access or local server at install time? 0install integration is just an optional addon to activity bundles, you can all time package fat .xos as usual. Example: Teacher travels from a remote village to an education ministry or town with internet access once a month. Downloads a selection of new activities and content from ASLO to their USB stick. Journeys back to their village and uses the USB stick to install/upgrade each machine, kids also share the activity .xo bundle from Journal with friends who can't make it to the school. http://wiki.sugarlabs.org/go/Zero_Install_integration#Deploy_0install_packages_from_ASLO_like_a_regular_sugar_activities as an addition, we can support offline mode for such activities (request for downloading all required deps for all such activities by one click). -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Mon, Nov 23, 2009 at 08:05:21PM +0100, Martin Langhoff wrote: On Mon, Nov 23, 2009 at 7:45 PM, Aleksey Lim alsr...@member.fsf.org wrote: - Why is the depcheck happening at first start time? Install time seems be more appropriate: install time means there is a src of software, needed deps can be grabbed from the same src if present... in that case we entirely depend on 0install, so sugar provide just new GUI for 0launch(here just for downloading/building dependencies). So it'll be triggered when users download run an .xo? When they double-click an .xo from a USB disk? 0install procedures will be triggered on avery activity launch, but we can trigger them on uploading such bundle to journal(installation), so there won't be any differences (in case of downloading from ASLO) between regular activities and activities w/ 0install dependencies Will there be a way (control panel?) to see the disk space taken by 0install stuff and prune/uninstall parts? dunno, I guess in most cases its a designers question I thought about simple download progress bar for launcher http://wiki.sugarlabs.org/go/File:0depend-launcher.png, control panel for setup 0install settings and we can have context menu item for activities that have 0install dependencies to show 0install status. -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Mon, Nov 23, 2009 at 07:22:23PM +, Aleksey Lim wrote: On Mon, Nov 23, 2009 at 07:06:19PM +, Gary C Martin wrote: Example: Teacher travels from a remote village to an education ministry or town with internet access once a month. Downloads a selection of new activities and content from ASLO to their USB stick. Journeys back to their village and uses the USB stick to install/upgrade each machine, kids also share the activity .xo bundle from Journal with friends who can't make it to the school. http://wiki.sugarlabs.org/go/Zero_Install_integration#Deploy_0install_packages_from_ASLO_like_a_regular_sugar_activities as an addition, we can support offline mode for such activities (request for downloading all required deps for all such activities by one click). ..and share such dependencies by http://0install.net/0share.html -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Mon, Nov 23, 2009 at 08:00:49PM +, Aleksey Lim wrote: On Mon, Nov 23, 2009 at 07:22:23PM +, Aleksey Lim wrote: On Mon, Nov 23, 2009 at 07:06:19PM +, Gary C Martin wrote: Example: Teacher travels from a remote village to an education ministry or town with internet access once a month. Downloads a selection of new activities and content from ASLO to their USB stick. Journeys back to their village and uses the USB stick to install/upgrade each machine, kids also share the activity .xo bundle from Journal with friends who can't make it to the school. http://wiki.sugarlabs.org/go/Zero_Install_integration#Deploy_0install_packages_from_ASLO_like_a_regular_sugar_activities as an addition, we can support offline mode for such activities (request for downloading all required deps for all such activities by one click). ..and share such dependencies by http://0install.net/0share.html or doing something similar to http://roscidus.com/desktop/Zero2Bundle or http://0install.net/0export.html -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Thu, Nov 12, 2009 at 06:51, Aleksey Lim alsr...@member.fsf.org wrote: Hi all, To have some implementation mockups for next 0install debates, I've coded how(I'm thinking) 0install integration could be implemented in sugar[1]. To check existed code, pull sugar and sugar-toolkit cloned repos[2] and follow simple test case[3]. Hi, I would like to know more about how the experience changes for activity authors and what happens when the .xo is not downloaded from the web but copied from an usb stick. Thanks, Tomeu [1] http://wiki.sugarlabs.org/go/Zero_Depend [2] http://wiki.sugarlabs.org/go/Zero_Depend#Scope [3] http://wiki.sugarlabs.org/go/Zero_Depend#How_To_Test -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel -- «Sugar Labs is anyone who participates in improving and using Sugar. What Sugar Labs does is determined by the participants.» - David Farning ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] 0depend feature request
On Thu, Nov 12, 2009 at 08:10:11PM +0100, Tomeu Vizoso wrote: On Thu, Nov 12, 2009 at 06:51, Aleksey Lim alsr...@member.fsf.org wrote: Hi all, To have some implementation mockups for next 0install debates, I've coded how(I'm thinking) 0install integration could be implemented in sugar[1]. To check existed code, pull sugar and sugar-toolkit cloned repos[2] and follow simple test case[3]. Hi, I would like to know more about how the experience changes for activity authors 0depend is just optional feature, for bundles that have activity/0depend.xml file, while launching activity sugar(via 0install) will download(or build, just 0install feature) all dependencies that are mentioned in 0depend.xml and pass proper info via environment variables (PATH, PYTHONPATH etc) to activity startup. and what happens when the .xo is not downloaded from the web but copied from an usb stick. only 0depend.xml makes sense(its just regular bundle file), if it exists, shell will enable 0install integration. Thanks, Tomeu [1] http://wiki.sugarlabs.org/go/Zero_Depend [2] http://wiki.sugarlabs.org/go/Zero_Depend#Scope [3] http://wiki.sugarlabs.org/go/Zero_Depend#How_To_Test -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel -- «Sugar Labs is anyone who participates in improving and using Sugar. What Sugar Labs does is determined by the participants.» - David Farning -- Aleksey ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel