Что делать если нужно поставить какую-то 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
Blonde Redhead — группа, которая вошла в мою жизнь с альбомом "23" и он сразу стал для меня значимым. Группа из трёх человек: японка Kazu с её хрупким, пронзительным голосом и два итальянских брата-близнеца Amedeo и Simone, красивых и необычных. Один играет на гитаре, другой на барабанах, а Kazu ещё и на баритон-гитаре, басу и клавишах — настоящие универсалы.
Начинали они в Нью-Йорке с резкого нойз-рока в духе Sonic Youth, первые альбомы выходили на лейбле Smells Like Records (того самого Steve Shelley из Sonic Youth). Потом был переход на Touch and Go, два альбома продюсировал Guy Picciotto из Fugazi и Rites of Spring. А после истории, когда одного из братьев затоптала лошадь, вышел "Misery is a Butterfly" — посвященный этому событию. С тех пор их музыка стала спокойнее, ближе к dream-pop и шугейзу. Эти альбомы сводил Alan Moulder, тот самый, что работала над "Loveless" My Bloody Valentine.
"23" — альбом, который мы с Андреем заслушивали до дыр. Особенно первая песня с её запоминающимся барабан-рисунком — мы даже пробовали что-то похожее делать в своих песнях. Кажется, это было как раз после альбома "Существо». Под большим влиянием и впечатлением находились - я точно.
Последующие альбомы тоже прекрасны, они такие другие, более минималистичные, непривычные по-началу для меня, но полюбившиеся впоследствии. Конкретно альбом ‘23’ есть у меня на виниле, очень близкое мне настроение — светлая грусть, мечтательность, слёзы на глазах от воспоминаний. Не тоска, а именно романтическая печаль, обёрнутая в красивые мелодии. В общем атмосфера, которая не давит, а обволакивает, как и Петербург.
Я даже побывал на их концерте в Москве — редкий случай, когда взял автографы участников. Не любитель автографов, но есть исполнители, автографы которых я бы хотел иметь.
По-детски такая вот меломанская история.
Apple👁️| 👁️Yandex👁️| 👁️YouTube
👁️👁️👁️#Vinyl@dodonovmusic
Уже на днях стартует новый проект барной индустрии от kult.lab - ОТКРЫТИЕ 31.10
Ребята решили распахнуть двери нового заведения DOM KULT в самую магическую ночь осени и ждут вас, обитателей волшебного леса, в эту пятницу вечером!
А без шляпы и посоха могут не пустить,
но могут и пустить,
но лучше конежно в образе приходить 👻
На вечер готовят живую музыку, дидж сет, винил, все дела. Исторический ивент, будет весело!
ИТАК
Дата> пятница 31.10
Время> 20:00 ~ 02:00
Адрес> Асанбай 27/1
_
#vinyl#dj#тусовка
@BishDvizh
Всем привет!
А мы продолжаем радовать вас скидками!
- 25% на весь этно и фолк ассортимент!
Приобретая этно/фолк на пластике, вы получите:
- Неповторимый звук: аналоговый формат записи сохраняет естественность и теплоту звучания, позволяя вам насладиться музыкой в полной мере.
- Оригинальный дизайн: каждая пластинка - это не только звук, но и уникальный дизайн, отражающий стиль и атмосферу исполнителя.
- Коллекционная ценность: виниловые пластинки являются предметами коллекционирования, которые могут стать настоящими сокровищами для любого меломана.
Также в ассортименте представлена музыка из кинофильмов.
Не упустите возможность пополнить свою коллекцию по очень приятным ценам!
#винил#пластинки#vinyl#vinylrecords#buyvinyl
It's been a while since I posted... 🌙
Time to fix that. Today is my day off, which means — no plans, just me and my favorite music. The record player is spinning something warm and familiar
#LunaEverly#ImBack#DayOff#Vinyl#Music#Calm
Летом 2009 года на CD вышел «Коммерческий альбом» Олега Кострова.
В 2025 году его переиздали на виниле.
Публикуем финальный дизайн, а также смотрим рабочие эскизы к оформлению альбома от арт-группы Doping Pong, которые никогда и нигде не публиковались.
Читаем рецензию того лета на популярном сайте нулевых годов: http://www.lookatme.ru/flow/posts/music-radar/71303-novyiy-kommercheskiy-albom-olega-kostrova
Внимание, цитата:
«Альбом из 50 (пятидесяти) искрящихся короткометражек и музыкальных зарисовок упакован в обложку от моих любимых Dopingpong, на которой изображена прекрасная и беспомощная Наталья Варлей, намекая на то, что был-таки BDSM в СССР.»
Конец цитаты.
#dopingpong#vinyl#music#cover#sketch#sovietcinema#varley#kidnappingcaucasianstyle
#музобзор🎶
Диана, Ди 💛 - маленькая хозяйка большого «Дома» ( иф ю ноу уот ай мин ), диджей, продюсер, наш друг, sister from another mister, амбассадор кудрявого метода, умница-красавица и такой наш человек! Да и вообще, все знают Ди, кто хоть как-то знаком с House культурой. А если вдруг, вы всё проспали и не знаете, то гоу заполнять пробелы! Имеем честь представить ) @Dimariposa
В этом выпуске рубрики МузОбзор, Диана настолько попала своим выбором в самое сердце, что не удалось это всё уместить в один выпуск! И я/мы 🤓)) решила продлить и наше и ваше удовольствие, и разделить на три выпуска ( можем себе позволить))🙃
И так,
Diana’S for B-Side part I #enjoy🚀
▶️ Artist : #dankye
▶️ Album : #smallmoments
▶️ Track ID : #actually
#instock#bside#vinyl