User:CScott: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Added sketch to User page.)
(Moved my feature list to my talk page.)
Line 3: Line 3:
<br clear="both" />
<br clear="both" />
C. Scott Ananian is a software developer working at OLPC in Cambridge, MA. His home page is [http://cscott.net http://cscott.net].
C. Scott Ananian is a software developer working at OLPC in Cambridge, MA. His home page is [http://cscott.net http://cscott.net].
== Desiderata for 9.1.0 ==
* Better "legacy app" compatibility; this should allow us to run existing apps like firefox, pidgin, and gimp in a reasonable manner:
** Replace matchbox window manager with [[XMonad]], [http://en.wikipedia.org/wiki/Metacity Metacity], [http://awesome.naquadah.org/ awesome], etc. Should provide both 'full screen' mode and traditional 'tiled' mode.
** Switch to standard freedesktop.org [http://www.freedesktop.org/wiki/Specifications/startup-notification-spec startup notification] mechanism: <trac>5271</trac>
** Implement freedesktop.org [http://www.galago-project.org/specs/notification/index.php notifications mechanism] for alerts (low battery, low disk space, available software update)
** Refactor home/friends/mesh view as operations on root window, so they make sense in a multiwindow setup. (It's been suggested that looking at the xpenguins code is instructive for understanding how nautilus,etc arrange their root window.)
** App launching & mimetypes via XDG mechanisms (thanks, erikg)
* Improved antitheft mechanisms:
** ECO fix and EC improvements
** Security control panel, with "am I stolen" and lease renewal buttons: <trac>1502</trac>, <trac>6428</trac>
** olpcrd work: <trac>7397</trac>
** Revoke root capabilities when booted with security enabled: <trac>7562</trac>
* Improved update mechanisms
** Real COW for pristine versions, allowing... <trac>3581</trac>
** ...binary-diff updates over http (avoiding rsync in many cases) <trac>4259</trac>, etc
** Integration of core OS updates with software update control panel: <trac>7618</trac>
** Integration of software updates with notification system
** Incremental updates of activity bundles (only changed files)
** Send back statistical data when checking for updates (batmon, etc) <trac>4594</trac>, <trac>6447</trac>
* Security/isolation work
** Implementation of P_SF_CORE, P_SF_RUN
** Mechanism to validate updates to loopholed activities & allow user to manage exceptions
** Persistent activity storage
** NSS modules for rainbow users and for olpc/root users
** Rainbow
* Journal improvements
** Proper display of 'new versions' of activities
** Tagging system to allow folder-like management for advanced users
** Datastore rework
** Direct execution of activities from datastore (avoid installation step) <trac>7713</trac>
** Ability to have multiple versions of an activity installed concurrently. (API work necessary: <trac>7713</trac>)
* Translation improvements
** "multiple languages, multiple places": translation system should look in local, then activity, then system translation tables, then repeat for each in a set of fallback languages (eg, quechua, spanish, english)
** separable translation packs
** "click-to-translate": wiki-like editing of translatable labels in the UI
* "Asynchronous internet"
** Integration of wwwoffle with small local cache
** Content bundles to seed that cache
** Mechanism to request downloads later
* Library improvements
** The current API is a mess, doesn't match the documentation on the wiki, is inconsistent with the activity.info format, etc.
** Merging content and activities -- a bundle ought to be able to have *both* a library.info *and* an activity.info
** Using a content format which is consistent with "offline internet" content -- more or less consider installing content files as pushing stuff into an offline cache
** Dynamic generation of the top-level "home" page so we don't need to run the indexer after installing content bundles.
* Fedora integration
** tools to manage forked packages better. To start with: a notification tool to let us know if a new upstream release has occurred for a package we have forked.
* Printing support
** Print postscript (or pdf, or whatever, just pick *one*) to school server via CUP (IPP?), and install a "decent selection" of printer drivers on the school server. Control panel for 'default printer name', fixed to 'XS' by default.
** Add basic printing support to Write, Read, and Browse; set PRINTER env variable.
** for future, add support to Paint, Record, etc.

Revision as of 13:53, 22 October 2008

 
C. Scott Ananian
C. Scott Ananian

I pick up stuff I find on the ground and make it work.

C. Scott Ananian


C. Scott Ananian is a software developer working at OLPC in Cambridge, MA. His home page is http://cscott.net.

Desiderata for 9.1.0

  • Better "legacy app" compatibility; this should allow us to run existing apps like firefox, pidgin, and gimp in a reasonable manner:
    • Replace matchbox window manager with XMonad, Metacity, awesome, etc. Should provide both 'full screen' mode and traditional 'tiled' mode.
    • Switch to standard freedesktop.org startup notification mechanism: <trac>5271</trac>
    • Implement freedesktop.org notifications mechanism for alerts (low battery, low disk space, available software update)
    • Refactor home/friends/mesh view as operations on root window, so they make sense in a multiwindow setup. (It's been suggested that looking at the xpenguins code is instructive for understanding how nautilus,etc arrange their root window.)
    • App launching & mimetypes via XDG mechanisms (thanks, erikg)
  • Improved antitheft mechanisms:
    • ECO fix and EC improvements
    • Security control panel, with "am I stolen" and lease renewal buttons: <trac>1502</trac>, <trac>6428</trac>
    • olpcrd work: <trac>7397</trac>
    • Revoke root capabilities when booted with security enabled: <trac>7562</trac>
  • Improved update mechanisms
    • Real COW for pristine versions, allowing... <trac>3581</trac>
    • ...binary-diff updates over http (avoiding rsync in many cases) <trac>4259</trac>, etc
    • Integration of core OS updates with software update control panel: <trac>7618</trac>
    • Integration of software updates with notification system
    • Incremental updates of activity bundles (only changed files)
    • Send back statistical data when checking for updates (batmon, etc) <trac>4594</trac>, <trac>6447</trac>
  • Security/isolation work
    • Implementation of P_SF_CORE, P_SF_RUN
    • Mechanism to validate updates to loopholed activities & allow user to manage exceptions
    • Persistent activity storage
    • NSS modules for rainbow users and for olpc/root users
    • Rainbow
  • Journal improvements
    • Proper display of 'new versions' of activities
    • Tagging system to allow folder-like management for advanced users
    • Datastore rework
    • Direct execution of activities from datastore (avoid installation step) <trac>7713</trac>
    • Ability to have multiple versions of an activity installed concurrently. (API work necessary: <trac>7713</trac>)
  • Translation improvements
    • "multiple languages, multiple places": translation system should look in local, then activity, then system translation tables, then repeat for each in a set of fallback languages (eg, quechua, spanish, english)
    • separable translation packs
    • "click-to-translate": wiki-like editing of translatable labels in the UI
  • "Asynchronous internet"
    • Integration of wwwoffle with small local cache
    • Content bundles to seed that cache
    • Mechanism to request downloads later
  • Library improvements
    • The current API is a mess, doesn't match the documentation on the wiki, is inconsistent with the activity.info format, etc.
    • Merging content and activities -- a bundle ought to be able to have *both* a library.info *and* an activity.info
    • Using a content format which is consistent with "offline internet" content -- more or less consider installing content files as pushing stuff into an offline cache
    • Dynamic generation of the top-level "home" page so we don't need to run the indexer after installing content bundles.
  • Fedora integration
    • tools to manage forked packages better. To start with: a notification tool to let us know if a new upstream release has occurred for a package we have forked.
  • Printing support
    • Print postscript (or pdf, or whatever, just pick *one*) to school server via CUP (IPP?), and install a "decent selection" of printer drivers on the school server. Control panel for 'default printer name', fixed to 'XS' by default.
    • Add basic printing support to Write, Read, and Browse; set PRINTER env variable.
    • for future, add support to Paint, Record, etc.