goterm icon indicating copy to clipboard operation
goterm copied to clipboard

Refactoring PTY creation to allow support for other platforms

Open FrankReh opened this issue 7 years ago • 9 comments

I have a variation on OpenPTY that is Darwin specific. It even works for both Sierra and High Sierra. For my own use, I can live with the goterm project being in a vendor directory and using it on Linux, Darwin and soon OpenBSD platforms. But the work to support Darwin was non-trivial and I'd like to share it but I don't see how without cloning the entire goterm repo. But cloning goterm means projects like goexpect wouldn't get the new options without also having been cloned for a one line import change.

FrankReh avatar Jan 31 '18 17:01 FrankReh

Have working OpenPTY versions for OpenBSD and FreeBSD too.

FrankReh avatar Jan 31 '18 22:01 FrankReh

Hey FrankReh , this sounds great! ... Happy to help out with getting this code working .. What would you suggest we'd do?

skalle avatar Jul 04 '18 07:07 skalle

https://github.com/google/goterm/tree/buildExperiment - Started to split the builds up there.. Adding in BSD after after sorting the Expect package out.

Don't have any Mac's around so might be a bit longer before I have a chance to get that one in.

skalle avatar Jul 19 '18 13:07 skalle

@skalle now that Go 11 supports modules, in my understanding all the fuss about cloning the repo to change the import should not be needed any more. Would you be interested in moving goterm and goexpect to support go modules (and, to keep it simple, to support only go >= 1.11) ? If yes, I would be happy to give it a try, since I want to be able to run goexpect from macoS :-)

Or do you have another, more appropriate place to discuss this ?

I am also happy to add CircleCI builds/tests for both goterm and goexpect.

marco-m avatar Mar 06 '19 06:03 marco-m

Hey marco-m .. I'd be more than happy for goexpect/goterm to have support for modules and MacOS.

CircleCI I've never heard of , guess I'll have to do some Googling.

About discussing, what timezone are you in? I'm in Sydney.

skalle avatar Mar 06 '19 21:03 skalle

@skalle CircleCI is like Travis CI, free for open source, github integration. I love CI systems and among the ones offered as a service I prefer CircleCI.

Regarding the timezone, I am in Europe.

marco-m avatar Mar 07 '19 19:03 marco-m

Updates: CircleCI for goterm https://github.com/google/goterm/pull/4 CircleCI for goexpect https://github.com/google/goexpect/pull/38

marco-m avatar Apr 07 '19 14:04 marco-m

Great stuff Marco.

skalle avatar Apr 08 '19 05:04 skalle

i need this feat

ChinaHDJ1 avatar Mar 24 '20 08:03 ChinaHDJ1