diff options
| author | anand <anand.panchdhari@gmail.com> | 2025-12-17 15:57:55 +0530 |
|---|---|---|
| committer | anand <anand.panchdhari@gmail.com> | 2025-12-17 15:57:55 +0530 |
| commit | b7ef29a8886a57aadb787807a7c6cf74c1f0ed3a (patch) | |
| tree | 366a68240fbc9da6b1d567bd6c46d1350ad814de /modules | |
Nixos
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/android.nix | 51 | ||||
| -rw-r--r-- | modules/home-manager.nix | 12 | ||||
| -rw-r--r-- | modules/lsp.nix | 19 | ||||
| -rw-r--r-- | modules/mango.nix | 8 |
4 files changed, 90 insertions, 0 deletions
diff --git a/modules/android.nix b/modules/android.nix new file mode 100644 index 0000000..7da4990 --- /dev/null +++ b/modules/android.nix @@ -0,0 +1,51 @@ +{ config, pkgs, ... }: + +{ + #### SYSTEM (NixOS) #### + + programs.adb.enable = true; + + nixpkgs.config.android_sdk.accept_license = true; + + users.users.anand.extraGroups = [ "adbusers" ]; + + + #### USER (Home Manager) #### + + home-manager.users.anand = { pkgs, ... }: + let + androidSdk = pkgs.androidenv.composeAndroidPackages { + platformVersions = [ "35" ]; + buildToolsVersions = [ "35.0.0" ]; + platformToolsVersion = "35.0.1"; + includeEmulator = true; + includeSources = true; + cmdLineToolsVersion = "12.0"; + }; + in + { + home.packages = [ + pkgs.flutter + androidSdk.androidsdk + androidSdk.emulator + ]; + + home.sessionPath = [ + "${androidSdk.androidsdk}/libexec/android-sdk/platform-tools" + "${androidSdk.androidsdk}/libexec/android-sdk/cmdline-tools/latest/bin" + ]; + + home.sessionVariables = { + ANDROID_SDK_ROOT = + "${androidSdk.androidsdk}/libexec/android-sdk"; + + ANDROID_HOME = + "${androidSdk.androidsdk}/libexec/android-sdk"; + + # This makes Flutter happy even if layout differs + ANDROID_SDK_MANAGER = + "${androidSdk.androidsdk}/libexec/android-sdk/cmdline-tools/*/bin/sdkmanager"; + }; + }; +} + diff --git a/modules/home-manager.nix b/modules/home-manager.nix new file mode 100644 index 0000000..ff14931 --- /dev/null +++ b/modules/home-manager.nix @@ -0,0 +1,12 @@ +{ home-manager, ... }: +{ + imports = [ + home-manager.nixosModules.home-manager + ]; + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + users.anand = import ../home.nix; + backupFileExtension = "hmbackup"; + }; +} diff --git a/modules/lsp.nix b/modules/lsp.nix new file mode 100644 index 0000000..8cc7599 --- /dev/null +++ b/modules/lsp.nix @@ -0,0 +1,19 @@ +{ config, pkgs, ... }: + +{ + home-manager.users.anand = { pkgs, ... }: + + { + home.packages = [ + pkgs.nil + pkgs.tinymist + pkgs.lua-language-server + pkgs.clang-tools + pkgs.jdt-language-server + pkgs.rust-analyzer + pkgs.emmet-ls + pkgs.cmake-language-server + pkgs.phpactor + ]; + }; +} diff --git a/modules/mango.nix b/modules/mango.nix new file mode 100644 index 0000000..5ef2972 --- /dev/null +++ b/modules/mango.nix @@ -0,0 +1,8 @@ +{ mango, ... }: +{ + imports = [ + mango.nixosModules.mango + ]; + + programs.mango.enable = true; +} |
