The Kali Linux update process hangs when VS Code Kalipkg is installed because the package manager gets stuck trying to resolve dependencies or download updates for the proprietary Microsoft repository. To fix this, you must remove the problematic VS Code entry from your APT sources list, clean the package cache, and then run a standard system upgrade. This restores normal update functionality without affecting your existing code editor installation.
Understanding the Hang
When you attempt to update Kali Linux using
sudo apt update followed by
sudo apt full-upgrade, the terminal may appear to freeze at the "Reading package lists..." or "Unpacking packages..." stage. This behavior is often triggered by conflicts between the Debian-based repositories of Kali and the specific Microsoft package repository used for Visual Studio Code. The
kalipkg utility, which acts as a wrapper for managing these additional tools, can sometimes fail to synchronize correctly if the underlying APT configuration has stale references or broken links.
This issue is distinct from general network timeouts or disk space errors. If your internet connection is stable and you have sufficient storage, the hang is almost certainly due to APT getting stuck on a specific package index. Users who have recently installed VS Code via the official Microsoft .deb package are most susceptible to this problem. The package manager tries to verify the integrity of the VS Code repository metadata, but if that metadata is outdated or incompatible with the current Kali version, it will block the entire update transaction.
Step-by-Step Resolution
To resolve the hanging update, you need to isolate the VS Code repository and remove it temporarily while you perform the system-wide update. Follow these steps carefully to ensure your system remains stable.
First, open your terminal and back up your current APT sources list. This allows you to restore the original configuration if something goes wrong. Run the following command:
sudo cp /etc/apt/sources.list.d/microsoft.list /etc/apt/sources.list.d/microsoft.list.bak
Next, you need to move or rename the Microsoft list file so that APT ignores it during the next update cycle. Execute this command to disable the source:
sudo mv /etc/apt/sources.list.d/microsoft.list /etc/apt/sources.list.d/microsoft.list.disabled
Now, update your package lists again. This time, APT should skip the problematic VS Code repository and complete the process quickly.
sudo apt update
Once the update completes successfully, proceed with the full upgrade. This ensures all other system packages are brought up to date.
sudo apt full-upgrade -y
After the upgrade finishes, reboot your system to apply any kernel changes. You can then re-enable the VS Code repository if you wish to update the editor itself separately.
sudo mv /etc/apt/sources.list.d/microsoft.list.disabled /etc/apt/sources.list.d/microsoft.list
If you encounter further issues with package management, such as boot failures after an update, you might need to parse your logs for deeper errors. For more complex scenarios involving post-update boot problems, refer to our guide on
Unable to Boot Kali after Update: Seeking Help to Parse Logs.
Cleaning Up and Verification
After resolving the hang, it is good practice to clean the local repository of retrieved package files. This frees up disk space and removes potentially corrupted cached data. Run the following command to clean the cache:
sudo apt clean
You should also check for any held or broken packages. Use the following command to see if there are any packages that were not fully upgraded:
dpkg --audit
If this command returns no output, your package system is healthy. If it lists issues, you may need to run
sudo apt --fix-broken install to resolve dependency conflicts.
For users who frequently face update problems on older versions of Kali, such as 2020.2, the root cause might be similar. Our article on
Solving Kali Linux Update/Upgrade Issues with Version 2020.2 provides additional context on legacy repository handling that might be relevant if you are running an outdated distribution.
Preventing Future Hangs
To prevent this issue from recurring, ensure that you are using the correct installation method for VS Code. Instead of relying solely on the Microsoft repository, consider using the
apt package manager with pinned priorities or installing via Snap if available in your environment. However, since VS Code is not always available as a Snap package in standard repositories, sticking to the official .deb is common.
Regularly updating your Kali Linux installation helps keep the base system compatible with third-party repositories. Avoid mixing packages from different branches or testing environments unless necessary. If you find that certain packages consistently cause conflicts, you can exclude them from automatic upgrades. For instructions on how to manage your update list and remove problematic entries, see our guide on
Remove package from apt update list.
Additionally, if you use Zsh as your shell, ensure that your history file is not corrupted, as this can sometimes interfere with terminal-based package managers. Check our resource on
Kali Linux: Zsh Corrupted History File - Access Denied if you suspect shell-related issues.
Frequently Asked Questions
Why does VS Code specifically cause Kali updates to hang?
VS Code uses a proprietary Microsoft repository that may not always align perfectly with Kali's rolling release model. When the package manager attempts to sync this external source, it can timeout or get stuck if the metadata is inconsistent, blocking all other updates.
Will removing the Microsoft list delete my VS Code installation?
No, renaming the source list file only prevents APT from checking for updates for VS Code. Your installed copy of the editor will remain intact and functional on your system.
How do I know if the update was successful?
If the
sudo apt update command completes without errors and shows a summary of upgraded packages, the process was successful. You can also verify by running
cat /etc/os-release to confirm your Kali version number.
Can I update VS Code separately after fixing the system update?
Yes, once the system update is complete, you can manually update VS Code by running
sudo apt install code or by downloading the latest .deb package directly from Microsoft’s website.
What should I do if the update still hangs after disabling VS Code?
If the issue persists, try clearing the APT cache with
sudo apt clean and removing lock files with
sudo rm /var/lib/dpkg/lock-frontend. Then, retry the update process.