Change:
Steps to reproduce the behavior: vmware-workstation The package cannot download. 522 error. It is similarly impossible to install a previous version. It is not a temporary issue; it has been that way for a few days at least. <!-- --
It looks to me as if the download via is no longer supported. ! The download button now links to: ) ! If I understand the following entry correctly, the binary download will remain and will be available again after the move? https://store- !
True. The download site is closed for maintenance. But don't the Nix servers have it cached somewhere?
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
The official binary cache does not contain unfree packages.
Will replacing download link with this url solve the problem?
From released today it looks like downloading VMware workstation product now requires a Broadcom account, i will look into other programs packaged with same awful requirement, it's likely that we will switch into something like Cisco's Packet Tracer way of providing user downloaded file to derivation.
VMware website is still in transition state, it's unknown what fate of softwareupdate site will be. But it looks like newer version 1.7.5.2 is on it, which is giving hope. But they can password protect or otherwise obscure it any moment
They are talking about the issue on AUR and someone says over there "If you make a request through the broadcom portal, you get the bundle file directly. Though it seems not available for direct download. The url looks like <short id&id=<long id&verify=<long verification id(I omitted those numbers as they might be tied to an account)"
Its possible to download it directly using: . I am a bit confused, since the derivation used a file before, now there seems only a available. I tried to adjust the derivation, but since its the first time i am trying that i failed: I tried to extract the file from the archive in the unpack-phase like so: Building give me this error: Perhaps someone with more experience has a clue as to whether this is the right approach or how exactly to proceed?
There is something wrong with that downloaded file. It is half the size it should be, after extraction. I was successful with the file downloaded from Techspot but not with the file download you are using. Discussion here:
The version at is split between core and packages (installed separately — like VMware Tools) and Nixpkgs uses the full version (which has all these packages within the Workstation bundle), like it used to be provided at The only way to get it now officially is through broadcom (), which requires logging in and providing address data. However, You can get it from unofficial source and even host it Yourself on GitHub. For example: this overlay of mine makes VMware Workstation install correctly, fetching it from my GitHub, where I posted the binary of the currently used version. Notice that the orignal source (in my overlay it would be ) cannot appear in the overlay, as it leads to error — if it appeared nix would try to access the original url, which doesn't exist. The source also appears in unpackPhase so it has to be redefined with the new value. To use the version provided at one would have to completely rewrite the scripts in other build phases. Plus to manage the .tar format, one can use fetchzip (with stripRoot = false) in src and then point to the .bundle file in unpackPhase: , or even in src:
I have written an overlay and adapted it to my configuration. The overwrite works successfully (I just used your github repo temporarily). Unfortunately I get a build error due to the I have updated my kernel to Which kernel / vmware combination are you currently using?
I'm using kernel 6.6.30 + VMware 17.5.1. I used to use the latest kernel, but switched to LTS because of frequent problems with VMware kernel modules. Btw in Your overlay this shouldn't work, because is the previous version of the source (the one with non-existing url). For this to work You have to have something like and above. Or You can use recursive set and have and in unpackPhase:
I managed to create an overlay that uses the version provided at It certainly doesn't look as nice as the previous one, but does the job. It turned out that a proper update to unpackPhase is enough and other phases don't need any changes. Plus You can use this to fetch VMware 17.5.2.
Here is the new overlay in a more compact and polished form:
" I used to use the latest kernel, but switched to LTS because of frequent problems with VMware kernel modules." If you want a more recent kernel, the Zen kernel package seems to work well with Vmware, just add also the Vmware package specific to Zen:
So, reading this issue, there's no longer a convenient way to install VMWare aside from manually downloading the bundle from Broadcom and manually installing it? Because setting still fails to fetch the download url from vmware domain. I can't update my system without having to also update VMWare. Is there a way to skip one nix flake from the update? The thing is I also updated my channel list and my .lock file.
Kernel 6.8 currently works for me with VMware, with the appropriate Vmware 6.8 kernel package.
This fails for me since the has updated to 12.4.0 and no longer uses 12.3.5 along with its hash values. I made a new update for the overlays as of June 17, 2024 UTC+8: Although I still haven't fixed the issue regarding this: It might be the kernel itself. I might really need to downgrade or wait for VMWare's update. I have this lines together with the overlay though:

Discussion:
{ stdenv , buildFHSEnv , fetchurl <ins> , fetchzip </ins> , lib , zlib , gdbm <del> , bzip2 </del> , libxslt , libxml2 , libuuid , readline <ins> , readline70 </ins> , xz , cups , glibc

, python3 , autoPatchelfHook , makeWrapper <del> , sqlite , enableInstaller ? false , enableMacOSGuests ? false, fetchFromGitHub, gnutar, unzip </del> <ins> , symlinkJoin , enableInstaller ? false, bzip2, sqlite , enableMacOSGuests ? false, fetchFromGitHub, unzip , enableGuestTools ? true, </ins> }: let <ins> # base - versions version = "17.5.2"; build = "23775571"; baseUrl = "https://softwareupdate.vmware.com/cds/vmw-desktop/ws/${version}/${build}/linux"; # tools - versions toolsVersion = "12.4.0"; toolsBuild = "23259341"; </ins> # macOS - versions <del> fusionVersion = "13.5.1"; fusionBuild = "23298085"; </del> <ins> fusionVersion = "13.5.2"; fusionBuild = "23775688"; </ins> unlockerVersion = "3.0.5"; <ins> guestToolsSrc = let fetchComponent = (system: hash: fetchzip { inherit hash; url = "${baseUrl}/packages/vmware-tools-${system}-${toolsVersion}-${toolsBuild}.x86_64.component.tar"; stripRoot = false; } + "/vmware-tools-${system}-${toolsVersion}-${toolsBuild}.x86_64.component"); in lib.mapAttrsToList fetchComponent { linux = "sha256-vT08mR6cCXZjiQgb9jy+MaqYzS0hFbNUM7xGAHIJ8Ao="; linuxPreGlibc25 = "sha256-BodN1lxuhxyLlxIQSlVhGKItJ10VPlti/sEyxcRF2SA="; netware = "sha256-o/S4wAYLR782Fn20fTQ871+rzsa1twnAxb9laV16XIk="; solaris = "sha256-3LdFoI4TD5zxlohDGR3DRGbF6jwDZAoSMEpHWU4vSGU="; winPre2k = "sha256-+QcvWfY3aCDxUwAfSuj7Wf9sxIO+ztWBrRolMim8Dfw="; winPreVista = "sha256-3NgO/GdRFTpKNo45TMet0msjzxduuoF4nVLtnOUTHUA="; windows = "sha256-2F7UPjNvtibmWAJxpB8IOnol12aMOGMy+403WeCTXw8="; }; </ins> # macOS - ISOs <del> darwinIsoSrc = fetchurl { </del> <ins> darwinIsoSrc = fetchzip { </ins> url = "https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/${fusionVersion}/${fusionBuild}/universal/core/com.vmware.fusion.zip.tar"; <del> sha256 = "sha256-bn6hoicby2YVj1pZTBzBhabNhKefzVQTm5vIrdTO2K4="; }; </del> <ins> sha256 = "sha256-DDLRWAVRI3ZeXV5bUXWwput9mEC1qsJUsjojI0CJYMI="; stripRoot = false; } + "/com.vmware.fusion.zip"; </ins> # macOS - Unlocker unlockerSrc = fetchFromGitHub {

name = "vmware-unpack-env"; targetPkgs = pkgs: [ zlib ]; }; <ins> readline70_compat63 = symlinkJoin { name = "readline70_compat63"; paths = [ readline70 ]; postBuild = '' ln -s $out/lib/libreadline.so $out/lib/libreadline.so.6 ''; }; </ins> in stdenv.mkDerivation rec { pname = "vmware-workstation"; <del> version = "17.5.1"; build = "23298084"; </del> <ins> inherit version build; </ins> buildInputs = [ libxslt

]; nativeBuildInputs = [ python3 vmware-unpack-env autoPatchelfHook makeWrapper ] <del> ++ lib.optionals enableInstaller [ sqlite bzip2 ] ++ lib.optionals enableMacOSGuests [ gnutar unzip ]; </del> <ins> ++ lib.optionals enableInstaller [ bzip2 sqlite readline70_compat63 ] ++ lib.optionals enableMacOSGuests [ unzip ]; </ins> <del> src = fetchurl { url = "https://download3.vmware.com/software/WKST-${builtins.replaceStrings ["."] [""] version}-LX/VMware-Workstation-Full-${version}-${build}.x86_64.bundle"; sha256 = "sha256-qmC3zvKoes77z3x6UkLHsJ17kQrL1a/rxe9mF+UMdJY="; }; </del> <ins> src = fetchzip { url = "${baseUrl}/core/VMware-Workstation-${version}-${build}.x86_64.bundle.tar"; sha256 = "sha256-5PZZpXN/V687TXjqeTm8MEays4/QTf02jVfdpi9C7GI="; stripRoot = false; } + "/VMware-Workstation-${version}-${build}.x86_64.bundle"; </ins> <del> unpackPhase = '' ${vmware-unpack-env}/bin/vmware-unpack-env -c "sh ${src} --extract unpacked" </del> <ins> unpackPhase = let guestTools = lib.optionalString enableGuestTools (lib.concatMapStringsSep " " (src: "--install-component ${src}") guestToolsSrc); in '' ${vmware-unpack-env}/bin/vmware-unpack-env -c "sh ${src} ${guestTools} --extract unpacked" </ins> ${lib.optionalString enableMacOSGuests '' mkdir -p fusion/ <del> tar -xvpf "${darwinIsoSrc}" -C fusion/ unzip "fusion/com.vmware.fusion.zip"  </del> <ins> unzip "${darwinIsoSrc}"  </ins> "payload/VMware Fusion.app/Contents/Library/isoimages/x86_x64/darwin.iso"  "payload/VMware Fusion.app/Contents/Library/isoimages/x86_x64/darwinPre15.iso"  -d fusion/

component_version=$(cat unpacked/$component/manifest.xml | grep -oPm1 "(?<=<version>)[^<]+") component_core_id=$([ "$component" == "vmware-installer" ] && echo "-1" || echo "1") type=$([ "$component" == "vmware-workstation" ] && echo "0" || echo "1") <del> sqlite3 "$database_filename" "INSERT INTO components(name,version,buildNumber,component_core_id,longName,description,type) VALUES("$component","$component_version","${build}",$component_core_id,"$component","$component",$type);" </del> <ins> sqlite3 "$database_filename" "INSERT INTO components(name,version,buildNumber,component_core_id,longName,description,type) VALUES('$component','$component_version',${build},$component_core_id,'$component','$component',$type);" </ins> mkdir -p $out/etc/vmware-installer/components/$component cp -r $folder/* $out/etc/vmware-installer/components/$component done

unpacked="unpacked/vmware-network-editor" cp -r $unpacked/lib $out/lib/vmware/ <del> ## VMware Tools echo "Installing VMware Tools" </del> mkdir -p $out/lib/vmware/isoimages/ <ins> ${lib.optionalString enableGuestTools '' echo "Installing VMware Tools" </ins> cp unpacked/vmware-tools-linux/linux.iso  unpacked/vmware-tools-linuxPreGlibc25/linuxPreGlibc25.iso  unpacked/vmware-tools-netware/netware.iso 

unpacked/vmware-tools-winPreVista/winPreVista.iso  unpacked/vmware-tools-windows/windows.iso  $out/lib/vmware/isoimages/ <ins> ''} </ins> ${lib.optionalString enableMacOSGuests '' echo "Installing VMWare Tools for MacOS"