{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; flake-utils.url = "github:numtide/flake-utils"; fenix.url = "github:nix-community/fenix"; fenix.inputs.nixpkgs.follows = "nixpkgs"; }; outputs = { self, nixpkgs, flake-utils, fenix, }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { system = system; config.allowUnfree = true; # config.android_sdk.accept_license = true; }; # android_sdk = # (pkgs.androidenv.composeAndroidPackages { # platformVersions = ["34"]; # ndkVersions = ["26.3.11579264"]; # includeNDK = true; # useGoogleAPIs = false; # useGoogleTVAddOns = false; # includeEmulator = false; # includeSystemImages = false; # includeSources = false; # }) # .androidsdk; packages = with pkgs; [ curl wget pkg-config nodejs_20 # typescript-language-server # vtsls # vue-language-server zed-editor # (vscode-with-extensions.override { # # vscode = vscodium; # vscodeExtensions = with vscode-extensions; [ # vscodevim.vim # vue.volar # catppuccin.catppuccin-vsc # github.copilot # github.copilot-chat # tauri-apps.tauri-vscode # rust-lang.rust-analyzer # ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ # # { # # name = "vscode-arduino-community"; # # publisher = "vscode-arduino"; # # version = "0.7.2"; # # sha256 = "/HdPJ6LBnyPhz7jeJ0MLRXO2L3bcAzM7J65nKsXsacY="; # # } # ]; # }) (with fenix.packages.${system}; combine [ complete.rustc complete.cargo complete.clippy # targets.aarch64-linux-android.latest.rust-std # targets.armv7-linux-androideabi.latest.rust-std # targets.i686-linux-android.latest.rust-std targets.x86_64-linux-android.latest.rust-std ]) rust-analyzer sqlx-cli # android_sdk jdk ]; libraries = with pkgs; [ gtk3 libsoup_3 webkitgtk_4_1 cairo gdk-pixbuf glib dbus openssl librsvg ]; in { devShell = pkgs.mkShell { buildInputs = packages ++ libraries; shellHook = '' zsh exit ''; LD_LIBRARY_PATH = "${pkgs.lib.makeLibraryPath libraries}:$LD_LIBRARY_PATH"; XDG_DATA_DIRS = "${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}:$XDG_DATA_DIRS"; # ANDROID_HOME = "${android_sdk}/libexec/android-sdk"; # NDK_HOME = "${android_sdk}/libexec/android-sdk/ndk/26.3.11579264"; # GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${android_sdk}/libexec/android-sdk/build-tools/34.0.0/aapt2"; }; }); }