[Sugar-devel] [IAEP] addons.sugarlabs.org is starting to work
Sascha Silbe
sascha-ml-ui-sugar-devel at silbe.org
Thu Feb 19 08:20:06 EST 2009
On Wed, Feb 18, 2009 at 07:36:18PM -0500, Luke Faraone wrote:
> The *ideal* method would be to use a standard packaging method long
> term, ie
> .deb (which I'm partial to) or RPM. (both of these can be converted
> from and
> to each other with alien)
What exactly are you refering to when you say .deb / .rpm? File format,
method of access or conventional means of operation?
As for the file format, I think most file formats can be suited to our
needs - some may need more tweaking, some less. How much exactly will
depend on how we expect the final solution to work.
For access methods, the situation similar, though potentially a bit more
complex: while having apt archives for "common" packages would be great
(and could be set up at each school), we still need to cater for the
"meeting in the middle of the jungle" use case (*).
XO-local apt/http repositories might be useful - worst case would be
trading individual .deb files and having an installer refusing the
install them (with a kid-friendly error message ;) ) unless all of its
requisites have already been installed.
The most interesting part is architecture dependency: we shouldn't (and
in general simply cannot) assume that the activity author is able to
provide binaries for all architectures that anyone interested in running
the activity might use.
This means we need to be able to get the source, either bundled directly
with the binaries like in my proposal [1] or as a separate source
package from the same repository (deb-src lines in sources.list).
Personally, I prefer always having the source (even more so since Sugar
now has first-class "View Source" functionality), but there's nothing
about .deb's preventing this: just think of the source package as "the
activity" (library/whatever) and the binary package as "precompiled
architecture-dependent bits for the activity".
Strangely, the more I try to take your answer apart, the more I find it
could actually be made to work. :-P
> Currently the main objection to using "system packaging" is that they
> require administrative privlages to install; unfortunately, so would
> any
> other solution other than requiring that *all* sugar installs had
> *all* the
> packages in the "sugar system" (like we were able to do with the XO).
It isn't all black and white. As you mention yourself, you don't need
any administrative privileges to use apt ("prefix mode"). Actually on my
regular system I install most software (that's not available in Debian)
as a regular user (though using GNU stow instead of apt).
There are some interesting problems to solve for the gray area, though:
1. Ensuring integrity: a malicious dependency might subvert a lot of
activities. For activities with enhanced rights we could require
all-inclusive packaging, but that won't help in general (activities
would get too big) and increases the next problem:
2. Ensuring currency: a dependency with known vulnerabilities might
impact a lot of activities.
While Bitfrost is supposed to reduce the impact of a subverted activity
(**), there's a difference between a single activity (that could
possibly be replaced with a known-good copy) and half of the system not
working properly.
(*) Don't let that exaggeration fool you: Even in the "developed
countries" ubiquitous internet access isn't a reality for most people.
Requiring access to non-local repositories would severly impact the
ability to trade activities.
(**) The fact that there currently is no implementation of it on non-XO
systems should be fixed ASAP, not taken as an argument against at least
partially relying on it. The Bitfrost specification was the main reason
I took a closer look at Sugar in the first place.
[1]
http://sugarlabs.org/go/ActivityTeam/PackagingIdeas#combined_Source.2BBinary_package
CU Sascha
--
http://sascha.silbe.org/
http://www.infra-silbe.de/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 489 bytes
Desc: Digital signature
Url : http://lists.sugarlabs.org/archive/sugar-devel/attachments/20090219/b0c0f28c/attachment.pgp
More information about the Sugar-devel
mailing list