not far till perfection
This commit is contained in:
60
packages/emacs/flutter/flake.nix
Normal file
60
packages/emacs/flutter/flake.nix
Normal file
@@ -0,0 +1,60 @@
|
||||
{
|
||||
description = "Flutter 3.13.x";
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
outputs = { self, nixpkgs, flake-utils }:
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config = {
|
||||
android_sdk.accept_license = true;
|
||||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
buildToolsVersion = "34.0.0";
|
||||
androidComposition = pkgs.androidenv.composeAndroidPackages {
|
||||
buildToolsVersions = [ buildToolsVersion "33.0.1" ];
|
||||
platformVersions = [ "34" "33" "28" ];
|
||||
abiVersions = [ "armeabi-v7a" "arm64-v8a" ];
|
||||
};
|
||||
androidSdk = androidComposition.androidsdk;
|
||||
in
|
||||
{
|
||||
devShell =
|
||||
with pkgs; mkShell rec {
|
||||
shellHook = ''
|
||||
nu
|
||||
exit
|
||||
'';
|
||||
GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${androidSdk}/libexec/android-sdk/build-tools/33.0.1/aapt2";
|
||||
|
||||
ANDROID_SDK_ROOT = "${androidSdk}/libexec/android-sdk";
|
||||
buildInputs = [
|
||||
flutter
|
||||
androidSdk # The customized SDK that we've made above
|
||||
jdk17
|
||||
vscode
|
||||
|
||||
(vscode-with-extensions.override {
|
||||
vscode = vscodium;
|
||||
vscodeExtensions = with vscode-extensions; [
|
||||
vscodevim.vim
|
||||
dart-code.dart-code
|
||||
dart-code.flutter
|
||||
] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace[
|
||||
{
|
||||
name = "awesome-flutter-snippets";
|
||||
publisher = "nash";
|
||||
version = "4.0.1";
|
||||
sha256 = "lXdos/xB18h3Z0YfkgEk55G2JvRMYudUUIltugQjylU=";
|
||||
}
|
||||
];
|
||||
})
|
||||
];
|
||||
|
||||
};
|
||||
});
|
||||
}
|
||||
32
packages/emacs/flutter/init.el
Normal file
32
packages/emacs/flutter/init.el
Normal file
@@ -0,0 +1,32 @@
|
||||
;;; /path/zum/separaten-emacs-init-file.el
|
||||
|
||||
(require 'package)
|
||||
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
|
||||
(unless (package-installed-p 'dart-mode)
|
||||
(package-refresh-contents)
|
||||
(package-install 'dart-mode))
|
||||
(unless (package-installed-p 'flutter)
|
||||
(package-install 'flutter))
|
||||
(unless (package-installed-p 'lsp-dart)
|
||||
(package-install 'lsp-dart))
|
||||
(unless (package-installed-p 'hover)
|
||||
(package-install 'hover))
|
||||
|
||||
(setq lsp-keymap-prefix "C-c C-l")
|
||||
|
||||
(require 'lsp-mode)
|
||||
(add-hook 'dart-mode-hook 'lsp)
|
||||
(setq gc-cons-threshold (* 100 1024 1024)
|
||||
read-process-output-max (* 1024 1024))
|
||||
|
||||
;; Assuming usage with dart-mode
|
||||
(use-package dart-mode
|
||||
;; Optional
|
||||
:hook (dart-mode . flutter-test-mode))
|
||||
|
||||
(use-package flutter
|
||||
:after dart-mode
|
||||
:bind (:map dart-mode-map
|
||||
("C-c C-c" . #'flutter-run-or-hot-reload))
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user