K9s: Crashes if executing in `cmder`

Created on 25 Feb 2019  ·  10Comments  ·  Source: derailed/k9s

I tried to execute k9s on Windows with the very popular cmder shell.
The following error occured:

λ k9s
panic: character set not supported

goroutine 1 [running]:
github.com/derailed/k9s/internal/views.(*appView).Run(0xc0002961b0)
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/internal/views/app.go:125 +0x9a
github.com/derailed/k9s/internal/cmd.run(0x237d620, 0x23a8ec0, 0x0, 0x0)
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/internal/cmd/root.go:135 +0xe7
github.com/spf13/cobra.(*Command).execute(0x237d620, 0xc000084170, 0x0, 0x0, 0x237d620, 0xc000084170)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x2d3
github.com/spf13/cobra.(*Command).ExecuteC(0x237d620, 0xc0000b88f0, 0xc000471f78, 0xc000471f88)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x304
github.com/spf13/cobra.(*Command).Execute(0x237d620, 0xc0000001a4, 0xc0000b88f0)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x32
github.com/derailed/k9s/internal/cmd.Execute()
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/internal/cmd/root.go:118 +0x34
main.main()
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/main.go:24 +0x27
bug good first issue help wanted

All 10 comments

Need help on this, if there are any windows folks tuning in. I think there might be an issue on how cmder set TERM env, but don't have access/knowledge on windows to further assist.

Need help on this, if there are any windows folks tuning in. I think there might be an issue on how cmder set TERM env, but don't have access/knowledge on windows to further assist.

gdamore/tcell is not supporting cygwin style terminals https://github.com/gdamore/tcell#windows.

They were planning on adding support since Nov 15, 2016, but nothing has come of it. https://github.com/gdamore/tcell/issues/133

```panic: character set not supported [recovered]
panic: close of nil channel

goroutine 1 [running]:
github.com/gdamore/tcell.(tScreen).Fini(0xc0003de680)
C:/proj/github/go/pkg/mod/github.com/gdamore/[email protected]/tscreen.go:406 +0x301
github.com/derailed/tview.(
Application).Stop(0xc00047b680)
C:/proj/github/go/pkg/mod/github.com/derailed/[email protected]/application.go:273 +0x97
github.com/derailed/k9s/internal/cmd.run.func1(0xc0002eed80)
C:/proj/github/k9s/internal/cmd/root.go:154 +0xca
panic(0x14a3260, 0xc00029ed00)
C:/Go/src/runtime/panic.go:522 +0x1c3
.....
C:/proj/github/k9s/internal/cmd/root.go:123 +0x35
main.main()
C:/proj/github/k9s/main.go:25 +0x27```

dunno if related, but msys2 also doesn't work. Only gives me Boom!! close of nil channel. in output though. FWIW: TERM=xterm-256color

Git Bash gives same error

Also error in Terminus shell. Works in normal Powershell 5 and Powershell 6 shell.

____ __.________
| |/ _/ __ ______
| < ____ / ___/
| | \ / /___ \
|____|__ \ /____//____ >
\/ \/

Boom!! close of nil channel.

+1 on cygwin

 ____  __.________
|    |/ _/   __   \______
|      < \____    /  ___/
|    |  \   /    /\___ \
|____|__ \ /____//____  >
        \/            \/

Boom!! close of nil channel.

Log output:

ESC[90m7:29AMESC[0m ESC[32mINFESC[0m 🐶 K9s starting up...
ESC[90m7:29AMESC[0m ESC[32mINFESC[0m ✅ Kubernetes connectivity
ESC[90m7:29AMESC[0m ESC[32mINFESC[0m No skin file found. Loading stock skins.
ESC[90m7:29AMESC[0m ESC[32mINFESC[0m No benchmark config file found, using defaults. ESC[31merror=ESC[0mESC[31m"open C:\\Users\\user\\.k9s\\bench-web-i-generic.yml: Das System kann die angegebene Datei nicht finden."ESC[0m
ESC[90m7:29AMESC[0m ESC[32mINFESC[0m No namespace specified using all namespaces
ESC[90m7:29AMESC[0m ESC[1mESC[31mERRESC[0mESC[0m Boom! close of nil channel
ESC[90m7:29AMESC[0m ESC[1mESC[31mERRESC[0mESC[0m goroutine 1 [running]:
runtime/debug.Stack(0x294f900, 0x1845f03, 0x0)
        /usr/local/Cellar/go/1.12.5/libexec/src/runtime/debug/stack.go:24 +0xa4
github.com/derailed/k9s/cmd.run.func1()
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/cmd/root.go:67 +0x18c
panic(0x165dd40, 0x1a53ae0)
        /usr/local/Cellar/go/1.12.5/libexec/src/runtime/panic.go:522 +0x1c3
github.com/gdamore/tcell.(*tScreen).Fini(0xc0000ac680)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/gdamore/[email protected]/tscreen.go:406 +0x301
github.com/derailed/tview.(*Application).Stop(0xc00053f380)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/derailed/[email protected]/application.go:273 +0x97
github.com/derailed/k9s/internal/views.(*appView).BailOut(0xc0005b3e90)
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/internal/views/app.go:165 +0x5a
panic(0x163e540, 0xc00036dff0)
        /usr/local/Cellar/go/1.12.5/libexec/src/runtime/panic.go:522 +0x1c3
github.com/derailed/k9s/internal/views.(*appView).Run(0xc0005b3e90)
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/internal/views/app.go:198 +0x211
github.com/derailed/k9s/cmd.run(0x293fde0, 0x296be20, 0x0, 0x0)
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/cmd/root.go:80 +0xfe
github.com/spf13/cobra.(*Command).execute(0x293fde0, 0xc000060180, 0x0, 0x0, 0x293fde0, 0xc000060180)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x2b5
github.com/spf13/cobra.(*Command).ExecuteC(0x293fde0, 0x0, 0x0, 0x0)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x2f3
github.com/spf13/cobra.(*Command).Execute(...)
        /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:800
github.com/derailed/k9s/cmd.Execute()
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/cmd/root.go:57 +0x35
main.main()
        /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/main.go:26 +0x1ae

Not sure if the "file not found" concerning the benchmark config is the culprit here...

Git Bash gives same error

I have the same issue. Has there been any progress on this one?

Similar error with Fluent Terminal

Log output:

6:40AM INF 🐶 K9s starting up...
6:40AM INF ✅ Kubernetes connectivity
6:40AM INF No skin file found. Loading stock skins.
6:40AM INF No benchmark config file found, using defaults. error="open C:\\Users\\me\\.k9s\\bench-aigis-vm-dev.yml: The system cannot find the file specified."
6:40AM ERR Boom! close of nil channel
6:40AM ERR goroutine 1 [running]:
runtime/debug.Stack(0x2952900, 0x1846f03, 0x0)
    /usr/local/Cellar/go/1.12.6/libexec/src/runtime/debug/stack.go:24 +0xa4
github.com/derailed/k9s/cmd.run.func1()
    /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/cmd/root.go:67 +0x18c
panic(0x165ece0, 0x1a55510)
    /usr/local/Cellar/go/1.12.6/libexec/src/runtime/panic.go:522 +0x1c3
github.com/gdamore/tcell.(*tScreen).Fini(0xc0000ac4e0)
    /Users/fernand/go_wk/derailed/pkg/mod/github.com/gdamore/[email protected]/tscreen.go:406 +0x301
github.com/derailed/tview.(*Application).Stop(0xc0004af400)
    /Users/fernand/go_wk/derailed/pkg/mod/github.com/derailed/[email protected]/application.go:273 +0x97
github.com/derailed/k9s/internal/views.(*appView).BailOut(0xc0004b18f0)
    /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/internal/views/app.go:165 +0x5a
panic(0x163f4e0, 0xc00036bfe0)
    /usr/local/Cellar/go/1.12.6/libexec/src/runtime/panic.go:522 +0x1c3
github.com/derailed/k9s/internal/views.(*appView).Run(0xc0004b18f0)
    /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/internal/views/app.go:198 +0x211
github.com/derailed/k9s/cmd.run(0x2942de0, 0xc00005f140, 0x0, 0x4)
    /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/cmd/root.go:80 +0xfe
github.com/spf13/cobra.(*Command).execute(0x2942de0, 0xc000098010, 0x4, 0x7, 0x2942de0, 0xc000098010)
    /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:766 +0x2b5
github.com/spf13/cobra.(*Command).ExecuteC(0x2942de0, 0x0, 0x0, 0x0)
    /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x2f3
github.com/spf13/cobra.(*Command).Execute(...)
    /Users/fernand/go_wk/derailed/pkg/mod/github.com/spf13/[email protected]/command.go:800
github.com/derailed/k9s/cmd.Execute()
    /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/cmd/root.go:57 +0x35
main.main()
    /Users/fernand/go_wk/derailed/src/github.com/derailed/k9s/main.go:26 +0x1ae

@dannyyy @colinwilson @r0guebyte @gladiac1337 I've updated the terminal support lib K9s depends on. Could you give the latest drop a rinse and see if we're happier? Thank you!!

@derailed Thank you. 👌

Was this page helpful?
0 / 5 - 0 ratings

Related issues

pgoodjohn picture pgoodjohn  ·  4Comments

ctritten picture ctritten  ·  3Comments

RothAndrew picture RothAndrew  ·  3Comments

mimizone picture mimizone  ·  4Comments

brentco picture brentco  ·  4Comments