Re: [Pharo-dev] How to include Moose-Finder in build

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] How to include Moose-Finder in build

Tudor Girba-2
Hi Max,

I am happy you want to give these tools a try :).

The tools do not install themselves automatically because I think it is not a good practice to tie code loading with installation. To setup the Moose image, we actually have a command line handler that allows you to simply trigger this from the CI job:

./pharo $JOB_NAME.image mooseimagesetup --signature=$BUILD_URL

You can also trigger from the image:
MooseImageSetupCommandLineHandler activateWith: (CommandLineArguments withArguments: {})

This installs the theme, the fonts, preferences and the GToolkit playground, inspector and debugger.

However, for developing in Pharo, you do not need all of Moose, and almost certainly do not need the Moose Finder. You likely only need the GToolkit.

spec project: 'GToolkit' with: [
spec
className: 'ConfigurationOfGToolkit';
version: #development;
file:  'ConfigurationOfGToolkit';

To install the tools, you have to install them manually at the moment - but I will create a command line handler for that soon:
GTPlayground registerToolsOn: Smalltalk tools.
GTInspector registerToolsOn: Smalltalk tools.
GTGenericStackDebugger registerToolsOn: Smalltalk tools.
GTGenericStackDebugger registerExtraToolsOn: Smalltalk tools.
"GTPPDebugger registerToolsOn: Smalltalk tools." "only if you need it for PetitParser"
GTGlamourDebugger registerToolsOn: Smalltalk tools.
ACGlamourDebugger registerToolsOn: Smalltalk tools.
GTSUnitDebugger registerToolsOn: Smalltalk tools.
GTMoldableDebugger enableDebuggerWindowDistinctColor: true

To install the white theme:
GLMWhitespaceTheme defaultSettings: nil; setPreferredWorldBackground; beCurrent

To install the fonts, you can just do this:
#('SourceCodeProRegular' 'SourceCodeProBold' 'SourceSansProRegular' 'SourceSansProBold') do: [ :each | 
Smalltalk globals 
at: each asSymbol
ifAbsent: [
Gofer new 
smalltalkhubUser: 'girba' project: 'FreeFonts';
package: each;
load ].
(Smalltalk at: each asSymbol) new install ].
FreeTypeSystemSettings loadFt2Library: true.
FreeTypeFontProvider current updateFromSystem

Let me know how it goes.

Cheers,
Doru




On Wed, Mar 19, 2014 at 8:24 AM, Max Leske <[hidden email]> wrote:
Hi

I want to use the Moose UI tools for development and since I have a CI job for the project I thought I could just load Moose and be done with it. That doesn’t seem to work however.

I tried loading #development but when I do that I get the FallbackMenu instead of the world menu and no new inspectors / browsers. Here are the conditions of my build:
- I want to start my build from a fresh Pharo3 image
- I only want the Moose UI tools (I don’t need any of the parsers etc.)
- it would be nice if, when I open a built image, the default tools are already set to the Moose ones

I know that there is a development Moose build for Pharo3, so I’m a bit surprised that I can’t just load the configuration…

BTW: this is how I tried to load Moose (maybe I just screwed up the configuration):

baseline02: spec
    <version: '0.2-baseline'>

        spec for: #common do: [
                spec blessing: #baseline.

                spec package: 'LibGit2Bindings' with: [
                        spec repository: 'http://smalltalkhub.com/mc/MaxLeske/LibGit2Bindings/main' ].

                spec project: 'Moose' with: [
                        spec
                                className: 'ConfigurationOfMoose';
                                file: 'ConfigurationOfMoose';
                                version: #development;
                                loads: #(Core UI);
                                repository: 'http://smalltalkhub.com/mc/Moose/Moose/main' ].

                spec package: 'Phexample' with: [
                        spec repository: 'http://smalltalkhub.com/mc/Phexample/Phexample/main' ].

                spec repository: 'http://smalltalkhub.com/mc/StefanMarr/LibGit/main'.
                spec package: 'LibGit-Core' with: [
                        spec
                                requires: #(Phexample LibGit2Bindings Moose);
                                postLoadDoIt: #postLoadRecompile ]
        ].

I’d appreciate any help (and if nobody helps me Doru will probably kick my ass for still not using Moose :p)

Cheers,
Max



--

"Every thing has its own flow"

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev