   defp get_wsl_paths(file) do
     {win_path, 0} = System.cmd("cmd.exe", ["/c", "cd"])
     win_path = String.trim(win_path) <> "\\#{file}"
-    drive_letter = 
+
+    drive_letter =
       Regex.run(~r/(.*?):\\/, win_path)
       |> Enum.at(1)
       |> String.downcase()
+
     wsl_path = "/mnt/" <> drive_letter <> "/" <> Regex.replace(~r/(.*?):\\/, win_path, "")
     wsl_path = Regex.replace(~r/\\/, wsl_path, "/")
     {win_path, wsl_path}


        {_, :linux} ->
          if is_wsl?() do
            ps_cmd = "Start-Process fwup -ArgumentList '#{Enum.join(args, " ")}' -Verb runAs -Wait"
            {"powershell.exe", ["-Command", ps_cmd]}
          else
            case File.stat(dev) do
              {:ok, %File.Stat{access: :read_write}} ->
                {"fwup", args}

             _ ->
                ask_pass = System.get_env("SUDO_ASKPASS") || "/usr/bin/ssh-askpass"
                System.put_env("SUDO_ASKPASS", ask_pass)
                {"sudo", ["fwup"] ++ args}

  end

  defp is_wsl? do
    # using system.cmd("cat", ...) here is simpler
    # https://stackoverflow.com/questions/29874941/elixir-file-read-returns-empty-data-when-accessing-proc-cpuinfo/29875499
    if File.exists?("/proc/sys/kernel/osrelease") do
      System.cmd("cat", ["/proc/sys/kernel/osrelease"])
      |> elem(0)
      |> (&Regex.match?(~r/Microsoft/, &1)).()
    else
      false
    end
