IRC:mint-compare [2019-10-27]

General Remarks

The collected data show the overall impact of using the different versions and editions of linux mint. All sizes of ram of disks/volumes are given as powers of 2 - MiB (1024*1024 bytes) and GiB (1024*1024*1024 bytes).

The stats have been collected using qemu/kvm virtual machines. All VMs have been setup using an identical "physical" and installation-layout. An installation on real hardware will differ in details, as there will be different drivers used and the VM host-system will offer worse/better performance than your actual hardware. Related details are given at:

Most current versions - (collected at 2019-04-23)

Most current versions, base-distros and expected support-times. The download-links will redirect you to tho official linuxmint.com download-pages...

version DE based on EOL LM EOL LTS arch iso MiB download sha256sum
ubuntu based linux mint (LM)
LM 19.1 (tessa)cinnamon ubuntu 18.04 (bionic) 2023 2028 64 1883 linuxmint-19.1-cinnamon-64bit.iso bb4b3ad584f2fec1d91ad60fe57ad4044e5c0934a5e3d229da129c9513862eb0
32 1870 linuxmint-19.1-cinnamon-32bit.iso b580052c4652ac8f1cbcd9057a0395642a722707d17e1a77844ff7fb4db36b70
mate 64 1936 linuxmint-19.1-mate-64bit.iso 5bc212d73800007c7c3605f03c9d5988ad99f1be9fc91024049ea4b638c33bb4
32 1926 linuxmint-19.1-mate-32bit.iso ca86885e2384373f8fbb2121e2abb6298674e37fc206d3f23661ab5f1f523aba
xfce 64 1842 linuxmint-19.1-xfce-64bit.iso 7b53b29a34cfef4ddfe24dac27ee321c289dc2ed8b0c1361666bbee0f6ffa9f4
32 1831 linuxmint-19.1-xfce-32bit.iso 039d619935c2993e589705e49068a6fa4dc4f9a5eb82470bc7998c9626259416
debian based linux mint (LMDE)
LMDE 3 (cindy) cinnamon debian 9 (stretch) --- 2022-06 64 1616 lmde-3-201808-cinnamon-64bit.iso 90c15a08829366f7cc47b92a9520edca99a3b02979d008685a54e6db4d29cff3
32 1590 lmde-3-201808-cinnamon-32bit.iso be20821ea95acfa920f4dd75e71da2c4005245a0102c003de1f61ab9e4a4018f

Collected stats

Fresh install: consumed disk-space - swap - ram - bootstrap timing - kernel(s)

This does just reflect the state of a fresh install, without any updates installed (= this will not be the "real" world).

The LMDE-versions have been setup to use of a swapfile (like the LM-versions) - see D1) Default Setup swapfile / swap-partition and L1) Adding a swapfile to LMDE 3 setups for details.

The free ram of the 32bit LMDE 3 version is not a typo/error, but does reflect the limitation of the default i686 kernel used - see D4) Differences - 32bit for details.

consumed disk space (MiB) swap/ram (MiB) boot strap (s) kernel(s)
version de arch total /boot /home /swapfile swap-used ram used ram sh+buff ram free kernel userspace total count active ver. remarks
ubuntu based linux mint (LM)
LM 19.1 (tessa)cinnamon 64 6380 77 5 568 0 527 367 3050 2.315 2.210 4.526 1 4.15.0-20-generic
32 6156 72 5 568 0 344 334 3360 2.353 0.735 3.089 1 4.15.0-20-generic
mate 64 6629 77 43 568 0 320 432 3191 2.160 0.958 3.119 1 4.15.0-20-generic
32 6393 72 30 568 0 210 389 3448 2.350 0.605 2.955 1 4.15.0-20-generic
xfce 64 6303 77 5 568 0 339 309 3297 2.154 0.679 2.833 1 4.15.0-20-generic
32 6069 72 5 568 0 211 283 3546 1.973 0.577 2.550 1 4.15.0-20-generic
debian based linux mint (LMDE)
LMDE 3 (cindy) cinnamon 64 5134 51 2 568 0 463 328 3174 1.796 6.228 8.025 1 4.9.0-8-amd64 D1)* L1)*
32 4985 49 2 568 0 304 304 2436 2.328 5.901 8.230 1 4.9.0-8-686 D1)* L1)* D4)*

Fully updated (2019/04/24-27): consumed disk-space - swap - ram - bootstrap timing - kernel(s)

All VMs have been fully updated to latest available package-versions at the date given in the remarks column. Before doing measurements, all VMs have been 2 times booted to the desktop and shutdown to sort out cleanup-tasks resulting from the previous update.

For LMDE 32bit versions additional pae-kernels have been installed - see D4) Differences - 32bit

Based on the available cinnamon version, two additional LMDE VMs using xfce DE ("+xfce") have been created - see L3) Using xfce DE with LMDE 3.

consumed disk space (MiB) swap/ram (MiB) boot strap (s) kernel(s)
version de arch total /boot /home /swapfile swap-used ram used ram sh+buff ram free kernel userspace total count active ver. remarks
ubuntu based linux mint (LM)
LM 19.1 (tessa)cinnamon 64 7230 147 47 568 0 456 407 3106 2.291 2.688 4.980 2 4.15.0-48-generic 2019-04-24
32 6930 137 9 568 0 328 422 3309 2.308 1.323 3.631 2 4.15.0-48-generic 2019-04-24
mate 64 7488 147 47 568 0 435 465 3052 2.141 0.622 2.764 2 4.15.0-48-generic 2019-04-25
32 7106 137 33 568 0 209 395 3442 2.352 1.077 3.430 2 4.15.0-48-generic 2019-04-27
xfce 64 7046 147 9 568 0 321 372 3253 2.162 1.304 3.466 2 4.15.0-48-generic 2019-04-25
32 6791 137 9 568 0 211 338 3492 2.319 1.130 3.449 2 4.15.0-48-generic 2019-04-27
debian based linux mint (LMDE)
LMDE 3 (cindy) cinnamon 64 6387 92 9 568 0 461 333 3171 1.982 6.040 8.022 2 4.9.0-9-amd64 2019-04-27
32 6614 167 9 568 0 302 366 3383 2.275 5.745 8.020 4 4.9.0-9-686-pae 2019-04-27 - D4)*
+xfce 64 6430 92 9 568 0 261 345 3355 1.989 6.031 8.020 2 4.9.0-9-amd64 2019-04-27 - L3)*
32 6658 167 9 568 0 166 310 3570 2.346 5.678 8.025 4 4.9.0-9-686-pae 2019-04-27 - D4)* L3)*

Fully updated (2019/05/06): consumed disk-space - swap - ram - bootstrap timing - kernel(s)

All VMs of the previous set have been fully updated to latest available package-versions at 2016-05-06 (lots of packages have changed). Before doing measurements, all VMs have been 2 times booted to the desktop and shutdown to sort out cleanup-tasks resulting from the previous update.

32bit LMDE 3 versions using pae-kernels and manually setup of extra xfce LMDE VMs according Fully updated (2019/04/24-27)

consumed disk space (MiB) swap/ram (MiB) boot strap (s) kernel(s)
version de arch total /boot /home /swapfile swap-used ram used ram sh+buff ram free kernel userspace total count active ver. remarks
ubuntu based linux mint (LM)
LM 19.1 (tessa)cinnamon 64 6798 147 47 568 0 454 407 3105 2.419 2.188 4.607 2 4.15.0-48-generic 2019-06-05
32 6577 137 9 568 0 306 374 3384 2.427 1.134 3.561 2 4.15.0-48-generic 2019-06-05
mate 64 7001 147 47 568 0 339 458 3154 2.295 1.516 3.811 2 4.15.0-48-generic 2019-06-05
32 6655 137 33 568 0 213 400 3434 2.319 1.115 3.434 2 4.15.0-48-generic 2019-06-05
xfce 64 6710 147 9 568 0 321 375 3249 2.111 1.010 3.121 2 4.15.0-48-generic 2019-06-05
32 6338 137 9 568 0 217 346 3478 2.254 1.952 4.206 2 4.15.0-48-generic 2019-06-05
debian based linux mint (LMDE)
LMDE 3 (cindy) cinnamon 64 5691 92 9 568 0 468 333 3164 2.061 5.953 8.015 2 4.9.0-9-amd64 2019-06-05
32 5869 167 9 568 0 294 313 3442 2.359 5.696 8.055 4 4.9.0-9-686-pae 2019-06-05
+xfce 64 5733 92 9 568 0 253 346 3362 1.945 6.076 8.021 2 4.9.0-9-amd64 2019-06-05
32 5914 167 9 568 0 162 310 3574 2.527 5.498 8.025 4 4.9.0-9-686-pae 2019-06-05

Impact of flatpak applications

Flatpak-applications bring their own infrastructure and do allow to run (newer versions of) software which you wont be able to execute due to missing dependencies otherwise. This has two consequences:

1) As there are sometimes large dependency-trees/chains which need to be satisfied, the installation of even simple applications might pull in huge amounts of additional runtime-files (different/incompatible versions of so-files (dlls) needed by the applications).

2) Applications make use of so-files being already loaded by the OS (or other applications) instead of getting their private copy . For applications using the regular infrastructure of the installed OS common dlls will thus often already be loaded/available at application startup. As the infrastructure binaries of flatpak-applications do differ (as otherwise the "specialized" versions wont be needed) executing flatpak-applications will thus have to load the required so-files additionally. This will impose extra memory footprint and add some time just for loading additional infrastructure at startup of flatpak-applications.

Adding more flatpak applications should reuse already available flatpak infrastructure files as long the versions do match. Thus adding more flatpak applications should only add "missing" parts to the overall load. The same is true for running multiple flatpak-application using common infrastructure in regards of memory-footprint and startup times.

Fully updated (2019/05/04): flatpak vs regular client-application: consumed disk-space - swap - ram - bootstrap timing - kernel(s)

As the effect of using flatpak applications will scale the same way on all versions of mint, the following table does just use a 19.1 cinnamon 64bit setup as sample. The vm is fully updated first (yes this page has not been create within one day - thus new updates are available).

To see the differences there were applications installed where both a regular version and a flatpak version is available (and yes - they might differ in version-numbers, but the rough numbers should be sort of comparable).

The first entry is just a fully updated vm without any added applications - see the remarks-column to know which "version" is shown.

The other lines show the result where the related application-variant has been installed. Before doing a/the next install the vm has been reset to the previous (fully updated) state without any extra application installed.

After the install the VMs have been rebooted to ensure there is nothing left in the buffers/caches as result from the installation process itself. The stats are taken with the according application being loaded.

consumed disk space (MiB) swap/ram (MiB) boot strap (s) kernel(s)
version de arch total /boot /home /swapfile swap-used ram used ram sh+buff ram free kernel userspace total count active ver. remarks
ubuntu based linux mint (LM)
LM 19.1 (tessa)cinnamon 64 6813 147 47 568 0 455 392 3122 2.393 2.406 4.799 2 4.15.0-48-generic 2019/05/04 fully update - no extra sw installed
6827 147 56 568 0 509 484 2979 2.345 2.598 4.944 2 4.15.0-48-generic updated + dconf editor regular version
8451 147 58 568 0 528 693 2752 2.406 2.399 4.806 2 4.15.0-48-generic updated + dconf editor flatpak

S) Interpret the stats

S1) Used disk-space

columndescription
total With the used setup the total consumed diskspace does include the space required for the swapfile and the /boot- and /home-folders. Comparing the consumed disk-size of the fresh installation with the full updated systems does give you some hint about the impacts of updates. Where each extra installed software-package and it future updates will need some space too.
boot The size of the "/boot"-column does give an idea about how much extra space each additional kernel (and it's support-files) will require. To avoid having to uninstall/remove old kernels too often - just calculate to have space for 5 kernels at least.
homeThe /home-directory is used to keep the user-related application configuration, added themes and general user data.
swapfileThe swapfile is kept inside the root-filesystem (fs), which does add (depending on your needs) a large part of the total space needed. If you want to use hibernate - the minimum size of the swapfile has to be of the size of the physical memory + some extra overhead. As the used swapfile of the test-VMs is quiet small anyways - just add your physical ram to the given number.

S2) Used memory - free memory

columndescription
swap used Should preferable almost ever be (0) zero, as swapping does mean costly read/write roundtrips to the disk. Where the situation is different if one does/did use hibernate - in which case it's used to "backup" the memory before shutting the system down.
ram used The amount of memory currently directly used by applications (or the OS). Will increase by loaded applications and services.
ram sh+buff (shared memory and buffers). Shared memory is used between applications (and/or the OS) to have access to common=shared data = to avoid to transfer larger blocks of data repeatedly between applications (or the OS). Buffers are normally used internally by the OS avoid loading often/repeatedly needed data (like fonts for example) from the disk. If memory is getting low buffers are more likely to get freed to regain free memory.
ram free Memory that is currently not in use and can immediately be used by applications or services if additional ram is needed.

Many people are happy with "Look! - how small my memory footprint is and how many terabytes of free ram there are...!"

Keeping in mind that linux mint is targeting people using it as a desktop OS: There is nothing really bad about having more memory in use as: you wont safe anything (even not power consumption) by having almost no ram used and "tons" of free ram. The only really important number is: your system should not run out of memory entirely and has to start "swapping" - as this will degrade performance.

Only if you are using a low-spec computer, being very limited in the available physical ram (and having in no way the opportunity to add more ram) would probably enforce you to prefer a certain version or edition of LM/LMDE.

Having as much free ram as possible is normally only important with server-installations (which is not the best use-case to use linux mint anyways) which are expecting masses of connections/services starting and stopping in high frequency.

Accordingly playing around with "swappiness" to enforce aggressive swapping is almost pointless for the desktop use-case = swapping is not what a regular user does want to have.

S3) Bootstrap timings

columndescription
kernel total time spend during boot within kernel related modules
userspace total time spend during boot within non-kernel modules - aka the userspace.

The timing measured does not cover the time needed by the machine to execute it's "bios"-init and loading the grub-menu, nor does it cover any timeouts being used at a grub-menu, but does start at the moment where the kernel and the initial ramdisk are loaded and execution is handed over to the linux init-system (systemd).

The used method "systemd-analyze time" does only give a first, very basic overview of time spend there during boot and could even be a bit misleading - see D3) Bootstrap timings

The main reason for the shown bootstrap-timings is: Enable a user to have at least anything to compare a real install against. If one does face huge difference here, it's time to have a closer look at more detailed output using:

# the chain of services, which depend on each other = are not run in parallel during booted
systemd-analyze critical-chain
# a sorted list of time spend within each service during bootstrap
systemd-analyze blame
		

Although it's preferable to spend the lowest possible time during boot, one has to be aware that using additional services will cost time during boot (period).

S4) Stats - commands used

All sizes of ram of disks/volumes are given as powers of 2 - MiB (1024*1024 bytes) and GiB (1024*1024*1024 bytes)

The following commands have been used to determine the stats:

df -B M /                      # get used diskspace on root-fs (MiB)
du  --block-size M -d 0 /boot  # used space of subfolders  (MiB)
du  --block-size M -d 0 /home  # used space of subfolders  (MiB)
ls -l --block-size=M /swapfile # used space swapfile  (MiB)
free -m /                      # get used/free swap and ram (MiB)
systemd-analyze time           # determine bootstrap timing (s.###)
uname -r                       # kernel version booted

D) Differences Default-Setup LM vs LMDE

Although LM (ubuntu-based) and LMDE (debian-based) -versions have a lot in common, there are more or less obvious differences notable between LM and LMDE-versions - comparing here an almost default setup = using the entire disk.

With a "virgin" hdd (=no previous filesystem or partition-scheme used) both LM 19.1 and LMDE 3 are creating a msdos-style partition table layout.

D1) Default Setup swapfile / swap-partition

LM 19.1 will create a single ext4 partition for the root-fs (and does setup a swapfile located there).

LMDE 3 will create a traditional swap-partition and does use the remainder for a single ext4 root-partition.

Remark: The LMDE 3 VMs have been setup different to that, by creating a single ext4 partition and adding a swapfile instead (to be better comparable to the LM-versions).

D2) Grub-menu

At the installed OS - the LM-version will boot with a hidden grub-menu, but only display the mint-logo during startup.

LMDE 3 versions do start with a visible grub-menu where a default timeout of 5 seconds does count down.

Remark: The timeout at the grub-menu is not taken into account to bootstrap times. The bootstrap timings do start measurement at the moment the kernel does get loaded (has been tested/verified by changing grub-menu timeout of the VMs).

D3) Bootstrap timings

There is some noticeable difference in bootstrap-times between the LM- and LMDE-versions (values returned by "systemd-analyze time").

Having a closer look at the critical-chain of executed services, it does turn out that LM 19.1 (although executing way more services) does simply "optimize" (or cheat) a bit, by just not waiting for the NetworkManager getting really fully initialized (which is done in parallel and will finish at the time the user did actually login):

bootstrap LMDE 3 (cindy) cinnamon 64 bit

17:43 demo@lmde-3-cinnamon-64bit : ~
67 >systemd-analyze critical-chain
The time after the unit is active or started is printed after the "@" character.
The time the unit takes to start is printed after the "+" character.

graphical.target @6.002s
└─multi-user.target @6.002s
  └─hddtemp.service @5.994s +7ms
    └─network-online.target @5.994s
      └─NetworkManager-wait-online.service @565ms +5.428s
        └─NetworkManager.service @440ms +124ms
          └─dbus.service @394ms
            └─basic.target @388ms
              └─sockets.target @388ms
                └─uuidd.socket @388ms
                  └─sysinit.target @386ms
                    └─sys-fs-fuse-connections.mount @1.235s +7ms
                      └─systemd-modules-load.service @42ms +76ms
                        └─systemd-journald.socket @41ms
                          └─-.slice @34ms

bootstrap LM 19.1 (tessa) - cinnamon 64bit

18:04 demo@mint-19-1-cinnamon-64bit : ~
87 >systemd-analyze critical-chain
The time after the unit is active or started is printed after the "@" character.
The time the unit takes to start is printed after the "+" character.

graphical.target @1.914s
└─multi-user.target @1.914s
  └─getty.target @1.914s
    └─getty@tty1.service @1.914s
      └─system-getty.slice @1.913s
        └─setvtrgb.service @1.899s +14ms
          └─systemd-user-sessions.service @1.777s +35ms
            └─network.target @1.776s
              └─NetworkManager.service @1.189s +587ms
                └─dbus.service @1.049s
                  └─basic.target @1.044s
                    └─sockets.target @1.044s
                      └─avahi-daemon.socket @1.044s
                        └─sysinit.target @1.042s
                          └─apparmor.service @486ms +555ms
                            └─local-fs.target @486ms
                              └─local-fs-pre.target @486ms
                                └─keyboard-setup.service @196ms +289ms
                                  └─systemd-journald.socket @193ms
                                    └─system.slice @192ms
                                      └─-.slice @190ms

D4) Differences - 32bit

LM 19.1 does use a generic kernel with a 32bit install (which is not available at the LMDE versions) - this has two consequences:

LMDE 3 does use an i686 kernel with 32bit installations intentionally - which has again some consequences:

Note: You can install an i686-pae kernels with 32bit lmde 3 versions explicitly to bypass the 3.2GiB limit - see below.

To show the impact on LMDE 3 one could compare the 32bit version @Fresh install - which does use the regular i686-kernel - with the Fully updated (2019/04/24-27) 32bit versions - which do use a pae kernel instead.

As the 32bit LMDE 3 VMs (like many real machines) do support the pae-extension + got 4 GiB ram assigned, pae-kernels have been added to the "full updated" LMDE versions (to be better comparable to the LM-versions).

pae-kernel related details:


V) VM-Environment

V1) VM installation layout

All VMs have been setup using an identical installation layout.

The used VM-setup is not meant as a suggestion - but does only aim at: having an identical environment to compare the mint-versions and to limit the "waste" of required storage at the host-machine.

Interface-Language is en-US, keyboard-layout is de-DE; thus -> no extra language packages got installed.

The setup has been done without adding codecs or "extra" software

V2) VM "hardware" setups

All VMs are using an identical layout

On the host-side each VM-nic is assigned to a dedicated static IP instead of using plain dhcp-based assignment.

Each VM got a RNG device (to circumvent the typical timeout from missing according support).

HypervisorKVM
Architecturex86_64
Emulatorqemu-kvm
Firmwarebios
Chipseti440Fx
cpuhypervisor host-cpu*2
memory4 GiB
diskqcow2, virtio, 12 GiB
cdromide, raw, disconnected
nicvirtio, NAT
displayspice, virtio
videovirtio
RNG/dev/random

V3) VM host used

The host machine is running centOS7 using qemu/kvm as virtualizor.

cpuIntel Core i7-6700K, quad-core, 4GHz*8 threads
ram16 GiB (2*8 GiB Fujitsu DDR4, 2300MHz)
host OSKingston 223 GiB (240 GB) NVMe SSD
VM-imagesSeagate SSHD PCIe 8GB/2TB

L) LMDE - adjustments/installs

L1) Adding a swapfile to LMDE 3 setups

Adding /swapfile for a more comparable/identical setup to lmde 3:

# an actual/real install will use a value >= physical ramsize 
# ( + some extra space if hibernate shall be used )
sudo dd if=/dev/zero of=/swapfile bs=$((1024*1024)) count=568
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo bash -c "echo '/swapfile                                 none            swap    sw              0       0' >>/etc/fstab "
sync
reboot

L2) Install pae kernels with 32bit LMDE versions

L2a) Remarks @ when not to use pae kernels with 32bit LMDE versions

Do not use pae-kernels if having only up to 3GiB physical ram.

Be aware it does only make sense to use a pae-kernel, if a system does have more than 3 GiB physical memory installed. As the advantage to make use of more memory, has to be "payed" by an internal mapping of memory-pages + using larger data-descriptors. This will result in (slightly) larger memory-images. This will be ok, if you are able to gain more memory this way, but is counterproductive if you are not having anything to "win".

L2b) Remarks @only 3.2 GiB memory usable with pae kernels

Although having more more physical ram installed, there still might be only 3.2GiB usable.

Some early core 2 duo cpu versions do suppress usage beyond 4GiB (although they are reporting to support a 2^36 bit physical address-space + pae) - (end of the story - sadly).

There are cases where the bios/motherboard might add another limitation/barrier too; if you are lucky: have a look at your bios, as some support an "allow memory (re)mapping" -option, which has simply to be activated. (again - if you have no related option: you reached the end of the road)

L2c) Check for pae flag

To check for available cpu-flags use:

sudo cat /proc/cpuinfo| grep -i flags
		

If pae is listed with the flags, you are able to install and use a pae kernel.

L2d) Install pae-kernel and related packages

Fully update your LMDE 32bit installation and reboot before you install a pae kernel.

To list all available pae-kernels (your output will likely differ + you will probably choose the highest version pae kernel from the shown list):

01:03 demo@lmde-3-cinnamon-32bit : ~
76 >apt search linux-image | grep pae
p   linux-image-4.9.0-3-686-pae     - Linux 4.9 for modern PCs                  

... stripped off output here ...

p   linux-image-4.9.0-8-rt-686-pae- - Debug symbols for linux-image-4.9.0-8-rt-6
p   linux-image-4.9.0-9-686-pae     - Linux 4.9 for modern PCs                  
p   linux-image-4.9.0-9-686-pae-dbg - Debug symbols for linux-image-4.9.0-9-686-

... stripped off output here ...

p   linux-image-rt-686-pae-dbg      - Debugging symbols for Linux rt-686-pae con
		

Find all packages related to the (highest) pae kernel version:

01:03 demo@lmde-3-cinnamon-32bit : ~
77 >apt search "4.9.0-9"
p   linux-headers-4.9.0-9-686                              - Header files for Linux 4.9.0-9-686                               
p   linux-headers-4.9.0-9-686-pae                          - Header files for Linux 4.9.0-9-686-pae                           
p   linux-headers-4.9.0-9-all                              - All header files for Linux 4.9 (meta-package)                    
p   linux-headers-4.9.0-9-all-i386                         - All header files for Linux 4.9 (meta-package)                    
p   linux-headers-4.9.0-9-common                           - Common header files for Linux 4.9.0-9                            
p   linux-headers-4.9.0-9-common-rt                        - Common header files for Linux 4.9.0-9-rt                         
p   linux-headers-4.9.0-9-rt-686-pae                       - Header files for Linux 4.9.0-9-rt-686-pae                        
p   linux-image-4.9.0-9-686                                - Linux 4.9 for older PCs                                          
p   linux-image-4.9.0-9-686-dbg                            - Debug symbols for linux-image-4.9.0-9-686                        
p   linux-image-4.9.0-9-686-pae                            - Linux 4.9 for modern PCs                                         
p   linux-image-4.9.0-9-686-pae-dbg                        - Debug symbols for linux-image-4.9.0-9-686-pae                    
p   linux-image-4.9.0-9-rt-686-pae                         - Linux 4.9 for modern PCs, PREEMPT_RT                             
p   linux-image-4.9.0-9-rt-686-pae-dbg                     - Debug symbols for linux-image-4.9.0-9-rt-686-pae                 
v   linux-latest-modules-4.9.0-9-686                       -                                                                  
v   linux-latest-modules-4.9.0-9-686-pae                   -                                                                  
v   linux-latest-modules-4.9.0-9-rt-686-pae                -                                                                  
p   linux-support-4.9.0-9                                  - Support files for Linux 4.9
		

With different kernel-versions, there are different numbers of related kernel packages offered - the bare minimum will be:

With some kernel-versions there are additionally packages offered, which should get installed too, if being available:

And finally install all related packages (the bold marked ones in the sample):

01:07 demo@lmde-3-cinnamon-32bit : ~
78 >apt install linux-headers-4.9.0-9-686-pae \
> linux-headers-4.9.0-9-common \
> linux-image-4.9.0-9-686-pae \
> linux-latest-modules-4.9.0-9-686-pae \
> linux-support-4.9.0-9
[sudo] password for demo:         
Reading package lists... Done

... stripped off output here ...

/etc/kernel/postinst.d/zz-update-grub:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.9.0-9-686-pae
Found initrd image: /boot/initrd.img-4.9.0-9-686-pae
Found linux image: /boot/vmlinuz-4.9.0-8-686
Found initrd image: /boot/initrd.img-4.9.0-8-686
Found memtest86+ image: /boot/memtest86+.bin
Found memtest86+ multiboot image: /boot/memtest86+_multiboot.bin
done
Setting up linux-headers-4.9.0-9-common (4.9.168-1) ...
Setting up linux-headers-4.9.0-9-686-pae (4.9.168-1) ...
Setting up linux-image-686-pae (4.9+80+deb9u7) ...
Setting up linux-support-4.9.0-9 (4.9.168-1) ...
	

... and after a reboot re-check the kernel-version and the memory setup:

01:26 demo@lmde-3-cinnamon-32bit : ~
81 >uname -a
Linux lmde-3-cinnamon-32bit 4.9.0-9-686-pae #1 SMP Debian 4.9.168-1 (2019-04-12) i686 GNU/Linux

01:26 demo@lmde-3-cinnamon-32bit : ~
82 >free -m
              total        used        free      shared  buff/cache   available
Mem:           4040         295        3444          11         299        3381
Swap:             0           0           0

L3) Using xfce DE with LMDE 3

Although LMDE 3 does neither offer a xfce-version of the installer-image, nor list a mint-meta-xfce package, one is able to add&use xfce as a DE.

Adding xfce-packages (using "clones" of the LMDE 3 cinnamon VMs as a base):

L3a) content of mint-meta-xfce

Determine the content of mint-meta-xfce meta-packages from a 19.1 cinnamon 64bit install does return (NO - you are not expected to repeat this, as it's just to "document" the content of the meta-package):

14:12 demo@mint-19-1-cinnamon-64bit : /var/cache/apt/archives
109 >apt show mint-meta-xfce
Package: mint-meta-xfce
Version: 2018.11.28
Priority: optional
Section: admin
Source: mint-meta
Maintainer: Clement Lefebvre <root@linuxmint.com>
Installed-Size: 11,3 kB
Depends: mint-meta-core, gtk2-engines-xfce, thunar, thunar-archive-plugin, thunar-media-tags-plugin,\
 thunar-volman, xfce4-appfinder, xfce4-panel, xfce4-places-plugin, xfce4-session, xfce4-settings,\
 xfconf, xfdesktop4, xfce4-screenshooter, xfwm4, mintdesktop, xfce4-cpufreq-plugin, xfce4-eyes-plugin,\
 xfce4-mailwatch-plugin, xfce4-quicklauncher-plugin, xfce4-screenshooter-plugin, xfce4-systemload-plugin,\
 xfce4-timer-plugin, xfce4-time-out-plugin, xfce4-verve-plugin, mugshot, xfce4-whiskermenu-plugin
Download-Size: 4.868 B
APT-Sources: http://packages.linuxmint.com tessa/main amd64 Packages
Description: Set of packages installed by default in the Xfce edition of Linux Mint
 Set of packages installed by default in the Xfce edition of Linux Mint.

L3b) Install "mint-meta-xfce" to LMDE 3 versions

Adding the "mint-meta-xfce" packages to a lmde 3 -version:

# as there does not exist a mint-meta-xfce meta-package with lmde-versions, the according
# packages have to be added "manually", leaving out following (missing) 2 packages:
#  xfce4-eyes-plugin xfce4-time-out-plugin

sudo apt update

sudo apt install mint-meta-core gtk2-engines-xfce thunar thunar-archive-plugin thunar-media-tags-plugin \
 thunar-volman xfce4-appfinder xfce4-panel xfce4-places-plugin xfce4-session xfce4-settings \
 xfconf xfdesktop4 xfce4-screenshooter xfwm4 mintdesktop xfce4-cpufreq-plugin \
 xfce4-mailwatch-plugin xfce4-quicklauncher-plugin xfce4-screenshooter-plugin xfce4-systemload-plugin \
 xfce4-timer-plugin xfce4-verve-plugin mugshot xfce4-whiskermenu-plugin
 
sudo sync

#logout&login selecting xfce4 at the graphical greeter
#on first login - select "use default-config"

© 1998-2020 by ORCUS® GmbH - www.orcus.de (imprint) - we strictly do not track (period) - details: privacy - overview IRC: IRC support

note-1: not tracking does mean too - we are strictly NOT using direct external links within the content = we bother you having to copy&paste offered URLs