Releases: pedrobrantes/dotfiles
Releases Β· pedrobrantes/dotfiles
v1.3.0
π Release Notes v1.3.0
π Testing Infrastructure & Security (Python Migration)
This release introduces a complete overhaul of the testing system, migrating from Shell Script to Python + Pytest, delivering improved speed and robustness.
- Mandatory Validation: The
switch.shscript now automatically runs the test suite before applying any changes. If tests fail, the deployment is aborted. - Test Enforcement: The system now prevents the build if a new module is added to
programs/without a corresponding test file (.py). - Performance: The new architecture builds the Nix configuration only once for the entire test session, drastically reducing execution time in CI and locally.
- Native CI/CD: Replaced the Docker-based pipeline with native Nix GitHub Actions (
nix-shell), aligning the CI environment with local development.
β¨ New Features & Tools
New packages have been integrated into the environment:
- nh (Nix Helper): Utility to simplify common Nix commands.
- Ollama: Tool for running LLMs locally.
- Magic Wormhole: Secure and easy file transfer (
wormhole-rs). - OpenSSH: SSH client configuration and installation.
π Fixes & Improvements
- CI Compatibility: Added a generic
x86_64.linux.desktoptarget to ensure CI (Ubuntu) can validate the build correctly. - fd: Removed redundant alias that conflicted with the binary name.
π Maintenance
- Renamed
nix_testsdirectory totests. - Updated documentation (
README,DEVELOPMENT) to reflect the new Python workflow.
v1.2.0
What's Changed
π Features & Enhancements
- Architecture: Registered hierarchical home configurations in flake with machine-specific setups (Desktop/WSL & Smartphone/Android).
- Nix: Migrated base system to nixos-25.11 and added hybrid channels (unstable/master).
- Scripts: Added smart environment detection in
switch.shandbootstrap.sh. - Android: Implemented custom shell prompt overrides and specific environment handling.
- Programs:
- Added Gemini CLI integration.
- Added GitHub CLI with Delta pager configuration.
- Added MTR (modern traceroute) and
inetutils. - Implemented dynamic module imports for the
programs/directory.
π Fixes
- Android: Resolved
homeless-shelterpurity errors and directory permissions. - Git: Fixed configuration deprecations and moved aliases to the correct settings block.
- Packages: Resolved package renaming issues (e.g.,
dust).
π Security & Management
- Secrets: Added SOPS configuration with Bitwarden integration and established a secrets management protocol.
- Docs: Added documentation for Nix versioning architecture and SOPS management.
π§ͺ Testing
- Added comprehensive tests for GitHub CLI integration.
Version 1.1.0
β¨ Features & Improvements
- Multi-Architecture Support: Added support for
aarch64andx86_64inflake.nixand automatic detection in thebootstrapscript. - Program Modularization: Dozens of command-line tools were migrated to individual modules in
programs/, each with its own package and aliases, including:eza,ripgrep,fd,bat,duf,doggozoxide,htop,dust,plocate,hyperfine,iproute2
- Testing Infrastructure: Added a testing framework for the Nix configuration, with tests for:
- The
bootstrapscript. - Bash function logic (
cp_progress). - All new program modules, validating installation and aliases.
- The
- Bash Config Migration: Aliases and functions from
.bashrcwere moved into the declarative configuration inprograms/bash.nix. - Bash-it: Added integration with
bash-it.
π Documentation
- Refactored README: Installation instructions were completely rewritten, prioritizing the
bootstrapscript. - Manual Installation Guide: The manual guide was simplified, aligned with the use of Flakes, and moved to a separate section.
- Android Guide: Added a new section detailing installation on Android via Termux.
π Fixes
- Corrected various paths and syntax in the
sopsandnixmodules.