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
- Docker Image Size Analyzer - Tool to analyze the Docker image sizes
- System Manager - Declarative system configuration with system-manager
- Use direnv - Development environment with direnv
- Pre-commit Hooks - Automatic formatting and code checks before commits
- Nix Formatter - Code formatting with treefmt
- Create a New pgrx Extension - How to set up a new cargo pgrx extension
- Updating pgrx Extensions - How to upgrade the cargo pgrx extensions
- Receipt Files - Understand what receipt files are
- Adding New Packages - How to add new PostgreSQL extensions
- Update Extensions - How to update existing extensions
- Update Nix Dependecies - How to update the Nix dependencies
- 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
- Docker Image testing - How to test the docker images against the pg_regress test suite.
- References - Useful links and resources