This directory contains most of the "runbooks" and documentation on how to use this repository.
You probably want to start with the starting guide. Then,
learn how to play with postgres in the build guide.
- Nix tree structure - Overview of the Nix directory structure
- Flake-Parts Architecture - Deep dive into the flake-parts module system
- Flake-Parts and nixpkgs lib - How flake-parts uses nixpkgs lib foundations
- Development Workflow - Complete development and testing workflow
- Build PostgreSQL - Building PostgreSQL from source
- Receipt Files - Understanding build receipts
- Start Client/Server - Running PostgreSQL client and server
- Docker - Docker integration and usage
- Use direnv - Development environment with direnv
- Pre-commit Hooks - Automatic formatting and code checks before commits
- Nix Formatter - Code formatting with treefmt
- Adding New Packages - How to add new PostgreSQL extensions
- Update Extensions - How to update existing extensions
- New Major PostgreSQL - Adding support for new PostgreSQL versions
- Nix Overlays - Understanding and using Nix overlays
- Adding Tests - How to add tests for extensions
- Migration Tests - Testing database migrations
- Testing PG Upgrade Scripts - Testing PostgreSQL upgrades
- sccache in CI - Rust compilation caching for pgrx extensions
- References - Useful links and resources