Didn't Esteban fixed metarepo ? I think I remember him saying that he did.

Don't know how heavy and complex your setup is but if I was in a situation
where the building process became to complex with several builds at the
same time , I think as Phil said a CI would have been more handy. Its what
we use for a vast array of custom images. Obviously you could make your own
command line tool with Pharo. An image dedicated to building your own
images , you alias the Pharo executable passed the image name to any name
that make it look as if it is a bash command or bash utility.

For example

Pharo-build gitfiletree ./filetree -replace -stable -runTests

On Sat, 22 Oct 2016 at 12:34, Thierry Goubier <thierry.goub...@gmail.com>
wrote:

> Hi Kilon,
>
> 2016-10-22 10:56 GMT+02:00 Dimitris Chloupis <kilon.al...@gmail.com>:
>
> it depends, the power that pharo offers is just massive on this department.
>
> For example you say you dont like the idea of a global startup script,
> thats fine because you can have startup scripts per image, they go to the
> same folder as your image. If you really have a super complex setup it
> would make sense to make a git repo with just your make file and startup
> scripts. The makefile can be parameterized with command line arguments to
> perform diffirent installs then its a just a matter of copying the correct
> startup script to the folder with the appropriate image which of course is
> something the makefile can handle too.
>
>
> Good point: the Makefile has to copy the startup script inside the image
> directory, if we keep that convention of building the new image inside a
> dedicated directory to be able to clean by rm -r that directory.
>
>
>
> Mariano has a great post on the subject of startup scripts which what I
> used to make my own
>
>
> https://marianopeck.wordpress.com/2012/05/12/startuploader-running-startup-scripts-in-pharo/
>
> By interactive mode again , I assume here you mean the GUI. Again it
> depends what you want to do, a pharo install comes with 2 executables
> pharo-ui which is the well known gui front and pharo which has no gui. In
> both cases you have debug abilities though I presume it would be easier to
> do this from inside a GUI. pharo and pharo-ui has an eval argument that
> allow you to execute any kind of code and there is also a save argument to
> save the image with your new code.
>
>
> Yes. I've been using eval in Makefiles for a few years now. I even prefer
> an eval Metacello new baseline: ... to the command line configuration
> loader, because I can use the standard Smalltalk syntax with eval (and
> Metacello) whereas I need to read the doc for the configuration command
> line handler.
>
> I even have a 'deployment' version for external partners, where the
> Makefile detect it is started from an archive extracted from git and not
> the original git repo, and switches to filetree (and loading different
> packages) to build the image.
>
>
>
> If you prefer GUI then you dont even need to pass metacello arguments,
> just make a configuration installing all your dependencies and put it in
> the STHUB metarepo corresponing to the version of pharo you use, it will be
> available from Package browser and you will be able to install all your
> dependencies with a single click every time you download a new install of
> pharo. Or just install a tool that you can use from playground to install
> the dependencies with a simple message. Or make a spec GUI or morphic GUI
> and do all that from the comfort of your mouse. OR.......
>
> the options are just endless.
>
>
> Yes. Oh well, in fact the metarepo thing doesnt work well with Pharo5 and
> Pharo6, as one of the user of the GitFileTree configuration discovered a
> week or two ago. If you are using Pharo5, a configuration in the Pharo6
> metarepo will override the one in the Pharo5 metarepo.
>
>
>
> Another thing to remember here is that a baseline does not have to have
> one setup, you can have multiple setups installing things under diffirent
> conditions. Baseline also are aware of smalltalk implementation (squeak/
> pharo) and pharo versions. That means diffirent installs under diffirent
> conditions and some deep fine tuning. Baseline also allow for actions
> before the install after the install, so even if you want to do some clean
> up you can do this also from the comfort of baseline.
>
> Lastly but not least metacello is fully aware of git branches that gives
> you even more possibilities since a branch even in the same repo can be a
> completely new repo that gives you even more crazy options , since you can
> have diffirent Baseline under diffirent branch and of course the branch can
> contain its own code and assets (images, sounds , binary files, anything).
>
>
> Yes,
>
> Thierry
>
>
>
> It really comes down to the way you like to work, pharo can do it, you
> choose how and what.
>
> On Sat, Oct 22, 2016 at 11:37 AM Thierry Goubier <
> thierry.goub...@gmail.com> wrote:
>
> Hi Kilon,
>
> 2016-10-22 9:52 GMT+02:00 Dimitris Chloupis <kilon.al...@gmail.com>:
>
> Actually we dont, I am using the terminal to get and build my own images.
> Curl + use of startup scripts are more than enough. Simply , easy and
> straightforward. Pharo offers a super easy way to export any method as a
> command line argument. So there is literally no excuse.
>
> Pharo already offers a metacello argument so you are set to go on
> installing anything you want through the terminal in your image and also
> offers evaluation of smalltalk code as argument. But I prefer startup
> scripts, I have made a startup script that can detect the name of images
> and install different packages to them, you can do insane things with
> startup scripts actually.
>
>
> Yes, that looks pretty cool.
>
> I still stick with Makefiles and command line Pharo to build images, in
> part because when I run different projects, I can store inside the git of
> the project (i.e. version them) both the squeleton of the build environment
> and all the build instructions, instead of having to put a project-specific
> startup script inside a settings directory shared among all projects.
>
> But I certainly see the value of running the startup scripts in the image
> in interactive mode, where it becomes a lot easier to debug them.
>
> While running them on the command line is convenient too (make build,
> switch to email, reply, come back when the build is done).
>
>
>
> you can find my build setup here
>
> https://github.com/kilon/makePharo
>
>
> I'll keep it in mind, thanks!
>
> Thierry
>
>
>
>
> On Sat, Oct 22, 2016 at 10:06 AM p...@highoctane.be <p...@highoctane.be>
> wrote:
>
> We need some easy to use gem-style installer on the command line.
>
> Pharo is perfectly usable for any kind of project provided energy is
> poured in.
>
> Things are in flux, yes, and it is frustrating not to have it all perfect.
> So what? If we weren't interested in wild things why would we be here after
> all?
>
> Think long term: 10 years from now, improvements will have been massively
> compounding (not to mention 20).
>
> I hope to have a huge win with Pharo business wise and be able to fund a
> serious team. That's my dream. I am actively working on it.
>
> Pharo can stay relevant for that long I believe. I love the way it helps
> me think. I love the fact that I can look everywhere I want. I love the
> fact that this community has balls. I love to show the magic we can do with
> it. If it all goes nowhere, I do not even mind as I have a damn awesome
> time around here.
>
> Now, I also want a working text model. This feels like a kind of
> psychological roadblock. Like a self sabotage. Let's put that dead rat on
> the table and make something about it.
>
> I like Doru's Pillar editor. I guess the underlying engine will evolve to
> make it faster. Great. Grafoscopio will also be a driving force there I
> believe. Pharo can be superspeedy, no core problem.
>
> Sorry for the rant.
>
> Now back to promoting Pharo in front of Android/Angular/Java people this
> afternoon at http://devfest.be (note that this is the 3rd time I show
> Pharo/Amber there - they could kick me out but do not).
>
> /Phil
>
>
> On Fri, Oct 21, 2016 at 8:12 PM, Dimitris Chloupis <kilon.al...@gmail.com>
> wrote:
>
> Actually you are wrong, its not hard to use C libraries from Pharo. UFFI
> is not a restart, its a continuation of Nativeboost , they are very
> similar.
>
> Pharo FFI, whether its the old FFI, Alien, Nativeboost or UFFI, is more or
> less the same. In the end an FFI is defined by C syntax , Pharo UFFI
> borrows the easy of use of Nativeboost that allows you to take c functions
> definition and use them as they are with a simple copy paste.
>
> Pharo is also is based on very good integration with C , like Squeak can
> output its code as C code via the Slang interface though it comes with some
> limitations.
>
> The availability of C libraries to Pharo is a reflection of the community
> size. Comparing with Ruby is very unfair , as Ruby is vastly more popular
> (think in thousand times) , hence why you see so many C libraries wrapped
> for Ruby. Of course python kicks Ruby ass kung fu style with its vastly
> superior array of C wrapped libraries.
>
> The moment you decide to use an unpopular language as Pharo then if you
> are not prepared to get your hands dirty and you expect things on your
> plate like Ruby or Python , then its time to go back to Ruby or Python.
>
> Pharo is not in flux , its evolving, every new tool or library you see is
> an evolution of something else.
>
> We dont need Gems for Pharo, Dale has done a great job with Metacello, its
> easy to make a pharo project in git/github and have it install all pharo
> code and built C libraries wrapped for Pharo. Just because people are not
> in the habit of doing this does not mean its not super easy to be done. For
> example AFAIK my project ChronosManager was one of the first project to
> install from Catalog Browser not only its Pharo code but also , pngs and
> audio files. I made even an autoupdate feature that pings my github repo to
> see if there are any new commits and then if so it alerts the user and give
> him the ability to download the update with a single click. All that is
> metacello.
>
> Metacello is probably one of the best if not the best package distribution
> systems out there. Definetly vastly better than Python's PyPi and Node'js
> NPM . I cannot praise it enough and I have no problem criticising Pharo
> when I must. Dale has done an amazing job, period.
>
> On the GUI front on the other hand, its messy, no doubt about it. Morphic
> is huge, ugly and almost not maintained. Bloc is probably going to be the
> next step.
>
> I think the issue here is that we dont have Arduino or Raspberry Pi guys.
> Same story for my field, 3d graphics. There is a OpenGL wrapper and the
> Wodden graphics engine and nothing else. I and the author of Woden are the
> only people here interested into 3d graphics, he makes Woden, I have made a
> bridge with Blender Python , for using Pharo to make Blender addons and I
> am now in the process of making a bridge with Unreal Engine.
>
> I dont see why you would have an issue using Pharo from Raspberry Pi, we
> already support SDL and you can even run Pharo with no GUI from the
> terminal and export any Pharo method as a command line argument. My Python
> socket bridge also showed me that is dead easy to connect Pharo with other
> programming languages, in my case python , with just a few hundred lines of
> code. Typical IPC.
>
> So there are no excuses for not using Pharo, from there on, it depends on
> your specific needs and wants and taste.
>
> On Fri, Oct 21, 2016 at 7:05 PM Todd Blanchard <tblanch...@mac.com> wrote:
>
>
> On Oct 21, 2016, at 07:30, Norbert Hartl <norb...@hartl.name> wrote:
>
> The current (!) complaint is rather based on the fact that everything
> regarding the graphics backend, widget and tools appears sometimes as an
> indefinite loop of reinventing stuff and improving and never get the job
> done. Did I mention 64bit, UFFI,… I'm glad all these topics are worked one
> and I see a bright future if half of them are done. But then sometimes it
> looks rather dark and the light at the end of the tunnel just went off :)
>
>
> I feel you.
>
> I very much want to use Pharo to build devices from things like Raspberry
> Pi's, iPhones, and Androids.  I need access to native libraries.  You can't
> rewrite everything ever in Smalltalk and I don't really see a good reason
> to.
>
> I've taken about ten years off from doing Smalltalk and I'm trying to get
> back into it.  My interest is piqued because I want to build nice custom
> systems using the nifty new cheap goodies like Arduinos and RPis and it
> seems tossing together a full screen Pharo image would be a great way to
> build these appliances.  In that time the story for how to call out to
> native code has changed...twice.  Everything is broken or in flux again.
>
> To me, it doesn't feel like there's any more platform to build apps on
> than there was ten years ago and everything is still "just around the
> corner".  Pharo seem to be an experiment in building next generation
> programming tools using deprecated last generation programming tools. I
> don't see a lot of useful programs being built atop it - largely because
> the base is constantly shifting about.
>
> It is disheartening that the Ruby guys can crank out gems with native
> libraries that compile and work on every platform and pharo is still
> constantly half broken with loadable native code "doable" but only with
> great effort.
>
> I looked and Moz2D doesn't seem to have a light weight build for Raspberry
> Pi.  Is hitching Pharo to a heavy weight graphics library as a core
> requirement a good idea?
>
> I'm starting to think maybe we need something like Gems for Pharo -
> dynamically loadable libraries and resources - compiled at install if
> necessary.
>
>
>

Reply via email to