Thanks everyone for your reply.
Please check out my previous post about changing my mirror.
https://discourse.nixos.org/t/help-i-broke-my-nix-channel/58309/8
Long story short, I currently live in China and the Chinese firewall will either block certain website or severely limit bandwidth to almost unusable, unfortunately cache.nixos.org is one of them.
You got a point, but I think it is the complete opposite, because I was using cache.nixos.org, every time I ran nixos-rebuild switch, there will be some http error and packages cannot be downloaded completely, I had to cancel the process many times while I was figuring out what is going on.
The incomplete downloads at the time definitely messed up parts of the system and the possible kernel amdgpu driver issue is adding fuel to the fire.
That is why I am desperately trying to use a Chinese mirror for my channel and binary substituter.
(
mirrors.tuna.tsinghua.edu.cn
mirror.sjtu.edu.cn
)
EDIT:
Thanks everyone for your suggestion but I am not rolling the system back because the current system is more stable than all the previous one. I fixed lots of issues and it will only get better. The current system is still usable and can be rescued from all your help and guidance.
I currently live in China, therefore the Chinese firewall will create unexpected issues. Sorry for the trouble.
I migrated from Linux Mint and I boasted lots about how advanced NixOS is, I would like to fix the problems and stay.