Commit Graph

49 Commits

Author SHA1 Message Date
Sunghoon Kang
77702747e7
flutter: add darwin support
Signed-off-by: Sunghoon Kang <me@hoon.dev>
2023-07-07 13:07:34 +09:00
FlafyDev
570f3efd1d flutter: Separate cache and unwrapped derivations
flutter-unwrapped will now not come with engine artifacts in its cache directory(`$out/bin/cache`).

To specify a different cache directory, set FLUTTER_CACHE_DIR.

Flutter's wrapper now sets FLUTTER_CACHE_DIR to set engine artifacts.

The sh file `$out/bin/internal/shared.sh` runs when launching Flutter and calls `"$FLUTTER_ROOT/bin/cache/` instead of our environment variable `FLUTTER_CACHE_DIR`.
I decided not to patch it since the script doesn't require engine artifacts(which are the only thing not added by the unwrapped derivation), so it shouldn't fail, and patching it will just be harder to maintain.
2023-06-30 15:23:34 +03:00
FlafyDev
b1efbff8ec flutter: Move artifact installation logic to the wrapper 2023-05-15 01:16:47 +03:00
gilice
596aa930b2 flutter: rename & expose builders to pkgs
The renames are:
  mkFlutter -> mkCustomFlutter
  flutterDrv -> mkFlutter

I hope this will bring more clarity
2023-04-30 18:33:05 +02:00
hacker1024
552e3fe498 flutter: Don't use IFD to read the engine version 2023-04-23 14:44:46 +10:00
hacker1024
607a57d48e flutter.mkFlutterApp: Rename to flutter.buildFlutterApplication
This fits more appropriately with other build derivations like buildPythonApplication.
2023-04-15 20:57:21 +10:00
hacker1024
62e50080f3 flutter: Download engine artifacts individually
This brings the following benefits:
- Artifacts missing in the SDK tarball (such as prebuilts for linux-aarch64) can be obtained
- Artifacts can be patched more granularly (e.g. libflutter_linux_gtk is patchelf-ed for GTK3, and the linux-aarch64 assets have a postPatch to add some missing files)
- Minimal Flutter packages can be generated (e.g. mkFlutterApp only needs prebuilts for desktop Linux, and developers that don't care for desktop Linux can exclude the artifacts and dependencies)

It also paves the way for including manually built engine facts.
2023-04-15 02:09:28 +10:00
hacker1024
cedcb0b772 flutter: Rename "self" to "unwrapped" in main derivation 2023-04-13 23:19:16 +10:00
hacker1024
c59ce54f1d flutter: Add mkFlutterApp as a passthru attribute 2023-04-13 22:02:50 +10:00
hacker1024
f3aac6e61e flutter: Add FlafyDev, gilice, and hacker1024 as maintainers 2023-04-13 19:46:45 +10:00
hacker1024
4df7d07ab1 flutter: Remove stray dollar sign from name string 2023-04-13 19:29:42 +10:00
hacker1024
d5aa0c1f97 Merge remote-tracking branch 'NixOS/master' into patch-3 2023-04-13 19:22:50 +10:00
hacker1024
94a34aadf6 flutter: Use autoPatchelfHook for SDK artifacts
This allows SDK artifacts (including build tools and libraries) to use the right interpreter and library locations, abolishing the need for a FHS or post-build patches.

`autoPatchelf` has been used through `autoPatchelfHook`, instead of the `autoPatchelf` command on just the artifact directory, due to the latter method not patching interpreter paths (https://discourse.nixos.org/t/trying-to-use-autopatchelf/24003).

Co-authored-by: FlafyDev <flafyarazi@gmail.com>
Co-authored-by: gilice <gilice@proton.me>
Co-authored-by: hacker1024 <hacker1024@users.sourceforge.net>
2023-04-13 18:01:25 +10:00
hacker1024
65708c3360 flutter: Don't delete SDK artifacts
Co-authored-by: FlafyDev <flafyarazi@gmail.com>
Co-authored-by: gilice <gilice@proton.me>
Co-authored-by: hacker1024 <hacker1024@users.sourceforge.net>
2023-04-13 18:01:01 +10:00
hacker1024
cda91ab269 flutter: Add cache output and preload pub cache when necessary
Co-authored-by: FlafyDev <flafyarazi@gmail.com>
Co-authored-by: gilice <gilice@proton.me>
Co-authored-by: hacker1024 <hacker1024@users.sourceforge.net>
2023-04-13 17:55:40 +10:00
hacker1024
7840f2055a flutter: Create the flutter derivation with callPackage alone 2023-04-13 00:09:42 +10:00
hacker1024
341fa709ff flutter: Redesign wrapping architecture
The following principles are now in place:

- All wrappers will include SDK file symlinks. There is not much of a reason to not do so, and removing the option to omit it makes it easier to understand what each wrapper does.
- There is no longer a way to get the previous derivation from a wrapper. This could yield unexpected results based on the wrapping order. Instead, "sdk", "unwrapped", and "noFHS" passthru attributes are provided where appropriate.
2023-02-18 00:43:17 +11:00
Guillaume Girol
33afbf39f6 treewide: switch to nativeCheckInputs
checkInputs used to be added to nativeBuildInputs. Now we have
nativeCheckInputs to do that instead. Doing this treewide change allows
to keep hashes identical to before the introduction of
nativeCheckInputs.
2023-01-21 12:00:00 +00:00
hacker1024
ea48c7c9b6 flutter: Modularize unwrapped, wrapped, and FHS components 2022-11-14 13:11:49 +11:00
hacker1024
c6b044c101 flutter: Use RPATH and CFLAGS to remove Linux desktop compilation and runtime FHS dependency 2022-11-14 11:24:38 +11:00
hacker1024
7fd5a33393 flutter: Move runtime libraries out of FHS using LD_LIBRARY_PATH 2022-11-14 00:22:10 +11:00
hacker1024
32ac87459e flutter: Add dependencies for Linux desktop compilation 2022-11-14 00:08:58 +11:00
h7x4
2bb2eec813
flutter: add h7x4 as maintainer 2022-11-12 20:18:26 +01:00
colin
a2436fc54d flutter: enable aarch64-linux support 2022-10-09 05:34:42 -07:00
nanashi0x74
ffb72bdc5b flutter: fix buildPhase after .packages deprecation
https://medium.com/dartlang/dart-2-18-f4b3101f146c#514e
2022-09-14 18:50:39 +02:00
nanashi0x74
2cdbc00b2c flutter: use dart pub instead of deprecated pub command 2022-07-11 14:02:35 +02:00
Maciej Krüger
fd41185d86
flutter.mkFlutterApp: init
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-02-19 15:07:41 +01:00
Eric Dallo
11644ddcf2
flutter: add missing dart-sdk cache folder 2022-01-11 19:47:15 -03:00
Thiago Kenji Okada
2962edb944 flutter: remove myself from maintainers 2021-11-23 13:26:50 -03:00
ilkecan
d882c5751b flutter: add passthru.dart 2021-11-16 20:24:31 +03:00
Eric Dallo
804e2edff5
flutter: 2.2.1 -> 2.5.1 2021-09-25 00:28:02 -03:00
AndersonTorres
e9e5f5f84d Change all alsaLib references to alsa-lib 2021-06-10 01:12:49 -03:00
kolaente
ba619289b6
flutter: remove patchelf 2021-03-23 21:00:23 +01:00
kolaente
e5e446bdc0
flutter: add inherit version 2021-03-23 20:51:58 +01:00
drsk
e619018449 flutter: added dev libraries for the emulator
Four additional libraries seem to be needed to start the emulator on my
machine.
2021-02-01 11:08:25 +01:00
Thiago Kenji Okada
910d06bb90 flutter: small refactorings in derivation 2021-01-29 18:05:13 -03:00
Thiago Kenji Okada
f5294b802d Revert "flutter: 1.22.4 -> 1.22.5"
This reverts commit 5f72a823de.
2021-01-29 14:50:13 -03:00
Thiago Kenji Okada
d87aba56a8 dart/flutter: add thiagokokada as maintainer 2021-01-27 14:48:10 -03:00
Thiago Kenji Okada
5f72a823de flutter: 1.22.4 -> 1.22.5
Needs to do a build in 2-pass now since Google stopped shipping all
dependencies needed to build Flutter. This may be an oversight from them
since they used to ship everything, but this makes the whole build
process more robust.

The first step will download all dependencies from pub, and the
second step will build Flutter. Since we need to build repository
first, we also require a new depsSha256 parameter to be passed, that
represents the SHA256 of the resulting derivation of all Flutter
dependencies downloaded from https://pub.dev.

This commit also makes some changes in mkFlutter, allowing the
user to pass src instead of passing version/channel/filename, allowing
for more flexibility (i.e: building from a local fork of Flutter).
2021-01-27 14:48:10 -03:00
Thiago Kenji Okada
d6db914fc4 flutter: 1.22.0 -> 1.22.4 2021-01-27 14:48:10 -03:00
Thiago Kenji Okada
ec644e05cb flutter: remove non-stable versions
Related issue #108606.

Nowadays we have multiple outdated versions of Flutter in nixpkgs.
Instead, let's focus in having in having stable versions of Flutter
working.

Users needing to use beta or dev versions of Flutter can use mkFlutter
function, that still exists.
2021-01-27 14:48:06 -03:00
Ben Siraphob
acc5f7b18a pkgs/development/compilers: stdenv.lib -> lib 2021-01-23 08:57:37 +07:00
Thiago Kenji Okada
bbbe322b1a flutter: refactor and reduce derivation size
Instead of copying the whole dart derivation to bin/cache/dart-sdk
directory, just symlink it.

Also, make sure that the flutter is build from dart passed as a
parameter.

Before:
/nix/store/p3avfmvd0yrjpwwml7vvqbjin5vacx2k-flutter-stable-1.22.0	2084894968

After:
/nix/store/750k4z1yj5xsw7ymmwvn7cfjjzkaygzg-flutter-stable-1.22.0	1647047080
2021-01-06 17:50:45 -03:00
Thiago Kenji Okada
a03f012956 flutter: format with nixpkgs-fmt 2021-01-06 17:50:45 -03:00
Mario Rodas
e250fef768
Merge pull request #99920 from ericdallo/add-dart-to-flutter
flutter: Bump and add dart cache to flutter
2020-10-30 08:56:54 -05:00
Eric Dallo
bee3fb885f
flutter: Add dart cache to flutter 2020-10-30 09:58:06 -03:00
Ben Siraphob
c98962e1a3 treewide: remove periods from end of package descriptions 2020-10-25 20:13:18 +07:00
Bastien Rivière
8986e95dca flutter: update channels + fix dev channel 2020-04-05 15:35:11 +02:00
Bastien Rivière
d037e64ef6
flutter: init 1.12.13+hotfix.8
flutter: add beta and dev channels

flutter: artifacts are now downloaded in $HOME/.cache/flutter

flutter: remove all artifacts from flutter

flutter: fix lockfile path

flutter: fix pub_cache

flutter: fix flutter_tools/.packages pointing to /build

flutter: clean patches

flutter: fix write error on .cache/flutter/lockfile

flutter: add zlib as a dependency

flutter: add missing dependencies

flutter: fix flutter version

flutter: update versions + dependencies
2020-03-27 23:21:06 +01:00