From b0a060330a6ed3c6c4c1d8c39dc702d8654672df Mon Sep 17 00:00:00 2001 From: DJ O'Leary Date: Thu, 6 Mar 2025 02:40:30 +0100 Subject: feat: Replace PHP shell with flake --- 2024/PHP/flake.nix | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 2024/PHP/flake.nix (limited to '2024/PHP/flake.nix') diff --git a/2024/PHP/flake.nix b/2024/PHP/flake.nix new file mode 100644 index 0000000..2be5644 --- /dev/null +++ b/2024/PHP/flake.nix @@ -0,0 +1,43 @@ +{ + description = "Advent of Code 2024: PHP"; + + inputs = { + nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; + }; + + outputs = + { nixpkgs, ... }: + let + pkgs = import nixpkgs { + config.allowUnfree = true; + }; + in + { + devShells.x86_64-linux.default = + let + phpVersion = "php84"; + + phpPackage = pkgs.lib.attrByPath [ phpVersion ] null pkgs; + phpPackages = pkgs.lib.attrByPath [ "${phpVersion}Packages" ] null pkgs; + phpExtensions = pkgs.lib.attrByPath [ "${phpVersion}Extensions" ] null pkgs; + in + pkgs.mkShell { + # build tools + nativeBuildInputs = with pkgs; [ + phpPackage + nodejs_18 + ]; + # dependencies + buildInputs = with pkgs; [ + intelephense + phpunit + phpPackages.php-cs-fixer + phpPackages.phpstan + phpExtensions.xdebug + + gh # GitHub CLI + ]; + }; + + }; +} -- cgit v1.2.3