o2sh / o2sh/onefetch

Config file for theming/customization💄

Open
#745 20 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discussion enhancement good first issue help wanted
Dominant language
Rust
Stars
12k
Forks
333
Avg merge
1d 23h
Merged PRs (30d)
17

Description

Summary 💡

What about having a configuration file in which you could customize visual aspects of onefetch? for example:

General options:

  • The glyph to use for the separator (use "->" instead of ":")
  • The padding between the output and its surroundings
  • The spacing between the separator and the info
  • The text colors (would be equivalent to --text-colors)
  • Whether to hide the ASCII logo
  • image path to display by default instead of the ASCII logo
  • ...

Palette:

  • Which glyph to use for the palette (use "●" instead of " ")
  • Whether to hide the palette.
  • ...

Info lines:

  • Define the text to display as a title for each info lines (use "🖴" instead of "Size")
  • ...

The configuration file could be placed in ${HOME}/.config/onefetch/config.conf (which format? YAML? TOML?)

As suggested by @spenserblack

  • Add CLI flag to provide a different path to the config file
Motivation 🔦

Allow users to customize the look and feel of onefetch by creating themes and config files that can be shared and enjoyed by others.

For reference --> https://github.com/Chick2D/neofetch-themes
and https://github.com/spenserblack/repofetch (for an example of implementation)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing onefetch's existing CLI options and the proposed ${HOME}/.config/onefetch/config.conf location. Resolve the configuration format, supported customization scope, and behavior of the requested alternate-path CLI flag; done means the agreed theming and customization requirements are implemented.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.