Overriding Android Studio derivation that was build using buildFhsUserEnv

I’m trying to use newest canary version of Android Studio nixpkgs/pkgs/applications/editors/android-studio at master · NixOS/nixpkgs · GitHub

In the past I was able to override it using overlays

  androidStudioPackages = let
    packages = prev.androidStudioPackages // {
      canary = mkStudio {
        channel = "canary";
        pname = "android-studio-canary";
        version = "2020.3.1.5"; # "Android Studio Arctic Fox (2020.3.1) Canary 5"
        sha256Hash = "0x749sbg7qa5ncwwaywcldlhyyyyfh05bms2czz1rv6h7zgq16vq";
      };
    };
    mkStudio = args: prev.callPackage (import <nixos/pkgs/applications/editors/android-studio/common.nix> args) {
      fontsConf = prev.makeFontsConf {
        fontDirectories = [];
      };
      inherit (prev.gnome2) GConf gnome_vfs;
    }; 
  in packages;

However recently I migrated my configuration to use flakes and now this code produces error

error: --- ThrownError ---------------------------------------------------------------------------------------------------------------- nix
at: (22:47) in file: /nix/store/aqh3vg16s8a27vk7401id8s7vp926a7w-source/overlays/custom.nix

    21|     };
    22|     mkStudio = args: prev.callPackage (import <nixos/pkgs/applications/editors/android-studio/common.nix> args) {
      |                                               ^
    23|       fontsConf = prev.makeFontsConf {

cannot look up '<nixos/pkgs/applications/editors/android-studio/common.nix>' in pure evaluation mode (use '--impure' to override)
(use '--show-trace' to show detailed location information)

Is there any way to override such packages without sacrificing pure evaluation?