From be6e85a39913ea9a5fc73e295777b5f8048abf67 Mon Sep 17 00:00:00 2001 From: Yaroslav Bolyukin Date: Thu, 10 Aug 2023 18:06:23 +0000 Subject: [PATCH] ci: update flake --- --- a/flake.nix +++ b/flake.nix @@ -9,22 +9,34 @@ inputs.flake-utils.follows = "flake-utils"; }; }; - outputs = { nixpkgs, flake-utils, rust-overlay, ... }: - flake-utils.lib.eachDefaultSystem (system: - let + outputs = { + nixpkgs, + flake-utils, + rust-overlay, + ... + }: + flake-utils.lib.eachSystem (with flake-utils.lib.system; [x86_64-linux x86_64-windows]) ( + system: let pkgs = import nixpkgs { inherit system; - overlays = [ rust-overlay.overlays.default ]; + overlays = [rust-overlay.overlays.default]; + config.allowUnsupportedSystem = true; }; - rust = ((pkgs.rustChannelOf { date = "2023-08-02"; channel = "nightly"; }).default.override { - extensions = [ "rust-src" "miri" "rust-analyzer" "clippy" ]; - }); - in - rec { + lib = pkgs.lib; + rust = + (pkgs.rustChannelOf { + date = "2023-08-02"; + channel = "nightly"; + }) + .default + .override { + extensions = ["rust-src" "miri" "rust-analyzer" "clippy"]; + }; + in rec { packages = rec { - go-jsonnet = pkgs.callPackage ./nix/go-jsonnet.nix { }; - sjsonnet = pkgs.callPackage ./nix/sjsonnet.nix { }; - jsonnet = pkgs.callPackage ./nix/jsonnet.nix { }; + go-jsonnet = pkgs.callPackage ./nix/go-jsonnet.nix {}; + sjsonnet = pkgs.callPackage ./nix/sjsonnet.nix {}; + jsonnet = pkgs.callPackage ./nix/jsonnet.nix {}; # I didn't managed to build it, and nixpkgs version is marked as broken # haskell-jsonnet = pkgs.callPackage ./nix/haskell-jsonnet.nix { }; jrsonnet = pkgs.callPackage ./nix/jrsonnet.nix { @@ -50,36 +62,70 @@ benchmarks = pkgs.callPackage ./nix/benchmarks.nix { inherit go-jsonnet sjsonnet jsonnet; jrsonnetVariants = [ - { drv = jrsonnet; name = ""; } + { + drv = jrsonnet; + name = ""; + } ]; }; benchmarks-quick = pkgs.callPackage ./nix/benchmarks.nix { inherit go-jsonnet sjsonnet jsonnet; quick = true; jrsonnetVariants = [ - { drv = jrsonnet; name = ""; } + { + drv = jrsonnet; + name = ""; + } ]; }; benchmarks-against-release = pkgs.callPackage ./nix/benchmarks.nix { inherit go-jsonnet sjsonnet jsonnet; jrsonnetVariants = [ - { drv = jrsonnet; name = "current"; } - { drv = jrsonnet-nightly; name = "current-nightly"; } - { drv = jrsonnet-release; name = "release"; } + { + drv = jrsonnet; + name = "current"; + } + { + drv = jrsonnet-nightly; + name = "current-nightly"; + } + { + drv = jrsonnet-release; + name = "release"; + } ]; }; benchmarks-quick-against-release = pkgs.callPackage ./nix/benchmarks.nix { inherit go-jsonnet sjsonnet jsonnet; quick = true; jrsonnetVariants = [ - { drv = jrsonnet; name = "current"; } - { drv = jrsonnet-nightly; name = "current-nightly"; } - { drv = jrsonnet-release; name = "release"; } + { + drv = jrsonnet; + name = "current"; + } + { + drv = jrsonnet-nightly; + name = "current-nightly"; + } + { + drv = jrsonnet-release; + name = "release"; + } ]; }; }; - devShell = pkgs.mkShell { - nativeBuildInputs = with pkgs;[ + packagesCross = lib.genAttrs ["mingwW64"] (crossSystem: let + callPackage = pkgs.pkgsCross.${crossSystem}.callPackage; + in { + jrsonnet = callPackage ./nix/jrsonnet.nix { + # rustPlatform = pkgs.makeRustPlatform { + # rustc = rust; + # cargo = rust; + # }; + }; + }); + devShells.default = pkgs.mkShell { + nativeBuildInputs = with pkgs; [ alejandra rust cargo-edit @@ -87,8 +133,6 @@ cargo-outdated lld hyperfine - valgrind - kcachegrind graphviz ]; }; --- a/nix/benchmarks.nix +++ b/nix/benchmarks.nix @@ -38,13 +38,13 @@ src = fetchFromGitHub { owner = "prometheus-operator"; repo = "kube-prometheus"; - rev = "6a570e3154eac26e32da61d784fbe626da4804df"; - hash = "sha256-s6BK8KQiSjql2w6R+8m5pvPPAcKW+SKjQwqxZHjimFw="; + rev = "d3889807798d1697ea0691f10caf1b6a1997a8bd"; + hash = "sha256-TeYWHzoZAmDp2PzT7EH8XRUcvb3tR8Qfxel7o2QBvIM="; }; in runCommand "kube-prometheus-vendor" { - outputHash = "sha256-R60RI/7FQPOHisnzANb34m9WPj5D9FeMVoGOjB19zl8="; + outputHash = "sha256-AGc0dHlD/Ld7I5b1+gOotzJkYrn+bB1VjISdD5NITtw="; outputHashMode = "recursive"; buildInputs = [ cacert ]; } --- a/nix/jrsonnet.nix +++ b/nix/jrsonnet.nix @@ -33,7 +33,7 @@ ]; cargoBuildFlags = cargoTestFlags; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; postInstall = '' wrapProgram $out/bin/jrsonnet --add-flags "--max-stack=200000 --os-stack=200000" --- a/nix/jsonnet.nix +++ b/nix/jsonnet.nix @@ -15,7 +15,7 @@ "jsonnet" ]; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; installPhase = '' mkdir -p $out/bin -- gitstuff