Всем приветы.
Честно, я уже прожёг всю мебель, на которой можно сидеть. Я не могу понять, как работает чёртов пункт SRC_URI в чёртовых ебилдах.
Если конкретнее: есть оверлей, в котором висит ебилд для вина. Решил добавить модульности и вытащить тип вина (ванилька, staging, ванилька + Nine, staging + Nine) в if-ы и переменные. Вот кусок кода:
if (!(use staging) && !(use d3d9)) || (!(use staging) && use d3d9); then
if use d3d9; then
WINETYPE="nine"
else
WINETYPE="vanilla"
fi
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}/${MY_P}.tar.bz2 -> ${WINETYPE}.tar.bz2" # Vanilla Wine with/without Nine
elif use staging && !(use d3d9); then
WINETYPE="staging"
SRC_URI="https://github.com/wine-compholio/wine-staging/archive/v${PV} -> ${WINETYPE}.tar.gz" # Wine with Staging patchset
elif use staging && use d3d9; then
WINETYPE="stnine"
SRC_URI="https://github.com/mradermaxlol/pontostroy-wine/archive/v${PV}.tar.gz -> ${WINETYPE}.tar.gz" # Staging-and-Nine-patched Wine
fi
if [ "$WINETYPE" == "stnine" ]; then
S="${WORKDIR}/pontostroy-wine-${PV}"
elif [ "$WINETYPE" == "vanilla" ] || [ "$WINETYPE" == "nine" ]; then
S="${WORKDIR}/${PN}-${PV}"
elif [ "$WINETYPE" == "staging" ]; then
S="${WORKDIR}/${PN}-staging-${PV}"
fi
if [ "$WINETYPE" == "staging" ]; then
unpack "staging.tar.gz"
elif [ "$WINETYPE" == "stnine" ]; then
unpack "stnine.tar.gz"
elif [ "$WINETYPE" == "vanilla" ] || [ "$WINETYPE" == "nine" ]; then
unpack "vanilla.tar.bz2"
fi
Проблема в том, что repoman ну никак не хочет качать архивы pontostroy и staging. Т.е. при запуске repoman manifest генерятся суммы для %нужныефайлы% и vanilla.tar.bz2, всё. Что я делаю не так?