doctor: use os.uname().machine, on incomplete CPU info; display os.getwd() too

pull/7118/head
Delyan Angelov 2020-12-03 19:15:17 +02:00
parent 06eaded6ea
commit 793f9ae9e3
No known key found for this signature in database
GPG Key ID: 66886C0F12D595ED
1 changed files with 14 additions and 7 deletions

View File

@ -36,11 +36,17 @@ fn (mut a App) collect_info() {
} }
if os_kind == 'linux' { if os_kind == 'linux' {
info := a.cpu_info() info := a.cpu_info()
if info['model name'] != '' { mut cpu_details := ''
arch_details << info['model name'] if cpu_details == '' {
} else { cpu_details = info['model name']
arch_details << info['hardware']
} }
if cpu_details == '' {
cpu_details = info['hardware']
}
if cpu_details == '' {
cpu_details = os.uname().machine
}
arch_details << cpu_details
} }
if os_kind == 'windows' { if os_kind == 'windows' {
arch_details << a.cmd({ arch_details << a.cmd({
@ -51,13 +57,13 @@ fn (mut a App) collect_info() {
// //
mut os_details := '' mut os_details := ''
wsl_check := a.cmd({ wsl_check := a.cmd({
command: 'cat /proc/sys/kernel/osrelease' command: 'cat /proc/sys/kernel/osrelease'
}) })
if os_kind == 'linux' { if os_kind == 'linux' {
os_details = a.get_linux_os_name() os_details = a.get_linux_os_name()
info := a.cpu_info() info := a.cpu_info()
if 'hypervisor' in info['flags'] { if 'hypervisor' in info['flags'] {
if 'microsoft' in wsl_check { if 'microsoft' in wsl_check {
// WSL 2 is a Managed VM and Full Linux Kernel // WSL 2 is a Managed VM and Full Linux Kernel
// See https://docs.microsoft.com/en-us/windows/wsl/compare-versions // See https://docs.microsoft.com/en-us/windows/wsl/compare-versions
os_details += ' (WSL 2)' os_details += ' (WSL 2)'
@ -104,6 +110,7 @@ fn (mut a App) collect_info() {
command: 'cc --version' command: 'cc --version'
})) }))
a.println('') a.println('')
a.line('getwd', os.getwd())
vexe := os.getenv('VEXE') vexe := os.getenv('VEXE')
vroot := os.dir(vexe) vroot := os.dir(vexe)
os.chdir(vroot) os.chdir(vroot)