Обновление CLDX через proxy

Пытаюсь победить обновление CLDX 14.16 через proxy.
Установил proxy в переменные среды, в wgetrc, в git config --global…
Поменял git: на http: в файлах:

/var/lib/layman/calculate/.git/config
/var/lib/layman/distros/.git/config

Запускаю

cl-update --sync-only

а он создает новый

/var/lib/layman/distros_new

и соответственно новый

/var/lib/layman/distros_new/.git/config

в котором указан

url=git://git.calculate.ru/calculate/distros.git

вместо требуемого мне

url=http://git.calculate.ru/calculate/distros.git

Можно ли где-нибудь, чего-нибудь поменять, чтобы изменить шаблон вновь создаваемого .git/config ?

Плюс еще прописать в /var/lib/layman/installed.xml

http://git.calculate.ru/calculate/distros.git
http://git.calculate.ru/calculate/overlay.git

И попробовать вообще склонировать, например, в /tmp/ git clone http://git.calculate.ru/calculate/distros.git

Да в /var/lib/layman/installed.xml тоже поменял - не помогает.

git clone работает конечно, и через wget архив скачивается…

Но хотелось бы чтобы cl-update заработал…
Если - “никак”, то буду конечно вручную клонировать.

Вадим Шкарупа wrote:

Пытаюсь победить обновление CLDX 14.16 через proxy.
Установил proxy в переменные среды, в wgetrc, в git config --global…
Поменял git: на http: в файлах:
[…]
Запускаю
[…]
а он создает новый
[…]
и соответственно новый
[…]
в котором указан
[…]
вместо требуемого мне
[…]

Можно ли где-нибудь, чего-нибудь поменять, чтобы изменить шаблон вновь создаваемого .git/config ?

Присоединяюсь к вопросу. попытки прокинуть обновления через прокси - не успешны. Быть может ман устарел?

Последовательность действий при которой у меня всё заработало:

echo "proxy : http://PROXY:PORT" >>/etc/layman/layman.cfg
git config --global http.proxy PROXY:PORT
sed -ri 's|(url = )git://|\1http://|' /var/lib/layman/calculate/.git/config
sed -ri 's|(url = )git://|\1http://|' /var/lib/layman/distros/.git/config
sed -ri 's|(url = )git://|\1http://|' /usr/portage/.git/config

И прописать в <</etc/wgetrc>> переменные <<http_proxy = PROXY:PORT>> и <<ftp_proxy = PROXY:PORT>> для скачивания пакетов тоже через прокси.

PROXY:PORT везде соответственно меняются на данные реального прокси-сервера.

У вас, наверное, прокси git-протокол пропускает.

Запуск layman дает:

calculate ~ # layman -s distros
 * Fetching remote list,...
 * Fetching new list... http://www.gentoo.org/proj/en/overlays/repositories.xml
 * Last-modified: Tue, 21 Apr 2015 00:01:00 GMT
 * Fetch Ok
 * Syncing selected overlays,...
 * Running Git... # ( cd /var/lib/layman/distros  && /usr/libexec/calculate/cl-git-wrapper pull )

Прерываем, смотрим в /usr/libexec/calculate/cl-git-wrapper и видим:

/usr/sbin/cl-core --method update --rep $repo_name --sync-only on --skip-eix-update -T none

т.е.

/usr/sbin/cl-core --method update --rep distros --sync-only on --skip-eix-update -T none

Запускаем:

calculate ~ # /usr/sbin/cl-core --method update --rep distros --sync-only on --skip-eix-update -T none
Синхронизация репозиториев
 * Синхронизация Distros репозитория ...
 * Репозиторий /var/lib/layman/distros не является Git репозиторием  
 * Повторное получение distros репозитория ...
[                                                                                             ]   0% Time:0:00:00

Пока она висит смотрим:

alculate ~ # ls -l /var/lib/layman/
итого 312
-rw-r--r-- 1 root root     29 апр 23 08:04 cache_ac494f50f5736be7871962c0dec7b3bb.timestamp
-rw-r--r-- 1 root root 288216 апр 23 08:04 cache_ac494f50f5736be7871962c0dec7b3bb.xml
drwxr-xr-x 6 root root   4096 апр 20 15:23 calculate
drwxrwxr-x 4 root root   4096 апр 22 13:58 distros
drwxr-xr-x 5 root root   4096 апр 22 15:47 distros_
drwxr-xr-x 3 root root   4096 апр 23 08:04 distros_new
-rw-r--r-- 1 root root    616 апр 22 14:51 installed.xml
-rw-r--r-- 1 root root     86 авг 13  2014 make.conf

а точнее:

calculate ~ # cat /var/lib/layman/distros_new/.git/config |grep calculate
    url = git://git.calculate.ru/calculate/distros.git

Отвисев cl-core показывает:

calculate ~ # /usr/sbin/cl-core --method update --rep distros --sync-only on --skip-eix-update -T none
Синхронизация репозиториев
 * Синхронизация Distros репозитория ...
 * Репозиторий /var/lib/layman/distros не является Git репозиторием  
 * Повторное получение distros репозитория ...
 * Не удалось клонировать git://git.calculate.ru/calculate/distros.git репозиторий
 * Не удалось обновить
calculate ~ #

Откуда она делает заключение, что “Репозиторий /var/lib/layman/distros не является Git репозиторием”?

И собственно что определяет логику “Повторное получение distros репозитория …” и можно ли эту логику чуть-чуть изменить?

Iurii Blokhin wrote:

Последовательность действий при которой у меня всё заработало:
[…]

И прописать в <</etc/wgetrc>> переменные <<http_proxy = PROXY:PORT>> и <<ftp_proxy = PROXY:PORT>> для скачивания пакетов тоже через прокси.

PROXY:PORT везде соответственно меняются на данные реального прокси-сервера.

Как в git затолкать авторизацию на прокси?

LieT Atredes wrote:

Как в git затолкать авторизацию на прокси?

Я cntlm запускаю на соседней машине,
потом через ssh -L 3128:localhost:3128 пробрасываю 3128 порт на calculate
И на calculate везде пишу http://127.0.0.1:3128/

Цивилизованного решения “в одном(двух) месте прописать” и “будет вам счастье” нет как я понимаю в кальке нет? например банальным export http_proxy

Впишите в /etc/calculate/calculate.env в update

[update]
cl_update_rep_url = 
http://git.calculate.ru/calculate/portage.git,http://git.calculate.ru/calculate/overlay.git,http://git.calculate.ru/calculate/distros.git

1) Приношу извинения за путаницу, сообщение:

* Репозиторий /var/lib/layman/distros не является Git репозиторием

Было у меня потомучто в /var/lib/layman/distros у меня действительно лежал архив загруженный с git`а через wget. я вчера вечером его положил, а сегодня с утра не вспомнил.
но обнавление всеравно не шло.

2) Спасибо, Михаил.
запись cl_update_rep_url в /etc/calculate/calculate.env сработала!
Но тут же возникла следующая проблема:
fatal: dumb http transport does not support --depth

calculate ~ # /usr/sbin/cl-core --method update --rep distros --sync-only on --skip-eix-update -T none
Синхронизация репозиториев
 * Синхронизация Distros репозитория ...
 * Не удалось обновить репозиторий в /var/lib/layman/distros  
 * Повторное получение distros репозитория ...
 * fatal: dumb http transport does not support --depth
 * Не удалось клонировать http://git.calculate.ru/calculate/distros.git репозиторий
 * Не удалось обновить

Спасибо!!!

Еще раз - прошу прощения, все хорошо, обновления прошли:

calculate ~ # layman -s calculate

 * Fetching remote list,...
 * Remote list already up to date: http://www.gentoo.org/proj/en/overlays/repositories.xml
 * Last-modified: Tue, 21 Apr 2015 00:01:00 GMT
 * Fetch Ok

 * Syncing selected overlays,...
 * Running Git... # ( cd /var/lib/layman/calculate  && /usr/libexec/calculate/cl-git-wrapper pull )
Синхронизация репозиториев
 * Синхронизация Calculate репозитория ...                                                                 [ ok ]
 * Синхронизация завершена
Конфигурация системы
 * Обновление конфигурационных файлов ...                                                                  [ ok ]
 * Обновление системы завершено!
 * 
 * Succeeded:
 * ------
 * Successfully synchronized overlay "calculate".
 * 
 * 
 * Warnings:
 * ------
 * The source of the overlay "calculate" seems to have changed.
 * You currently sync from
 * 
 *   http://git.calculate.ru/calculate/overlay.git
 * 
 * while the remote lists report
 * 
 *   git://git.calculate.ru/calculate/overlay.git
 * 
 * as correct location.
 * Please consider removing and re-adding the overlay.
 * 

calculate ~ # layman -s distros

 * Fetching remote list,...
 * Fetching new list... http://www.gentoo.org/proj/en/overlays/repositories.xml
 * Last-modified: Tue, 21 Apr 2015 00:00:29 GMT
 * Fetch Ok

 * Syncing selected overlays,...
 * Running Git... # ( cd /var/lib/layman/distros  && /usr/libexec/calculate/cl-git-wrapper pull )
Синхронизация репозиториев
 * Синхронизация Distros репозитория ...                                                                   [ ok ]
 * Обновление кэша Distros репозитория ...                                                                 [ ok ]
 * Updating the package setup cache ...                                                                    [ ok ]
 * Синхронизация завершена
Конфигурация системы
 * Обновление конфигурационных файлов ...                                                                  [ ok ]
 * Обновление системы завершено!
 * 
 * Succeeded:
 * ------
 * Successfully synchronized overlay "distros".
 * 
 * 
 * Warnings:
 * ------
 * The source of the overlay "distros" seems to have changed.
 * You currently sync from
 * 
 *   http://git.calculate.ru/calculate/distros.git
 * 
 * while the remote lists report
 * 
 *   git://git.calculate.ru/calculate/distros.git
 * 
 * as correct location.
 * Please consider removing and re-adding the overlay.
 *