Commit Graph

304 Commits

Author SHA1 Message Date
李通洲 b8f14c964a Disk: detect Windows volumes on WSL 2022-10-28 16:29:31 +08:00
李通洲 de964d3e77 Disk: only prints useful mount points on Android
fix #322
2022-10-28 16:29:31 +08:00
李通洲 4634606a36 CpuUsage: clearify the restriction on Android 2022-10-28 16:29:31 +08:00
Linus Dierheimer 5d306ed9f3 Don't print vulkan driver info, if it contains new lines
#316
2022-10-27 13:23:24 +02:00
李通洲 2ee5b3b7a5 TerminalShell: add support for tcsh
which is the default shell for freebsd
2022-10-27 16:45:59 +08:00
李通洲 302a588812 TerminalShell: fix shellExe detection on macOS
`proc_pidpath()` works only if bufsize >= PROC_PIDPATHINFO_MAXSIZE
2022-10-27 16:45:59 +08:00
李通洲 5472621ac0 Disk: support freebsd
Also rewrite macOS detection to share code with bsd
2022-10-27 16:45:59 +08:00
李通洲 9ad7ba7144 CpuTemp: support freebsd
Untested
2022-10-27 11:15:53 +08:00
李通洲 895d151e2e Host: support freebsd 2022-10-27 11:15:53 +08:00
李通洲 60ad6792ba CpuUsage: support freebsd 2022-10-27 10:17:29 +08:00
李通洲 f93bd9e28b TerminalFont: fix platform font detection
my bad...
2022-10-26 20:02:15 +08:00
李通洲 9c73f6b787 TerminalShell: support freebsd 2022-10-26 19:49:25 +08:00
李通洲 64b9f69fb1 Swap: support freebsd 2022-10-26 17:43:08 +08:00
李通洲 aca2c01c9e Processes: support freebsd 2022-10-26 17:43:08 +08:00
李通洲 470d160346 Uptime: support freebsd 2022-10-26 17:43:08 +08:00
李通洲 e225b496b1 Disk: don't print hidden removable volumes (macOS) 2022-10-25 20:02:26 +08:00
李通洲 883a535441 Packages: support Chocolatey (Windows) 2022-10-23 23:28:49 +08:00
李通洲 1395abcf09 TerminalFont: improve Windows Terminal terminal font detection on Windows 2022-10-23 18:48:31 +08:00
李通洲 e13c88cea6 Global: support bar output for percentage value #294 2022-10-22 16:15:12 +08:00
Linus Dierheimer eb1738b1c6 Merge pull request #309 from CarterLi/swap
Swap: split code out from memory detection
2022-10-18 20:34:03 +02:00
李通洲 581c6f547d Swap: split code out from memory detection
1. Since swap module is disabled by default, swap detection is unnecessary in most cases.
2. On platform other than Linux, swap detection doesn't share code with memory.
3. Swap detection can be expensive. On Windows, it requires another WMI query which can lag heavily in some cases. Don't pay for you don't use.
2022-10-19 00:24:17 +08:00
李通洲 3d5ef186ba Disk: don't convert NAN to integer; don't print 0B / 0B (0%)
fix ASAN warning: `runtime error: nan is outside the range of representable values of type 'unsigned char'`
2022-10-18 21:23:29 +08:00
李通洲 e3ea39afaa Disk: add volume name detection 2022-10-18 21:23:29 +08:00
Linus Dierheimer 7bbd2aee94 Merge pull request #305 from LinusDierheimer/work/disk_refactor
Work/disk refactor
2022-10-17 18:24:29 +02:00
Linus Dierheimer b812f1dcb4 Disk: Fix build on windows 2022-10-17 17:52:43 +02:00
Linus Dierheimer a03eaed4e2 Disk: add options# 2022-10-17 17:35:06 +02:00
Linus Dierheimer c1fec9b411 Disk: Apple implementation working 2022-10-17 08:10:58 -07:00
Linus Dierheimer 19a9b18c69 Disk: Linux impl working 2022-10-17 13:19:48 +02:00
李通洲 38b3aae1e3 Windows: simplify WMI query code
by making C++ code more C++
2022-10-17 00:17:26 +08:00
李通洲 a829e85ef5 LocalIP: support --localip-name-prefix on Windows 2022-10-16 01:34:26 +08:00
李通洲 a090bed6c0 Logo: try printing logo on Windows Server
Completely untested
2022-10-15 23:46:00 +08:00
李通洲 76684e49ca TerminalShell: speed up PowerShell version detection by querying the version of pwsh.exe file
Also add cmd version detection
2022-10-15 22:45:30 +08:00
李通洲 437431a821 TerminalShell: support Windows PowerShell version detection 2022-10-15 21:44:28 +08:00
李通洲 5749a8f7c1 TerminalShell: improve speed on Windows
[NtQueryInformationProcess](https://learn.microsoft.com/en-us/windows/win32/api/winternl/nf-winternl-ntqueryinformationprocess) is an internal NT syscall which may change in the future. However, unlike other NT syscalls NtQueryInformationProcess is well documented on MSDN, so I think it's safe to use.

Boost shell detection by 0.3s on my machine. Note querying PowerShell's version `pwsh --version` costs another 0.2s
2022-10-15 21:20:58 +08:00
李通洲 b042b90d9b TerminalShell: improve shell detection on Windows 2022-10-15 11:36:24 +08:00
李通洲 4f0dd51761 TerminalShell: fix bash version detection on Windows
Currently we use `env -i /path/to/bash --norc --noprofile -c printf "%s" "$BASH_VERSION"` to detect bash version.
This is problematic on Windows because there is no `env` in $PATH ( there is env in $PATH of msys2 but not in $PATH of Windows )
With this modification the detection is also faster because 1 process is created only
2022-10-14 22:58:56 +08:00
李通洲 4f67ed2b77 TerminalShell: add some pretty names 2022-10-14 19:16:55 +08:00
李通洲 3f4926cbd5 TerminalShell: detect platform specific terminal on correct system only 2022-10-14 19:16:55 +08:00
李通洲 af93157a76 TerminalShell: handle nested shell 2022-10-14 19:16:55 +08:00
李通洲 220a7d24bc TerminalShell: detect first shell we found only.
Previously we always detect login shell as current shell, which seems duplicate with userShell
2022-10-14 18:33:11 +08:00
李通洲 4bd6f2da89 TerminalShell: add lock ( Windows ) 2022-10-14 18:33:11 +08:00
李通洲 1b7a2c2ed5 MSYS2: remove support
MSYS2 version was built for smooth transition from POSIX api to Win32 api. It has almost identical output as Windows native version, except requiring msys runtime dll and being a bit slower.
2022-10-14 18:33:11 +08:00
李通洲 11ad7a8a3d TerminalShell: unify shell version detection code 2022-10-14 18:33:11 +08:00
李通洲 622f84c971 Kernel: remove special handling for Windows
Since we have an implementation for it
2022-10-14 17:39:07 +08:00
李通洲 779a33349a OS: don't print msys2 logo for native Windows 2022-10-14 17:39:07 +08:00
李通洲 135ca1eeba Packages: don't rely on environment variables 2022-10-14 17:38:53 +08:00
Linus Dierheimer 1513b8c0db Fix more build errors 2022-10-13 22:12:31 +02:00
Linus Dierheimer 693cc1e730 Fix build errors 2022-10-13 22:02:58 +02:00
Linus Dierheimer cf048bc723 Refactor package detection code 2022-10-13 21:43:31 +02:00
李通洲 6f66b87262 Windows: support --list-presets 2022-10-13 23:49:09 +08:00