TimeToogo / tunshell

Remote shell into ephemeral environments šŸš šŸ¦€
https://tunshell.com
MIT License
780 stars 58 forks source link

FreeBSD #8

Closed probonopd closed 3 years ago

probonopd commented 4 years ago

Please add support for FreeBSD. Currently it just says "Unsupported system".

curl -sSf https://lets.tunshell.com/init.sh | sh /dev/stdin T ... ... eu.relay.tunshell.com
Unsupported system (FreeBSD)

Reference: https://github.com/cirruslabs/cirrus-ci-docs/issues/432#issuecomment-687635564

TimeToogo commented 4 years ago

Hi @probonopd,

Looks like this is not going to be simple one. Few blockers on this:

probonopd commented 4 years ago

Hi @TimeToogo, thanks for taking the time to look into this.

statically-linked binary

I'd have no issues with that.

GitHub actions does not support FreeBSD runners

https://cirrus-ci.org/ does, and it can be integrated with GitHub. I am using it here to build an application for FreeBSD.

Something like this could be used to upload the build artefacts to GitHub Releases if needed.

TimeToogo commented 4 years ago

@probonopd I've been experimenting a little more and I've deployed dynamically-linked x86 64/32 bit binaries for FreeBSD which can currently be used by used a modified version of the install shell script:

curl -sSf https://lets.tunshell.com/init--bsd.sh

Considering the nature of this app I'm not comfortable adding a relatively niche deployment platform. I'm going to hold off on merging feature/freebsd until solutions can be found to the previous points.

probonopd commented 4 years ago

Thanks a lot @TimeToogo.

Works like a charm for me, I am very happy :+1:

wez commented 4 years ago

I published portable-pty 0.3.1 with the FreeBSD build fix for that component.

@probonopd: thanks for the info about FreeBSD CI; I'll see if I can hook that up in wezterm.

wez commented 4 years ago

FWIW, setting up FreeBSD CI for a rust project was pretty easy (but 2x slower than my slowest build target) using Cirrus: https://github.com/wez/wezterm/commit/4c9af4617961e8cad8ca682708f1dba08221d63c The docs for cirrus had some info on capturing artifacts from the build, so it should be possible for you to deploy binaries from there.

probonopd commented 4 years ago

2x slower than my slowest build target

Is it CPU and/or RAM-bound? Then you can add more CPUs in the Cirrus CI configuration like this:

freebsd_instance:
  image: freebsd-12-1-release-amd64
  cpu: 4
  memory: 8G
wez commented 4 years ago

2x slower than my slowest build target

Is it CPU and/or RAM-bound? Then you can add more CPUs in the Cirrus CI configuration like this:

freebsd_instance:
  image: freebsd-12-1-release-amd64
  cpu: 4
  memory: 8G

Thanks; that extra CPU made it more reasonable!

Mic92 commented 3 years ago

Was the freebsd link at https://lets.tunshell.com/init--bsd.sh removed again?

TimeToogo commented 3 years ago

@Mic92 @probonopd FreeBSD support is now added to the standard builds. No custom script is necessary.

Mic92 commented 3 years ago

cool!

phil-blain commented 3 years ago

Hi! I successfully used tunshell to log into a Cirrus-CI FreeBSD VM. Thanks for this tool! However I noticed FreeBSD support is not listed in the README. Just thought Iā€™d let you know :)