I noticed that we have a 5.7 kernel now.
Starting with 32-bit kernel versions 5.6 and newer, together with an appropriately compiled libc and userland, 32-bit Linux software has the potential to behave properly across the year 2038 limit using 64-bit time_t.
A syscall compatibility layer exists, to allow legacy binaries to continue interacting with the kernel using 32-bit time_t, bringing with it all the anticipated integer overflow problems which would be expected to begin occurring some time during the year 2038.
It appears that void is still shipping userland binaries that are compatible with older kernels, which would suggest to me that it must still be using 32-bit time_t, and relying on the compatibility layer to run them on the 5.7 kernel. Is there any possibility of a future update which shifts the libc and userland to a 2k38-ready state? (Yes, this would almost certainly sacrifice the ability to work with all kernels 5.5 and older.)
Starting with 32-bit kernel versions 5.6 and newer, together with an appropriately compiled libc and userland, 32-bit Linux software has the potential to behave properly across the year 2038 limit using 64-bit time_t.
A syscall compatibility layer exists, to allow legacy binaries to continue interacting with the kernel using 32-bit time_t, bringing with it all the anticipated integer overflow problems which would be expected to begin occurring some time during the year 2038.
It appears that void is still shipping userland binaries that are compatible with older kernels, which would suggest to me that it must still be using 32-bit time_t, and relying on the compatibility layer to run them on the 5.7 kernel. Is there any possibility of a future update which shifts the libc and userland to a 2k38-ready state? (Yes, this would almost certainly sacrifice the ability to work with all kernels 5.5 and older.)