Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ozwaldorf/punfetch
Command-line System Information Tool
https://github.com/ozwaldorf/punfetch
cli command-line fetch rust tool
Last synced: 3 months ago
JSON representation
Command-line System Information Tool
- Host: GitHub
- URL: https://github.com/ozwaldorf/punfetch
- Owner: ozwaldorf
- License: mit
- Created: 2023-01-07T23:51:58.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-04T19:41:23.000Z (5 months ago)
- Last Synced: 2024-10-06T06:47:57.975Z (4 months ago)
- Topics: cli, command-line, fetch, rust, tool
- Language: Rust
- Homepage: https://punfetch.dev
- Size: 165 KB
- Stars: 12
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
A blazingly fast system fetch program to pair with onefetch
![]()
View the complete ascii art collection at punfetch.dev
---
# Installation
### Install from crates.io
```bash
cargo install punfetch
```### Build from source
```bash
git clone https://github.com/ozwaldorf/punfetch.git
cd punfetch
make install
```# Usage
## CLI
```man
$ punfetch -h
A blazingly fast system fetch program to pair with onefetch.Usage: punfetch [OPTIONS]
Options:
--distro Distribution to search art for (e.g. "Manjaro" or "Ubuntu")
-i, --image Image to display in place of the distro art
--show-logo Show the logo [default: always] [possible values: always, never, auto]
--color-mode Color mode to use [default: hex] [possible values: hex, ansi, none]
--color Text color to use. Accepts ansi or hex color codes
-h, --help Print help
-V, --version Print version
```## Library
Punfetch is also a library to implement your own custom system fetchers! See [the docs](https://docs.rs/punfetch) for more information and examples.
## Makefile
Developing on the crate:
```
make clean # Clean the project
make build # Build the project
make run # Run the project
make install # Install the project
make test # Run tests
make lint # Run linter
make fmt # Run formatter
make ci # Precommit CI checks
```Developing on punfetch.dev:
```
make init-pages # Initialize pages
make patch-pages # Patch vercel pages
make save-pages # Save the diff patch
make dev # Run the pages locally
```# Contributing
This project follows [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/)
> ⚠️ Over 200 distributions are already supported, but many do not have colors defined. If your distro is not colored, please open a PR to update it!
## Adding a new distribution
New distributions can easily be supported by adding a new entry to the [distros.yaml](distros.yaml) file
```yaml
"Examplo Linux":
regex: "(examplo|examplo_old)" # Optional, regex to match against. Autogenerated if not provided.
colors: # Optional, default fg will be used if not specified
ansi:
- white # The first color is used for the info text
# - bright_green
# - magenta
# - etc,
hex: # Optional, ansi colors will be used if not specified
- "#ffffff"
ascii: | # The ascii art to display!
{0} _nnnn_
{0} dGGGGMMb
{0} @p~qp~~qMb
{0} M|@||@) M|
{0} @,----.JM|
{0} JS^\__/ qKL
{0} dZP qKRb
{0} dZP qKKb
{0} fZP SMMb
{0} HZM MMMM
{0} FqM MMMM
{0} __| ". |\dS"qML
{0} | `. | `' \Zq
{0}_) \.___.,| .'
{0}\____ )MMMMMP| .'
{0} `-' `--'
```> If there are multiple patterns that could be used to identify the distribution, or the title of the
> distribution is lengthy, a regex should be provided. Patterns should be simple, lowercase, and `A-z`, `0-9` only.
Honorable mentions
@o2sh
@spenserblack
for creating
onefetch
Contributors ❤️