Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBert Freudenberg <bert@freudenbergs.de>2009-03-11 13:40:10 (GMT)
committer Bert Freudenberg <bert@freudenbergs.de>2009-03-11 13:40:10 (GMT)
commit7780f9d4e9cbd1a392cba7f81e6da4d7ece650b0 (patch)
tree9ddecda2c0c47c226afd312af94ffacbf8037a08
Initial commitHEADv1master
-rw-r--r--COPYING19
-rw-r--r--FreeCell.st55
-rw-r--r--MANIFEST6
-rw-r--r--NEWS2
-rw-r--r--activity/FreeCell-icon.svg37
-rw-r--r--activity/activity.info8
-rwxr-xr-xbin/FreeCell.sh54
7 files changed, 181 insertions, 0 deletions
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..79105cd
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,19 @@
+Copyright (c) 2009 Bert Freudenberg
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/FreeCell.st b/FreeCell.st
new file mode 100644
index 0000000..fff7aad
--- /dev/null
+++ b/FreeCell.st
@@ -0,0 +1,55 @@
+" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "
+Copyright (c) 2009 Bert Freudenberg
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the 'Software'), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+" " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " " "
+!
+
+!SugarLauncher methods!
+quit
+ """override to not save Etoys project on stopping"""
+ self leaveSharedActivity.
+ Smalltalk quitPrimitive
+!
+invite: aBuddy
+ """override to not enable sharing"""
+ self inform: 'Invitation ignored: sharing is not supported'.
+! !
+
+!FreeCell methods!
+quit
+ """the game's quit button calls the regular Sugar quit sequence"""
+ SugarLauncher current quit
+! !
+| freecell |
+
+"""Do not show Sugar tool bar. Ctrl-Enter toggles it"""
+Project current flapsSuppressed: true.
+
+"""Black makes the game's colors stand out better"""
+World color: Color black.
+
+"""Open and keep centered"""
+freecell := FreeCell new openInWorld.
+freecell setToAdhereToEdge: #center.
+
+"""zoom to screen extent"""
+OLPCVirtualScreen virtualScreenExtent: freecell extent.
+OLPCVirtualScreen install
+
diff --git a/MANIFEST b/MANIFEST
new file mode 100644
index 0000000..814a231
--- /dev/null
+++ b/MANIFEST
@@ -0,0 +1,6 @@
+NEWS
+COPYING
+FreeCell.st
+bin/FreeCell.sh
+activity/activity.info
+activity/FreeCell-icon.svg
diff --git a/NEWS b/NEWS
new file mode 100644
index 0000000..4efb6f8
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,2 @@
+1
+* initial version
diff --git a/activity/FreeCell-icon.svg b/activity/FreeCell-icon.svg
new file mode 100644
index 0000000..e2d4cf9
--- /dev/null
+++ b/activity/FreeCell-icon.svg
@@ -0,0 +1,37 @@
+<?xml version="1.0" ?><!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd' [
+ <!ENTITY stroke_color "#010101">
+ <!ENTITY fill_color "#FFFFFF">
+]><svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ width="55"
+ height="55" >
+ <g
+ style="fill:&fill_color;;stroke:&stroke_color;">
+ <rect
+ width="45"
+ height="45"
+ x="5"
+ y="5"
+ ry="7.5"
+ style="fill:&fill_color;;stroke:&stroke_color;;stroke-width:3" />
+ </g>
+ <path
+ transform="scale(0.9948856,1.0051407)"
+ style="font-size:12.47822666px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:&stroke_color;;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Century Schoolbook L;-inkscape-font-specification:Century Schoolbook L Bold"
+ d="M 14.326602,12.700911 C 14.326602,13.249953 14.326602,13.374736 14.301645,13.674213 C 14.164385,15.458597 13.615342,16.332075 12.617085,16.332075 C 12.342564,16.332075 12.192825,16.232249 12.192825,16.082511 C 12.192825,16.007641 12.217782,15.932772 12.267695,15.857902 C 12.492302,15.496034 12.517259,15.421164 12.517259,15.146644 C 12.517259,14.547689 12.092999,14.135907 11.469088,14.135907 C 10.782786,14.135907 10.283657,14.659993 10.283657,15.38373 C 10.283657,16.357031 11.194568,16.980943 12.604607,16.980943 C 13.889863,16.980943 14.925557,16.456856 15.574425,15.471077 C 16.198335,14.54769 16.52277,13.349778 16.52277,11.989652 C 16.52277,10.854135 16.273205,9.9931352 15.74912,9.281877 C 15.112731,8.4333585 14.201819,7.9716632 13.153649,7.9716632 C 11.344308,7.9716632 10.034092,9.2319659 10.034092,10.966438 C 10.034092,12.438867 11.082264,13.524474 12.504781,13.524474 C 13.27843,13.524474 13.802517,13.287387 14.326602,12.700911 M 13.253474,8.620531 C 13.577908,8.620531 13.852429,8.820183 14.002168,9.1820512 C 14.164385,9.5439194 14.276689,10.217745 14.276689,10.791742 C 14.276689,11.889825 13.877385,12.588607 13.240996,12.588607 C 12.891606,12.588607 12.554694,12.363999 12.404955,12.052043 C 12.267695,11.752566 12.192825,11.303349 12.192825,10.679438 C 12.192825,9.3193131 12.554694,8.620531 13.253474,8.620531 M 26.069344,7.7156646 C 26.938589,7.7156737 27.578342,8.1767015 27.988603,9.0987493 C 28.0414,9.3099768 28.073896,9.5293204 28.086089,9.7567808 C 28.086081,10.232032 27.842366,10.794608 27.354943,11.44451 L 26.98937,11.810083 L 27.007649,11.810083 C 27.308224,11.696354 27.629116,11.639487 27.970324,11.639482 L 28.086089,11.639482 C 29.052818,11.639487 29.731158,12.049741 30.121112,12.870245 C 30.214527,13.138335 30.261239,13.394236 30.261249,13.637948 C 30.261239,14.470644 29.836768,15.098211 28.987836,15.520649 C 28.825351,15.569393 28.599914,15.605951 28.311526,15.630321 C 27.328534,15.630322 26.631914,15.073839 26.221666,13.960871 L 26.203388,13.960871 L 26.203388,14.015707 C 26.203382,15.408948 26.369921,16.326941 26.703004,16.76969 L 26.703004,16.806248 L 25.435684,16.806248 L 25.399127,16.76969 C 25.744385,16.249765 25.917017,15.313493 25.917022,13.960871 L 25.917022,13.942592 L 25.898744,13.942592 C 25.492546,15.067747 24.791865,15.630322 23.796699,15.630321 C 23.020869,15.630322 22.425798,15.222099 22.011484,14.405651 C 21.909934,14.129443 21.85916,13.873542 21.859161,13.637948 C 21.85916,12.691524 22.358776,12.049741 23.358011,11.712597 C 23.626095,11.663859 23.863717,11.639487 24.070878,11.639482 L 24.125714,11.639482 C 24.475036,11.639487 24.808113,11.696354 25.124947,11.810083 L 25.143226,11.810083 L 25.143226,11.791804 C 24.80202,11.503413 24.572522,11.219079 24.45473,10.9388 C 24.211011,10.491995 24.089153,10.104082 24.089157,9.7750594 L 24.089157,9.6897591 C 24.089153,8.8733205 24.52581,8.2538779 25.399127,7.8314294 C 25.687518,7.7542619 25.910924,7.7156737 26.069344,7.7156646 M 41.594013,7.7156646 C 42.463258,7.7156737 43.10301,8.1767015 43.513272,9.0987493 C 43.566069,9.3099768 43.598564,9.5293204 43.610758,9.7567808 C 43.61075,10.232032 43.367035,10.794608 42.879612,11.44451 L 42.514039,11.810083 L 42.532317,11.810083 C 42.832893,11.696354 43.153784,11.639487 43.494993,11.639482 L 43.610758,11.639482 C 44.577487,11.639487 45.255827,12.049741 45.645781,12.870245 C 45.739195,13.138335 45.785908,13.394236 45.785917,13.637948 C 45.785908,14.470644 45.361437,15.098211 44.512505,15.520649 C 44.350019,15.569393 44.124583,15.605951 43.836194,15.630321 C 42.853202,15.630322 42.156583,15.073839 41.746335,13.960871 L 41.728057,13.960871 L 41.728057,14.015707 C 41.728051,15.408948 41.894589,16.326941 42.227673,16.76969 L 42.227673,16.806248 L 40.960353,16.806248 L 40.923796,16.76969 C 41.269054,16.249765 41.441686,15.313493 41.441691,13.960871 L 41.441691,13.942592 L 41.423412,13.942592 C 41.017215,15.067747 40.316534,15.630322 39.321367,15.630321 C 38.545537,15.630322 37.950466,15.222099 37.536152,14.405651 C 37.434603,14.129443 37.383829,13.873542 37.38383,13.637948 C 37.383829,12.691524 37.883445,12.049741 38.88268,11.712597 C 39.150763,11.663859 39.388386,11.639487 39.595547,11.639482 L 39.650383,11.639482 C 39.999704,11.639487 40.332782,11.696354 40.649616,11.810083 L 40.667895,11.810083 L 40.667895,11.791804 C 40.326689,11.503413 40.09719,11.219079 39.979399,10.9388 C 39.73568,10.491995 39.613822,10.104082 39.613826,9.7750594 L 39.613826,9.6897591 C 39.613822,8.8733205 40.050478,8.2538779 40.923796,7.8314294 C 41.212187,7.7542619 41.435593,7.7156737 41.594013,7.7156646" />
+ <path
+ transform="scale(0.9948856,1.0051407)"
+ style="font-size:12.47822666px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:&fill_color;;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Century Schoolbook L;-inkscape-font-specification:Century Schoolbook L Bold"
+ d="M 14.54718,25.791025 C 14.89657,25.653765 15.083744,25.566417 15.258439,25.441635 C 15.745089,25.104723 16.01961,24.593115 16.01961,24.019117 C 16.01961,22.871122 14.921525,22.084992 13.311835,22.084992 C 11.377712,22.084992 10.129887,23.133165 10.129887,24.742854 C 10.129887,25.728633 10.591583,26.452372 11.577362,26.976457 C 11.190537,27.101239 11.02832,27.151152 10.81619,27.263456 C 10.192279,27.58789 9.8553665,28.161889 9.8553665,28.885626 C 9.8553665,30.233273 11.065756,31.094272 12.962445,31.094272 C 14.971437,31.094272 16.331566,29.946273 16.331566,28.236758 C 16.331566,27.063806 15.757566,26.277676 14.54718,25.791025 M 13.91079,25.47907 L 13.885834,25.491548 C 13.873355,25.516504 13.873355,25.516505 13.848399,25.528983 C 13.336792,25.404201 12.937488,25.291896 12.700402,25.204549 C 12.138883,24.992419 11.752057,24.480811 11.752057,23.93177 C 11.752057,23.245468 12.326056,22.73386 13.099705,22.73386 C 13.935746,22.73386 14.459832,23.282903 14.459832,24.156378 C 14.459832,24.667985 14.26018,25.167114 13.935747,25.454113 L 13.91079,25.47907 M 12.251186,27.313369 C 12.775271,27.463108 13.386705,27.637803 13.69866,27.737629 C 14.484788,28.01215 14.784266,28.349063 14.784266,28.985452 C 14.784266,29.83397 14.073006,30.445404 13.099705,30.445404 C 12.08897,30.445404 11.477536,29.846448 11.477536,28.848191 C 11.477536,28.174367 11.66471,27.800019 12.251186,27.313369 M 23.629574,21.828994 C 24.45414,21.829003 25.102016,22.306278 25.573204,23.260821 C 25.743799,23.638587 25.833161,23.926984 25.841291,24.126011 L 25.85957,24.126011 C 26.001731,23.467987 26.259663,22.921659 26.633366,22.487025 C 27.072047,22.048346 27.56557,21.829003 28.113937,21.828994 C 28.96287,21.829003 29.643241,22.283938 30.155053,23.1938 C 30.285024,23.530947 30.350015,23.847776 30.350025,24.14429 C 30.350015,25.159776 29.927575,26.128544 29.082705,27.050595 L 25.85957,30.919577 L 25.823012,30.919577 L 22.398811,26.721579 C 21.716407,25.88889 21.375206,25.029795 21.375207,24.14429 C 21.375206,23.287231 21.779367,22.60686 22.587691,22.103173 C 22.92889,21.920396 23.276184,21.829003 23.629574,21.828994 M 39.154243,21.828994 C 39.978809,21.829003 40.626685,22.306278 41.097873,23.260821 C 41.268468,23.638587 41.35783,23.926984 41.36596,24.126011 L 41.384238,24.126011 C 41.5264,23.467987 41.784332,22.921659 42.158035,22.487025 C 42.596715,22.048346 43.090238,21.829003 43.638605,21.828994 C 44.487539,21.829003 45.16791,22.283938 45.679722,23.1938 C 45.809693,23.530947 45.874684,23.847776 45.874694,24.14429 C 45.874684,25.159776 45.452244,26.128544 44.607374,27.050595 L 41.384238,30.919577 L 41.347681,30.919577 L 37.92348,26.721579 C 37.241076,25.88889 36.899874,25.029795 36.899876,24.14429 C 36.899874,23.287231 37.304035,22.60686 38.112359,22.103173 C 38.453558,21.920396 38.800852,21.829003 39.154243,21.828994" />
+ <path
+ transform="scale(0.9948856,1.0051407)"
+ style="font-size:12.47822666px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:&stroke_color;;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Century Schoolbook L;-inkscape-font-specification:Century Schoolbook L Bold"
+ d="M 16.763291,36.863288 C 15.977163,36.98807 15.203511,37.037983 13.918255,37.037983 C 12.770259,37.037983 12.171302,37.000548 10.935959,36.863288 L 10.511699,40.594277 L 11.198002,40.669147 L 11.322784,40.107627 C 11.55987,39.009544 11.647218,38.847326 12.083956,38.847326 C 12.146347,38.847326 12.221216,38.847326 12.308564,38.859804 C 12.720345,38.872282 13.356735,38.897239 13.731082,38.897239 C 13.780994,38.897239 14.330038,38.88476 15.378208,38.859804 L 14.529688,40.120105 C 13.531431,41.667403 13.007344,42.503446 12.944953,42.628228 C 12.483259,43.52666 12.283607,44.138094 12.283607,44.649701 C 12.283607,45.385916 12.732824,45.872567 13.431604,45.872567 C 14.217732,45.872567 14.666949,45.385916 14.666949,44.487484 C 14.666949,42.191493 14.904037,41.342967 16.763291,37.387373 L 16.763291,36.863288 M 26.30348,36.607289 C 26.685295,37.285639 27.314892,38.185354 28.192274,39.306437 C 29.154941,40.435657 29.648464,41.116028 29.672845,41.347553 C 29.831251,41.69282 29.910458,42.027929 29.910467,42.352879 L 29.910467,42.596594 C 29.910458,43.274938 29.581443,43.80908 28.92342,44.199023 C 28.70813,44.288386 28.470508,44.333067 28.210553,44.333066 C 27.58501,44.333067 27.079301,43.884225 26.693424,42.986539 L 26.437523,42.986539 L 26.437523,43.059653 C 26.437518,44.209179 26.606087,45.088584 26.943233,45.697872 L 25.633263,45.697872 L 25.633263,45.661315 C 25.978521,45.047965 26.151152,44.162467 26.151158,43.004817 L 26.132879,42.986539 L 25.901349,42.986539 L 25.614984,43.522713 C 25.269716,44.06295 24.839153,44.333067 24.323293,44.333066 C 23.56371,44.333067 23.029568,43.908597 22.720864,43.059653 L 22.666028,42.614873 L 22.666028,42.3346 C 22.666026,41.591272 23.045815,40.807322 23.805397,39.982747 C 25.084899,38.414852 25.905406,37.295793 26.266923,36.625568 L 26.285201,36.607289 L 26.30348,36.607289 M 41.828149,36.607289 C 42.209963,37.285639 42.839561,38.185354 43.716943,39.306437 C 44.67961,40.435657 45.173133,41.116028 45.197513,41.347553 C 45.355919,41.69282 45.435127,42.027929 45.435136,42.352879 L 45.435136,42.596594 C 45.435127,43.274938 45.106111,43.80908 44.448089,44.199023 C 44.232799,44.288386 43.995177,44.333067 43.735221,44.333066 C 43.109678,44.333067 42.603969,43.884225 42.218093,42.986539 L 41.962192,42.986539 L 41.962192,43.059653 C 41.962186,44.209179 42.130756,45.088584 42.467901,45.697872 L 41.157931,45.697872 L 41.157931,45.661315 C 41.503189,45.047965 41.675821,44.162467 41.675826,43.004817 L 41.657548,42.986539 L 41.426018,42.986539 L 41.139653,43.522713 C 40.794385,44.06295 40.363821,44.333067 39.847961,44.333066 C 39.088379,44.333067 38.554236,43.908597 38.245533,43.059653 L 38.190697,42.614873 L 38.190697,42.3346 C 38.190695,41.591272 38.570484,40.807322 39.330066,39.982747 C 40.609567,38.414852 41.430075,37.295793 41.791591,36.625568 L 41.80987,36.607289 L 41.828149,36.607289" />
+ <path
+ style="fill:&stroke_color;;stroke-width:3"
+ d="M 13.516112,18.333924 C 9.6141278,18.333924 6.4536118,21.678925 6.4536118,25.833924 L 6.4223618,41.396424 C 6.5859818,37.711134 9.3953768,33.896425 13.297362,33.896424 L 41.453612,33.896424 C 45.355596,33.896424 48.744534,36.234959 48.672362,41.396424 L 48.703612,25.833924 C 48.703612,21.678924 45.574345,18.333924 41.672362,18.333924 L 13.516112,18.333924 z M 23.641112,22.115174 C 24.461461,22.115184 25.109834,22.593224 25.578612,23.552674 C 25.748335,23.932382 25.820524,24.227624 25.828612,24.427674 L 25.859862,24.427674 C 26.001296,23.766266 26.26932,23.208293 26.641112,22.771424 C 27.077549,22.330491 27.5643,22.115183 28.109862,22.115174 C 28.954453,22.115184 29.631918,22.575634 30.141112,23.490174 C 30.270419,23.829055 30.328602,24.160885 30.328612,24.458924 C 30.328602,25.479631 29.919161,26.438383 29.078612,27.365174 L 25.859862,31.271424 L 25.828612,31.271424 L 22.422362,27.052674 C 21.743448,26.215705 21.391111,25.348981 21.391112,24.458924 C 21.391111,23.59746 21.805672,22.9027 22.609862,22.396424 C 22.949316,22.212707 23.289529,22.115183 23.641112,22.115174 z M 39.078612,22.115174 C 39.898961,22.115184 40.547334,22.593224 41.016112,23.552674 C 41.185834,23.932382 41.289273,24.227624 41.297362,24.427674 C 41.438796,23.766266 41.70682,23.208293 42.078612,22.771424 C 42.515049,22.330491 43.0018,22.115183 43.547362,22.115174 C 44.391955,22.115184 45.069418,22.575634 45.578612,23.490174 C 45.707919,23.829055 45.766102,24.160885 45.766112,24.458924 C 45.766102,25.479631 45.356661,26.438383 44.516112,27.365174 L 41.297362,31.271424 L 41.266112,31.271424 L 37.859862,27.052674 C 37.180948,26.215705 36.82861,25.348981 36.828612,24.458924 C 36.82861,23.59746 37.243172,22.9027 38.047362,22.396424 C 38.386816,22.212707 38.727029,22.115183 39.078612,22.115174 z M 13.391112,22.396424 C 14.99257,22.396424 16.078612,23.180028 16.078612,24.333924 C 16.078612,24.910873 15.781523,25.401531 15.297362,25.740174 C 15.123561,25.865598 14.957465,25.977209 14.609862,26.115174 C 15.814058,26.604327 16.391112,27.373693 16.391112,28.552674 C 16.391112,30.270977 15.014829,31.427675 13.016112,31.427674 C 11.129123,31.427674 9.9223618,30.563498 9.9223618,29.208924 C 9.9223618,28.481466 10.270392,27.910026 10.891112,27.583924 C 11.102157,27.471043 11.256266,27.428097 11.641112,27.302674 C 10.660375,26.775895 10.203612,26.043519 10.203612,25.052674 C 10.203612,23.43471 11.466881,22.396424 13.391112,22.396424 z M 13.172362,23.021424 C 12.402669,23.021424 11.828612,23.550343 11.828612,24.240174 C 11.828612,24.792038 12.207465,25.308204 12.766112,25.521424 C 13.001985,25.60922 13.413371,25.708501 13.922362,25.833924 C 13.94719,25.821382 13.941197,25.827758 13.953612,25.802674 L 13.984862,25.802674 L 13.984862,25.771424 C 14.307636,25.48295 14.516112,24.97316 14.516112,24.458924 C 14.516112,23.580959 14.004126,23.021425 13.172362,23.021424 z M 12.328612,27.646424 C 11.745136,28.135576 11.547362,28.500386 11.547362,29.177674 C 11.547362,30.181063 12.166796,30.771423 13.172362,30.771424 C 14.140685,30.771424 14.828612,30.155553 14.828612,29.302674 C 14.828612,28.663013 14.548219,28.328605 13.766112,28.052674 C 13.455752,27.952335 12.850017,27.796932 12.328612,27.646424 z" />
+</svg>
diff --git a/activity/activity.info b/activity/activity.info
new file mode 100644
index 0000000..4a1594d
--- /dev/null
+++ b/activity/activity.info
@@ -0,0 +1,8 @@
+[Activity]
+name = FreeCell
+activity_version = 1
+host_version = 1
+bundle_id = org.squeak.FreeCell
+icon = FreeCell-icon
+exec = FreeCell.sh
+show_launcher = yes
diff --git a/bin/FreeCell.sh b/bin/FreeCell.sh
new file mode 100755
index 0000000..5a68d81
--- /dev/null
+++ b/bin/FreeCell.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+# Author: Bert Freudenberg
+# Purpose: Run FreeCell.st in Etoys
+
+# arguments are unordered, have to loop
+args=""
+while [ -n "$2" ] ; do
+ case "$1" in
+ -b | --bundle-id) bundle_id="$2" ; args="$args BUNDLE_ID $2" ;;
+ -a | --activity-id) activity_id="$2" ; args="$args ACTIVITY_ID $2";;
+ -o | --object-id) object_id="$2" ; args="$args OBJECT_ID $2";;
+ -u | --uri) uri="$2" ; args="$args URI $2";;
+ *) echo unknown argument $1 $2 ;;
+ esac
+ shift;shift
+done
+
+# really need bundle id and activity id
+if [ -z "$bundle_id" -o -z "$activity_id" ] ; then
+ echo ERROR: bundle-id and activity-id arguments required
+ echo Aborting
+ exit 1
+fi
+
+# some debug output
+echo launching $bundle_id instance $activity_id
+[ -n "$object_id" ] && echo with journal obj $object_id
+[ -n "$uri" ] && echo loading uri $uri
+echo
+
+# sanitize
+[ -z "$SUGAR_PROFILE" ] && SUGAR_PROFILE=default
+[ -z "$SUGAR_ACTIVITY_ROOT" ] && SUGAR_ACTIVITY_ROOT="$HOME/.sugar/$SUGAR_PROFILE/etoys"
+
+# rainbow-enforced locations
+export SQUEAK_SECUREDIR="$SUGAR_ACTIVITY_ROOT/data/private"
+export SQUEAK_USERDIR="$SUGAR_ACTIVITY_ROOT/data/MyEtoys"
+
+# make group-writable for rainbow
+umask 0002
+[ ! -d "$SQUEAK_SECUREDIR" ] && mkdir -p "$SQUEAK_SECUREDIR" && chmod o-rwx "$SQUEAK_SECUREDIR"
+[ ! -d "$SQUEAK_USERDIR" ] && mkdir -p "$SQUEAK_USERDIR"
+
+# do not crash on dbus errors
+export DBUS_FATAL_WARNINGS=0
+
+# now run Squeak VM with Etoys image
+exec etoys \
+ -sugarBundleId $bundle_id \
+ -sugarActivityId $activity_id \
+ --document "FreeCell.st" \
+ BUNDLE_PATH "$SUGAR_BUNDLE_PATH" \
+ MO_PATH "$SUGAR_BUNDLE_PATH/locale" \
+ $args