Commit Graph

468 Commits

Author SHA1 Message Date
Ryan Burns
b98bfb6536 androidenv: do not copy verbosely
Verbose copying can exceed hydra's output limit,
causing spurious failures. For example, see:
https://hydra.nixos.org/eval/1644892?filter=android
2021-01-27 02:03:14 -08:00
Pavol Rusnak
a6f6f739c8
Merge pull request #109655 from prusnak/stdenv-lib-mobile
pkgs/development/mobile: stdenv.lib -> lib
2021-01-23 12:11:03 +01:00
zowoq
59b83c43e0 treewide: add final newline 2021-01-22 07:18:04 +10:00
Pavol Rusnak
c3bbfb77ad
pkgs/development/mobile: stdenv.lib -> lib 2021-01-21 20:45:23 +01:00
zowoq
932941b79c treewide: editorconfig fixes
- remove trailing whitespace
- use spaces for indentation
2021-01-21 13:29:54 +10:00
Jonathan Ringer
9bb3fccb5b treewide: pkgs.pkgconfig -> pkgs.pkg-config, move pkgconfig to alias.nix
continuation of #109595

pkgconfig was aliased in 2018, however, it remained in
all-packages.nix due to its wide usage. This cleans
up the remaining references to pkgs.pkgsconfig and
moves the entry to aliases.nix.

python3Packages.pkgconfig remained unchanged because
it's the canonical name of the upstream package
on pypi.
2021-01-19 01:16:25 -08:00
Profpatsch
4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00
numinit
5b91d4ab65 Rework androidenv package generation
androidenv did not previously write license files, which caused certain
gradle-based Android tools to fail. Restructure androidenv's list of
Android packages into a single repo.json file to prevent duplication
and enable us to extract the EULA texts, which we then hash with
builtins.hashString to produce the license files that Android gradle
tools look for.

Remove includeDocs and lldbVersions, as these have been removed
from the Android package repositories.

Improve documentation and examples.
2021-01-03 21:27:23 -07:00
Jan Tojnar
3afc4e8a81
androidsdk_9_0: fix evaluation without aliases 2020-12-06 11:07:40 +01:00
Graham Christensen
bc49a0815a
utillinux: rename to util-linux 2020-11-24 12:42:06 -05:00
Lily Ballard
a5ec423734 cocoapods-beta: 1.10.0.beta.2 -> 1.10.0 2020-11-07 20:30:27 -05:00
Lily Ballard
16ee3d1e09 cocoapods: 1.9.3 -> 1.10.0 2020-11-07 20:30:27 -05:00
Ben Siraphob
db74029e3e treewide: remove package names from prefix of descriptions 2020-10-27 09:15:07 -07:00
Ben Siraphob
683a87dbeb treewide: remove periods from end of package descriptions 2020-10-17 08:22:31 -07:00
John Ericson
452854a13c androidndk: Avoid depending on target-sensative openjdk
We just need jdk for this script that helps set up toolchains. The
script might need to know about the target platform, but the interpreter
that runs it (or part of it) doesn't.
2020-09-08 09:49:39 -04:00
John Ericson
4c489b5f5d deployAndroidPackage: Use pname and version 2020-09-08 09:31:18 -04:00
Matthew Bauer
d0e52b6b32
Merge pull request #95309 from obsidiansystems/mobile-fixes
Support Android 29 in cross-compilation
2020-08-28 14:59:37 -05:00
eyjhb
f13d952121
androidenv: fix convert files not quoting urls 2020-08-19 16:40:28 +02:00
Matthew Bauer
4cbca0893a androidenv: remove duplicate addons.nix entries 2020-08-17 23:51:59 -05:00
Matthew Bauer
074bc78cc8 android: update sdk, ndk to 29, 21 2020-08-17 23:51:53 -05:00
Luca Favatella
7802608649 androidenv/emulate-app: use runtimeShell instead of stdenv.shell
See also https://github.com/NixOS/nixpkgs PR 56408.
2020-08-16 10:27:37 +00:00
Lily Ballard
b02225db76 cocoapods-beta: 1.10.0.beta.1 -> 1.10.0.beta.2 2020-08-12 13:27:20 -07:00
eyjhb
2d999d7e6e
androidenv.build-tools: add libc++ to enable buildToolsVersion 29.0.3 2020-08-01 16:53:51 +02:00
Lily Ballard
c4ce0b778c cocoapods-beta: 1.9.3 -> 1.10.0.beta.1 2020-07-26 23:19:30 -07:00
Maximilian Bosch
4f67c0cc6c
adb-sync: 2016-08-31 -> 2019-01-01
Simple tool to synchronize a directory-tree between a local machine and
an Android device using `adb` and `rsync`.

Since this repo doesn't have any releases atm, I added the `-unstable`
suffix to `pname`. Since 2016-08-31 the following things changed:

7fc48ad1e1...fb7c549753

Also applied the following changes to the derivation:

* Removed the `phases` hack to enable important things like `fixupPhase`
  again (amongst other things this is needed for shebang-patching and
  reference-checks).

* Fixed the wrapper to make sure that every binary needed by those
  scripts is available.

* Added myself as additional maintainer.
2020-06-10 01:40:29 +02:00
Lily Ballard
9a11cd674e cocoapods-beta: 1.9.2 -> 1.9.3 2020-05-30 14:17:09 -07:00
Lily Ballard
8cc640b5cb cocoapods: 1.9.2 -> 1.9.3 2020-05-30 14:17:01 -07:00
vponte
7d69a04d79 androidenv: add missing emulator dynamic libraries 2020-05-30 15:43:32 +02:00
Jörg Thalheim
6602f87384
nodePackages: switch to 12
Signed-off-by: Christian Albrecht <christian.albrecht@mayflower.de>
2020-05-27 21:45:41 +02:00
Lily Ballard
30c5973f46 cocoapods-beta: 1.9.1 -> 1.9.2 2020-05-22 17:15:27 -07:00
Lily Ballard
c364ed710f cocoapods: 1.9.1 -> 1.9.2 2020-05-22 17:15:16 -07:00
Jan Tojnar
e89e2edc73
libusb-compat-0_1: rename from libusb 2020-04-28 05:33:41 +02:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Samuel Leathers
72cb7f81fd
Merge pull request #81442 from manveru/bundler-2.1.4
bundler: 1.17.3 -> 2.1.4
2020-04-08 12:44:54 -04:00
Michael Fellinger
f92600b406
update versions in Gemfile.lock 2020-04-06 15:02:13 +02:00
Sander van der Burg
542a74a9dc
Merge pull request #82118 from lucafavatella/androidenv-update-2
androidenv: update generated expressions
2020-04-05 14:59:04 +02:00
Sander van der Burg
52c89d0572
Merge pull request #82067 from lucafavatella/androidenv-generate
androidenv: enhance script for the generated expressions
2020-03-16 22:48:17 +01:00
Lily Ballard
3635332a42 cocoapods-beta: 1.9.0 -> 1.9.1 2020-03-15 17:58:19 -07:00
Lily Ballard
7e678381ce cocoapods: 1.9.0 -> 1.9.1 2020-03-15 17:58:08 -07:00
Luca Favatella
f01278dea2 androidenv: manually (!) delete more complex version of google images
This commit was built as a revert commit followed by deletion:
* Revert "androidenv: manually (!) delete oldest revision of google
  images".
* Delete other revision.

Using `systemImageType = "google_apis_playstore"` (and `abiVersion =
"x86"` and `platformVersion = "28"` - that I expect resolved to
`97d9d4f4a2afa8b0f5d52e90748e19c10406ca93`), the symptom is:
```
Warning: Observed package id 'system-images;android-28;google_ndk_playstore;x86' in inconsistent location '/nix/store/...-androidsdk/libexec/android-sdk/system-images/android-28/google_apis_playstore/x86' (Expected '/nix/store/...-androidsdk/libexec/android-sdk/system-images/android-28/google_ndk_playstore/x86')
...
Error: Package path is not valid. Valid system image paths are:
system-images;android-28;google_ndk_playstore;x86
```
How is the actual image name `google_ndk_playstore` when the fetched
image has id `google_apis_playstore`?

Attempt keeping - of the two images - the one that looks simpler.

For the `"28".google_apis."x86"` images, in the XML the differences
are: more complex license (what is `arm-dbt`?); higher emulator.
Namely:
```
		<uses-license ref="android-sdk-license"/>
		<dependencies>
			<dependency path="patcher;v4"/>
			<dependency path="emulator">
				<min-revision>
					<major>27</major>
					<minor>1</minor>
					<micro>7</micro>
...
		<uses-license ref="android-sdk-arm-dbt-license"/>
		<dependencies>
			<dependency path="patcher;v4"/>
			<dependency path="emulator">
				<min-revision>
					<major>29</major>
					<minor>1</minor>
					<micro>12</micro>
```

Analogously for `"28".google_apis_playstore."x86"`.
2020-03-09 18:34:16 +00:00
Luca Favatella
c50618898f androidenv/emulate-app: fix image id for recent device manager
Symptom:
```
Available Android targets:
----------
id: 1 or "android-28"
     Name: Android 9
     Type: Platform
     API level: 28
     Revision: 6
     Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800, WXGA800-7in
 Tag/ABIs : google_ndk_playstore/x86
...
Error: Invalid --tag google_apis_playstore for the selected target.
```

For creation of AVD, switch from `android` to `avdmanager` as the
latter seems enabling selecting the image with less friction (and is
better documented as not deprecated).  This requires using recent
tools - from https://developer.android.com/studio/releases/sdk-tools :
> SDK Tools, Revision 25.3.0 (March 2017)
> ...
> `android avd` command-line functionality replaced with new
> `avdmanager` tool.

For listing of targets, switch from `android` to `avdmanager` as the
`android` command invocation fails in recent tools.  Symptom (not
missing `s` as backward incompatibility):
```
Invalid or unsupported command "list targets"

Supported commands are:
android list target
android list avd
android list device
android create avd
android move avd
android delete avd
android list sdk
android update sdk
```

References:
- https://developer.android.com/studio/tools/help/android
- https://developer.android.com/studio/command-line/avdmanager
2020-03-09 15:38:49 +00:00
Freeman Latif
954b406ac2 androidenv: add missing linux dependencies
This is extracted from https://github.com/NixOS/nixpkgs PR 78623.

The symptom I observed was:
```
builder for '/nix/store/7zz585ch9jqjvz8k88rf7fs046inxszq-emulator-30.0.3.drv' failed with exit code 1; last 10 log lines:
    libXext.so.6 -> found: /nix/store/qkmj8pa3ka9v335bbgx74ah4080fwdbf-libXext-1.3.4/lib/libXext.so.6
    libXfixes.so.3 -> found: /nix/store/nhp59xxq4g51mgpwgjsp8pvkn7531b86-libXfixes-5.0.3/lib/libXfixes.so.3
    libXi.so.6 -> not found!
    libXrender.so.1 -> not found!
    libXtst.so.6 -> not found!
    libasound.so.2 -> not found!
    libz.so.1 -> found: /nix/store/pb2am7dfsv524pb2z7m8mp8nkcmgd3cl-zlib-1.2.11/lib/libz.so.1
    libdbus-1.so.3 -> found: /nix/store/ddqrvb1b0xdb8g18f4advmq4wk0aiknd-dbus-1.12.16-lib/lib/libdbus-1.so.3
    libGL.so.1 -> found: /nix/store/bbpgyifsh2hv0ivhl3g4ik2nw7d10zdx-emulator-30.0.3/libexec/android-sdk/emulator/lib64/gles_mesa/libGL.so.1
    libc++.so.1 -> found: /nix/store/bbpgyifsh2hv0ivhl3g4ik2nw7d10zdx-emulator-30.0.3/libexec/android-sdk/emulator/lib64/libc++.so.1
```
2020-03-09 04:49:47 +00:00
Luca Favatella
91411f0f21 androidenv: manually (!) delete default images with same name
... complex as apparently dependent on OS of host of emulator.

This shall rather be solved by enhancement of the scripts.
2020-03-09 04:47:40 +00:00
Luca Favatella
72e3836bfb androidenv: manually (!) delete oldest revision of google images
... as same name hence clashing.

This shall rather be solved by enhancement of the scripts.
2020-03-09 04:47:40 +00:00
Luca Favatella
3286057969 androidenv: fix default platform-tools to a known one 2020-03-09 04:47:40 +00:00
Luca Favatella
6da0e0b7d7 androidenv: bump emulator version to latest stable - as per Linux
Move to a known version of the emulator.  Each OS has a distinct
version... pick the one on Linux.  A better solution would be to let
the user of `emulateApp` overload what the emulator version shall be
(and maybe it is already possible and I do not see it) - without need
to reproduce large portions of `default.nix`.

Using the previous emulator showed the following warning:
```
Your emulator is out of date, please update by launching Android Studio:
```

I am not aware of any reasons for not wanting the latest emulator (as
I expect it shall be compatible usually with more system images - not
less), so bump its default version.

Emulator release notes:
https://developer.android.com/studio/releases/emulator
2020-03-09 04:47:40 +00:00
Luca Favatella
e003ca046c androidenv: update the generated expressions
... running `generate.sh`.
2020-03-09 04:47:39 +00:00
Luca Favatella
de119ca8ea androidenv: fix packages xsl used in generate.sh
Entry `<remotePackage path="cmdline-tools;latest">` resulted in a
duplicated `"cmdline-tools"."1.0"`.
2020-03-09 04:45:36 +00:00
Tad Fisher
d574ea45a2 androidenv: fix system images xsl used in generate.sh
Updated with fixes for `convertsystemimages.xsl`:
- Use `type-details/codename` if it exists, falling back to
  `type-details/api-level`: this results in "Q" rather than "28" for
  preview images
- Use `<xsl:text>` elements to control whitespace in the output.

This is extracted from https://github.com/NixOS/nixpkgs PR 58131.
2020-03-09 03:43:19 +00:00
Tad Fisher
6f80983963 androidenv: update generate.sh to use nix-shell and fail on error
Update generate.sh to run using nix-shell. Also make it fail with
meaningful output instead of writing empty output files.

This is extracted from https://github.com/NixOS/nixpkgs PR 58131.

This relies on the shebang being used.
2020-03-09 03:43:19 +00:00