@RobertoArchimboldi @Suiseiseki Linux, the kernel, seems to have some binary blobs which does not have the source code available.
There are other firmwares that are proprietary too, like most of the WiFi cards, but I have to admit that they are loaded externally if I'm not wrong (I am not an expert in the topic).
There is linux-libre which removes all of that proprietary crap but it has less compatibility, especially with new hardware.