moul/gotty-client

[BUG] Golang Install

collinmccarthy opened this issue ยท 3 comments

Describe the bug
The Golang install with go version go1.14.4 linux/amd64 produces too many errors to install.

To Reproduce
On Ubuntu 18.04 LTS I've done the following to install / setup golang, gotty, and gotty client.

# Download latest from https://golang.org/dl/
wget -c https://golang.org/dl/go1.14.4.linux-amd64.tar.gz

# Check sum
sha256sum go1.14.4.linux-amd64.tar.gz | grep aed845e4185a0b2a3c3d5e1d0a35491702c55889192bb9c30e67a3de6849c067

# Extract to /usr/local
sudo tar -C /usr/local/ -xvzf go1.14.4.linux-amd64.tar.gz

# Set environment variables
export GOPATH="$HOME/go"
export GOBIN="$GOPATH/bin"
export PATH=$PATH:/usr/local/go/bin:$GOBIN

# Install GoTTy (works)
go get github.com/yudai/gotty

# Install GoTTy-client (fails)
go get github.com/moul/gotty-client/cmd/gotty-client

The output I get from trying to install gotty-client is as follows.

(base) cmccarth@luigi:~$ go get github.com/moul/gotty-client/cmd/gotty-client
# github.com/moul/gotty-client/cmd/gotty-client
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:21:5: app.Author undefined (type *cli.App has no field or method Author)
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:22:5: app.Email undefined (type *cli.App has no field or method Email)
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:40:15: cannot use cli.BoolFlag literal (type cli.BoolFlag) as type cli.Flag in slice literal:
        cli.BoolFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:43:4: unknown field 'EnvVar' in struct literal of type cli.BoolFlag
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:45:15: cannot use cli.BoolFlag literal (type cli.BoolFlag) as type cli.Flag in slice literal:
        cli.BoolFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:48:4: unknown field 'EnvVar' in struct literal of type cli.BoolFlag
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:50:15: cannot use cli.BoolFlag literal (type cli.BoolFlag) as type cli.Flag in slice literal:
        cli.BoolFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:53:4: unknown field 'EnvVar' in struct literal of type cli.BoolFlag
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:55:17: cannot use cli.StringFlag literal (type cli.StringFlag) as type cli.Flag in slice literal:
        cli.StringFlag does not implement cli.Flag (Apply method has pointer receiver)
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:63:4: unknown field 'EnvVar' in struct literal of type cli.BoolFlag
go/src/github.com/moul/gotty-client/cmd/gotty-client/main.go:63:4: too many errors

I'm not very familiar with Go but I assumed if I had gotty running correctly then I could simply install gotty-client without any additional setup, using the command you have in the README.

Thank you for your help!

@moul Is there a simple fix here? Any advice would be much appreciated.

moul commented

Hi, I don't understand why go get full.url sometimes make strange behavior, from what I understood, in this specific case, the go.mod is not always strictly respected

I plan to remove the go get github.com/moul/... from the README of my projects when I ship binaries; and suggest the following instead:

git clone https://github.com/moul/gotty-client
cd gotty-client
make install  # or just `go install ./cmd/gotty-client`

anyway, I will upload compiled binaries on the release to also address #102 (see #103)

๐ŸŽ‰ This issue has been resolved in version 1.9.0 ๐ŸŽ‰

The release is available on GitHub release

Your semantic-release bot ๐Ÿ“ฆ๐Ÿš€