Standalone Nix packaging for openFrameworks 0.12.1. This flake is designed to be:
- Standalone: No external dependencies beyond nixpkgs and flake-utils
- Reusable: Reference from other projects via flake inputs
- Minimal: Only what's needed for packaging and development
- Upstream-ready: Structured for eventual nixpkgs contribution
Add to your project's flake.nix:
inputs.nix-openframeworks = {
url = "github:yourusername/nix-openframeworks";
flake = true;
};Then reference the overlay:
overlays = [ nix-openframeworks.overlays.default ];
# Now `openframeworks` package is availableOr use the package directly:
packages.openframeworks = nix-openframeworks.packages.${system}.openframeworks;nix develop
# openFrameworks dev environment with build tools.
├── flake.nix # Main flake with package definition
├── pkgs/
│ └── default.nix # openFrameworks package derivation
├── README.md # This file
└── .gitignore # Standard Nix files
- Cross-platform: Linux (x86_64, aarch64) and macOS (x86_64, aarch64)
- Complete dependencies: All core openFrameworks dependencies included
- Framework support: macOS frameworks automatically included for Darwin systems
- Convenience symlinks: Standard include/lib paths for downstream consumers
To update to a newer openFrameworks version:
-
Update the tag in
flake.nix:openframeworks-src = { url = "github:openframeworks/openFrameworks/0.13.0"; # New version flake = false; };
-
Update
versioninpkgs/default.nix:version = "0.13.0";
-
Test locally:
nix flake update nix build
See gem_generator_3000 for an example project that uses this flake as an input.
MIT (same as openFrameworks)
Contributions and improvements welcome! This repo is intended for eventual upstream contribution to nixpkgs.