What determines GNU\Linux hardware requirements?

Is there any other factor that affect hardware requirements, apart from desktop environment

Of course, some distros are far far larger than others; which would mean you need more storage. Some distro's run entirely from RAM. For example for Tin Hat Linux you need 4gb RAM and for Tiny SliTaz only 4MB is required.

and would it be possible to make for example openSUSE as lightweight as Tiny Core Linux?

You can start with a large distro and remove everything unnecessary and replace as much as possible with equivalents that have lower requirements and vice versa.

Starting with a distro that contains what you want saves a lot of time tho.