Что делать если нужно поставить какую-то Python-библиотеку а root-прав нет? То есть в систему библиотеку никак и ничего не поставить.
Есть как минимум два способа это решить правильно!
🔸 Сделать виртуальное окружение и ставить там что угодно.
Это позволит создать полностью независимое исполняемое окружение для ваших приложений.
Все библиотеки будут храниться в домашней директории юзера а значит доступ на запись имеется.
Создать очень просто:
python3 -m venv ~/venvs/myenvname
Теперь активируем окружение
# Linux
source ~/venvs/myenvname/bin/activate
# Windows
%userprofile%\venvs\myenvname\Scripts\activate.bat
Можно ставить любые библиотеки и запускать приложение.
Это стандартный метод работы с любым проектом. Если еще не используете его, то пора начинать. Даже при наличии root доступа!
🔸 Бывает, что нет возможности запустить приложение из своего виртуального окружения. Например, его запускает какой-то сервис от вашего юзера и вставить активацию окружения вы не можете.
В этом случае можно установить библиотеки для Python не глобально в систему, а только для юзера.
Выполните этот код в консоли:
python3 -m site
Вы получите что-то такое:
sys.path = [
'/home/user',
'/usr/lib/python37.zip',
'/usr/lib/python3.7',
'/usr/lib/python3.7/lib-dynload',
'/home/user/.local/lib/python3.7/site-packages',
...
]
USER_BASE: '/home/user/.local'
USER_SITE: '/home/user/.local/lib/python3.7/site-packages'
ENABLE_USER_SITE: True
Нас интересует параметр USER_SITE. Это путь к пользовательским библиотекам, которые доступны по умолчанию, если они есть.
Именно сюда будут устанавливаться модули если добавить флаг --user при установке чего-либо через pip
pip install --user requests
Для этой команды не нужны root-права.
После неё можно запускать системный интерпретатор без виртуальных окружений и установленная библиотека будет доступна для текущего юзера.
Параметр USER_BASE показывает корневую директорию для хранения user-библиотек. Её можно изменить с помощью переменной окружения PYTHONUSERBASE
export PYTHONUSERBASE=~/pylibs
python3 -m site
...
USER_BASE: '/home/user/pylibs'
USER_SITE: '/home/user/pylibs/lib/python3.7/site-packages'
Получается некоторое подобие виртуального окружения для бедных 😁 которое можно менять через эту переменную (не делайте так!Лучше venv!)
🔸 Дописывание пути в PYTHONPATH
Этот способ не входит в список "двух правильных", но тоже рабочий. Здесь придётся сделать всё несколько сложней.
Сначала ставим библиотеку в любое место указывая путь установки
pip3 install -t ~/mylibs modulename
Библиотека установится без привязки к какому-либо интерпретатору. То есть по умолчанию не будет видна. Теперь в нужный момент добавляем этот путь в sys.path или в PYTHONPATH.
Не буду советовать так делать. Единственный раз когда этот способ мне пригодился и решил поставленную задачу, это при создании общей библиотеки для кластера компьютеров.
Модули лежат в сети и подгружаются для всех из одного и того же места. То есть обновлять файлы требуется только один раз а не на всех хосты отдельно.
Минусы такого подхода:
▫️Нужно всем хостам пробить нужный путь в .bashrc или ещё куда-то чтобы он сетапился на старте.
▫️Чем больше хостов тем больше нагрузка на сеть. Иногда такой способ не подходит именно по этой причине. Тогда Ansible вам в помощь.
▫️Не очень подходит если хосты с разными операционками. Некоторые библиотеки различаются для Linux и Windows (там, где есть бинарники) и приходится мудрить более сложные схемы.
#tricks#basic
Postrigay Gallery представила новую выставку работ художников-шестидесятников «Хрупкость вне времени».
«СУЩЕСТВУЕТ КРАСОТА НАСТОЛЬКО ХРУПКАЯ, НЕОПРЕДЕЛИМАЯ, ЭФЕМЕРНАЯ, ЧТО ОБЯЗАТЕЛЬНО ДОЛЖНА БЫТЬ ЗАКЛЮЧЕНА В ЖЕСТКУЮ РАМУ В ПРЯМОМ И ПЕРЕНОСНОМ СМЫСЛЕ - РАМУ ФОРМЫ, ИНАЧЕ ОНА УСКОЛЬЗНЕТ И ИСПАРИТСЯ, КАК ДРАГОЦЕННЫЕ ДУХИ ИЗ НЕЗАКРЫТОГО ФЛАКОНА» — Дмитрий Краснопевцев.
Магистральной идеей проекта становится то, что невзирая на сложный временной период смысл останется один — стремление художников создавать и выходить за рамки окружающей реальности даже в условиях неопределенности, держа фокус на том, что близко сердцу.
🗓️ 14 ноября - 01 февраля
⛳️ Cube.Moscow, ул. Тверская, 3
(здание отеля The Carlton, Moscow, – 2 этаж)
#галереялично#lichnogallery
#postrigaygallery#были_лично
Интересно, как сегодня художники переосмысляют связь человека и природы.
На выставке Postrigay gallery«Сад света» Маши Даниловской меня привлекло то, как она работает с границами. В ее живописи и керамике птицы и звери буквально растворяются в среде.
Концепция строится вокруг гипотезы Геи (Земля как единый организм), но без излишней дидактики. Особое впечатление оставляет серия «Острова». С одной стороны — это архетип потерянного рая, хрупкого и самодостаточного, с другой автор уходит от географии в чистую абстракцию, превращая остров в метафору внутреннего состояния.
Удивительной легкости и текучести первоначального рисунка на холсте Мария добивается создавая графику чернилами, переводя ее в цифровой коллаж и только затем она пишет маслом!
🗓️ до 24 мая
⛳️ул. Тверская, 3, -2 этаж
#были_лично#postrigaygallery
#машаданиловская#садсвета
Большой ивент прошел на прошедшей неделе в masters.
Postrigay gallery открыли новую выставку резидента галереи Анны Дёминой«Растворится в закате пение птиц». Абстрактные пейзажи будто погружают в другой мир, описывая переживания, связанные с соприкосновением природы.
Эмоционально, проникновенно!
🗓️ 22 октября - 16 декабря
⛳️ masters, Малый Патриарший пер, 5с1
#были_лично#аннадемина
#masters#postrigaygallery
Пропустили вчера открытие в Postrigay Gallery, где представили персональную выставку Надежды Ягофаровой «Зеркало дней».
Но вам от души рекомендуем, в экспозиции собраны сочные натюрморты и объекты, созданные художницей с 2020 года по настоящее время. Такие проекты помогают найти в повседневности что-то особенное, стоит просто остановиться.
🗓️ 20 февраля - 27 марта
⛳️Cube.Moscow, ул. Тверская, 3
#postrigaygallery#cubemoscow
#надеждаягофарова#зеркалодней
Так, с биографией Зубарева разобрались, теперь о главном — его теории времени. Художник видел время как живое пространство и выделял целых шесть его видов:
✔️Плоское время. Здесь всё повторяется в чётком ритме, создавая ощущение бесконечного калейдоскопа. То самое избыточное время.
✔️Изогнутое время. Пространство искривлено — реальность живёт по иным законам. Здесь совмещены разные координаты: временные, пространственные и эмоциональные. Некое искаженное время.
✔️Разорванное время. Время распадается на части, а участники событий существуют в разных ритмах. Картина становится визуальной метафорой разорванного времени.
✔️Реликтовое время. Это «протовремя» — холодное и безвоздушное. Оно просто присутствует, не участвуя в событиях, подобно поверхности древнего зеркала. Время до человека.
✔️Фактическое время. Самое человеческое из всех — настоящее, конкретное. Это время жизни, дыхания, того самого «здесь и сейчас».
✔️Световое время. Автономное время будущего, где остаётся только энергия и свет. Картина становится источником свечения, а время существует как чистая энергия.
P.S. Зубарев не просто рисовал — он создал целую философскую систему в красках. Теперь осталось определить, какое время вы чувствуете в своей жизни?!
#были_лично#postrigaygallery
#владиславзубарев#cubemoscow#раскрываявремя
Открываем для вас еще одного художника из плеяды нонконформистов. Вчера в Postrigay Gallery представили новую выставку — «Раскрывая время. Владислав Зубарев».
Этот художник был настоящим «арт-Штирлицем» — днем работал инженером, а ночью создавал смелое искусство. Участник знаменитой выставки в Манеже 1962 года, которую раскритиковал Хрущев, Зубарев прошел путь от студии «Новая реальность» до собственных экспериментов со временем. Его метод прост и гениален: он доверял интуиции, пытаясь сделать время видимым и осязаемым. Владислав не просто рисовал, а буквально «останавливал мгновение», что звучало бы безумно, если бы не было так здорово.
Так что эта выставка — отличный шанс открыть для себя имя, которое долго оставалось в тени, но точно заслуживает вашего внимания!
🗓️ до 21 января
⛳️ ул. Тверская, 3, -2 этаж
#были_лично#postrigaygallery
#владиславзубарев#cubemoscow#раскрываявремя
Вчера посвятили вечер Cube.Moscow, где галерея Postrigay провела открытие персональной выставки Кати Медведевой под названием«Таинство». Несмотря на почтенный возраст, 88-летняя художница лично присутствовала на вернисаже, что не может не вызывать восхищения и уважения к её преданности искусству.
Как отмечал Марк Шагал: «Катя Медведева — это чисто русский талант, она так же любит цвет, как и я». Живопись стала для художницы способом отстраниться от повседневных забот и возвыситься над ними. В своих работах Медведева преобразует непростые жизненные обстоятельства и личные трагедии в чистоту и свет — это и есть то самое «Таинство», к которому стремится автор.
Стоит заметить, что в начале весны в Cube.Moscow состоялось открытие 14-ти новых проектов. Для тех, кто еще не успел побывать — добавляем еще один повод к посещению арт-пространства.
🗓️ 1 апреля - 15 июня
⛳️ ул. Тверская, 3 (-2 этаж)
#были_лично#postrigaygallery
#катямедведева#таинство
#cubemoscow