Files
omarchy_setup/modules/disk-format.sh
google-labs-jules[bot] eabfe0cbaf Refactor: Improve and Document All Modules and Readme.md (#3)
* docs: update and improve Readme.md in Spanish

Restore the comprehensive Spanish version of the `Readme.md` and add a new section with instructions for installing the Meslo font, which is required for the `oh-my-posh` theme to render correctly.

The new section is located in the "Troubleshooting" area and provides the necessary command (`oh-my-posh font install meslo`) to ensure a correct setup.

The rest of the document has been reviewed to ensure it is complete and accurately reflects the script's functionality.

* refactor: improve and document all modules and Readme.md

This is a major refactoring and documentation effort that touches every module in the project.

- **Exhaustive In-Code Documentation:** Every module script in the `modules/` directory has been updated with detailed comments. This includes header descriptions, explanations for each function, and justifications for complex logic. This greatly improves the maintainability and readability of the code.

- **Code Robustness and Optimization:** Several modules have been refactored to be more robust and efficient. This includes:
  - Optimizing package installations by grouping them into a single `pacman` command.
  - Improving dependency checks.
  - Standardizing the use of helper functions from `common.sh`.
  - Making network operations more resilient.

- **Comprehensive `Readme.md` Update:** The main `Readme.md` has been rewritten to be a complete and professional guide to the project. It now includes:
  - A clear and detailed description of each module.
  - Information on what each module installs and how it works.
  - Instructions for installing the required Nerd Font for `oh-my-posh`.
  - An updated structure that is easier to navigate.

---------

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: Marco Gallegos <marco.gallegos@outlook.com>
2025-11-18 23:18:20 -06:00

60 lines
2.2 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
# ===============================================================
# disk-format.sh - Soporte para FAT32 / exFAT / NTFS / ext4
# ===============================================================
#
# Este módulo instala las herramientas necesarias para trabajar
# con los sistemas de archivos más comunes, como FAT32, exFAT,
# NTFS y ext4. Además de las utilidades de línea de comandos,
# también instala herramientas gráficas como GParted y GNOME Disks
# para facilitar la gestión de discos y particiones.
#
# ===============================================================
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "${SCRIPT_DIR}/common.sh"
run_module_main() {
log_step "Habilitar soporte para sistemas de archivos"
# --- Definición de Paquetes ---
# Se instalarán las siguientes herramientas:
# - dosfstools: Para crear y verificar sistemas de archivos FAT.
# - exfatprogs: Para sistemas de archivos exFAT.
# - ntfs-3g: Driver de código abierto para leer y escribir en NTFS.
# - e2fsprogs: Utilidades para el sistema de archivos ext2/3/4.
# - gparted: Editor de particiones gráfico.
# - gnome-disk-utility: Herramienta de discos de GNOME.
local pkgs=(
dosfstools exfatprogs ntfs-3g e2fsprogs
gparted gnome-disk-utility
)
local failed=false
for pkg in "${pkgs[@]}"; do
if ! check_and_install_pkg "$pkg"; then
failed=true
fi
done
if [[ "$failed" == true ]]; then
log_warning "Algunos paquetes no se pudieron instalar. Revisa los mensajes anteriores."
fi
log_success "Soporte para sistemas de archivos comunes habilitado."
echo ""
log_info "Para formatear discos desde la terminal, puedes usar:"
echo " • FAT32 : sudo mkfs.fat -F32 /dev/sdXn"
echo " • exFAT : sudo mkfs.exfat /dev/sdXn"
echo " • NTFS : sudo mkfs.ntfs -f /dev/sdXn"
echo " • ext4 : sudo mkfs.ext4 -F /dev/sdXn"
log_info "También puedes usar 'gparted' o 'gnome-disks' para una gestión gráfica."
return 0
}
# Ejecutar si se llama directamente al script.
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
run_module_main "$@"
fi