[Pkg] Sake : Sake-Bob-kph.15.mcz
squeak-dev-noreply at lists.squeakfoundation.org
squeak-dev-noreply at lists.squeakfoundation.org
Tue Mar 3 14:12:18 UTC 2009
A new version of Sake-Bob was added to project Sake :
http://www.squeaksource.com/Sake/Sake-Bob-kph.15.mcz
==================== Summary ====================
Name: Sake-Bob-kph.15
Author: kph
Time: 3 March 2009, 2:12:11 pm
UUID: 4ab4c5d0-07fd-11de-bb3d-000a95edb42a
Ancestors: Sake-Bob-kph.14
.
=============== Diff against Sake-Bob-kph.14 ===============
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>plistBase (in category 'as yet unclassified') -----
+ plistBase
+
+ ^ Dictionary new
+ at: 'CFBundleName' put: name;
+ at: 'CFBundleShortVersionString' put: name;
+ at: 'CFBundleIconFile' put: self configIcns asFile fileName;
+ at: 'CFBundleExecutable' put: self configExecutable ;
+ yourself!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>configCopyright (in category 'as yet unclassified') -----
+ configCopyright
+
+ ^
+
+ 'Distribution based on Sophie
+
+ http://www.sophieproject.org/'!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>configIni (in category 'as yet unclassified') -----
+ configIni
+
+ ^ '[Global]
+ DeferUpdate=1
+ ShowConsole=0
+ DynamicConsole=0
+ ReduceCPUUsage=1
+ ReduceCPUInBackground=0
+ 3ButtonMouse=0
+ 1ButtonMouse=0
+ UseDirectSound=1
+ PriorityBoost=1
+ B3DXUsesOpenGL=0
+ CaseSensitiveFileMode=0
+ ImageFile="Contents\Resources\' , self imageName, '.image"'!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>expand:to:cachingIn: (in category 'as yet unclassified') -----
+ expand: aZipFile to: destDir cachingIn: cacheDir
+
+ "
+ (self obtainImage: 'ftp://ftp.squeak.org/3.10/Squeak3.10.2-*-basic.zip') run
+ "
+ | localZipFile |
+
+ aZipFile executive isRemote
+ ifTrue: [
+
+ localZipFile := cacheDir / aZipFile fileName.
+
+ localZipFile exists ifFalse: [
+ self log info downloading: aZipFile.
+ localZipFile parent mkpath add: aZipFile ].
+ ]
+ ifFalse: [ localZipFile := aZipFile ].
+
+ self log info bob expanding: localZipFile to: destDir.
+
+ self exec: 'unzip ', localZipFile, ' -d ', destDir full mkpath.
+
+ ^ localZipFile
+
+ "
+ localZipFile zip readArchive extractAllTo: destDir mkpath asFileDirectory.
+ "
+ !
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>plistMergeIntoFile: (in category 'as yet unclassified') -----
+ plistMergeIntoFile: originalPlistFile
+
+ | templatePlist file |
+
+ file := originalPlistFile asFile xml.
+ templatePlist := file contents.
+
+ ((templatePlist elementAt: 'plist') elementAt: 'dict') elements pairsDo: [ :keyElement :valueElement |
+
+ self plist at: (keyElement contentString) ifPresent:[ :newValue | (valueElement contents at: 1) string: newValue ]
+ ].
+
+ file delete contents: templatePlist.!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>setName: (in category 'as yet unclassified') -----
+ setName: aName
+
+ name := aName!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>configIcns (in category 'as yet unclassified') -----
+ configIcns
+
+ ^ (info oneClickIcns ifNil: [ '/bob/misc/SqueakImage.icns' ]) !
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>configSources (in category 'as yet unclassified') -----
+ configSources
+
+ ^ '/bob/vm/SqueakV39.sources'
+
+ " '/bob/vm/SqueakV3.sources' "
+ !
Item was changed:
+ BobUtilities subclass: #BobBuild
+ instanceVariableNames: ''
- SakeTask subclass: #BobBuild
- instanceVariableNames: 'script zipFile latest'
classVariableNames: ''
poolDictionaries: ''
category: 'Sake-Bob'!
!BobBuild commentStamp: 'kph 2/18/2009 05:49' prior: 0!
[ self taskBuildAll run ] fork.!
Item was changed:
----- Method: BobBuildImage>>actionPublishOneClick (in category 'as yet unclassified') -----
actionPublishOneClick
"if our source zip has an info file accompanying read it"
| sourceInfo |
sourceInfo := Compiler evaluate: (zipFile copy ext: 'info') contents.
info timeStart: sourceInfo timeStart.
info timeDuration: sourceInfo timeDuration.
info timeComplete: sourceInfo timeComplete.
info timeOneClickGenerated: DateAndTime now.
+ self expand: zipFile to: (self workingDirOneClickIn mkpath clean).
- self expandZipFileTo: (self workingDirOneClickIn mkpath clean).
self startImage: (self workingDirOneClickIn all fileMatching: '*.image').
self packageOneClick.
!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>name (in category 'as yet unclassified') -----
+ name
+ ^ name!
Item was changed:
----- Method: BobBuildImage>>isUploadRequested (in category 'as yet unclassified') -----
isUploadRequested
+ info upload isNil ifTrue: [ ^ false ].
+
+ info uploadLatest = true ifTrue: [ ^ true ].
+
+ (self class configUploadReleaseOnly and: [ self info linkRelease ~= true ]) ifTrue: [ ^ false ].
+
+ ^ true!
- ^ (info upload isNil or: [ self class configUploadReleaseOnly and: [ self info linkRelease ~= true ]]) not!
Item was added:
+ ----- Method: BobBuildParallelReleases class>>taskBuild (in category 'as yet unclassified') -----
+ taskBuild
+
+ ^ (self selectorsPrefixed: #build) collect: [ :sel | self taskBuild: sel ]
+ !
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>imageName (in category 'as yet unclassified') -----
+ imageName
+
+ ^ self bundleName asLowercase!
Item was added:
+ ----- Method: BobUtilities>>expand:to: (in category 'as yet unclassified') -----
+ expand: aZipFile to: destDir
+
+ "
+ (self obtainImage: 'ftp://ftp.squeak.org/3.10/Squeak3.10.2-*-basic.zip') run
+ "
+ | localZipFile |
+
+ aZipFile executive isRemote
+ ifTrue: [
+
+ localZipFile := self class configImagesDir / aZipFile fileName.
+
+ "if it is not in the local downloaded images cache, look in our output tree"
+ localZipFile exists ifFalse: [
+ (self outputDir parent all filesMatching: aZipFile fileName) firstOrNil
+ ifNotNilDo: [ :found |
+ self log info found: found.
+ localZipFile := found
+ ].
+ ].
+
+ localZipFile exists ifFalse: [
+ self log info downloading: zipFile.
+ localZipFile parent mkpath add: zipFile ].
+ ]
+ ifFalse: [ localZipFile := aZipFile ].
+
+ self log info bob expanding: localZipFile to: destDir.
+
+ self exec: 'unzip ', localZipFile, ' -d ', destDir full mkpath.
+
+ ^ localZipFile
+
+ "
+ localZipFile zip readArchive extractAllTo: destDir mkpath asFileDirectory.
+ "
+ !
Item was added:
+ ----- Method: BobBuildImage class>>taskBuild:extensionOneClick: (in category 'as yet unclassified') -----
+ taskBuild: metaSelector extensionOneClick: aTask
+ self halt.
+ ^ (BobOneClickPackageGenerator taskMakeOneClickfor: aTask)
+ !
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>configSh (in category 'as yet unclassified') -----
+ configSh
+
+ ^ '#!!/bin/sh
+ APP=`dirname $0`
+ EXE="$APP/Contents/Linux686"
+ RES="$APP/Contents/Resources"
+
+ exec "$EXE/', self executableName ,'" -plugins "$EXE" \
+ -encoding latin1 \
+ -vm-display-X11 -swapbtn \
+ "$RES/' , self imageName , '.image"'!
Item was added:
+ ----- Method: BobOneClickPackageGenerator class>>for: (in category 'as yet unclassified') -----
+ for: aBuildTask
+
+ self new
+ setInfo: aBuildTask info;
+ dependsOn: { aBuildTask }!
Item was changed:
SystemOrganization addCategory: #'Sake-Bob'!
+ SystemOrganization addCategory: #'Sake-Bob-OneClickPackage'!
Item was added:
+ ----- Method: BobOneClickPackageGenerator class>>named: (in category 'as yet unclassified') -----
+ named: aName
+
+ ^ self new setName: aName; initialize!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>configTemplate (in category 'as yet unclassified') -----
+ configTemplate
+
+ ^ 'file:///bob/images/Seaside-2.8.3.app.zip' asFile!
Item was changed:
----- Method: BobBuildImage>>actionBuild (in category 'as yet unclassified') -----
actionBuild
self stepAction.
+ self expand: zipFile to: (self workingDir mkpath clean).
- self expandZipFileTo: (self workingDir mkpath clean).
self startImage: (self workingDir all fileMatching: '*.image').
self linkPackageCache.
self theScript scriptFileWrite.
+ self launchVm: self class configVm image: self startImage with: self scriptFile.
- self launchVm: self configVm image: self startImage with: self scriptFile.
self isSuccessfulBuild ifFalse: [ ^ self ].
info timeComplete: DateAndTime now.
info timeDuration: ((info timeComplete - info timeStart) roundTo: 1 second).
self publish.
self package.
self tidy.
self publishLinks.
self uploadImmediate.
!
Item was changed:
----- Method: BobBuildImage>>scriptSaveImageAndQuit: (in category 'as yet unclassified') -----
scriptSaveImageAndQuit: requestQuit
| s |
s := String new writeStream.
s << ' | image resuming |' ; cr.
s << '"self halt."' ; cr.
s << 'WorldState addDeferredUIMessage: [ (Delay forSeconds: 1) wait. '; cr.
s << 'image := SmalltalkImage current.'; cr.
s << 'resuming := image saveAs: '''<< self stampedName << '.image''.'; cr.
requestQuit ifTrue: [
s << 'resuming ifFalse: [ image snapshot: false andQuit: true ].' ; cr
].
+ s << '].'.
- s << '].'
self nextScriptPut: s contents!
Item was added:
+ ----- Method: BobOneClickPackageGenerator class>>taskMakeOneClickfor:build: (in category 'as yet unclassified') -----
+ taskMakeOneClickfor: aBuildTask build: aBuildSelector
+
+ ^ self define: [ :task |
+
+ task setInfo: (aBuildTask new infoFor: aBuildSelector).
+
+ task dependsOn: { aBuildTask }.
+
+ task if: [ task info oneClick = true ].
+
+ task action: [
+
+ task packageOneClick.
+
+ ].
+ ].
+
+ "
+ (BobBuildLPF taskBuild: #build310) withExtensions
+ (BobBuildImage taskBuildAll what)
+ "!
Item was changed:
----- Method: BobBuildImage>>packageOneClick (in category 'as yet unclassified') -----
packageOneClick
| appZip appDir resources plist bundleName imageName template filename |
info oneClick = true ifFalse: [ ^ self ].
template := info oneClickTemplate ifNil: [ self configOneClickTemplate ].
"use the match string given to find the template"
appZip := self resolveFile: template ifNone: [ :msg | self error: msg ].
"download to images cache, and decompress to the output area"
self expand: appZip to: self workingDirOneClickOut mkpath clean.
"the result should have a .app dir, find it"
appDir := self workingDirOneClickOut directories detect: [ :ea | ea asString endsWith: '.app' ] ifNone: [ self error: '*.app not found' ].
"get our plist contribution"
+ plist := self configPlist.
- plist := self configOneClickPlist.
bundleName := plist at: 'CFBundleName'.
imageName := bundleName asLowercase.
plist at: 'SqueakImageName' put: (imageName, '.image').
"rename the .app dir to the desired name"
appDir beRenaming fileName: (bundleName , '.app').
"top level directory"
(appDir filesMatching: #('*.exe' '*.ini' '*.sh')) do: [ :ea | ea rename base: bundleName ].
(appDir / bundleName + '.ini' ) delete contents: ((self configOneClickIni: imageName) copyReplaceAll: String cr with: String crlf).
(appDir / bundleName + '.sh' ) delete contents: (self configOneClickSh: imageName).
(appDir / 'COPYRIGHT') delete contents: (info oneClickCopyrightStatement ifNil: [ self configOneClickCopyrightStatement ] ).
"Contents Directory"
appDir / 'Contents' / 'PkgInfo' contents: ((plist at: 'CFBundlePackageType') , (plist at: 'CFBundleSignature')).
self oneClickUpdatePlist: (appDir / 'Contents' / 'Info.plist') fromDictionary: plist.
"Resources Directory"
resources := (appDir / 'Contents' / 'Resources') all delete mkpath.
resources addTree: self imageDir entries.
(resources filesMatching: #('*.image' '*.changes')) do: [ :ea | ea rename base: imageName ].
resources add: self configOneClickIcns asFile.
resources add: (info oneClickSources ifNil: [ self configOneClickSources ]) asFile.
self halt.
filename := appDir fileName.
self packageDirectory: filename intoZip: (self stamp,'_', filename) from: appDir parent.
!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>configPlist (in category 'as yet unclassified') -----
+ configPlist
+ "we take the plist from the template and substitute these values
+ note: only string values are supported at this time"
+
+ ^ self plistBase
+ at: 'CFBundlePackageType' put: 'APPL';
+ at: 'CFBundleSignature' put: 'FAST';
+ at: 'CFBundleGetInfoString' put: 'http://www.squeak.org';
+ at: 'CFBundleIdentifier' put: 'org.squeak';
+ at: 'CFBundleVersion' put: '3.8.18b1U';
+ at: 'SqueakEncodingType' put: 'UTF-8';
+ yourself
+ !
Item was added:
+ SakeTask subclass: #BobOneClickPackageGenerator
+ instanceVariableNames: 'plist name'
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'Sake-Bob'!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>packageOneClick (in category 'as yet unclassified') -----
+ packageOneClick
+
+ | appZip appDir resources template filename |
+
+ template := info oneClickTemplate ifNil: [ self configTemplate ].
+
+ "use the match string given to find the template"
+ appZip := template asFile resolveMatchOne ifNil: [ self error: 'Template not found: ', template ].
+
+ "download to images cache, and decompress to the output area"
+ self expand: appZip to: self workingDirOneClickOut mkpath clean.
+
+ "the result should have a .app dir, find it"
+ appDir := self workingDirOneClickOut directories detect: [ :ea | ea asString endsWith: '.app' ] ifNone: [ self error: '*.app not found' ].
+
+ "rename the .app dir to the desired name"
+ appDir beRenaming fileName: (self bundleName , '.app').
+
+ "top level directory"
+ (appDir filesMatching: #('*.exe' '*.ini' '*.sh')) do: [ :ea | ea rename base: self bundleName ].
+ (appDir / self bundleName + '.ini' ) delete contents: ((self configOneClickIni: self imageName) copyReplaceAll: String cr with: String crlf).
+ (appDir / self bundleName + '.sh' ) delete contents: (self configOneClickSh: self imageName).
+ (appDir / 'COPYRIGHT') delete contents: (info oneClickCopyrightStatement ifNil: [ self configOneClickCopyrightStatement ] ).
+
+ "Contents Directory"
+ appDir / 'Contents' / 'PkgInfo' contents: ((plist at: 'CFBundlePackageType') , (plist at: 'CFBundleSignature')).
+ self oneClickUpdatePlist: (appDir / 'Contents' / 'Info.plist') fromDictionary: plist.
+
+ "Resources Directory"
+ resources := (appDir / 'Contents' / 'Resources') all delete mkpath.
+
+ resources addTree: self imageDir entries.
+ (resources filesMatching: #('*.image' '*.changes')) do: [ :ea | ea rename base: self imageName ].
+ resources add: self configOneClickIcns asFile.
+ resources add: (info oneClickSources ifNil: [ self configOneClickSources ]) asFile.
+
+ self halt.
+ filename := appDir fileName.
+ self packageDirectory: filename intoZip: (self stamp,'_', filename) from: appDir parent.
+
+ !
Item was changed:
----- Method: BobBuild class>>taskUpload: (in category 'as yet unclassified') -----
taskUpload: metaSelector
"the task of uploading is defined as a top level task, because it is more generic than image building, and may be applied to any result."
| newInfo lock ul dl yes |
^ self define: [ :task |
+ metaSelector = #build310 ifTrue: [ self halt ].
-
(task infoFor: metaSelector) ifNil: [ ^ self noop ].
task dependsOn: #().
newInfo := task info.
"obtain and use the latest meta-data from the most recent build activity"
task info: task infoFileReadLatest.
"some fields in the metadata we prefer new values over the older"
task info upload: newInfo upload.
task info download: newInfo download.
task info linkRelease: newInfo linkRelease.
task info comment: newInfo comment.
+ task info uploadLatest: newInfo uploadLatest.
task if: [
lock := ul := dl := nil.
yes := task name notNil
and: [ (ul := task isUploadRequested)
and: [ dl := task isUploadedFileAvailableForDownload.
dl ifTrue: [ task uploadDirLock delete ].
dl not and: [ (lock := task uploadDirLock exists) not ] ] ].
task name ifNotNil:[
self log info name: task name uploadRequested: ul done: dl inProgress: lock.
].
"if we decide that we shall upload, we lock the upload dir to inform others"
yes ifTrue: [ task uploadDirLock touch ].
yes.
].
task action: [
self log info UPLOADING: task publishDir.
task infoFilePublishAlongside: task publishDir.
task linkRelease.
+ task info oneClick = true ifTrue: [ task packageOneClick ].
- task oneClick = true ifTrue: [ task packageOneClick ].
task perform: ('uploadUsing', (task info upload upTo: $:) capitalized) asSymbol.
task isUploadedFileAvailableForDownload ifTrue: [ task uploadDirLock delete ].
]
]
!
Item was added:
+ SakeTask subclass: #BobUtilities
+ instanceVariableNames: 'script zipFile latest'
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'Sake-Bob'!
Item was changed:
----- Method: BobBuild>>infoFor: (in category 'as yet unclassified') -----
infoFor: selector
selector ifNil: [ ^ nil ].
self info name: self class label.
self info build: selector.
self info label: self class label.
self when: self class configWhen.
self info linkRelease: self class configLinkRelease.
self description ifNotEmpty: [ self info description: self description ].
info action: #actionBuild.
self perform: selector.
+ ^ info!
- !
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>bundleName (in category 'as yet unclassified') -----
+ bundleName
+
+ ^ self plist at: 'CFBundleName'.!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>plist (in category 'as yet unclassified') -----
+ plist
+
+ plist ifNil: [
+ plist := self configPlist.
+ self info keysAndValuesDo:
+ [ :k :v | k first isUppercase ifTrue: [ plist at: k put: v ] ].
+
+ plist at: 'SqueakImageName' put: (self imageName, '.image').
+ ].
+
+ ^ plist!
Item was added:
+ ----- Method: BobOneClickPackageGenerator>>expand:to: (in category 'as yet unclassified') -----
+ expand: aZipFile to: destDir
+
+ "
+ (self obtainImage: 'ftp://ftp.squeak.org/3.10/Squeak3.10.2-*-basic.zip') run
+ "
+ | localZipFile |
+
+ aZipFile executive isRemote
+ ifTrue: [
+
+ localZipFile := self class configTemplatesDir / aZipFile fileName.
+
+ localZipFile exists ifFalse: [
+ self log info downloading: aZipFile.
+ localZipFile parent mkpath add: aZipFile ].
+ ]
+ ifFalse: [ localZipFile := aZipFile ].
+
+ self log info bob expanding: localZipFile to: destDir.
+
+ self exec: 'unzip ', localZipFile, ' -d ', destDir full mkpath.
+
+ ^ localZipFile
+
+ "
+ localZipFile zip readArchive extractAllTo: destDir mkpath asFileDirectory.
+ "
+ !
Item was changed:
----- Method: BobBuild>>expand:to: (in category 'zip file') -----
expand: aZipFile to: destDir
+
+ "if the zip file is remote, check it wasnt one we generated in our output tree"
+
-
- "
- (self obtainImage: 'ftp://ftp.squeak.org/3.10/Squeak3.10.2-*-basic.zip') run
- "
| localZipFile |
+ localZipFile := nil.
+
+ aZipFile executive isRemote ifTrue: [
+
+ (self outputDir parent all filesMatching: aZipFile fileName) firstOrNil
- aZipFile executive isRemote
- ifTrue: [
-
- localZipFile := self class configImagesDir / aZipFile fileName.
-
- "if it is not in the local downloaded images cache, look in our output tree"
- localZipFile exists ifFalse: [
- (self outputDir parent all filesMatching: aZipFile fileName) firstOrNil
ifNotNilDo: [ :found |
self log info found: found.
+ localZipFile := found.
+ ]
+ ].
+
+ "default is not to overwrite if the file exists"
+ localZipFile := (self class configImagesDir add: (localZipFile ifNil: [ aZipFile ])).
+
- localZipFile := found
- ].
- ].
-
- localZipFile exists ifFalse: [
- self log info downloading: zipFile.
- localZipFile parent mkpath add: zipFile ].
- ]
- ifFalse: [ localZipFile := aZipFile ].
-
self log info bob expanding: localZipFile to: destDir.
self exec: 'unzip ', localZipFile, ' -d ', destDir full mkpath.
^ localZipFile
- "
- localZipFile zip readArchive extractAllTo: destDir mkpath asFileDirectory.
- "
!
Item was removed:
- ----- Method: BobBuildImage>>configOneClickIni: (in category 'as yet unclassified') -----
- configOneClickIni: imageName
-
- ^ '[Global]
- DeferUpdate=1
- ShowConsole=0
- DynamicConsole=0
- ReduceCPUUsage=1
- ReduceCPUInBackground=0
- 3ButtonMouse=0
- 1ButtonMouse=0
- UseDirectSound=1
- PriorityBoost=1
- B3DXUsesOpenGL=0
- CaseSensitiveFileMode=0
- ImageFile="Contents\Resources\' , imageName, '.image"'!
Item was removed:
- ----- Method: BobBuildImage>>configOneClickSh: (in category 'as yet unclassified') -----
- configOneClickSh: imageName
-
- ^ '#!!/bin/sh
- APP=`dirname $0`
- EXE="$APP/Contents/Linux686"
- RES="$APP/Contents/Resources"
-
- exec "$EXE/squeak" -plugins "$EXE" \
- -encoding latin1 \
- -vm-display-X11 -swapbtn \
- "$RES/' , imageName , '.image"'!
Item was removed:
- ----- Method: BobBuildImage>>oneClickUpdatePlist:fromDictionary: (in category 'as yet unclassified') -----
- oneClickUpdatePlist: originalPlistFile fromDictionary: dict
-
- | plist file |
-
- file := originalPlistFile asFile xml.
- plist := file contents.
-
- ((plist elementAt: 'plist') elementAt: 'dict') elements pairsDo: [ :keyElement :valueElement |
-
- dict at: (keyElement contentString) ifPresent:[ :newValue | (valueElement contents at: 1) string: newValue ]
- ].
-
- file delete contents: plist.!
Item was removed:
- ----- Method: BobBuildImage>>configOneClickPlist (in category 'as yet unclassified') -----
- configOneClickPlist
- "we take the plist from the template and substitute these values
- note: only string values are supported at this time"
-
- ^ self oneClickPlistBase
- at: 'CFBundleName' put: (info oneClickName ifNil: [ info name ]);
- at: 'CFBundleShortVersionString' put: (info oneClickName ifNil: [ info name ]);
- at: 'CFBundlePackageType' put: 'APPL';
- at: 'CFBundleSignature' put: 'FAST';
- at: 'CFBundleExecutable' put: 'squeak';
- at: 'CFBundleGetInfoString' put: 'http://www.squeak.org';
- at: 'CFBundleIdentifier' put: 'org.squeak';
- at: 'CFBundleVersion' put: '3.8.18b1U';
- at: 'SqueakEncodingType' put: 'UTF-8';
- yourself
- !
Item was removed:
- ----- Method: BobBuildImage>>configOneClickCopyrightStatement (in category 'as yet unclassified') -----
- configOneClickCopyrightStatement
-
- ^
-
- 'Distribution based on Sophie
-
- http://www.sophieproject.org/'!
Item was removed:
- ----- Method: BobBuildImage>>configOneClickIcns (in category 'as yet unclassified') -----
- configOneClickIcns
-
- ^ (info oneClickIcns ifNil: [ '/bob/misc/SqueakImage.icns' ]) !
Item was removed:
- ----- Method: BobBuildImage>>configOneClickTemplate (in category 'as yet unclassified') -----
- configOneClickTemplate
-
- ^ 'file:///bob/images/Seaside-2.8.3.app.zip' !
Item was removed:
- ----- Method: BobBuildImage>>oneClickPlistBase (in category 'as yet unclassified') -----
- oneClickPlistBase
-
- ^ Dictionary new
- at: 'CFBundleIconFile' put: self configOneClickIcns asFile fileName;
- yourself!
Item was removed:
- ----- Method: BobBuildImage>>configOneClickSources (in category 'as yet unclassified') -----
- configOneClickSources
-
- ^ '/bob/vm/SqueakV39.sources'
-
- " '/bob/vm/SqueakV3.sources' "
- !
Item was removed:
- ----- Method: BobBuild>>expandZipFileTo: (in category 'zip file') -----
- expandZipFileTo: destDir
-
- ^ self expand: zipFile to: destDir!
More information about the Packages
mailing list