The library itself should be portable, as it doesn't contain any specific stuff that might have problems, and it has been reported to work under different unixes and even under windows. I tend to code based on posix/sus, but I think it's pretty much generic python both the library and the client, specially the former. I'm almost sure it will run unmodified on unix platforms (and the only reason i say 'almost' is because i didn't test it myself, but it certanly should). About the text mode client the only thing that is tied to a unix environment is the client terminal handling (which requires termios and fcntl modules), but it's isolated and has runtime detection, so if you don't have any of these modules, or they fail for some reason, the client will fall back to the normal behaviour. Also, doing select() on stdin isn't ok for some platforms (windows being the most popular one), but it's really safe for unix. Another thing that might be conflictive for non-unix platforms is that I assume the python interpreter is callable using "/usr/bin/env python"; these are the closest thing to a standard location on unix boxes. If you need to change this, the places are the first line of 'msn', and somewhere inside 'install'. The next possible problem (always talking about non-unix platforms) is 'msnsetup' and the configuration file location; the first one requires bash, so if you don't have it, you can just create your own msnrc file based on 'msnrc.sample'; but the location is assumed to be $HOME/.msn/msnrc, and maybe you don't have '$HOME' (or you don't even have environment variables at all), in this case you specify the location on the command line, as the first and only argument to msn: "msn /path/to/msnrc". If you run it under a different platform, please let me know; specially if you had (or have) any problems. Thanks, Alberto