diff options
| author | seth <[email protected]> | 2024-05-26 07:05:30 -0400 |
|---|---|---|
| committer | seth <[email protected]> | 2024-05-26 07:05:30 -0400 |
| commit | 59bee3d639caa5a831ce20f9e663671a49f3d1fd (patch) | |
| tree | f8196cca9480e9790ef72890dc978bbeb593b1b2 /nufetch.nu | |
initial commit
Diffstat (limited to 'nufetch.nu')
| -rwxr-xr-x | nufetch.nu | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/nufetch.nu b/nufetch.nu new file mode 100755 index 0000000..67770a6 --- /dev/null +++ b/nufetch.nu @@ -0,0 +1,54 @@ +#!/usr/bin/env nu + +let sys = (sys) + +let field_color = (ansi blue_bold) +let reset = (ansi reset) + +def make_field [name: string, value: string] { + $"($field_color)($name)($reset): ($value)" +} + +def user_signature [] { + let user = (whoami) + let hostname = ($sys | get host.hostname) + $"($user)@($hostname)" +} + +def os_info [] { + let host = ($sys | get host) + let info = $"($host.name) \(($host.os_version))" + make_field "os" $info +} + +def host_info [] { + let machine = (uname | get machine) + make_field "host" $machine +} + +def kernel_info [] { + let kernel_version = ($sys | get host.kernel_version) + make_field "kernel" $kernel_version +} + +def uptime_info [] { + let uptime = ($sys | get host.uptime | into string) + make_field "uptime" $uptime +} + +def mem_info [] { + let mem = ($sys | get mem) + make_field "memory" $"($mem.available) / ($mem.total)" +} + +let fields = [ + (user_signature), + (os_info), + (host_info), + (kernel_info), + (uptime_info), + (mem_info) +] + +$fields | reduce {|it| ($it | into string) ++ "\n"} +$fields | to text |
