When installing an app from unknown sources, does it have to ask for specific permissions like regular apps or is every permission granted by default?
What permissions are granted is not depending on the source. If you sideload apps directly on the device via "unknown sources" (e.g. by using a third-party market app such as F-Droid or Aptoide), Android's package installer will pop up and ask you to confirm, showing basically the same permission list Playstore shows (i.e. a quite abbreviated) for the "all-or-nothing" part (i.e. permissions that cannot be granted at runtime). Runtime permissions are then asked the same way as with all other apps, whenever you use a functionality needing them.
The first confirmation is only skipped if you install apps via
adb install or
adb pm install. Runtime permissions will always be dealt with in the very same way: whenever needed.