README.org

March 14, 2024 · View on GitHub

  • Mycofetch

** The What Mycofetch is fast and flexible system information tool written in OCaml

** The Why As said previously, Mycofetch is flexible - in fact, all output formatting layout is based solely on your custom template. Do you want your logo above the info? Mycofetch can do it. Interlaced inbetween? No prob. Mycofetch also features a simple styling language, empowering you to colour and style your output.

Mycofetch includes performance-enhancing features like parallelism and template compiling and is generally faster than, say, pfetch.

** The How *** Building Mycofetch can be easily built with dune: #+BEGIN_SRC sh dune build --release dune install mycofetch #+END_SRC

*** Configuration The priority of template file location is as follows: as specified by -t and --template flags, as specified by MFTEMPLATE envvar, MFTEMPLATE~ envvar, ~XDG_CONFIG_HOME/mycofetch/template and $HOME/.config/mycofetch/template

**** Sources and their keys: All values are included with #source:key#

  • os: /etc/os-release - as in source, all lowercase
  • cpu: /proc/cpuinfo - vendor, model, name, threads, cores, mhz_CORE, ghz_CORE
  • mem: /proc/meminfo - memtotal, memused, memfree, swaptotal, swapused, swapfree, all in VAL_kb, VAL_mb and VAL_gb variants
  • uptime: /proc/uptime - hours, mins, secs
  • kernel: /proc/sys/kernel/KEY - arch, hostname, osrelease, ostype
  • board: /sys/devices/virtual/dmi/id/board_KEY - name, vendor, version
  • host: /etc/hostname - only name (#host:name#)
  • env: envvars - envvar name verbatim
  • distro: everything related to your distro - pm_name, pm_command, pm_count - parameters related to your package manager; colour - used in #cauto#; logo_tiny - logo as in nerdfonts; logo - a consecutive line from your distro's logo

**** Styling ***** Fonts

  • #c#: clear all styling, including colours
  • #b#: bold
  • #d#: dim
  • #i#: italic
  • #u#: underlined

***** Colours

  • #cauto#: primary colour of your distro
  • #c0#: black
  • #c1#: red
  • #c2#: green
  • #c3#: yellow
  • #c4#: blue
  • #c5#: magenta
  • #c6#: cyan
  • #c7#: white

*** Console flags

  • -t / --template /path/to/template: specify a custom path to template file
  • -m / --marshal /path/to/compiled_template: use a compiled template file
  • -c / --compile use with -m / --message to compile template into file
  • -i / --inline template: use template instead of template file"
  • -l / --logo distro: use distro's logo and colours instead of your distro's ones"
  • -h / --help: print this message