Commit graph

284 commits

Author SHA1 Message Date
Hadi 9f959e7154 androidenv: rename android sdk package name 2023-05-23 08:16:20 +02:00
Hadi 3310972785
androidenv: update repo.json with a new strategy to expire 2023-05-12 18:33:46 -04:00
Hadi 077588ad1a
androidenv: put a much nicer error message that includes the available options 2023-04-22 14:47:45 -04:00
Hadi 81f75f9569 androidenv: fix libgcc_s.so.1 -> not found 2023-04-18 20:18:13 +03:00
K900 61fd82abeb adb: fix libgcc_s reference 2023-04-10 08:45:51 +03:00
Sandro 7ecf5641d3
Merge pull request #216142 from status-im/androidenv/fix-toolchains 2023-04-01 23:51:19 +02:00
Hadi a05928d7fe androidenv: make nix-build -A androidenv.test-suite work
androidenv: set config.allowUnfree = true for integration tests

androidenv: fix concerns in the PR
2023-02-28 08:53:43 -05:00
Hadi d511bfd0e2 androidenv: add shell-with-emulator.nix to have test and more examples
androidenv: replace buildInputs with nativeBuildInputs
2023-02-28 08:53:43 -05:00
Hadi e5fbfd894f androidenv: fix problem with avdmanager when trying to create an avd
To do so, we gathered different system images with the same
abiVersion in the same derivation.
2023-02-28 08:53:43 -05:00
Felix Buehler bc3d5934d7 treewide: use lib.optionals 2023-02-14 19:11:59 +01:00
Jakub Sokołowski 93e9aac7dc
androidenv: fix autopatching toolchains
Use of binaries from NDK `toolchains` has been broken by following PR:

* https://github.com/NixOS/nixpkgs/pull/195752

I'm splitting the patchInstructions to run the ELF patching only on Linux.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-02-14 16:12:13 +01:00
Jakub Sokołowski af7c4c68bf
androidenv: fix patching linux prebuilt binaries
This has been broken by following PR due to typo:
https://github.com/NixOS/nixpkgs/pull/195752

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-02-09 12:04:46 +01:00
Artturi bf9433fd4c
Merge pull request #210372 from hadilq/androidenv/generate-package.xml-files
androidenv: generate package.xml in packages' directory
2023-01-29 18:12:52 +02:00
Hadi 9c4e43ab70 androidenv: Implement cmdline-tools and patcher
- Replace cmdline-tools with tools because tools is obsolete now.
- Depend emulator package to systemImages

androidenv: fix issues on the PR

androidenv: reformat

androidenv: support excluding of `tools` package

androidenv: provide `tools`, and `build-tools`, dependencies

androidenv: replace includeTools with toolsVersion

androidenv: fix a typo

androidenv: add tests to check licenses and installed packages

androidenv: check if tests are running! this commit should fail!

androidenv: fix problems in the review https://github.com/NixOS/nixpkgs/pull/208793

androidenv: add test-suite to handle more tests around

androidenv: fix the test after couldn't running them with ofborg

Update pkgs/development/mobile/androidenv/build-tools.nix

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

androidenv: Resolving https://github.com/NixOS/nixpkgs/pull/208793#discussion_r1065851539

Update pkgs/development/mobile/androidenv/cmdline-tools.nix

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

Update pkgs/development/mobile/androidenv/tools.nix

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

androidenv: fix a typo
2023-01-27 18:15:47 -05:00
Hadi 181e0e91ba androidenv: generate package.xml in packages' directory 2023-01-12 10:19:11 -05:00
Hadi 8ca4470a5e androidenv: use unzip in nativeBuildInputs 2023-01-03 18:17:11 -05:00
Hadi 2f06edee4f
Update pkgs/development/mobile/androidenv/deploy-androidpackages.nix
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2023-01-03 11:05:57 -05:00
Hadi d1a1f2fa06 androidenv: Fix we are using 2 spaces to intend nix code in
see: https://github.com/NixOS/nixpkgs/pull/208137#discussion_r1059518929
2022-12-31 12:21:21 -05:00
Hadi bceccb7f70 androidenv: Replace deploy-androidpackage.nix with deploy-androidpackages.nix 2022-12-31 11:21:40 -05:00
Artturi 338097c04c
Merge pull request #208300 from hadilq/androidenv/fix-system-image-download-url-for-default-type 2022-12-30 15:48:07 +02:00
Hadi 6fd11aec99 androidenv: Fix system image download url for default type 2022-12-30 15:30:27 +02:00
Hadi 2f688374e0
androidenv: fix missing packages in repo json (#208137) 2022-12-30 15:28:12 +02:00
jakobkukla 14c7a30161 androidenv: fix missing inherit os 2022-12-20 04:28:20 +01:00
jakobkukla 8851f074f8 androidenv: fix non-existent emulatorVersion 2022-12-20 04:28:20 +01:00
Vanilla 32c1e7d7db
androidenv: fix missing inherit os in build-tools 2022-12-17 13:21:54 +08:00
Artturi f9b2c36a7f
Merge pull request #205701 from Artturin/deprecatereplacechars
lib.replaceChars: warn about being a deprecated alias
2022-12-15 23:46:51 +02:00
Artturin 05a2dfd674 lib.replaceChars: warn about being a deprecated alias
replaceStrings has been in nix since 2015(nix 1.10)

so it is safe to remove the fallback

d6d5885c15
2022-12-15 22:25:51 +02:00
Artturin a2f85e0fa8 androidenv: use callPackage instead of import & fix infinite recursion
infinite recursion was due to autoPatchelfHook being in buildInputs of
platform-tools, i will add a lint for it in nix-community/nixpkgs-lint.

```
$ nix build ".#pkgsCross.aarch64-android-prebuilt.hello" --show-trace 2>&1 | rg 'while evaluating the attr.+deriv'
    … while evaluating the attribute 'stdenv' of the derivation 'zlib-aarch64-unknown-linux-android-1.2.13'
    … while evaluating the attribute 'CPPFLAGS' of the derivation 'python3-aarch64-unknown-linux-android-3.10.8'
    … while evaluating the attribute 'setuptools' of the derivation 'python-catch-conflicts-hook'
    … while evaluating the attribute 'nativeBuildInputs' of the derivation 'python3.10-pyelftools-0.28'
    … while evaluating the attribute 'passAsFile' of the derivation 'python3-3.10.8-env'
    … while evaluating the attribute 'pythonInterpreter' of the derivation 'auto-patchelf-hook'
    … while evaluating the attribute 'buildInputs' of the derivation 'platform-tools-33.0.2'
    … while evaluating the attribute 'installPhase' of the derivation 'ndk-24.0.8215888'
    … while evaluating the attribute 'installPhase' of the derivation 'aarch64-unknown-linux-android-ndk-toolchain-24.0.8215888'
    … while evaluating the attribute 'bintools_bin' of the derivation 'aarch64-unknown-linux-android-ndk-toolchain-wrapper-24.0.8215888'
    … while evaluating the attribute 'bintools' of the derivation 'aarch64-unknown-linux-android-ndk-toolchain-wrapper-24.0.8215888'
    … while evaluating the attribute 'defaultNativeBuildInputs' of the derivation 'stdenv-linux'
    … while evaluating the attribute 'stdenv' of the derivation 'hello-aarch64-unknown-linux-android-2.12.1'
```

stdenv -> stdenv.cc -> bintools -> android-ndk-toolchain -> ndk -> platform-tools -> auto-patchelf-hook -> python3 -> zlib -> stdenv -> stdenv.cc -> ...

autoPatchelfHook was in buildInputs of platform-tools so we needed the host tools to build
it but platform-tools was a required tool
2022-12-15 21:55:22 +02:00
Léo Gaspard ad25aa1098
androidenv: use emulator from the path that makes it find qemu (#202088) 2022-12-06 21:16:49 +01:00
Sheldon Neuberger a5f4369130 androidenv: fix darwin ndk symlink
Today the nix ndk package on darwin points to a directory that doesn't
exist. This fix was added previously for linux but is needed on all
platforms.
2022-10-27 10:12:54 -07:00
Artturin 7e49471316 treewide: optional -> optionals where the argument is a list
the argument to optional should not be list
2022-10-10 15:40:21 +03:00
Artturi 79c42aa06c
Merge pull request #186564 from Artturin/crossevalfixes
Fixes for cross-compilation
2022-08-27 17:49:00 +03:00
Artturin c6568adb00 treewide: makeWrapper buildInputs to nativeBuildInputs
most found with https://github.com/siraben/nix-lint
2022-08-16 13:14:19 +03:00
Charlotte Van Petegem 8cf6dd815f
androidenv: fix build of build-tools >= 33
mainDexClasses seems to have been removed in this version of build-tools. (Seems
to, because the release notes are not updated at all, unfortunately:
https://developer.android.com/studio/releases/build-tools).
2022-08-16 09:37:44 +02:00
Van Tuan Vo 8b8ac80759
androidenv: fix default ndk linking for ndk > 22 2022-07-24 20:35:49 +02:00
Van Tuan Vo e8dfc2d72a
androidenv: fix ndk linking for ndk < 23 2022-07-24 20:35:48 +02:00
Jari Vetoniemi 2408ef3c6f androidndk: remove legacy ndks
allows us to remove python2 dependencies and lot more
2022-06-29 18:27:16 +09:00
Jari Vetoniemi 0aded46f08 androidenv: update packages 2022-06-29 18:27:16 +09:00
Jari Vetoniemi 5f1923d67e androidenv: fix android cross-compilers
These were completely broken. Even if they managed to output a binary,
it wouldn't actually run on the actual device.
2022-06-29 18:27:16 +09:00
Manuel Bärenz 0856383b26 androidenv: Fix emulator 2022-06-20 14:30:31 +02:00
Sandro Jäckel 2d1147930b
android tools: fix meta license 2022-06-20 11:26:44 +02:00
Sandro 1fdeb86121
Merge pull request #169468 from Atemu/update/android-env
androidenv: regenerate repo.json
2022-05-31 15:38:21 +02:00
Jakub Sokołowski b0663a3dc3
androidenv: include autoPatchelfHook only on Linux
This is supposed to fix an issue caused by this PR:
https://github.com/NixOS/nixpkgs/pull/163924

Which made `autoPatchelfHook` available only on Linux, resulting in
builds of Android packages failing with:
```
error: Package ‘auto-patchelf-hook’ in /nix/store/...-nixpkgs-source/pkgs/build-support/trivial-builders.nix:73
    is not supported on ‘x86_64-darwin’, refusing to evaluate.
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2022-05-29 23:17:37 +02:00
Artturin c1fffdfffb treewide: change some glibc to stdenv.cc.libc 2022-05-27 05:57:43 +03:00
Artturin 0c4d65b21e treewide: stdenv.glibc -> glibc 2022-05-25 15:51:20 +03:00
Atemu 1df306132b platform-tools: allow aarch64-darwin 2022-04-20 20:43:45 +02:00
Atemu 928d976aa5 androidenv: regenerate repo.json 2022-04-20 20:33:12 +02:00
Atemu e48ca2fa56 androidenv: document update procedure 2022-04-20 20:26:59 +02:00
OPNA2608 d2f268745a treewide: autoPatchelfHook only on Linux 2022-03-23 21:37:39 +01:00
Michael Lohmann 962d74ce84
androidenv: default emulatorVersion to one available
The last repo.json update in a0f6a8af81 removed the default emulator version, so it had to be changed (or the repo.json had to be overwritten) for it to work.
Instead use the most recent available emulator version
2021-12-10 20:43:45 +01:00