Skip to content

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

License

Notifications You must be signed in to change notification settings

arashi-software/nitch

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Nim 69.4%
  • Shell 30.6%