One-Click as VM

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

One-Click as VM

keith1y
 
Hi All,

I am trying to use the One-Click image as a one stop vm shop. I took  
the pier1.2 one click image, and removed the image.

My first use-case is launching the vm with the image in the same  
directory as the .app.
This works brilliantly, but I don't seem to be able to provide the  
sources file inside the .app, the one in ./Contents/Resources is  
ignored.
I think that the same is true if I launch via drag and drop on the mac.

My second use case is to be able to put the image, in the top level  
directory of the .app packages.

any thoughts on how to achieve either of these.

Keith
Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] One-Click as VM

johnmci

So remind me why you want to do this.

The one-click plugins are usually assembled by a third party and contain a mixture of things, there could be or could not be the most recent plugins, or VM in the set of folders.
On the macintosh the info.plist could be altered and not actually have a version number that matches what version the VM is.

However if you wish to stuff the sources in the *.app/Contents/Resources you would have to change the Smalltalk code where it hunts for the sources file and have it hunt
where you think the sources file should be. This is not a function of the VM, it's a Smalltalk code problem.


On 2010-01-26, at 2:19 PM, keith wrote:

> Hi All,
>
> I am trying to use the One-Click image as a one stop vm shop. I took the pier1.2 one click image, and removed the image.
>
> My first use-case is launching the vm with the image in the same directory as the .app.
> This works brilliantly, but I don't seem to be able to provide the sources file inside the .app, the one in ./Contents/Resources is ignored.
> I think that the same is true if I launch via drag and drop on the mac.
>
> My second use case is to be able to put the image, in the top level directory of the .app packages.
>
> any thoughts on how to achieve either of these.
>
> Keith

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================




Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] One-Click as VM

keith1y
 
So remind me why you want to do this.

I wanted to be able to distribute a vm for Cuis, which is cross platform, and runs with a different icon and name in the menubar. The idea being to distribute everything except the image/changes, as a single zip file. The fact that it doesn't pick up the sources file from anywhere within the .app package, put the spanner in the works, but you have pointed me in the right direction.

The image/changes file can be combined into one if one felt the need, so Cuis becomes "normal" in the sense of having a document (the image) and an application.

The one-click plugins are usually assembled by a third party and contain a mixture of things, there could be or could not be the most recent plugins, or VM in the set of folders.
On the macintosh the info.plist could be altered and not actually have a version number that matches what version the VM is.

Secondly once I have this "universal vm" under scm with bazaar, I can keep it up to date easily everywhere it is deployed, irrespective of what vms are installed on the base machine.

Thirdly, using bazaar, we have a starting point for users to branch, forming derived vms, with different plugins, different icons for the dock, or classic one-click behaviour with the image/changes included. The branch can continue to merge in updates as they occur.

Finally, the ./Contents/Resources folder is looking pretty cluttered, and I tend to have enough clutter of my own. So I wanted to be able to have the working directory alongside the vm.app , or just inside it for one-click behaviour.

However if you wish to stuff the sources in the *.app/Contents/Resources you would have to change the Smalltalk code where it hunts for the sources file and have it hunt
where you think the sources file should be. This is not a function of the VM, it's a Smalltalk code problem.

cheers

Keith
Reply | Threaded
Open this post in threaded view
|

Re: One-Click as VM

keith1y
 

On 27 Jan 2010, at 16:31, keith wrote:



John wrote:

So remind me why you want to do this.

I wanted to be able to distribute a vm for Cuis, which is cross platform, and runs with a different icon and name in the menubar. The idea being to distribute everything except the image/changes, as a single zip file. The fact that it doesn't pick up the sources file from anywhere within the .app package, put the spanner in the works, but you have pointed me in the right direction.

The image/changes file can be combined into one if one felt the need, so Cuis becomes "normal" in the sense of having a document (the image) and an application.

The one-click plugins are usually assembled by a third party and contain a mixture of things, there could be or could not be the most recent plugins, or VM in the set of folders.
On the macintosh the info.plist could be altered and not actually have a version number that matches what version the VM is.

Secondly once I have this "universal vm" under scm with bazaar, I can keep it up to date easily everywhere it is deployed, irrespective of what vms are installed on the base machine.

Thirdly, using bazaar, we have a starting point for users to branch, forming derived vms, with different plugins, different icons for the dock, or classic one-click behaviour with the image/changes included. The branch can continue to merge in updates as they occur.

Finally, the ./Contents/Resources folder is looking pretty cluttered, and I tend to have enough clutter of my own. So I wanted to be able to have the working directory alongside the vm.app , or just inside it for one-click behaviour.

However if you wish to stuff the sources in the *.app/Contents/Resources you would have to change the Smalltalk code where it hunts for the sources file and have it hunt
where you think the sources file should be. This is not a function of the VM, it's a Smalltalk code problem.

Unfortunately, I don't know where the sources should be, because there appears to be no function that will tell you the path into the .app tree  which is where I wanted to put them. #primVmPath tells you the parent directory, but not the name of the .app

any ideas?

Keith
Reply | Threaded
Open this post in threaded view
|

Re: One-Click as VM

johnmci
 
FileDirectory>>startUp

It sets the default directory based on perhaps what the vm things the directory path should be. 
It calls openSourceFiles which has the responsibility of figure out out where the changes and source files are. 

The vm only knows what the current working directory is/was when launched and where the image file and executable is. 
It has no knowledge of the changes fie and the sources file 

On 2010-01-30, at 7:32 AM, keith wrote:

Unfortunately, I don't know where the sources should be, because there appears to be no function that will tell you the path into the .app tree  which is where I wanted to put them. #primVmPath tells you the parent directory, but not the name of the .app

any ideas?

Keith

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================




Reply | Threaded
Open this post in threaded view
|

Re: One-Click as VM

keith1y
 

>
> FileDirectory>>startUp
>
> It sets the default directory based on perhaps what the vm things  
> the directory path should be.
> It calls openSourceFiles which has the responsibility of figure out  
> out where the changes and source files are.
>
> The vm only knows what the current working directory is/was when  
> launched and where the image file and executable is.
> It has no knowledge of the changes fie and the sources file

Ok, but the executable is in vm.app/Content/MacOS/squeak it doesnt  
seem to know that. Does it have any knowledge of where the plugins are?

regards

Keith
Reply | Threaded
Open this post in threaded view
|

Re: One-Click as VM

johnmci

Method primVmPath returns where the vm is
Method primImageName  returns where the image is


Where plugins are searched for is up to the VM.
See http://isqueak.org/ioLoadModule


On 2010-01-30, at 11:43 AM, keith wrote:

>>
>> FileDirectory>>startUp
>>
>> It sets the default directory based on perhaps what the vm things the directory path should be.
>> It calls openSourceFiles which has the responsibility of figure out out where the changes and source files are.
>>
>> The vm only knows what the current working directory is/was when launched and where the image file and executable is.
>> It has no knowledge of the changes fie and the sources file
>
> Ok, but the executable is in vm.app/Content/MacOS/squeak it doesnt seem to know that. Does it have any knowledge of where the plugins are?
>
> regards
>
> Keith

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================