Why I was not able to get any system updates (via both software Updater & APT) after adding foreign architecture?

Solution 1:

Two moments about armhf CPU architecture - it needs virtualization, its packages are located in different mirror server.

So when you run the following commands on fresh amd64 system:

sudo dpkg --add-architecture armhf

you will get the following errors on next run of sudo apt-get update:

E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/hirsute/multiverse/binary-armhf/Packages  404  Not Found [IP: 192.168.3.222 8000]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/hirsute-updates/main/binary-armhf/Packages  404  Not Found [IP: 192.168.3.222 8000]
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/hirsute-security/universe/binary-armhf/Packages  404  Not Found [IP: 192.168.3.222 8000]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/hirsute-backports/universe/binary-armhf/Packages  404  Not Found [IP: 192.168.3.222 8000]
E: Some index files failed to download. They have been ignored, or old ones used instead.

so APT will become seriously broken.

So you have remove armhf foreign architecture from the system by sudo dpkg --remove-architecture armhf and then run sudo apt-get update again to keep things in order.

From my understanding there is only one correct foreign architecture for amd64 - it is 32-bit variant named i386. Many packages are using it, for example Wine.