We understand this is not great from the legacy license owner's perspective. The general policy is that we make new features for modern licences only. I would like to clarify that DirectAdmin did not have a system packages management feature before.
For a while, the CustomBuild script used to report if it noticed any system package updates, but the whole implementation was just a one-line script, roughly equivalent to
apt list ... | wc -l
. Because it was so trivial, it led to a lot of problems:
- Listing CustomBuild upgrades would take very long, because on RHEL systems it might trigger package cache updates over the network.
- It was not reliable if there were any stray output reported from the apt of dnf tools.
- It used to cause a nasty deadlock situation if a system package update would call CustomBuild as part of the reconfiguration process. This happened a couple of times with CloudLinux packages.
- It was reporting false positives when some packages could be removed (Debian systems sometimes report that old kernel packages can be removed).
Because of all that and some more, we just deprecated and removed this feature. The full original code of the removed feature is

:
Code:
- local distro_updates=0
- if distro_is_debian; then
- distro_updates=$(apt list --upgradable 2> /dev/null | grep -c 'upgradable from:')
- fi
- if distro_is_rhel; then
- distro_updates=$(yum --quiet --assumeno --cacheonly list updates | grep -c -v -e '^Updated Packages' -e '^Available Upgrades')
- fi
- if [ "${distro_updates}" -gt 0 ]; then
- dump_version_line "${SYSTEM_PACKAGES_COMPONENT}" "update_system" "" "${distro_updates} upgradable packages" "command_update_system"
- fi
If anyone still misses that feature, it can be recreated by using this command to check for updates
da build versions && echo "There are $(apt list --upgradable 2> /dev/null | grep -c 'upgradable from:') system package updates"
.
Now the new feature is much, much more powerful. It is implemented in the main DirectAdmin service. The package management system is aware of what packages are available for update (from which version to which version). Prior to the execution of a package upgrade, it can consult with system package management software and show you accurately which additional packages will be installed as dependencies or what additional packages will be removed because they conflict with new software.
However, in my personal opinion, the best part is the package update history. The package management system can extract information about the previous interactions with the APT/DNF system. Even if you are not using DA to perform system updates and perform all package management operations from CLI, the history section will show you all the logs with information about what package management operations were performed, which packages were affected and even allow you to check the package installation log. Very useful if there were some warnings, but the terminal on which the update was performed is already closed.
The existing feature structure also allows us to easily extend it in the future if we want to support more system package management operations. For example - show all system config files that need to be checked after a system update (the ....dpkg-dist, ...dpkg-old, etc. on Debian systems, or ...rpmnew on RHEL systems).
I think it is not fair to say that this feature used to exist in the panel before.