-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
A few Requests for Enhancements (dont feel cool enough to do it myself):
The local IP address should be detected properly (it says my internet IP would be 127.0.0.1 -- hmm, that not cool). There should be a squeak server storing the "badged" users, for im too lazy to always seek for my friends IPs over different messangers. There should be a way to see all online squeakers, who wish to be seen.
regards,
nick - -- No committee could ever come up with anything as revolutionary as a camel -- anything as practical and as perfectly designed to perform effectively under such difficult conditions. -- Laurence J. Peter
On Sunday 26 May 2002 05:45 am, Niko Schwarz wrote:
The local IP address should be detected properly (it says my internet IP would be 127.0.0.1 -- hmm, that not cool).
Which local IP address? It's not uncommon to have several on a single machine.
The IP address returned is the first one returned by gethostbyname() (as I recall), which can return many addresses.
On Sun, 26 May 2002, Ned Konz wrote:
On Sunday 26 May 2002 05:45 am, Niko Schwarz wrote:
The local IP address should be detected properly (it says my internet IP would be 127.0.0.1 -- hmm, that not cool).
The IP address returned is the first one returned by gethostbyname() (as I recall), which can return many addresses.
This is correct. Assuming `order hosts,bind' in /etc/host.conf, this means that the NetNameResolver class>>localHostAddress will return the first entry found in /etc/hosts for the local machine. If you have something like
127.0.0.1 localhost mymachine.mydomain mymachine the.real.ip.addr mymachine.mydomain mymachine
then try changing it to
the.real.ip.addr mymachine.mydomain mymachine 127.0.0.1 localhost mymachine.mydomain mymachine
or simply delete everything but `localhost' for 127.0.0.1 and use `localhost' explicitly if/when you need the loopack address instead of the real address.
Ian
Niko Schwarz niko.schwarz@gmx.net said:
The local IP address should be detected properly (it says my internet IP would be 127.0.0.1 -- hmm, that not cool).
In addition to the comments from the others, here's TCP/IP mantra #1:
A network interface has an IP address. A host (machine) does not.
Repeat a couple of thousand times, lighting some incense may help.
Now, for automagically connecting Squeaks to one another, this is a bit troublesome - if you cannot know your IP address, how do you tell your friends where to reach you?
The best answer is: you don't. One possibility for a LAN is to send multicast UDP packets, the receiver of the packet can ask its local IP stack for the sender, and connect back to that address. It's almost certain that this address is the correct address, modulo funny stuff like masquerading firewalls, NAT, etcetera.
When you want to go over the Internet, there's no such possibility - multicast and broadcast don't work very well. The solution would be to have a well known location to bootstrap on. For example, we could run a Squeak image on a publicly known IP address (or more, for availability reasons) that your image would connect to in order to register a (publicly or semi-publicly known) handle together with your address. A sort of central registry of Squeak people which you could use to lookup your friends' current location in order to contact them (not unlike the ICQ architecture).
Folks,
I've just released a new VM for 3.2/3.3 which is available in the download area of http://squeak.sourceforge.net/ (click on the download button for the "Squeak-Win32" release to get it).
There have been various improvements and fixes including: * Integrated support for large files (now 64bit clean) * Integrated D3D and OpenGL support: This means there are no longer two separate downloads for D3D and OpenGL. You can choose what you want by pressing F2 go into the "Display and Sound" menu and switch between D3D and OpenGL. Note that in order to take effect, a restart of the Squeak VM may be required (the 3D subsystem binds on first use and will _not_ change after it has been used). * Fixed tons of tiny issues with socket error reporting * Added limited support for getting/setting socket options * Fixed the "512 byte offset" problem * Changed ini-file name to match that of the VM: Meaning that a VM which is named "foo.exe" will look for an ini-file named "foo.ini" * Addded support for two new preferences in the ini-file: WindowTitle="Some window title" will display "Some window title" as the title string for Squeak. ImageName="foo\bar.image" will take the image file name relative to the VM location. Note that the name can be anything so something like "foo\bar.dat" is perfectly acceptable.
Enjoy, - Andreas
cg@cdegroot.com (Cees de Groot) wrote:
When you want to go over the Internet, there's no such possibility - multicast and broadcast don't work very well. The solution would be to have a well known location to bootstrap on. For example, we could run a Squeak image on a publicly known IP address (or more, for availability reasons) that your image would connect to in order to register a (publicly or semi-publicly known) handle together with your address. A sort of central registry of Squeak people which you could use to lookup your friends' current location in order to contact them (not unlike the ICQ architecture).
Georgia Tech has a long-simmering project to do just this. The server exists, but the badge morphs haven't been updated yet. I'm sure someone will post here when it gets further!
Incidentally, there was an older project floating around to actually use Jabber, which is an open-source version of ICQ/AIM/MSN/etc. Sadly there was little progress to actually come to light. It would be really neat to tie in Squeak identification with an existing chat system. This lets someone else figure out how to handle passwords, and how to set up the protocol. Plus it would be nice to have chat clients in Squeak, anyway. :) Jabber has a neat feature that you can tunnel other protocols through it -- so a Jabber client is also a client for all of the others. But, alas. The GT project is simply making a HTTP server where IP's can be registered.
Lex
Incidentally, there was an older project floating around to actually use Jabber, which is an open-source version of ICQ/AIM/MSN/etc.
I am not sure if this is relevant here but this DotGNU (http://www.dotgnu.org/) announcement was published yesterday:
[DotGNU Announcement]The DotGNU Project officially endorses the use of the Jabber Protocols
"The DotGNU Project hereby officially endorses the Jabber protocols (as described in the Internet Draft draft-miller-jabber-00.txt) as a mechanism for routing information via DotGNU webservice technologies."
http://subscribe.dotgnu.org/pipermail/announce/2002-May/000004.html
Andreas
Can I run Squeak without a Windows Manager? only with the XServer...
thank you
FeDe
Thursday, September 26, 2002, 4:36:55 PM, you wrote:
IP> On Thu, 26 Sep 2002, Bert Freudenberg wrote:
On Thu, 26 Sep 2002, Federico E. Ferrara wrote:
Can I run Squeak without a Windows Manager? only with the XServer...
Yes.
IP> Don't forget the `-fullscreen' option, which might be useful in this IP> situation.
IP> Ian
Thank you for you response, I will try it.
Hi Federico,
I have installed an internal company swiki on Mac OS X server 10.1.5 with CocoaSqueak running headless as a tool.
I have just compiled the example from Marcel and installed it under the control of watchdog.
See: http://groups.yahoo.com/group/squeak/message/47304 http://groups.yahoo.com/group/squeak/message/47305 http://www.metaobject.com/downloads/Squeak/CocoaSqueak-3.2.1.dmg http://www.metaobject.com/downloads/Squeak/CocoaSqueak_3_2_1_sources.tgz
The first two links contain SqueakServer as a tool and as a Cocoa bundle. The third contain the Squeak.framwork used by SqueakServer. You can embed an image in the bundle Resouces and have a one bundle distribuable server application. The fourth is the source of the third.
Alain
Le Jeudi 26 septembre 2002, à 09:18 , Federico E. Ferrara a écrit :
Can I run Squeak without a Windows Manager? only with the XServer...
thank you
FeDe
On Thu, 26 Sep 2002, Alain Fischer wrote:
I have installed an internal company swiki on Mac OS X server 10.1.5 with CocoaSqueak running headless as a tool.
Le Jeudi 26 septembre 2002, à 09:18 , Federico E. Ferrara a écrit :
Can I run Squeak without a Windows Manager? only with the XServer...
Okay, now I'm confused. Are we talking about XServer or Xserver?
(And which idiot at Apple was responsible for calling something `XServer'? [And will they be first against the wall when the revolution comes??])
Ian
PS: my third question was largely rhetorical.
Okay, now I'm confused. Are we talking about XServer or Xserver?
Okay, I am ignorant ;-)
What's the differences between 'XServer' and 'Xserver' ?
Cheers,
PhiHo.
----- Original Message ----- From: "Ian Piumarta" ian.piumarta@inria.fr To: squeak-dev@lists.squeakfoundation.org Sent: Thursday, September 26, 2002 4:17 PM Subject: Re: (no subject) Squeak without a Windows Manager
On Thu, 26 Sep 2002, Alain Fischer wrote:
I have installed an internal company swiki on Mac OS X server 10.1.5 with CocoaSqueak running headless as a tool.
Le Jeudi 26 septembre 2002, à 09:18 , Federico E. Ferrara a écrit :
Can I run Squeak without a Windows Manager? only with the XServer...
Okay, now I'm confused. Are we talking about XServer or Xserver?
(And which idiot at Apple was responsible for calling something `XServer'? [And will they be first against the wall when the revolution comes??])
Ian
PS: my third question was largely rhetorical.
On Thu, 26 Sep 2002, Ian Piumarta wrote:
On Thu, 26 Sep 2002, Alain Fischer wrote:
I have installed an internal company swiki on Mac OS X server 10.1.5 with CocoaSqueak running headless as a tool.
Le Jeudi 26 septembre 2002, à 09:18 , Federico E. Ferrara a écrit :
Can I run Squeak without a Windows Manager? only with the XServer...
Okay, now I'm confused. Are we talking about XServer or Xserver?
We're talking XServer, otherwise "Windows (sic!) Manager" wouldn't make sense.
(And which idiot at Apple was responsible for calling something `XServer'?
Marketing weenies?
[And will they be first against the wall when the revolution comes??])
Of course they will. Along with their brothers from various other vendors.
-- Bert
On Thu, 26 Sep 2002, PhiHo Hoang wrote:
Okay, now I'm confused. Are we talking about XServer or Xserver?
Okay, I am ignorant ;-) What's the differences between 'XServer' and 'Xserver' ?
My best guess is that Xserver means "the X [as in X11 as in X Consortium as in x.org as in XFree86 as in MIT's Project Athena] Window System display server" whereas XServer might just mean an overhyped G4 mounted in a rack [as in www.apple.com/xserve].
But I'm probably wrong.
Ian
On Thu, 26 Sep 2002, PhiHo Hoang wrote:
Okay, now I'm confused. Are we talking about XServer or Xserver?
Okay, I am ignorant ;-) What's the differences between 'XServer' and 'Xserver' ?
vs.
or possibly
;)
Thanks, Avi and Ian.
Apparently, there are also 'X Server' and 'Xserve'.
How's that for confusion ;-)
Cheers,
PhiHo.
----- Original Message ----- From: "Avi Bryant" avi@beta4.com To: squeak-dev@lists.squeakfoundation.org Sent: Thursday, September 26, 2002 5:09 PM Subject: Re: (no subject) Squeak without a Windows Manager
On Thu, 26 Sep 2002, PhiHo Hoang wrote:
Okay, now I'm confused. Are we talking about XServer or Xserver?
Okay, I am ignorant ;-) What's the differences between 'XServer' and 'Xserver' ?
vs.
or possibly
;)
On Thu, 26 Sep 2002, PhiHo Hoang wrote:
Okay, now I'm confused. Are we talking about XServer or Xserver?
Okay, I am ignorant ;-) What's the differences between 'XServer' and 'Xserver' ?
About the same like between a Windows Manager and a Window Manager.
-- Bert
Funny, I felt the same way about the people that came up with the name "DirectX".
On Thu, Sep 26, 2002 at 10:23:44PM +0200, Andreas Raab wrote:
(And which idiot at Apple was responsible for calling something
`XServer'?
[And will they be first against the wall when the revolution comes??])
They will.
- Andreas
Federico E. Ferrara feferrara@gmx.net said:
Can I run Squeak without a Windows Manager? only with the XServer...
You can run all X apps without a Window Manager being present. It's just a bit hard to move these windows around, but apart from that everything ticks on. With Squeak, it makes a lot of sense :-). Just create a special user you can login as, and have an .xinitrc with just: 'squeak -fullscreen <image>' for that user.
On 27 Sep 2002, Cees de Groot wrote:
Federico E. Ferrara feferrara@gmx.net said:
Can I run Squeak without a Windows Manager? only with the XServer...
You can run all X apps without a Window Manager being present. It's just a bit hard to move these windows around, but apart from that everything ticks on. With Squeak, it makes a lot of sense :-). Just create a special user you can login as, and have an .xinitrc with just: 'squeak -fullscreen <image>' for that user.
I'd rather use .xsession , and fix -fullscreen first.
At least here the parameter does nothing, whether with a WM or without.
What I see from the source is this: The window is always created with the saved size. In SetWindowSize() the fullscreen size is set via noteResize(), but when the window is mapped, the first ConfigureEvent does a noteResize() with the actual size (which still is the default), overwriting the requested fullscreen size.
-- Bert
Bert,
I'd rather use .xsession , and fix -fullscreen first.
At least here the parameter does nothing, whether with a WM or without.
It worked for me, but then I tried it without a WM and like you say it creates the window with the saved size. I fixed it. (With a WM it now creates the window without taking the decoration into account [at least under twm derivatives], but that's an issue between the user and his/her window manager.)
If anyone wants this right away, in SetUpWindow() find the section
if (savedWindowSize != 0) { right= windowBounds.x + ((unsigned) savedWindowSize >> 16); bottom= windowBounds.y + (savedWindowSize & 0xFFFF); } else { right= windowBounds.x + windowBounds.width; bottom= windowBounds.y + windowBounds.height; }
and replace it with:
if (fullScreen) { right= scrW; bottom= scrH; } else if (savedWindowSize != 0) { right= windowBounds.x + ((unsigned) savedWindowSize >> 16); bottom= windowBounds.y + (savedWindowSize & 0xFFFF); } else { right= windowBounds.x + windowBounds.width; bottom= windowBounds.y + windowBounds.height; }
Ian
On Fri, 27 Sep 2002, Ian Piumarta wrote:
Bert,
I'd rather use .xsession , and fix -fullscreen first.
At least here the parameter does nothing, whether with a WM or without.
It worked for me, but then I tried it without a WM and like you say it creates the window with the saved size. I fixed it. (With a WM it now creates the window without taking the decoration into account [at least under twm derivatives], but that's an issue between the user and his/her window manager.)
If anyone wants this right away, in SetUpWindow() find the section ...
So, can we remove SetWindowSize() now?
-- Bert
On Fri, 27 Sep 2002, Ian Piumarta wrote:
On Fri, 27 Sep 2002, Bert Freudenberg wrote:
So, can we remove SetWindowSize() now?
Probably not. It's used by OSProcPlug when spawning duplicate X displays.
I see.
ObSqueak: I just added a "Squeak" session to gdm (Gnome's xdm), bypassing any WM. From login to a fullscreen Squeak in a fraction of a second :-)
And Ian: Your TTYMorph is great! How could it pass the terminal type to the shell? Currently, I have to setenv TERM=xterm every time ... But I send this mail from pine running from within Squeak. Yay! :-)
-- Bert
On Fri, 27 Sep 2002, Bert Freudenberg wrote:
And Ian: Your TTYMorph is great!
Thankyou. :)
How could it pass the terminal type to the shell?
It recognises (and answers) the terminal type query sequence. Bash gets the terminal type right (as should telnet if the server supports the option), but if you're using csh (which your setenv would suggest) then try something like
setenv TERM=`tset -q`
in your .login (or whatever).
Ian
On Fri, Sep 27, 2002 at 04:05:07PM +0200, Bert Freudenberg wrote:
And Ian: Your TTYMorph is great! How could it pass the terminal type to the shell? Currently, I have to setenv TERM=xterm every time ... But I send this mail from pine running from within Squeak. Yay! :-)
Yes, the TTYMorph is great!
To set $TERM from within Squeak:
OSProcess thisOSProcess environmentAt: #TERM put: 'xterm'
Dave
On Fri, Sep 27, 2002 at 02:56:45PM +0200, Ian Piumarta wrote:
On Fri, 27 Sep 2002, Bert Freudenberg wrote:
So, can we remove SetWindowSize() now?
Probably not. It's used by OSProcPlug when spawning duplicate X displays.
I think it's OK to remove it now. I commented out the one remaining call to SetWidowSize(), and the OSProcess X display stuff still works fine.
Dave
On Fri, 27 Sep 2002, Ian Piumarta wrote:
On Fri, 27 Sep 2002, Bert Freudenberg wrote:
And Ian: Your TTYMorph is great!
Thankyou. :)
How could it pass the terminal type to the shell?
It recognises (and answers) the terminal type query sequence. Bash gets the terminal type right (as should telnet if the server supports the option),
No it does not (when I use your default cmd line "/bin/bash -i").
but if you're using csh (which your setenv would suggest) then try something like
setenv TERM=`tset -q`
in your .login (or whatever).
Yes, I usually use tcsh. I'll try that. Though, when I use xterm or ssh into the box the terminal type is correct. But I must admit I have no idea how the terminal type is communicated to the shell.
-- Bert
On Sat, 28 Sep 2002, Bert Freudenberg wrote:
No it does not (when I use your default cmd line "/bin/bash -i").
Oops -- mine was inheriting it from the parent process.
setenv TERM=`tset -q`
...and tset was getting its info from my TERM varible too. When I unset it, tset has to ask me for the terminal type. (I distinctly remember using tset [or something similar] on SunOS 3 and 4 to set TERM in my .profile based on the ID string sent back from the terminal -- I wonder if that was a Sun-specific thing?)
Yes, I usually use tcsh. I'll try that. Though, when I use xterm or ssh into the box the terminal type is correct. But I must admit I have no idea how the terminal type is communicated to the shell.
xterm sets it in the environment before forking the shell. So I guess another answer to your question would be: set TERM=xterm in the environment of the Squeak process before spawning the shell. (OSPP can probably do this.)
FWIW, ssh passes several environment variables to the server side during handshaking, including TERM (even though the manual page claims that TERM isn't one of them). The telnet handshake can also pass TERM to the remote side.
Ian
On Sat, 28 Sep 2002, Ian Piumarta wrote:
On Sat, 28 Sep 2002, Bert Freudenberg wrote:
Yes, I usually use tcsh. I'll try that. Though, when I use xterm or ssh into the box the terminal type is correct. But I must admit I have no idea how the terminal type is communicated to the shell.
xterm sets it in the environment before forking the shell. So I guess another answer to your question would be: set TERM=xterm in the environment of the Squeak process before spawning the shell. (OSPP can probably do this.)
It might be a better idea to extend PseudoTTY with a #command:arguments:environment: call that would more closely resemble the execve() system call. One might want to use PPTYP w/o OSPP.
By the way: OSPP includes a security check so it is not doing harm in a browser plugin context. Is there something similar in PPTYP? Should there be?
-- Bert
squeak-dev@lists.squeakfoundation.org