Error term/Innovation process in ARCH/GARCH processes?

I am wondering about the distribution of the error term/innovation process in a ARCH/GARCH process and its implementation, I am not sure about some points. The basic assumption is

$r_t=\sigma_t*\epsilon_t$

where the $\sigma_t$ is the volatility, modeled by ARCH/GARCH and the $\epsilon_t$ are mostly assumed to be N(0,1).

Now my questions are:

1. More sophisticated models drop this assumption. So I can say, e.g. $\epsilon_t$ follows a generalized hyperbolic distribution. So the mean does not need to be zero and the variance does not need to be equal to 1. This is correct, right?

2. If I use the rugarch package: It supports different distributional assumptions. But I am not getting the following: So they also drop the assumption of mean zero and variance one? Or are they using something like a "standardized" version?

3. Suppose I want to fit a GARCH(1,1) assuming, that the $\epsilon_t$ follow a generalized hyperbolic distribution, but the mean does not have to be zero and the variance does not need to be one. Is rugarch doing a jointly parameter estimation? So in my final output, do I get the parameters of the GARCH process and the parameters of my generalized hyperbolic distribution?

My last question is, how can I implement this?

I guess I have to use the following command:

ugarchspec(variance.model = list(model = "sGARCH", garchOrder = c(1, 1),
submodel = NULL, external.regressors = NULL, variance.targeting = FALSE),
mean.model = list(armaOrder = c(1, 1), include.mean = TRUE, archm = FALSE,
archpow = 1, arfima = FALSE, external.regressors = NULL, archex = FALSE),
distribution.model = "norm", start.pars = list(), fixed.pars = list(), ...)


the distribution.model has to be set to ghyp. Is this assuming a mean of zero and a variance of one?

I think no, right?

How can I use the hyperbolic distribution for distribution.model?

-