arashi-software / nitch

A maintained fork of nitch - incredibly fast system fetch written in nim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NiTch

incredibly fast system fetch written in nimπŸ‘‘

Description πŸ“–

nitch is a small and incredibly fast system fetch written fully in nimπŸ‘‘ without any dependencies, on my pc it executes in around 1.70 miliseconds.

The source code of nitch is highly documented and I hope it will act as a learning resource for nim and linux systems architecture

If anything in the source code is unclear or is lacking in its explanation, open an issue. Sometimes you get too close to something and you fail to see the "bigger picture"!

btw written in nimπŸ‘‘

why nimπŸ‘‘? because it's fast and simple


Installation ☁️

Requirements:

  • nim
  • nimble (usually included with your nim installation)
git clone https://github.com/arashi-software/nitch && cd nitch

make changes to src/funcs/drawing.nim if desired; then compile/install nitch with

nimble install

There are also binaries availble on the release page

Usage πŸͺ¨

nitch

flags:

Usage:
  nitch
  nitch -h|--help
  nitch -v|--version

Options:
  -h, --help     Show help message
  -v, --version  return version of program
  -a, --ascii    return fetch with ascii art
  -s, --square   return fetch with square corners

Configuration βš™οΈ

nitch is configured by changing the source code

src/funcs/drawing.nim - config file

File architecture πŸ“

nitch
β”œβ”€β”€ LICENSE
β”œβ”€β”€ nitch
β”œβ”€β”€ nitch.nimble
β”œβ”€β”€ README.md
β”œβ”€β”€ setup.sh
β”œβ”€β”€ src
β”‚   β”œβ”€β”€ assets
β”‚   β”‚   β”œβ”€β”€ assets.nim
β”‚   β”‚   └── logos.nim
β”‚   β”œβ”€β”€ flags
β”‚   β”‚   └── args.nim
β”‚   β”œβ”€β”€ funcs
β”‚   β”‚   β”œβ”€β”€ drawing.nim
β”‚   β”‚   β”œβ”€β”€ getDistroId.nim
β”‚   β”‚   β”œβ”€β”€ packages
β”‚   β”‚   β”‚   β”œβ”€β”€ getDpkgPkgs.nim
β”‚   β”‚   β”‚   β”œβ”€β”€ getPacmanPkgs.nim
β”‚   β”‚   β”‚   β”œβ”€β”€ getPortagePkgs.nim
β”‚   β”‚   β”‚   β”œβ”€β”€ getRpmPkgs.nim
β”‚   β”‚   β”‚   └── getXbpsPkgs.nim
β”‚   β”‚   └── perform.nim
β”‚   β”œβ”€β”€ nitches
β”‚   β”‚   β”œβ”€β”€ getDistro.nim
β”‚   β”‚   β”œβ”€β”€ getHostname.nim
β”‚   β”‚   β”œβ”€β”€ getKernel.nim
β”‚   β”‚   β”œβ”€β”€ getLogo.nim
β”‚   β”‚   β”œβ”€β”€ getPkgs.nim
β”‚   β”‚   β”œβ”€β”€ getRam.nim
β”‚   β”‚   β”œβ”€β”€ getShell.nim
β”‚   β”‚   β”œβ”€β”€ getUptime.nim
β”‚   β”‚   └── getUser.nim
β”‚   β”œβ”€β”€ nitch.nim
β”‚   └── nitch.nim.cfg
└── templates
    β”œβ”€β”€ bfetch
    β”œβ”€β”€ cfgParser.nim
    β”œβ”€β”€ colorTest.nim
    β”œβ”€β”€ data.dat
    β”œβ”€β”€ echo.sh
    β”œβ”€β”€ listFiles.nim
    β”œβ”€β”€ readLine.nim
    β”œβ”€β”€ refTest.nim
    β”œβ”€β”€ rxfetch
    β”œβ”€β”€ shellCheck.nim
    β”œβ”€β”€ slice.nim
    β”œβ”€β”€ test.cfg
    β”œβ”€β”€ testCounter.nim
    β”œβ”€β”€ testFile
    β”œβ”€β”€ testProc.nim
    └── tupleTest.nim

8 directories, 43 files

Showcase image

image

Thanks for ideas & examples πŸ’¬

About

A maintained fork of nitch - incredibly fast system fetch written in nim

License:MIT License


Languages

Language:Nim 69.4%Language:Shell 30.6%