Just look at what stuff we were using in the 1990s and early 2000s and still use now, then extrapolate:
Command line tools and libraries: these are the building blocks which everyone uses (maybe indirectly) but nobody appreciates.
- bash, zsh
- rsync, tar
- openssh, putty
- opengpg
- git / svn / cvs (obsolete, but still in use)
- libreadline
- objdump and similar low-level tools
System software whose internals rarely change significantly and will probably still be around in 20 years:
- Filesystems like ext4 and zfs
- Package management tools and formats like: pacman, apt, rpm/yum
- Runtime environments like JVM, CLR, Blink/V8, LuaJIT, Beam, Haskell, and presumably WASM in the future
- Bootloaders like GRUB2
Larger software projects (the internals of these might change more quickly over time though):
- Linux kernel, FreeBSD, OpenBSD, OpenWRT, Haiku
- gtk3
- ffmpeg, mplayer, vlc, blender
- Wayland
- Sqlite, PostgreSQL
- LLVM
- Inkscape, Gimp, ImageMagick
- Wireshark, GNURadio
Other options to consider (less popular, but might need more help):
- Thunderbird (not everyone wants to use a webmail client)
- input methods like fcitx (these might change over time though)
- Fontforge
- CUPS and other printing and scanning utilities
- flashrom