Let's use Remote Desktop Connection command as example -- sudo dnf install gnome-remote-desktop.
In Linux, final usable software is called package.
Think Red Hat Package Manager (RPM) like an installer file, it contains all dependencies, script to install and configuration info.
dnf is a tool to run the installer (RPM).
View RPM Content In Local Without Extracts It
Find RPM file
find / -name "*.rpm" 2>/dev/null
View content of RPM package without extracts it
rpm2cpio [RPM file path].rpm | cpio -tv
Example: rpm2cpio.rpm | cpio -tv
Command That Already Installed
Locate the command's physical file path
which [Command]
Example: which mkdir
Query the RPM database using that file path
rpm -qf [File path in Step 1]
Example: rpm -qf /usr/bin/mkdir
Software That Already Installed
Check if the software package is installed by name
rpm -q [Software Name]
Example: rpm -q gnome-remote-desktop
View content of RPM package without extracts it
rpm -ql [Software Name]
Example: rpm -ql gnome-remote-desktop
Find the hidden setup scripts of the software
You will see shell scripts starting with lines like postinstall scriptlet or preuninstall scriptlet. If it outputs nothing, it means the software was simple enough to not require setup scripts.
rpm -q --scripts [Software Name]
Example: rpm -q --scripts gnome-remote-desktop
Solution
View RPM Content Without Extracts It
student@localhost:~$ find / -name "*.rpm" 2>/dev/null
/var/cache/PackageKit/10.1/metadata/rhel-10-for-x86_64-appstream-rpms-10-x86_64/packages/libsoup3-3.6.5-3.el10_1.9.x86_64.rpm
/var/cache/PackageKit/10.1/metadata/rhel-10-for-x86_64-appstream-rpms-10-x86_64/packages/desktop-file-utils-0.26-15.el10_1.x86_64.rpm
/var/cache/PackageKit/10.1/metadata/rhel-10-for-x86_64-baseos-rpms-10-x86_64/packages/kernel-modules-core-6.12.0-211.22.1.el10_2.x86_64.rpm
/var/cache/PackageKit/10.1/metadata/rhel-10-for-x86_64-baseos-rpms-10-x86_64/packages/kernel-modules-6.12.0-211.22.1.el10_2.x86_64.rpm
/var/cache/PackageKit/10.1/metadata/rhel-10-for-x86_64-baseos-rpms-10-x86_64/packages/kernel-core-6.12.0-211.22.1.el10_2.x86_64.rpm
/var/cache/PackageKit/10.1/metadata/rhel-10-for-x86_64-baseos-rpms-10-x86_64/packages/kernel-6.12.0-211.22.1.el10_2.x86_64.rpm
student@localhost:~$ rpm2cpio /var/cache/PackageKit/10.1/metadata/rhel-10-for-x86_64-appstream-rpms-10-x86_64/packages/libsoup3-3.6.5-3.el10_1.9.x86_64.rpm | cpio -tv
drwxr-xr-x 1 root root 0 Jan 30 08:00 ./usr/lib/.build-id
drwxr-xr-x 1 root root 0 Jan 30 08:00 ./usr/lib/.build-id/3e
lrwxrwxrwx 1 root root 42 Jan 30 08:00 ./usr/lib/.build-id/3e/7b17f55de41f41216b8966cd2b9e629f2b6848 -> ../../../../usr/lib64/libsoup-3.0.so.0.7.4
drwxr-xr-x 1 root root 0 Jan 30 08:00 ./usr/lib64/girepository-1.0
-rw-r--r-- 1 root root 70700 Jan 30 08:00 ./usr/lib64/girepository-1.0/Soup-3.0.typelib
lrwxrwxrwx 1 root root 20 Jan 30 08:00 ./usr/lib64/libsoup-3.0.so.0 -> libsoup-3.0.so.0.7.4
-rwxr-xr-x 1 root root 649160 Jan 30 08:00 ./usr/lib64/libsoup-3.0.so.0.7.4
drwxr-xr-x 1 root root 0 Jan 30 08:00 ./usr/share/doc/libsoup3
-rw-r--r-- 1 root root 189 Mar 22 2025 ./usr/share/doc/libsoup3/AUTHORS
-rw-r--r-- 1 root root 164285 Mar 22 2025 ./usr/share/doc/libsoup3/NEWS
-rw-r--r-- 1 root root 1035 Mar 22 2025 ./usr/share/doc/libsoup3/README
drwxr-xr-x 1 root root 0 Jan 30 08:00 ./usr/share/licenses/libsoup3
-rw-r--r-- 1 root root 25383 Mar 22 2025 ./usr/share/licenses/libsoup3/COPYING
-rw-r--r-- 1 root root 5101 Jan 30 08:00 ./usr/share/locale/ab/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3875 Jan 30 08:00 ./usr/share/locale/an/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3614 Jan 30 08:00 ./usr/share/locale/as/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5208 Jan 30 08:00 ./usr/share/locale/be/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5378 Jan 30 08:00 ./usr/share/locale/bg/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3579 Jan 30 08:00 ./usr/share/locale/bn_IN/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 2578 Jan 30 08:00 ./usr/share/locale/bs/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4489 Jan 30 08:00 ./usr/share/locale/ca/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4060 Jan 30 08:00 ./usr/share/locale/ca@valencia/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4236 Jan 30 08:00 ./usr/share/locale/cs/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4130 Jan 30 08:00 ./usr/share/locale/da/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4253 Jan 30 08:00 ./usr/share/locale/de/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5445 Jan 30 08:00 ./usr/share/locale/el/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3879 Jan 30 08:00 ./usr/share/locale/en_GB/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3945 Jan 30 08:00 ./usr/share/locale/eo/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4378 Jan 30 08:00 ./usr/share/locale/es/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3669 Jan 30 08:00 ./usr/share/locale/et/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4126 Jan 30 08:00 ./usr/share/locale/eu/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4935 Jan 30 08:00 ./usr/share/locale/fa/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 2787 Jan 30 08:00 ./usr/share/locale/fi/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4442 Jan 30 08:00 ./usr/share/locale/fr/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4203 Jan 30 08:00 ./usr/share/locale/fur/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4237 Jan 30 08:00 ./usr/share/locale/gd/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4420 Jan 30 08:00 ./usr/share/locale/gl/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3555 Jan 30 08:00 ./usr/share/locale/gu/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4470 Jan 30 08:00 ./usr/share/locale/he/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5977 Jan 30 08:00 ./usr/share/locale/hi/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4126 Jan 30 08:00 ./usr/share/locale/hr/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4292 Jan 30 08:00 ./usr/share/locale/hu/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4028 Jan 30 08:00 ./usr/share/locale/id/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4243 Jan 30 08:00 ./usr/share/locale/it/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5050 Jan 30 08:00 ./usr/share/locale/ja/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 6286 Jan 30 08:00 ./usr/share/locale/ka/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3920 Jan 30 08:00 ./usr/share/locale/kab/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4214 Jan 30 08:00 ./usr/share/locale/kn/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4567 Jan 30 08:00 ./usr/share/locale/ko/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4217 Jan 30 08:00 ./usr/share/locale/lt/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4215 Jan 30 08:00 ./usr/share/locale/lv/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3327 Jan 30 08:00 ./usr/share/locale/ml/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3490 Jan 30 08:00 ./usr/share/locale/mr/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4064 Jan 30 08:00 ./usr/share/locale/ms/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3628 Jan 30 08:00 ./usr/share/locale/nb/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5949 Jan 30 08:00 ./usr/share/locale/ne/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4091 Jan 30 08:00 ./usr/share/locale/nl/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4317 Jan 30 08:00 ./usr/share/locale/oc/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3761 Jan 30 08:00 ./usr/share/locale/or/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5605 Jan 30 08:00 ./usr/share/locale/pa/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4298 Jan 30 08:00 ./usr/share/locale/pl/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4180 Jan 30 08:00 ./usr/share/locale/pt/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4333 Jan 30 08:00 ./usr/share/locale/pt_BR/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4245 Jan 30 08:00 ./usr/share/locale/ro/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5403 Jan 30 08:00 ./usr/share/locale/ru/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4364 Jan 30 08:00 ./usr/share/locale/sk/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4219 Jan 30 08:00 ./usr/share/locale/sl/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5407 Jan 30 08:00 ./usr/share/locale/sr/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3932 Jan 30 08:00 ./usr/share/locale/sr@latin/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4033 Jan 30 08:00 ./usr/share/locale/sv/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4150 Jan 30 08:00 ./usr/share/locale/ta/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3726 Jan 30 08:00 ./usr/share/locale/te/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 2561 Jan 30 08:00 ./usr/share/locale/tg/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5206 Jan 30 08:00 ./usr/share/locale/th/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4072 Jan 30 08:00 ./usr/share/locale/tr/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 2454 Jan 30 08:00 ./usr/share/locale/ug/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 5384 Jan 30 08:00 ./usr/share/locale/uk/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 1795 Jan 30 08:00 ./usr/share/locale/uz@cyrillic/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 4044 Jan 30 08:00 ./usr/share/locale/vi/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3809 Jan 30 08:00 ./usr/share/locale/zh_CN/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 2445 Jan 30 08:00 ./usr/share/locale/zh_HK/LC_MESSAGES/libsoup-3.0.mo
-rw-r--r-- 1 root root 3853 Jan 30 08:00 ./usr/share/locale/zh_TW/LC_MESSAGES/libsoup-3.0.mo
2372 blocks
Command That Already Installed
student@localhost:~$ which mkdir
/usr/bin/mkdir
student@localhost:~$ rpm -qf /usr/bin/mkdir
coreutils-9.5-6.el10.x86_64
Software That Already Installed
student@localhost:~$ rpm -q gnome-remote-desktop
gnome-remote-desktop-47.3-2.el10_0.x86_64
student@localhost:~$ rpm -ql gnome-remote-desktop
/usr/bin/grdctl
/usr/lib/.build-id
/usr/lib/.build-id/59
/usr/lib/.build-id/59/1b951c7b52359bcd03b938f2c32286c6e50ae8
/usr/lib/.build-id/ba
/usr/lib/.build-id/ba/26859d09dd6f56ca73b9d78c4c1bd95d10719a
/usr/lib/.build-id/e1
/usr/lib/.build-id/e1/e49cd7dae139e111270ca6fbddb52339d3e5ce
/usr/lib/.build-id/e4
/usr/lib/.build-id/e4/d9c0de2f57b4f189d6026e8bda5d27f238182d
/usr/lib/systemd/system/gnome-remote-desktop-configuration.service
/usr/lib/systemd/system/gnome-remote-desktop.service
/usr/lib/systemd/user/gnome-remote-desktop-handover.service
/usr/lib/systemd/user/gnome-remote-desktop-headless.service
/usr/lib/systemd/user/gnome-remote-desktop.service
/usr/lib/sysusers.d/gnome-remote-desktop-sysusers.conf
/usr/lib/tmpfiles.d/gnome-remote-desktop-tmpfiles.conf
/usr/libexec/gnome-remote-desktop-configuration-daemon
/usr/libexec/gnome-remote-desktop-daemon
/usr/libexec/gnome-remote-desktop-enable-service
/usr/share/applications/org.gnome.RemoteDesktop.Handover.desktop
/usr/share/dbus-1/system-services/org.gnome.RemoteDesktop.Configuration.service
/usr/share/dbus-1/system.d/org.gnome.RemoteDesktop.conf
/usr/share/doc/gnome-remote-desktop
/usr/share/doc/gnome-remote-desktop/README.md
/usr/share/glib-2.0/schemas/org.gnome.desktop.remote-desktop.enums.xml
/usr/share/glib-2.0/schemas/org.gnome.desktop.remote-desktop.gschema.xml
/usr/share/gnome-remote-desktop
/usr/share/gnome-remote-desktop/grd-cuda-avc-utils_30.ptx
/usr/share/gnome-remote-desktop/grd-cuda-damage-utils_30.ptx
/usr/share/gnome-remote-desktop/grd.conf
/usr/share/licenses/gnome-remote-desktop
/usr/share/licenses/gnome-remote-desktop/COPYING
/usr/share/locale/ab/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/be/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/bg/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ca/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/cs/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/da/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/de/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/el/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/en_GB/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/eo/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/es/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/eu/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/fa/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/fi/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/fr/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/fur/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/gl/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/he/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/hi/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/hr/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/hu/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/id/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ie/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/is/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/it/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ka/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/kab/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/kk/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ko/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/lt/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/lv/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ms/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/nb/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ne/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/nl/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/oc/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/pa/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/pl/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/pt/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/pt_BR/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ro/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/ru/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/sk/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/sl/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/sr/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/sr@latin/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/sv/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/tr/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/uk/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/vi/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/zh_CN/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/locale/zh_TW/LC_MESSAGES/gnome-remote-desktop.mo
/usr/share/man/man1/grdctl.1.gz
/usr/share/polkit-1/actions/org.gnome.remotedesktop.configure-system-daemon.policy
/usr/share/polkit-1/actions/org.gnome.remotedesktop.enable-system-daemon.policy
/usr/share/polkit-1/rules.d/20-gnome-remote-desktop.rules
student@localhost:~$ rpm -q --scripts gnome-remote-desktop
postinstall scriptlet (using /bin/sh):
if [ $1 -eq 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Initial installation
/usr/lib/systemd/systemd-update-helper install-system-units gnome-remote-desktop.service || :
fi
if [ $1 -eq 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Initial installation
/usr/lib/systemd/systemd-update-helper install-user-units gnome-remote-desktop-handover.service || :
fi
if [ $1 -eq 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Initial installation
/usr/lib/systemd/systemd-update-helper install-user-units gnome-remote-desktop-headless.service || :
fi
if [ $1 -eq 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Initial installation
/usr/lib/systemd/systemd-update-helper install-user-units gnome-remote-desktop.service || :
fi
preuninstall scriptlet (using /bin/sh):
if [ $1 -eq 0 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package removal, not upgrade
/usr/lib/systemd/systemd-update-helper remove-system-units gnome-remote-desktop.service || :
fi
if [ $1 -eq 0 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package removal, not upgrade
/usr/lib/systemd/systemd-update-helper remove-user-units gnome-remote-desktop-handover.service || :
fi
if [ $1 -eq 0 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package removal, not upgrade
/usr/lib/systemd/systemd-update-helper remove-user-units gnome-remote-desktop-headless.service || :
fi
if [ $1 -eq 0 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package removal, not upgrade
/usr/lib/systemd/systemd-update-helper remove-user-units gnome-remote-desktop.service || :
fi
postuninstall scriptlet (using /bin/sh):
if [ $1 -ge 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package upgrade, not uninstall
/usr/lib/systemd/systemd-update-helper mark-restart-system-units gnome-remote-desktop.service || :
fi
if [ $1 -ge 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package upgrade, not uninstall
/usr/lib/systemd/systemd-update-helper mark-restart-user-units gnome-remote-desktop-handover.service || :
fi
if [ $1 -ge 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package upgrade, not uninstall
/usr/lib/systemd/systemd-update-helper mark-restart-user-units gnome-remote-desktop-headless.service || :
fi
if [ $1 -ge 1 ] && [ -x "/usr/lib/systemd/systemd-update-helper" ]; then
# Package upgrade, not uninstall
/usr/lib/systemd/systemd-update-helper mark-restart-user-units gnome-remote-desktop.service || :
fi
student@localhost:~$