Moved from electrobun to tauri+cef
This commit is contained in:
parent
0903f96ba3
commit
8a12ca7234
114 changed files with 822 additions and 513 deletions
138
apps/tauri/flake.nix
Normal file
138
apps/tauri/flake.nix
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
{
|
||||
description = "Tauri development environment";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
rust-overlay.url = "github:oxalica/rust-overlay";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
rust-overlay,
|
||||
flake-utils,
|
||||
}:
|
||||
flake-utils.lib.eachDefaultSystem (
|
||||
system: let
|
||||
overlays = [(import rust-overlay)];
|
||||
pkgs = import nixpkgs {
|
||||
inherit system overlays;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
android_sdk.accept_license = true;
|
||||
};
|
||||
};
|
||||
|
||||
projectRoot = ".";
|
||||
androidHome = "${projectRoot}/.android";
|
||||
sdkRoot = "${androidHome}/sdk";
|
||||
ndkVersion = "29.0.14206865";
|
||||
|
||||
android = pkgs.androidenv.composeAndroidPackages {
|
||||
cmdLineToolsVersion = "8.0";
|
||||
toolsVersion = "26.1.1";
|
||||
platformToolsVersion = "35.0.2";
|
||||
buildToolsVersions = ["35.0.0"];
|
||||
platformVersions = ["35" "36"];
|
||||
includeSources = false;
|
||||
includeSystemImages = false;
|
||||
includeNDK = true;
|
||||
ndkVersions = [ndkVersion];
|
||||
useGoogleAPIs = false;
|
||||
};
|
||||
|
||||
rustToolchain = pkgs.rust-bin.stable.latest.default.override {
|
||||
extensions = ["rust-src" "rust-analyzer"];
|
||||
targets = [
|
||||
"aarch64-linux-android"
|
||||
"armv7-linux-androideabi"
|
||||
"i686-linux-android"
|
||||
"x86_64-linux-android"
|
||||
"wasm32-unknown-unknown"
|
||||
];
|
||||
};
|
||||
|
||||
desktopRuntimeLibs = with pkgs; [
|
||||
glib
|
||||
gtk3
|
||||
gdk-pixbuf
|
||||
pango
|
||||
cairo
|
||||
atk
|
||||
at-spi2-atk
|
||||
alsa-lib
|
||||
dbus
|
||||
cups
|
||||
expat
|
||||
libdrm
|
||||
libgbm
|
||||
libglvnd
|
||||
mesa
|
||||
libxkbcommon
|
||||
libx11
|
||||
libxcomposite
|
||||
libxdamage
|
||||
libxext
|
||||
libxfixes
|
||||
libxrandr
|
||||
libxcb
|
||||
systemd
|
||||
nspr
|
||||
nss
|
||||
];
|
||||
in {
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = with pkgs;
|
||||
[
|
||||
jdk17
|
||||
rustToolchain
|
||||
gradle
|
||||
nodejs
|
||||
pkg-config
|
||||
]
|
||||
++ desktopRuntimeLibs
|
||||
++ [
|
||||
android.androidsdk
|
||||
pkgs.android-studio-tools
|
||||
];
|
||||
|
||||
shellHook = ''
|
||||
sdkSource="${android.androidsdk}/libexec/android-sdk"
|
||||
|
||||
mkdir -p "${androidHome}"
|
||||
if [ -L "${sdkRoot}" ]; then
|
||||
rm -f "${sdkRoot}"
|
||||
fi
|
||||
mkdir -p "${sdkRoot}"
|
||||
|
||||
ln -sfn "$sdkSource/build-tools" "${sdkRoot}/build-tools"
|
||||
ln -sfn "$sdkSource/cmake" "${sdkRoot}/cmake"
|
||||
ln -sfn "$sdkSource/licenses" "${sdkRoot}/licenses"
|
||||
ln -sfn "$sdkSource/ndk" "${sdkRoot}/ndk"
|
||||
ln -sfn "$sdkSource/ndk-bundle" "${sdkRoot}/ndk-bundle"
|
||||
ln -sfn "$sdkSource/platforms" "${sdkRoot}/platforms"
|
||||
ln -sfn "$sdkSource/platform-tools" "${sdkRoot}/platform-tools"
|
||||
ln -sfn "$sdkSource/tools" "${sdkRoot}/tools"
|
||||
|
||||
mkdir -p "${sdkRoot}/cmdline-tools"
|
||||
ln -sfn "$sdkSource/cmdline-tools/8.0" "${sdkRoot}/cmdline-tools/8.0"
|
||||
ln -sfn "8.0" "${sdkRoot}/cmdline-tools/latest"
|
||||
|
||||
sdkRootAbs="$(realpath "${sdkRoot}")"
|
||||
ndkRootAbs="''${sdkRootAbs}/ndk/${ndkVersion}"
|
||||
|
||||
export PATH="''${sdkRootAbs}/cmdline-tools/latest/bin:''${sdkRootAbs}/platform-tools:''${ndkRootAbs}:${pkgs.android-studio-tools}/bin:$PATH"
|
||||
export ANDROID_HOME="''${sdkRootAbs}"
|
||||
export ANDROID_SDK_ROOT="''${sdkRootAbs}"
|
||||
export ANDROID_NDK_ROOT="''${ndkRootAbs}"
|
||||
export ANDROID_NDK_HOME="$ANDROID_NDK_ROOT"
|
||||
export NDK_HOME="$ANDROID_NDK_ROOT"
|
||||
export NDK_PATH="$ANDROID_NDK_ROOT"
|
||||
export JAVA_HOME="${pkgs.jdk17}"
|
||||
export LD_LIBRARY_PATH="${pkgs.lib.makeLibraryPath desktopRuntimeLibs}:$LD_LIBRARY_PATH"
|
||||
'';
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
||||
Loading…
Reference in a new issue