Настройка централизованного хранилища библиотеки Юлии - PullRequest
4 голосов
/ 17 апреля 2020

Я хотел бы понять, есть ли способ для всех пользователей использовать установленные библиотеки Julia? Например, могут ли библиотеки быть установлены с помощью sudoer, чтобы он был доступен для всех других пользователей? В противном случае каждый пользователь должен установить свой собственный набор библиотек, которые являются общими для него, и если все пользователи устанавливают все библиотеки, это становится утомительным и занимает хранилище.

Если кто-то попробовал, пожалуйста, заполните. Этот вопрос относится только к Linux.

1 Ответ

3 голосов
/ 18 апреля 2020

Скорее всего, это должно работать:

  1. определить JULIA_DEPOT_PATH переменная окружения, указывающая на некоторую папку, где sudoer имеет доступ на запись, а все остальные читают

  2. Запустите Julia и установите необходимые пакеты (все они будут заканчиваться указанным выше путем).

  3. Прекомпилируйте все пакеты: using Pkg;pkg"precompile"

  4. Некоторые пакеты с зависимостями PyCall устанавливают модули conda - установите их все, используя Conda.add в качестве sudoer

  5. Убедитесь, что каждый пользователь видит хранилище по тому же пути, что и sudoer (к сожалению, некоторые пакеты устанавливают фиксированные пути при сборке).

Вышеуказанное должно работать при условии, что каждый пользователь установки Julia работает на одинаковом оборудовании.

Кроме того, подумайте о том, чтобы каждый пользователь запускал свой сеанс Julia в своей виртуальной среде using Pkg;Pkg.activate("somefolder"). Они смогут использовать только пакеты, определенные sudoer.
...