2.1 KiB
2.1 KiB
Repository Guidelines
Project Structure & Module Organization
grezzo.shis the core library with shared helpers (e.g.,feat_needed,feat_missing).featlib/contains feature installers, one tool per file (pip.sh,docker.sh,npm.sh,rustup.sh,curl.sh).featlib/poetry/holds Poetry-specific feature scripts (e.g.,django.sh).- Entry-point scripts live at the repo root (e.g.,
python.sh,node_pip_docker_rust.sh).
Build, Test, and Development Commands
There is no build system; scripts are executed directly from the repo root.
bash python.shinstalls Python tooling viapip/pyenv.bash node_pip_docker_rust.shinstalls Node, Pip/Poetry, Docker, and Rust tooling.bash grezzo.shcan be sourced by other scripts; it is not meant to be run standalone.
These scripts may call sudo and can modify shell configuration files (e.g., $HOME/.bashrc.before).
Coding Style & Naming Conventions
- Language: Bash; keep the
#! /bin/bash --shebang. - Indentation: prefer 4 spaces (match existing files).
- Functions follow the pattern
feat_add_*,feat_needed, and*_feat_needed. - Use
this_script_pathto resolve relative includes and avoidcdassumptions.
Testing Guidelines
No automated tests are present. Validate changes by running the relevant script end-to-end on a test machine and confirming installed tools are available (e.g., docker --version, python --version).
Commit & Pull Request Guidelines
- Commit messages are short, descriptive, and currently in Italian (see
git logexamples like “aggiornamenti …”, “piccola modifica”). - Do not add signatures or personal tags in commit messages.
- PRs should describe the target platforms (apt/pacman/apk/yum/zypper) and any system changes made (packages installed, files edited, required restarts).
- Include repro commands and any manual verification performed.
Security & Configuration Tips
- Scripts can install packages system-wide and add APT repositories/keys; review changes carefully.
- Prefer testing in a VM or container and document any OS-specific behavior.