Commit graph

25 commits

Author SHA1 Message Date
9de9222033
refactor printing logic; separate distro logo 2024-11-09 20:51:52 +03:00
raf
8f5bfcbd05
implement --version for checking program version (#10)
Some checks failed
Rust / build (push) Has been cancelled
2024-10-29 16:45:55 +00:00
vali
f1e8ca8773
add benchmarking for individual functions (#9)
* add benchmarking

* update README to include benchmarking of individual functions

* README: formatting

* README: add link to Criterion's getting_started

* shell.nix: add gnuplot

Since Criterion.rs uses gnuplot to generate nice plots, add it to the
shell.

* Cargo.toml: fixed microfetch binary name

* benchmark.rs: fix benchmark function's name

* Update README.md

---------

Co-authored-by: raf <raf@notashelf.dev>
2024-08-15 17:43:39 +00:00
Ryan
907112f2d1
micro optimizations (#8)
* perf: break early after parsing required meminfo

Also a match statement for compiler magic.

* perf: pre-allocate strings when reading files

* refactor: remove duplicate .to_string()

* perf: try to print everything in one syscall

println! sends a syscall for each line.

* perf: get rid of duplicate uname syscall

* perf: simplify first letter capitalization

* refactor: directly use key in match statement
2024-08-15 10:32:02 +00:00
Ryan
1cf4f754ac
parse /proc/meminfo for memory usage (#7)
* fix: calculate memory usage via /proc/meminfo

* refactor: move sysinfo call into get_current

No longer used by anything but uptime.
2024-08-15 08:14:27 +00:00
vali
4d509839f5
pass sysinfo to system.rs and uptime.rs (#6)
Some checks are pending
Rust / build (push) Waiting to run
2024-08-15 00:29:57 +00:00
b792d41fcc
capitalize first letter of session type
wayland -> Wayland, x11 -> X11
2024-08-14 00:20:03 +03:00
Sora
ae76a0cbe1
refactor: remove some redundant error types (#4) 2024-08-13 20:59:11 +00:00
927f6077b4
store printed fields in a struct
Some checks failed
Rust / build (push) Has been cancelled
Shut up, clippy.
2024-08-05 11:33:42 +03:00
Ryan
13903539b7
perf: use nix::sys::utsname::uname for less syscalls (#2)
Instead of reading multiple files to get the `sysname`, `release`, and
`machine` name, use the `nix::sys::utsname::uname` function which sends a
single uname syscall instead. This increases performance and portability.

From my observations, there are ~10 less syscalls.
2024-08-05 08:08:25 +00:00
7bed1f583b
use color_eyre::Result in most functions 2024-08-05 01:37:32 +03:00
0fb8fbaae6
receive uptime from nix crate 2024-08-05 01:37:13 +03:00
72d3130aa0
clean up get_desktop_info; increment minor version 2024-08-04 22:04:23 +03:00
cf0a52150c
minify and optimize uptime reader 2024-08-04 17:20:34 +03:00
e3112dba1d
trim shell name to omit store path 2024-08-04 17:18:27 +03:00
a44db5e5f3
shell name & colors in output 2024-08-04 13:07:27 +03:00
81cdc0a281
speeding it up 2024-08-04 12:44:19 +03:00
mewoocat
ef2f6dc56e
Better logo (#1) 2024-08-04 09:42:53 +00:00
cff4332122
clippy lints 2024-08-04 00:12:07 +03:00
0e4b2d2ac1
cleanup 2024-08-04 00:05:57 +03:00
42a7f2fc77
apply clippy lints 2024-08-03 23:04:26 +03:00
aae5f71004
use nix crate instead of libc
Provides a higher level and lighter alternative.
2024-08-03 20:56:02 +03:00
29e4ccc806
modularize 2024-08-03 20:42:48 +03:00
f5697754e5
implement color_eyre; main implements Result 2024-08-03 20:04:09 +03:00
6a77ad0682
initial commit 2024-08-03 19:06:29 +03:00