{"repo":"loophp/nix-shell","free":true,"listed":false,"github":"https://github.com/loophp/nix-shell","clone":"git clone https://github.com/loophp/nix-shell.git","description":"Nix shells for PHP development","language":"Nix","stars":179,"topics":["experimental","nix","shell"],"license":"MIT","category":"cli-tools","readme_excerpt":"[![GitHub stars][github stars]][1] [![Donate!][donate github]][5] Nix (PHP) Shell Description This package provides a Nix flake ready to use for PHP development, using the [ Nix package manager][50] which can be installed on ( almost ) any operating system. Available stable PHP versions from 5.6 to 8.4 . To list the available PHP versions, run: The added value of this package is the ability to create custom PHP builds based on your project's composer.json file. This way, you can be sure that the PHP extensions you need are available in your development environment. The PHP extensions to use are automatically inferred from the composer.json file. To load extensions from the require and required-dev sections, using the flag --impure is required. Example: How it works This project is built on top of [fossar/nix-phps], which provides a comprehensive collection of PHP versions for Nix. The key differentiator of this project is its ability to automatically configure your PHP environment based on your project's composer.json file. It parses the require and require-dev sections of composer.json to identify required PHP extensions and compiles a custom PHP binary with exactly those extensions enabled. Technically, this leverages a Nix feature called IFD ([Import From Derivation]), allowing the Nix expression to dynamically depend on the content of the composer.json file during evaluation time. [!NOTE] IFD is a feature that is not allowed in [ NixOS/nixpkgs ] because it prevents evalua","default_branch":null,"files":null,"tree":[],"storefront":"/r/loophp","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/loophp/nix-shell/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}