Loading Packages Using Monticello Browser? OSProcess

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

Loading Packages Using Monticello Browser? OSProcess

JohnReed Maffeo
In Squeak 4.4-12327, I have a Monticello Browser window open from which I have opened
as Repositiory: http://www.squeaksource.com/OSProcess window.
In the left hand panel there is a list of items in alpha order. I select OSProcess.
In the right hand panel there is a list of items in name/number order.
When I click on an item in the right hand panel, a message pops telling
me the it has been loaded, but I don't see any OSProcess when I open a Browser
and find class OSProcess.
When I mouse over the Load button in the Repository: header the baloon says
to load this version into the image. I click on the button and I get a
message that it has been loaded.

Now when I open a SystemBrowser, I see all of the OSProcess-foo categories listed.
Am I done? Or do I have do more? There is a ConfigurationOfOSProcess.

I went through this once about three weeks ago and just clicked on everything,
now I am having to rebuild an image because of a problem I am having trying
to get osp := ExternalUnixOSProcess new command: cmdLine to work. And I managed to
break ExternalUnixOSProcess when I tried to load CommandShell thinking that it
might be helpful to my effort to figure out my problem.

The string in cmdLine contains a string, which when printed out to Transcript
and copied over to a terminal session outside Squeak works like a charm. Once I
am sure that I have OSProcess loaded correctly, I will probably come back for
some advice about how to effectively debug comand line problems.

Thanks,

johnreed

Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

David T. Lewis
On Sun, Jan 12, 2014 at 08:42:45PM -0500, JohnReed Maffeo wrote:

> In Squeak 4.4-12327, I have a Monticello Browser window open from which I have opened
> as Repositiory: http://www.squeaksource.com/OSProcess window.
> In the left hand panel there is a list of items in alpha order. I select OSProcess.
> In the right hand panel there is a list of items in name/number order.
> When I click on an item in the right hand panel, a message pops telling
> me the it has been loaded, but I don't see any OSProcess when I open a Browser
> and find class OSProcess.
> When I mouse over the Load button in the Repository: header the baloon says
> to load this version into the image. I click on the button and I get a
> message that it has been loaded.

Hi JohnReed,

If you used a Monticello Browser, then highlighted OSProcess, and then clicked
"Load" on the top entry on the right (currently OSProcess-dtl.89), then yes you
are done. You have loaded the complete OSProcess package.

There are some sub-packages listed on the left side, such as OSProcess-Base
and OSProcess-Unix and so forth. You can ignore these, because when you loaded
OSProcess you also will have loaded all of the sub-packages.

If you are comfortable using the SqueakMap package browser, you can also load
OSProcess that way. The "head" version from SqueakMap will load exactly the same
thing that you loaded from OSProcess-dtl.89.

So - yes you did the right thing, and yes you have loaded the complete OSProcess
package.

>
> Now when I open a SystemBrowser, I see all of the OSProcess-foo categories listed.
> Am I done? Or do I have do more? There is a ConfigurationOfOSProcess.

You can ignore the ConfigurationOfOSProcess section. This is required for
people who use Pharo images due to various incompatibilities, but that is not
an issue for any version of Squeak.

>
> I went through this once about three weeks ago and just clicked on everything,
> now I am having to rebuild an image because of a problem I am having trying
> to get osp := ExternalUnixOSProcess new command: cmdLine to work. And I managed to
> break ExternalUnixOSProcess when I tried to load CommandShell thinking that it
> might be helpful to my effort to figure out my problem.

Loading CommandShell is a good idea also.

>
> The string in cmdLine contains a string, which when printed out to Transcript
> and copied over to a terminal session outside Squeak works like a charm. Once I
> am sure that I have OSProcess loaded correctly, I will probably come back for
> some advice about how to effectively debug comand line problems.

Please do ask, I'll be happy to help if I can.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

JohnReed Maffeo
In reply to this post by JohnReed Maffeo
> ----- Original Message -----
> From: David T. Lewis
> Sent: 01/12/14 07:21 PM
> To: The general-purpose Squeak developers list
> Subject: Re: [squeak-dev] Loading Packages Using Monticello Browser? OSProcess
>
> On Sun, Jan 12, 2014 at 08:42:45PM -0500, JohnReed Maffeo wrote:
> > In Squeak 4.4-12327, I have a Monticello Browser window open from which I have opened
> > as Repositiory: http://www.squeaksource.com/OSProcess window.
> > In the left hand panel there is a list of items in alpha order. I select OSProcess.
> > In the right hand panel there is a list of items in name/number order.
> > When I click on an item in the right hand panel, a message pops telling
> > me the it has been loaded, but I don't see any OSProcess when I open a Browser
> > and find class OSProcess.
> > When I mouse over the Load button in the Repository: header the baloon says
> > to load this version into the image. I click on the button and I get a
> > message that it has been loaded.
>
> Hi JohnReed,
>
> If you used a Monticello Browser, then highlighted OSProcess, and then clicked
> "Load" on the top entry on the right (currently OSProcess-dtl.89), then yes you
> are done. You have loaded the complete OSProcess package.
>
> There are some sub-packages listed on the left side, such as OSProcess-Base
> and OSProcess-Unix and so forth. You can ignore these, because when you loaded
> OSProcess you also will have loaded all of the sub-packages.
>
> If you are comfortable using the SqueakMap package browser, you can also load
> OSProcess that way. The "head" version from SqueakMap will load exactly the same
> thing that you loaded from OSProcess-dtl.89.
>
> So - yes you did the right thing, and yes you have loaded the complete OSProcess
> package.
>
> >
> > Now when I open a SystemBrowser, I see all of the OSProcess-foo categories listed.
> > Am I done? Or do I have do more? There is a ConfigurationOfOSProcess.
>
> You can ignore the ConfigurationOfOSProcess section. This is required for
> people who use Pharo images due to various incompatibilities, but that is not
> an issue for any version of Squeak.
>
> >
> > I went through this once about three weeks ago and just clicked on everything,
> > now I am having to rebuild an image because of a problem I am having trying
> > to get osp := ExternalUnixOSProcess new command: cmdLine to work. And I managed to
> > break ExternalUnixOSProcess when I tried to load CommandShell thinking that it
> > might be helpful to my effort to figure out my problem.
>
> Loading CommandShell is a good idea also.
>
> >
> > The string in cmdLine contains a string, which when printed out to Transcript
> > and copied over to a terminal session outside Squeak works like a charm. Once I
> > am sure that I have OSProcess loaded correctly, I will probably come back for
> > some advice about how to effectively debug comand line problems.
>
> Please do ask, I'll be happy to help if I can.
>
> Dave

Thanks!
Testing has restarted in a new Squeak 4.4-12327 image. OSProcess has been loaded from Monticello.
The computer that it is running on is a Mac OS X 10.6.8.

The app changeset has been filed in and I have debugged my way down to ExternalUnixOSProcess folkChild which
looks like it is trying to launch the program "/bin/sh" with the arguments "-c ffmpeg -i mmsh://wm.bbc.co.uk/wms/radio4xcoyopa/radio_4_extra_-_tuesday_0200.wma -acodec libmp3lame -ab 128k /Volumes/MediaVault/BBC/2525:Episode3.3.6.mp3".

I think this may be what is passed off to be executed as "/bin/sh -c ffmpeg -i mmsh://wm.bbc.co.uk/wms/radio4xcoyopa/radio_4_extra_-_tuesday_0200.wma -acodec libmp3lame -ab 128k /Volumes/MediaVault/BBC/2525:Episode3.3.6.mp3". If so then that is my problem. If I paste that string into an external terminal session it runs and I get some output, but ffmpeg only writes to the console and exits back to the prompt. If I delete "/bin/sh -c", it run from the command line and produces the file I expect.

Play time is over for this week. When I come back, I will see what I can do to get around /bin/sh and see
if that helps.

Thanks again for your help.

johnreed





Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

Chris Muller-3
In reply to this post by David T. Lewis
> If you are comfortable using the SqueakMap package browser, you can also load
> OSProcess that way. The "head" version from SqueakMap will load exactly the same
> thing that you loaded from OSProcess-dtl.89.

Yes, and yet another way is to simply execute the following:

  Installer new merge: #osProcess

See the "package-definitions" category of Installer for all the
packages you can load this way.

Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

Tobias Pape

On 13.01.2014, at 23:55, Chris Muller <[hidden email]> wrote:

>> If you are comfortable using the SqueakMap package browser, you can also load
>> OSProcess that way. The "head" version from SqueakMap will load exactly the same
>> thing that you loaded from OSProcess-dtl.89.
>
> Yes, and yet another way is to simply execute the following:
>
>  Installer new merge: #osProcess
>
> See the "package-definitions" category of Installer for all the
> packages you can load this way.
>
How many ways does that make to install OSProcess??

BEst
        -tobiad



signature.asc (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

David T. Lewis
On Tue, Jan 14, 2014 at 12:10:10AM +0100, Tobias Pape wrote:

>
> On 13.01.2014, at 23:55, Chris Muller <[hidden email]> wrote:
>
> >> If you are comfortable using the SqueakMap package browser, you can also load
> >> OSProcess that way. The "head" version from SqueakMap will load exactly the same
> >> thing that you loaded from OSProcess-dtl.89.
> >
> > Yes, and yet another way is to simply execute the following:
> >
> >  Installer new merge: #osProcess
> >
> > See the "package-definitions" category of Installer for all the
> > packages you can load this way.
> >
>
> How many ways does that make to install OSProcess??
>

I did not know about that last one myself, so maybe it's one too many :)

Dave


Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

JohnReed Maffeo
In reply to this post by JohnReed Maffeo
> ----- Original Message -----
> From: Chris Muller
> Sent: 01/13/14 03:55 PM
> To: The general-purpose Squeak developers list
> Subject: Re: [squeak-dev] Loading Packages Using Monticello Browser? OSProcess
>
> > If you are comfortable using the SqueakMap package browser, you can also load
> > OSProcess that way. The "head" version from SqueakMap will load exactly the same
> > thing that you loaded from OSProcess-dtl.89.
>
> Yes, and yet another way is to simply execute the following:
>
>  Installer new merge: #osProcess
>
> See the "package-definitions" category of Installer for all the
> packages you can load this way.

Based on the earlier threads, there are at least three ways to load packages from a variety of sources.

Monticello Browser
SqueakMap PackageBrowser
Installer (From Workspace)

Are there specific use cases for each of these options? It appears that #Installer may be
designed for programatic use where an additional set of known packages is desired on a repeatable basis.

Monticello and SqueakMap Browsers. I have not used the very much and have to look up the documentation
when ever I want to do something with them. (I have only published on package on Squeak Source and
it is no longer of much use because the technology it is based on is at end of life.)

SqueakMap seems to be end user focused with out of the box options.
Monticello is version control.

I don't know how SqueakMap3 and Git Hub play into this, but I suppose I will learn when I need to.

Thanks for the feedback,

johnreed





Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

timrowledge

On 13-01-2014, at 4:10 PM, JohnReed Maffeo <[hidden email]> wrote:
> Based on the earlier threads, there are at least three ways to load packages from a variety of sources.
>
> Monticello Browser
> SqueakMap PackageBrowser
> Installer (From Workspace)
And plain old filein.


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Useful random insult:- Paralyzed from the neck up.



Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

Chris Muller-3
In reply to this post by JohnReed Maffeo
Hi John-Reed,

>> See the "package-definitions" category of Installer for all the
>> packages you can load this way.
>
> Based on the earlier threads, there are at least three ways to load packages from a variety of sources.
>
> Monticello Browser
> SqueakMap PackageBrowser
> Installer (From Workspace)
>
> Are there specific use cases for each of these options?

Yes.  SqueakMap is for installing working software configurations
where you just want to operate the software and not really work on it.
 SqueakMap packages know what version of Squeak they're supposed to
run on, avoiding bit-rot so that the software is preserved in at least
on old-versions of Squeak.

(Installer new merge: #packageName) should be used when you want the
_latest_ code of an app that requires multiple packages, possibly
because you want to work on it.  This is what I use exclusively for
development.

You can also install individual packages from the MC browser, but many
packages require other packages, so unless you know what you're doing
you might get Warning pop-ups about certain code not able to be loaded
due to non-existent pre-requisites.

> It appears that #Installer may be
> designed for programatic use where an additional set of known packages is desired on a repeatable basis.

Not just desired, required.

> Monticello and SqueakMap Browsers. I have not used the very much and have to look up the documentation
> when ever I want to do something with them. (I have only published on package on Squeak Source and
> it is no longer of much use because the technology it is based on is at end of life.)

It is still supported for existing projects.  New projects can open up
shop at SS3.

> SqueakMap seems to be end user focused with out of the box options.
> Monticello is version control.

Yes.

Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

Tobias Pape
In reply to this post by timrowledge

On 14.01.2014, at 01:19, tim Rowledge <[hidden email]> wrote:

>
> On 13-01-2014, at 4:10 PM, JohnReed Maffeo <[hidden email]> wrote:
>> Based on the earlier threads, there are at least three ways to load packages from a variety of sources.
>>
>> Monticello Browser
>> SqueakMap PackageBrowser
>> Installer (From Workspace)
> And plain old filein.
And Metacello. (which works on Pharo and GemStone, too)




signature.asc (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Loading Packages Using Monticello Browser? OSProcess

Sean P. DeNigris
Administrator
In reply to this post by JohnReed Maffeo
JohnReed Maffeo wrote
I think this may be what is passed off to be executed as "/bin/sh -c ffmpeg -i mmsh://wm.bbc.co.uk/wms/radio4xcoyopa/radio_4_extra_-_tuesday_0200.wma -acodec libmp3lame -ab 128k /Volumes/MediaVault/BBC/2525:Episode3.3.6.mp3". If so then that is my problem.
A guess: your path does not include ffmpeg's location (it will be different from the command line). Replace ffmpeg with the full path string and try again. Also, if you load CommandShell as Dave suggested, you can check the error/output stream yourself to debug, like:
p := PipeableOSProcess command: 'ffmpeg -i mmsh://wm.bbc.co.uk/wms/radio4xcoyopa/radio_4_extra_-_tuesday_0200.wma -acodec libmp3lame -ab 128k /Volumes/MediaVault/BBC/2525:Episode3.3.6.mp3'.
p errorUpToEnd.
"or"
p output.

HTH
Cheers,
Sean