diff --git a/flake.lock b/flake.lock index 779816d84e0..0cc50c5f340 100644 --- a/flake.lock +++ b/flake.lock @@ -15,6 +15,22 @@ "type": "github" } }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1761588595, + "narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -115,11 +131,36 @@ "type": "github" } }, + "phps": { + "inputs": { + "flake-compat": "flake-compat", + "nixpkgs": [ + "nixpkgs" + ], + "utils": [ + "flake-utils" + ] + }, + "locked": { + "lastModified": 1763965909, + "narHash": "sha256-Hx/ZHl8Tc8C6gP2xN0zAl7txk1sUZA98NrflyJuw+70=", + "owner": "fossar", + "repo": "nix-phps", + "rev": "8b3b0250e31d56283a8fa1b66dbd78fb21fa4893", + "type": "github" + }, + "original": { + "owner": "fossar", + "repo": "nix-phps", + "type": "github" + } + }, "root": { "inputs": { "flake-utils": "flake-utils", "haze": "haze", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs", + "phps": "phps" } }, "rust-overlay": { diff --git a/flake.nix b/flake.nix index a131280d1d5..b947815af2c 100644 --- a/flake.nix +++ b/flake.nix @@ -1,14 +1,26 @@ { + nixConfig = { + extra-substituters = [ "https://fossar.cachix.org" ]; + extra-trusted-public-keys = [ "fossar.cachix.org-1:Zv6FuqIboeHPWQS7ysLCJ7UT7xExb4OE8c4LyGb5AsE=" ]; + }; + inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; flake-utils.url = "github:numtide/flake-utils"; + phps = { + url = "github:fossar/nix-phps"; + inputs = { + nixpkgs.follows = "nixpkgs"; + utils.follows = "flake-utils"; + }; + }; haze = { url = "git+https://codeberg.org/icewind/haze.git"; inputs.nixpkgs.follows = "nixpkgs"; }; }; - outputs = { nixpkgs, flake-utils, haze, ... }: + outputs = { nixpkgs, flake-utils, phps, haze, ... }: flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; @@ -18,7 +30,7 @@ devShells.default = let php_version = lib.strings.concatStrings (builtins.match ".*PHP_VERSION_ID < ([0-9])0([0-9])00.*" (builtins.readFile ./lib/versioncheck.php)); - php = pkgs.pkgs."php${php_version}".buildEnv { + php = phps.packages.${system}."php${php_version}".buildEnv { # Based off https://docs.nextcloud.com/server/latest/admin_manual/installation/php_configuration.html extensions = ({ enabled, all }: enabled ++ (with all; [ # Required