You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.0 KiB

  1. #!/bin/bash
  2. # если выполняется обновление уже полученного репозитория
  3. if [[ $1 == "pull" ]]
  4. then
  5. # получить название репозитория
  6. if [[ -f profiles/repo_name ]]
  7. then
  8. repo_name=$(/bin/cat profiles/repo_name)
  9. else
  10. repo_name=$(/bin/basename `pwd`)
  11. fi
  12. elif [[ $1 == "clone" ]]
  13. then
  14. repo_name=$(/bin/basename $3)
  15. fi
  16. # получить список репозиториев дистрибутива
  17. native_reps=,$(/usr/sbin/cl-core --method core_variables_show \
  18. --only-value update.cl_update_rep_name),
  19. # если обновляемый репозиторий от дистрибутива
  20. if echo $native_reps | grep -q ,${repo_name},
  21. then
  22. # отбновить репозиторий через утилиты Calculate
  23. /usr/sbin/cl-core --method update --rep $repo_name --sync-only on --skip-eix-update -T none
  24. else
  25. # выполнить обновление через git
  26. /usr/bin/git $*
  27. fi