Moonlight (runtime)

From Wikipedia, the free encyclopedia

Jump to: navigation, search
Moonlight (runtime)
Developer(s) Novell
Initial release March 4, 2009 (2009-03-04)
Stable release 1.0.1 [1]
Preview release 2.0 Preview 6  (2009-06-30; 17 days ago) [+/−]
Written in C, C++, C#
Operating system Linux
Type Web Application framework
License LGPL 2 only or commercial
Website Official website

Moonlight is a free and open-source implementation of the Silverlight web application framework. Silverlight was originally developed by Microsoft. Moonlight is being developed by the Mono Project.[2] Moonlight 1.0 was released on January 20 2009.

Contents

[edit] Status and roadmap

In an interview in the beginning of June 2007, Miguel de Icaza said that the Mono team expected to offer a feasibility "alpha" demo in mid-June 2007, with support for Firefox on GNU/Linux by the end of the year.[3]

After a 21 day hacking spree by the Mono team (including Chris Toshok, Larry Ewing and Jeffrey Stedfast among others), a public demo was shown at Microsoft ReMIX conference in Paris, France on June 21, 2007.[4][5][6][7]

However, in September 2007, developers still needed to install and compile a lot of Mono and Olive (the experimental Mono subproject for .NET 3.0 support) modules from the Mono SVN repository to be able to test Moonlight.[8] A Moonlight IDE, named Lunar Eclipse, exists in SVN for XAML designs. It is expected to be included or ported into MonoDevelop as an add-on in the future.[9]

Moonlight is currently provided as a Firefox plugin for some versions of Firefox on some versions of Linux.[10] Users are warned that the current downloads are test installers and are not complete or bug free. In particular, Firefox 3 support is known to be buggy.[11] The plugin itself does not include a media codec pack but when the Moonlight plugin detects playable media it refers users to download a free Media codec pack from Microsoft.

Moonlight currently tracks the Silverlight 1.0 implementation. The first completed version, Moonlight 1.0, supporting Silverlight 1.0 was released 20 January 2009. Support for Silverlight 2.0 is still in its early stages, a preview version was released for May 4, 2009. This 2.0 preview release also contains some features of Silverlight 3 including pluggable media framework which allows Moonlight to work with pluggable codecs including open codecs like Dirac.[12]

Moonlight uses Cairo for rendering.[13]

[edit] Desktop support

Moonlight is also usable outside of the browser as a Gtk+ widget. A number of Desklets were written using this new technology during the Novell Hack-week.[14]

[edit] Microsoft support

Since shortly after the first demo at MIX 07 in Paris, Microsoft began cooperating with Novell to help the building of Moonlight.[15] Support includes exclusive access given to Novell for the following Silverlight artifacts:[16]

  • Microsoft's Test suites for Silverlight,
  • Silverlight specification details, beyond those available on the web,
  • Binary codecs for Windows Media video and audio, only licensed for use with Moonlight when running in a web browser. Other potential decoders include GStreamer and FFmpeg (used during the development stage) but Novell will not provide prepackaged versions of Moonlight with those libraries, because those decoders have not been granted licensing for using patented codec technologies.

Microsoft released a restrictive public covenant not to sue anyone for infringing patent claims that makes use of Moonlight implementations obtained by Novell or subsidiaries, which covers only the use of Moonlight as a plugin in a browser, only implementations that are not GPL3 licensed, and only if Moonlight has been obtained though Novell.[17]

[edit] Codecs integration

Although Moonlight is free software, the final version will use binary-only audio and video codecs provided by Microsoft which will be licensed for use with Moonlight only when used as a browser plugin (see above). The Windows media pack is not distributed together with the Moonlight plugin but the first time when media content in Silverlight is detected the user will be prompted to download the pack containing the codecs used in Silverlight directly from Microsoft.

Self built versions can still use the FFmpeg library and there is discussion about adding GStreamer support as an alternative to using Microsoft's binary codecs for those who wish to use GStreamer instead and also for use when used outside of a browser.

Mono architect Miguel de Icaza blogged that the Mono team prototyped Moonlight multimedia support using the LGPL-licensed FFmpeg engine but that they were unable to redistribute packaged versions that used that library due to FFmpeg codec licensing issues inside of the United States.[16][18]

[edit] Controversy

Although distributed under free and open source licenses, Moonlight was feared to be unsafe for downstream recipients to redistribute.[19] This is a potential legal problem for Linux distributions wishing to distribute Moonlight. (For example, see the discussion on debian-devel.) Microsoft makes it clear that anyone who distributes Moonlight is not protected by their Covenant to Downstream Recipients of Moonlight. (See their definition of "Downstream Recipient".)

At the PDC conference on October 13, 2008, Microsoft placed Silverlight under the OSP [20] which states "The Silverlight XAML vocabulary specification, released under the Microsoft Open Specification Promise, will better enable third-party ISVs to create products that can read and write XAML for Silverlight." Since Moonlight is essentially a XAML reader, this news suggests that Moonlight may be safe to redistribute (sans Microsoft's binary codecs)[citation needed].

[edit] Adoption

Moonlight is included in Super OS[21].

[edit] References

  1. ^ Moonlight 1.0.1
  2. ^ "Moonlight". Mono Team. http://www.mono-project.com/Moonlight. Retrieved on 2007-09-01. 
  3. ^ Dana Gardner. "the FASTforward blog: Expect a June demo of Silverlight on Linux, sans browser". http://fastforwardblog.com/2007/06/01/expect-a-june-demo-of-silverlight-on-linux-sans-browser/. Retrieved on 2007-06-06. 
  4. ^ "Implementing Silverlight in 21 Days". Miguel de Icaza. http://tirania.org/blog/archive/2007/Jun-21.html. Retrieved on 2007-06-22. 
  5. ^ "Implementing Silverlight in 21 Days". Jeffrey Stedfast. http://jeffreystedfast.blogspot.com/2007/06/implementing-silverlight-in-21-days.html. Retrieved on 2007-06-21. 
  6. ^ "moonlight". Chris Toshok. http://squeedlyspooch.com/blog/2007/06/21/moonlight/. Retrieved on 2007-06-21. 
  7. ^ "Mono Silverlight implementation emerges after epic hackathon". Ars Technica. http://arstechnica.com/news.ars/post/20070622-mono-silverlight-implementation-emerges-after-epic-hackathon.html. Retrieved on 2007-06-22. 
  8. ^ "Moonlight: Getting started". Mono Team. http://www.mono-project.com/Moonlight#Getting_Started. Retrieved on 2007-09-02. 
  9. ^ "Moonlight". http://www.mono-project.com/Moonlight#Moonlight_IDE. 
  10. ^ "Moonlight Supported Platforms". mono-project.com. http://mono-project.com/MoonlightSupportedPlatforms. Retrieved on 2009-05-17. 
  11. ^ "Novel Moonlight 1.0 / 2.0 Preview 1". Softpedia. http://linux.softpedia.com/get/Internet/Firefox-Extensions/Novel-Moonlight-37840.shtml. Retrieved on 2009-05-17. "These are test installers and are not complete or bug free. They are snapshots from our development tree and might not work. Firefox 3 support is known to be buggy" 
  12. ^ "First Moonlight 2.0 Preview is Out". Miguel de Icaza. http://tirania.org/blog/archive/2009/May-04.html. Retrieved on 2009-05-04. 
  13. ^ Rendering
  14. ^ "Moonlight Desklets demo on YouTube". Mono Team. http://www.youtube.com/watch?v=IbMyPG4IKo8. Retrieved on 2007-06-25. 
  15. ^ Foley, Mary Jo (2007-09-25). "Microsoft officially ‘extends support’ for Novell’s Silverlight Linux port". zdnet.com. http://blogs.zdnet.com/microsoft/?p=695. Retrieved on 2007-10-13. 
  16. ^ a b De Icaza, Miguel (2007-09-05). "Microsoft/Novell Collaboration on Silverlight.". http://tirania.org/blog/archive/2007/Sep-05.html. Retrieved on 2007-10-13. 
  17. ^ "Covenant to Downstream Recipients of Moonlight - Microsoft & Novell Interoperability Collaboration". Microsoft. 2007-09-28. http://www.microsoft.com/interop/msnovellcollab/moonlight.mspx. Retrieved on 2008-03-08. "“Downstream Recipient” means an entity or individual that uses for its intended purpose a Moonlight Implementation obtained directly from Novell or through an Intermediate Recipient... Microsoft reserves the right to update (including discontinue) the foregoing covenant... “Moonlight Implementation” means only those specific portions of Moonlight 1.0 or Moonlight 1.1 that run only as a plug-in to a browser on a Personal Computer and are not licensed under GPLv3 or a Similar License." 
  18. ^ Ramji, Sam (2007-09-05). "The Novell-Microsoft Wheeler Dealers Speak". http://port25.technet.com/archive/2007/09/05/silverlight-on-linux.aspx. Retrieved on 2007-10-13. "After a great deal of work between the Moonlight and .NET teams, we’re ready to formally announce that we (Microsoft and Novell) will be bringing Silverlight to Linux (Sam Ramji is Director of Microsoft’s Open Source Software Lab)" 
  19. ^ "Shining Some Light on Microsoft's Moonlight Covenant". groklaw.net. 2008-05-28. http://www.groklaw.net/article.php?story=20080528133529454. Retrieved on 2008-10-10. 
  20. ^ "Microsoft Releases Silverlight 2, Already Reaching One in Four Consumers Worldwide". Microsoft. 2008-10-13. http://www.microsoft.com/presspass/press/2008/oct08/10-13Silverlight2PR.mspx. Retrieved on 2008-10-13. 
  21. ^ Super OS

[edit] External links

Personal tools