| monticelloUsername monticelloPassword fullUserName | monticelloUsername := 'XXX'. monticelloPassword := 'YYY'. fullUserName := 'ZZZ'. " =========== Optional Settings ============= " "Set User full name so it's not asked" Author fullName: fullUserName. "Put a nice background picture" PolymorphSystemSettings desktopImageFileName: '/Library/Desktop Pictures/Yosemite 3.jpg'. "Enable GTSpotter preview mode" GTSpotter showPreview. "Define some settings/preferences for GTDebugger" (Smalltalk at: #GTGenericStackDebugger) perform: #enableDebuggerWindowDistinctColor: with: (true). (Smalltalk at: #GTGenericStackDebugger) perform: #enableStackColoring: with: (true). (Smalltalk at: #GTGenericStackDebugger) perform: #alwaysOpenFullDebugger: with: (true). " =========== Mandatory Settings ============= " "Do not raise exceptions for deprecations" Deprecation raiseWarning: false. " =========== Bug and workarounds ============= " "Workaround to bug https://pharo.fogbugz.com/f/cases/20112/" OmBlockFileStore compile: 'refreshNewBlocksFrom: readStream | reader blockPosition blockFirstEntry | reader := self newEntryReader. reader stream: readStream. [ blockPosition := blocks size * self blockSize. blockPosition < readStream size ] whileTrue: [ readStream position: blockPosition. [ reader nextEntryPositionIfFound: [:position | readStream position: position. blockFirstEntry := reader nextEntry. blocks add: (OmBlock store: self startPosition: position endPosition: blockPosition + self blockSize - 1 firstEntryReference: (self referenceTo: blockFirstEntry)). ] ifNone: [ ^self "No more entries to add in a new block" ] ] on: UTF8InvalidText do: [ :ex | "Positioned block in middle of multibyte utf8 char, skip a byte, then try again" readStream basicNext. ex retry ]. ] '. " =============== Personal Settings ================ " "You can skipt these..." MCCacheRepository cacheDirectory: '/Users/mariano/Pharo/localRepo/' asFileReference. MCGitHubRepository cacheDirectory: '/Users/mariano/Pharo/localRepo/' asFileReference. GTPlayBook cacheDirectory: '/Users/mariano/Pharo/play-cache/' asFileReference. GTPlayBook stashDirectory: '/Users/mariano/Pharo/play-stash/' asFileReference. CatalogSettings displayCatalogProjectsInSpotter: false. "By default when we search for implementors, even if there is one, it opens the implementors window. Above hack opens the System Browser in that case" SystemNavigation compile: 'browseMessageList: messageList name: labelString autoSelect: autoSelectString refreshingBlock: aBlock | methods | methods := messageList reject: [ :each| each isFromTrait ]. methods isEmpty ifTrue: [^ self inform: ''There are no '', String cr, labelString]. "---------------CHANGE: Below line is the change -------------" methods size = 1 ifTrue: [ ^ methods anyOne browse ]. ^ Smalltalk tools messageList new messages: methods; title: labelString; autoSelect: autoSelectString; refreshingBlock: aBlock; open '. Metacello new baseline: 'Calypso'; repository: 'github://dionisiydk/Calypso'; load. "Workaround for bug https://github.com/dionisiydk/Calypso/issues/72" ReVarSearchSourceAnchor removeSelector: #searchString. (Smalltalk at: #ClyBrowser) beAllDefault. " ============== App Loading =============== " Gofer it url: 'http://smalltalkhub.com/mc/YourTeam/YourApp/main' username: monticelloUsername password: monticelloPassword; package: 'ConfigurationOfYourApp'; load. Metacello new configuration: 'YourApp'; smalltalkhubUser: 'YOurTeam' project: 'YourApp'; version: '1.9'; onLock: [ :ex | ex honor ]; load: #('whatever').