Flakes integration with NixOS, failed due to impure things

Hi, I’m currently trying to integrate flakes with my system configuration, which is built using this
flake.nix:

{  description = "Flake (unstable) that manage my system configuration, replacement to niv.";

  inputs = {
    stable.url = "github:NixOS/nixpkgs/nixos-20.03";
    unstable.url = "nixpkgs/nixos-unstable";
    home = {
      url = "github:rycee/home-manager/bqv-flakes";
      inputs.nixpkgs.follows = "stable";
    };
    nur.url = "github:nix-community/NUR";
    hardware.url = "github:NixOS/nixos-hardware";
  };

  outputs = { self, stable, unstable, home, nur, hardware }@inputs:
    let 
      system = "x86_64-linux";
      inherit (inputs.stable) lib;
      overlays = { 
        unstable = final: prev: { 
          unstable = (import inputs.unstable { 
            inherit system; 
          });
        };
      };
    in {
      nixosConfigurations.zeus = lib.nixosSystem {
        inherit system;
        modules =
        [
          ./default.nix
          { nixpkgs.overlays = [ inputs.nur.overlay overlays.unstable ];
            system.configurationRevision = stable.lib.mkIf (self ? rev) self.rev; }
          inputs.stable.nixosModules.notDetected
          inputs.home.nixosModules.home-manager
        ];
        specialArgs = { inherit inputs; };
      };
    };
}

. All this should actually work, but it prints out this :

error: --- EvalError -------------------------------------------------------------- nix
at: (90:39) in file: /nix/store/yv3wby54vzashi8yivgbigk8b063j4na-source/pkgs/top-level/impure.nix

    89|                 else (if args ? localSystem then {}
    90|                       else { system = builtins.currentSystem; }) // localSystem;
      |                                       ^
    91| })

attribute 'currentSystem' missing

The only way to rebuild my configuration using flakes was this : nix build .#nixosConfigurations.zeus.config.system.build.toplevel --impure, but I’d like to be able to rebuid my configuration using nixos-rebuild switch --flake '.#'. Reading through the man pages, it seems that impure flag is needed when I try to access something marked as a mutable path / repository. Does anyone has a hint ? I cannot figure out what’s the problem on my own. Thanks!

seems like nixpkgs.pkgs = inputs.unstable doesn’t work anymore with the flakes, I removed this and it works.