building you own pharo images with metacello

37
1 Mariano Martinez Peck [email protected] http://marianopeck.wordpress.com/ RMod Building your own Pharo images with Metacello 1 Sunday, April 22, 2012

Upload: mariano-martinez-peck

Post on 20-May-2015

659 views

Category:

Technology


1 download

DESCRIPTION

Talk presented in Smalltalks 2011, Buenos Aires, Argentina.

TRANSCRIPT

Page 1: Building you own Pharo images with Metacello

1

Mariano Martinez [email protected]

http://marianopeck.wordpress.com/

RMod

Building your own Pharo images with Metacello

1Sunday, April 22, 2012

Page 2: Building you own Pharo images with Metacello

Motivations 1

I use/test new tools.

I use (fight) latest versions.

I find/report/fix/test bugs.

2

To help Pharo community:

2Sunday, April 22, 2012

Page 3: Building you own Pharo images with Metacello

Motivations 1

I use/test new tools.

I use (fight) latest versions.

I find/report/fix/test bugs.

2

To help Pharo community:

Bleeding-edge ninja fighter

2Sunday, April 22, 2012

Page 4: Building you own Pharo images with Metacello

Motivations 1

I use/test new tools.

I use (fight) latest versions.

I find/report/fix/test bugs.

2

To help Pharo community:

I am downloading hundred of images every day. An image can last me a

maximum of a couple of days.

Bleeding-edge ninja fighter

2Sunday, April 22, 2012

Page 5: Building you own Pharo images with Metacello

Motivations 2

I have my own (different) preferences/settings than the default ones.

I use specific tools that are not present by default.

I am, most of the times, working in several projects at the same time.

3

3Sunday, April 22, 2012

Page 6: Building you own Pharo images with Metacello

Motivations 2

I have my own (different) preferences/settings than the default ones.

I use specific tools that are not present by default.

I am, most of the times, working in several projects at the same time.

3

I spend a lot of time building my own images

3Sunday, April 22, 2012

Page 7: Building you own Pharo images with Metacello

4

I am downloading hundred of images every day.

I spend a lot of time building my own images.+

4Sunday, April 22, 2012

Page 8: Building you own Pharo images with Metacello

4

I am downloading hundred of images every day.

I spend a lot of time building my own images.+

= It doesn’t compile

4Sunday, April 22, 2012

Page 9: Building you own Pharo images with Metacello

I am lazy.

I don’t like losing time with this.

My memory is bad.

4

I am downloading hundred of images every day.

I spend a lot of time building my own images.+

++

= It doesn’t compile+

4Sunday, April 22, 2012

Page 10: Building you own Pharo images with Metacello

5

Something is not working.

5Sunday, April 22, 2012

Page 11: Building you own Pharo images with Metacello

6

The tools are already there.

6Sunday, April 22, 2012

Page 12: Building you own Pharo images with Metacello

What is Metacello

Package management system for Monticello.

Configuration “file” per project.7

7Sunday, April 22, 2012

Page 13: Building you own Pharo images with Metacello

A configuration “file” defines project versions.

A version is:

List of Monticello files (mcz) used by the project.

List of other projects used by the project.

A specification of dependencies between packages and projects.

8Sunday, April 22, 2012

Page 14: Building you own Pharo images with Metacello

9

New Metacello chapter!!!

9Sunday, April 22, 2012

Page 15: Building you own Pharo images with Metacello

My proposal?

10Sunday, April 22, 2012

Page 16: Building you own Pharo images with Metacello

My proposal?Throw away Metacello?

10Sunday, April 22, 2012

Page 17: Building you own Pharo images with Metacello

My proposal?

No, quite the opposite!

Throw away Metacello?

10Sunday, April 22, 2012

Page 18: Building you own Pharo images with Metacello

11Sunday, April 22, 2012

Page 19: Building you own Pharo images with Metacello

Bringing Metacello usage to the next level: building your own

Pharo images11Sunday, April 22, 2012

Page 20: Building you own Pharo images with Metacello

Example

Type of software Example Operations

I develop or contribute Fuel, DBXTalk, Marea and CogVM

- Build image- Just load

External tools or addons I use

Glamoroust, Keymapping,

TilingWindowManager, etc

Install them when building my images

12Sunday, April 22, 2012

Page 21: Building you own Pharo images with Metacello

Showtime

13Sunday, April 22, 2012

Page 22: Building you own Pharo images with Metacello

14

I think that in the future we will all end up having our own local CI server building and testing our images.

14Sunday, April 22, 2012

Page 23: Building you own Pharo images with Metacello

15

But I had already got access to the DeLorean...

15Sunday, April 22, 2012

Page 24: Building you own Pharo images with Metacello

Conclusion 1

16

ConfigurationOfSmallworksConfigurationOfSmallworks16Sunday, April 22, 2012

Page 25: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSmallworksConfigurationOfSmallworks16Sunday, April 22, 2012

Page 26: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

ConfigurationOfSmallworksConfigurationOfSmallworks16Sunday, April 22, 2012

Page 27: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfSmallworksConfigurationOfSmallworks16Sunday, April 22, 2012

Page 28: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfMariano

ConfigurationOfDavid

ConfigurationOfJuanito

ConfigurationOfSmallworksConfigurationOfSmallworks16Sunday, April 22, 2012

Page 29: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfMariano

ConfigurationOfDavid

ConfigurationOfJuanito

Companies

ConfigurationOfSmallworksConfigurationOfSmallworks16Sunday, April 22, 2012

Page 30: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfMariano

ConfigurationOfDavid

ConfigurationOfJuanito

Companies

ConfigurationOfSmallworks

ConfigurationOf2Denker

ConfigurationOfSmallworksConfigurationOfSmallworks

ConfigurationOf10Pines

16Sunday, April 22, 2012

Page 31: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfMariano

ConfigurationOfDavid

ConfigurationOfJuanito

Companies

ConfigurationOfSmallworks

ConfigurationOf2Denker

ConfigurationOfSmallworksConfigurationOfSmallworks

ConfigurationOf10Pines

University

16Sunday, April 22, 2012

Page 32: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfMariano

ConfigurationOfDavid

ConfigurationOfJuanito

Companies

ConfigurationOfSmallworks

ConfigurationOf2Denker

ConfigurationOfSmallworksConfigurationOfSmallworks

ConfigurationOf10Pines

University

ConfigurationOfPdPConfigurationOfUBA-Algo3

16Sunday, April 22, 2012

Page 33: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfMariano

ConfigurationOfDavid

ConfigurationOfJuanito

Companies

ConfigurationOfSmallworks

ConfigurationOf2Denker

ConfigurationOfSmallworksConfigurationOfSmallworks

ConfigurationOf10Pines

University

ConfigurationOfPdPConfigurationOfUBA-Algo3

Research groups

16Sunday, April 22, 2012

Page 34: Building you own Pharo images with Metacello

Conclusion 1

16

Software

ConfigurationOfSeaside

ConfigurationOfFuel

ConfigurationOfDBXTalk

ConfigurationOfMoose

Individuals

ConfigurationOfMariano

ConfigurationOfDavid

ConfigurationOfJuanito

Companies

ConfigurationOfSmallworks

ConfigurationOf2Denker

ConfigurationOfSmallworksConfigurationOfSmallworks

ConfigurationOf10Pines

University

ConfigurationOfPdPConfigurationOfUBA-Algo3

Research groups

ConfigurationOfRMOD

ConfigurationOfEMD

ConfigurationOfUNQ

16Sunday, April 22, 2012

Page 35: Building you own Pharo images with Metacello

Conclusion 2

17

Not only use Metacello to load projects but also to build your own images

17Sunday, April 22, 2012

Page 36: Building you own Pharo images with Metacello

Fork me! (it is MIT license)

18

Gofer newsqueaksource: 'MarianoPhD';package: 'MarianoBuilder';

load.

But change it and adapt it for your OWN needs

18Sunday, April 22, 2012

Page 37: Building you own Pharo images with Metacello

19

Mariano Martinez [email protected]

http://marianopeck.wordpress.com/

RMod

Thanks

19Sunday, April 22, 2012