diff --git a/deps.nix b/deps.nix deleted file mode 100644 index ad24bb179..000000000 --- a/deps.nix +++ /dev/null @@ -1,27 +0,0 @@ -# generated by zon2nix (https://github.com/nix-community/zon2nix) - -{ linkFarm, fetchzip, fetchgit }: - -linkFarm "zig-packages" [ - { - name = "diffz-0.0.1-G2tlIQrOAQCfH15jdyaLyrMgV8eGPouFhkCeYFTmJaLk"; - path = fetchzip { - url = "https://github.com/ziglibs/diffz/archive/a20dd1f11b10819a6f570f98b42e1c91e3704357.tar.gz"; - hash = "sha256-y7Ck5XZNnHxmPPWlDAqZZ2g3n67txj5/Zq04AhuW5+M="; - }; - } - { - name = "known_folders-0.0.0-Fy-PJkfRAAAVdptXWXBspIIC7EkVgLgWozU5zIk5Zgcy"; - path = fetchzip { - url = "https://github.com/ziglibs/known-folders/archive/92defaee76b07487769ca352fd0ba95bc8b42a2f.tar.gz"; - hash = "sha256-+FviMdQGeHn2ymfXjIQPxLPx3haPy5zhPJuS3Ow8m68="; - }; - } - { - name = "lsp_kit-0.1.0-bi_PL18tCgAMyrZ0tgn_0PXnGEvxGWeNkkRygfe9pX9u"; - path = fetchzip { - url = "https://github.com/zigtools/lsp-kit/archive/4835b9d3d3cf732fe1830189d81f331c68fb3e77.tar.gz"; - hash = "sha256-PqTlZcOow9vGLzI40zvqDI18OhJKzMg8RFLxB4x88/c="; - }; - } -] diff --git a/flake.lock b/flake.lock index de1b6b3f8..fd2a2bc16 100644 --- a/flake.lock +++ b/flake.lock @@ -1,39 +1,5 @@ { "nodes": { - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-utils": { - "inputs": { - "systems": "systems" - }, - "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "gitignore": { "inputs": { "nixpkgs": [ @@ -74,43 +40,26 @@ "inputs": { "gitignore": "gitignore", "nixpkgs": "nixpkgs", - "zig-overlay": "zig-overlay" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" + "zig": "zig" } }, - "zig-overlay": { + "zig": { "inputs": { - "flake-compat": "flake-compat", - "flake-utils": "flake-utils", "nixpkgs": [ "nixpkgs" ] }, "locked": { - "lastModified": 1755864794, - "narHash": "sha256-hgnov6RLA+DD4Uocs/vCbiH3/3sKvqiJOKHpdhGyVAI=", - "owner": "mitchellh", - "repo": "zig-overlay", - "rev": "5cd601f8760d2383210b7b8c8a45fc79388f3ddf", + "lastModified": 1755873160, + "narHash": "sha256-5tQdhrjbusTUapJsUQwLbfnDA9G25gp0yRJYcwZyGmw=", + "owner": "silversquirl", + "repo": "zig-flake", + "rev": "37868f0ea9491837df2c685fb63e6a545ac9810a", "type": "github" }, "original": { - "owner": "mitchellh", - "repo": "zig-overlay", + "owner": "silversquirl", + "repo": "zig-flake", "type": "github" } } diff --git a/flake.nix b/flake.nix index 6e2f58730..d3f541de5 100644 --- a/flake.nix +++ b/flake.nix @@ -2,54 +2,33 @@ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; - zig-overlay.url = "github:mitchellh/zig-overlay"; - zig-overlay.inputs.nixpkgs.follows = "nixpkgs"; + zig.url = "github:silversquirl/zig-flake"; + zig.inputs.nixpkgs.follows = "nixpkgs"; gitignore.url = "github:hercules-ci/gitignore.nix"; gitignore.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = { - self, nixpkgs, - zig-overlay, + zig, gitignore, - }: - builtins.foldl' nixpkgs.lib.recursiveUpdate {} ( - builtins.map - ( - system: let - pkgs = nixpkgs.legacyPackages.${system}; - zig = zig-overlay.packages.${system}."0.15.1"; - gitignoreSource = gitignore.lib.gitignoreSource; - target = builtins.replaceStrings ["darwin"] ["macos"] system; - revision = self; - in { - formatter.${system} = pkgs.alejandra; - packages.${system} = rec { - default = zls; - zls = pkgs.stdenvNoCC.mkDerivation { - name = "zls"; - version = "master"; - meta.mainProgram = "zls"; - src = gitignoreSource ./.; - nativeBuildInputs = [zig]; - dontInstall = true; - doCheck = true; - configurePhase = '' - export ZIG_GLOBAL_CACHE_DIR=$TEMP/.cache - ''; - buildPhase = '' - PACKAGE_DIR=${pkgs.callPackage ./deps.nix {}} - zig build install --system $PACKAGE_DIR -Dtarget=${target} -Doptimize=ReleaseSafe --color off --prefix $out - ''; - checkPhase = '' - zig build test --system $PACKAGE_DIR -Dtarget=${target} --color off - ''; - }; - }; - } - ) - ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"] - ); + ... + }: let + forAllSystems = f: builtins.mapAttrs f nixpkgs.legacyPackages; + in { + formatter = forAllSystems (system: pkgs: pkgs.alejandra); + + packages = forAllSystems (system: pkgs: { + default = zig.packages.${system}.zig_0_15_1.makePackage { + pname = "zls"; + version = "0.15.1"; + meta.mainProgram = "zls"; + src = gitignore.lib.gitignoreSource ./.; + doCheck = true; + zigReleaseMode = "safe"; + depsHash = "sha256-ji4qpx3WEEIaW8/Ps5uNJHvMEA+tl6wWj3dZx0RWQpo="; + }; + }); + }; }