From 0c49fd8c344fa3663cff6a3c41396b17052853cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thea=20Sch=C3=B6bl?= Date: Mon, 30 Sep 2024 13:00:59 +0200 Subject: [PATCH] refactor: update nix dependencies --- flake.nix | 142 ++++++++++++++++++++++++++++++------------------------ 1 file changed, 80 insertions(+), 62 deletions(-) diff --git a/flake.nix b/flake.nix index 0fe1f26c..be8c6738 100644 --- a/flake.nix +++ b/flake.nix @@ -4,68 +4,86 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; - outputs = { - self, - nixpkgs, - flake-utils, - }: let - aapt2buildToolsVersion = "33.0.2"; - in - flake-utils.lib.eachDefaultSystem (system: let - pkgs = import nixpkgs { - inherit system; - overlays = [ - (final: prev: rec { - fontMin = prev.python311.withPackages (ps: with ps; [brotli fonttools] ++ (with fonttools.optional-dependencies; [woff])); - android = prev.androidenv.composeAndroidPackages { - buildToolsVersions = ["30.0.3" aapt2buildToolsVersion]; - platformVersions = ["33"]; - }; - cypress = prev.cypress.overrideAttrs (cyPrev: rec { - version = "13.2.0"; - src = prev.fetchzip { - url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip"; - hash = "sha256-9o0nprGcJhudS1LNm+T7Vf0Dwd1RBauYKI+w1FBQ3ZM="; + outputs = + { + self, + nixpkgs, + flake-utils, + }: + let + aapt2buildToolsVersion = "33.0.2"; + in + flake-utils.lib.eachDefaultSystem ( + system: + let + pkgs = import nixpkgs { + inherit system; + overlays = [ + (final: prev: rec { + fontMin = prev.python311.withPackages ( + ps: + with ps; + [ + brotli + fonttools + ] + ++ (with fonttools.optional-dependencies; [ woff ]) + ); + android = prev.androidenv.composeAndroidPackages { + buildToolsVersions = [ + "34.0.0" + aapt2buildToolsVersion + ]; + platformVersions = [ "34" ]; }; - }); - nodejs = prev.nodejs_18; - }) - ]; - config = { - allowUnfree = true; - android_sdk.accept_license = true; + cypress = prev.cypress.overrideAttrs (cyPrev: rec { + version = "13.2.0"; + src = prev.fetchzip { + url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip"; + hash = "sha256-9o0nprGcJhudS1LNm+T7Vf0Dwd1RBauYKI+w1FBQ3ZM="; + }; + }); + nodejs = prev.nodejs_18; + corepack = prev.corepack_18; + }) + ]; + config = { + allowUnfree = true; + android_sdk.accept_license = true; + }; }; - }; - androidFhs = pkgs.buildFHSUserEnv { - name = "android-env"; - targetPkgs = pkgs: with pkgs; []; - runScript = "bash"; - profile = '' - export ALLOW_NINJA_ENV=true - export USE_CCACHE=1 - export LD_LIBRARY_PATH=/usr/lib:/usr/lib32 - ''; - }; - in { - devShell = pkgs.mkShell rec { - nativeBuildInputs = [androidFhs]; - buildInputs = with pkgs; [ - nodejs - corepack - # tools - curl - jq - fontMin - cypress - # android - jdk17 - android.androidsdk - ]; - ANDROID_JAVA_HOME = "${pkgs.jdk.home}"; - ANDROID_SDK_ROOT = "${pkgs.android.androidsdk}/libexec/android-sdk"; - GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_SDK_ROOT}/build-tools/${aapt2buildToolsVersion}/aapt2"; - CYPRESS_INSTALL_BINARY = "0"; - CYPRESS_RUN_BINARY = "${pkgs.cypress}/bin/Cypress"; - }; - }); + androidFhs = pkgs.buildFHSUserEnv { + name = "android-env"; + targetPkgs = pkgs: with pkgs; [ ]; + runScript = "bash"; + profile = '' + export ALLOW_NINJA_ENV=true + export USE_CCACHE=1 + export LD_LIBRARY_PATH=/usr/lib:/usr/lib32 + ''; + }; + in + { + devShell = pkgs.mkShell rec { + nativeBuildInputs = [ androidFhs ]; + buildInputs = with pkgs; [ + nodejs + corepack + # tools + curl + jq + fontMin + cypress + # android + jdk17 + android.androidsdk + ]; + ANDROID_JAVA_HOME = "${pkgs.jdk.home}"; + ANDROID_SDK_ROOT = "${pkgs.android.androidsdk}/libexec/android-sdk"; + GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_SDK_ROOT}/build-tools/${aapt2buildToolsVersion}/aapt2"; + CYPRESS_INSTALL_BINARY = "0"; + CYPRESS_RUN_BINARY = "${pkgs.cypress}/bin/Cypress"; + }; + } + ); }