Live location tracking and playback for the game "manhunt"
at 01357c7fc80e34531e72b6474c071c115592e131 89 lines 3.0 kB view raw
1{ 2 inputs = { 3 nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; 4 flakelight.url = "github:nix-community/flakelight"; 5 rust-overlay.url = "github:oxalica/rust-overlay"; 6 rust-overlay.inputs.nixpkgs.follows = "nixpkgs"; 7 }; 8 outputs = {flakelight, ...} @ inputs: 9 flakelight ./. { 10 inherit inputs; 11 withOverlays = [inputs.rust-overlay.overlays.default]; 12 nixpkgs.config = { 13 allowUnfree = true; 14 android_sdk.accept_license = true; 15 }; 16 17 flakelight.builtinFormatters = false; 18 formatters = pkgs: let 19 prettier = "${pkgs.prettier}/bin/prettier --write ."; 20 alejandra = "${pkgs.alejandra}/bin/alejandra ."; 21 rustfmt = "${pkgs.rustfmt}/bin/rustfmt"; 22 just = "${pkgs.just}/bin/just --fmt --unstable"; 23 in { 24 "justfile" = just; 25 "*.nix" = alejandra; 26 "*.js" = prettier; 27 "*.ts" = prettier; 28 "*.jsx" = prettier; 29 "*.tsx" = prettier; 30 "*.md" = prettier; 31 "*.json" = prettier; 32 "*.rs" = rustfmt; 33 }; 34 35 devShell = pkgs: let 36 buildToolsVersion = "34.0.0"; 37 androidComposition = pkgs.androidenv.composeAndroidPackages { 38 platformVersions = [ 39 "34" 40 "latest" 41 ]; 42 systemImageTypes = ["google_apis_playstore"]; 43 buildToolsVersions = [buildToolsVersion]; 44 abiVersions = [ 45 "armeabi-v7a" 46 "arm64-v8a" 47 "x86_64" 48 ]; 49 includeNDK = true; 50 includeExtras = [ 51 "extras;google;auto" 52 ]; 53 }; 54 in { 55 shellHook = let 56 ANDROID_HOME = "${androidComposition.androidsdk}/libexec/android-sdk"; 57 in '' 58 export XDG_DATA_DIRS="$GSETTINGS_SCHEMAS_PATH" 59 export GIO_EXTRA_MODULES="${pkgs.dconf.lib}/lib/gio/modules:${pkgs.glib-networking}/lib/gio/modules" 60 export ANDROID_HOME=${ANDROID_HOME} 61 export NDK_HOME="${androidComposition.androidsdk}/libexec/android-sdk/ndk/${builtins.head (pkgs.lib.lists.reverseList (builtins.split "-" "${androidComposition.ndk-bundle}"))}" 62 export GRADLE_OPTS="-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_HOME}/build-tools/${buildToolsVersion}/aapt2" 63 ''; 64 packages = with pkgs; [ 65 at-spi2-atk 66 atkmm 67 cairo 68 gdk-pixbuf 69 glib 70 gtk3 71 alejandra 72 harfbuzz 73 librsvg 74 libsoup_3 75 just 76 pango 77 webkitgtk_4_1 78 openssl 79 pkg-config 80 gobject-introspection 81 nodePackages.prettier 82 (rust-bin.stable.latest.default.override {targets = ["aarch64-linux-android" "armv7-linux-androideabi" "i686-linux-android" "x86_64-linux-android"];}) 83 cargo-tauri 84 nodejs 85 (android-studio.withSdk androidComposition.androidsdk) 86 ]; 87 }; 88 }; 89}