On 17.01.2011, at 03:51, W. Michael Petullo wrote:
I am interested in getting a Scratch package accepted into the Fedora
project. However, I have found a previous objection that states
Scratch contains an MP3 implementation. Does Scratch include an MP3
implementation? If so, would it be possible to make this into an optional
component? As an alternative, perhaps this could be replaced with a
GStreamer-based audio system so that the supported formats could be
chosen at runtime.
The trouble with MP3 is that it is patent encumbered and therefore
objectionable to the Fedora Project which is concerned with free software.
If making MP3 support optional to Scratch is not in your plans,
then perhaps I could build a package for RPM Fusion. RPM Fusion is a
Fedora-compatible package repository that ships packages that Fedora
proper cannot.
Where can I find documentation on how to compile Scratch completely
from source? As far as I can tell, scratch-1.4.0.1.tar.gz comes with
much of Scratch already compiled (including Scratch.image). I found
ScratchSource1.4.zip, but I am not sure how to build Scratch from it. RPM
Fusion will prefer that everything shipped may be built from source code.
Thank you,
--
Mike
Great! :)
Scratch is implemented in Squeak and does not need to be "compiled." The only binary needed is the Squeak Virtual Machine. Scratch itself is "no arch" just like Etoys (also written in Squeak). The Scratch.image file is equivalent to what other systems call "source code" in that it is the "preferred form of modification". You need a bit of background in Smalltalk (Squeak is an open-source Smalltalk implementation) to see that - basically, instead of writing source code in files, a Smalltalk developer modifies objects directly in main memory. The memory is dumped to a file called "image" and "source code" is just a byproduct, not the primary artifact.
Anyhow, a properly packaged Scratch would use the Squeak VM already packaged for Fedora instead of providing its own copy. The packaging could be similar to Etoys.
So the technical issues are simple to solve. It would be advisable to package the official Scratch however, which includes all the artwork, ability to upload etc. You should not base this on the "Scratch Source" release since that is different. Also, only the official release may be called Scratch:
http://info.scratch.mit.edu/Source_Code
HTH,
- Bert -