Что делать если нужно поставить какую-то 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
今天是柴可夫斯基的生日~分享一首他的Variations on a Rococo Theme,版本是1990年列宁格勒举办的柴可夫斯基150年诞辰音乐会中马友友的演奏~
#tchaikovsky#cello
https://www.youtube.com/watch?v=UxuX96bjOjE
整场Tchaikovsky 150 Birthday Gala in Leningrad可以移步:https://www.youtube.com/watch?v=7qiDSyICy3o
ref:
1. 作品介绍:http://en.tchaikovsky-research.net/pages/Variations_on_a_Rococo_Theme
不知道各位怎么样,最近因为一些众所周知的原因鄙人觉得有点难以静下心来好好做事,今天分享一首Schumann的Five Pieces in Folk Style吧,用优美的大提琴平复一下~大家周一愉快~❤️💪
#schumann#cello
https://m.youtube.com/watch?v=i4dmlC2Ewz8
周五晚上来听点soothing的音乐吧~最近在听王健和古典吉它手Göran Söllscher的一张专辑,很喜欢里面这首Fauré的Après un rêve (After a dream),祝大家早安,午安,晚安~~
https://m.youtube.com/watch?v=iPSeGbUSS2I#cello#guitar#Faure
Fran & Flora — Precious Collection (Hidden Notes Records, 2024)
#yiddish#ambient#cello#klezmer#violin#poik#United_Kingdom
Precious Collection — второй альбом струнного дуэта Fran & Flora, в состав которого входят виолончелистка Франческа Тер-Берг и скрипачка Флора Керзон. В основе альбома лежит преимущественно клезмер, но сами музыкантки отмечают, что черпали вдохновение и в других традициях Восточной Европы. В записи также отразилось влияние фри-джаза, современной академической музыки, эмбиента и дрона.
Любовь дуэта к архивным записям и старинным рукописям прослеживается в разнообразии материала. Например, песня Feygele — это известная среди русских евреев песня «Сапожечки», а Flowers for Innocence основанна на трансильванском Gyöngyvirágos.
Среди других традиционных композиций — бурлящая энергией греческая народная мелодия Kick Up In 9 и мрачная Yikhes, где скрипка звучит как далекий тревожный вой сирены. В композиции Nudity, на фоне скрипки, задающей румынско-еврейский ритм 6/8 «сирба», звучит высокий скрипичный гул и пение в стиле Мередит Монк.
В некоторых треках слышится влияние инди-музыки. Например, бессловесные гармонии в Nign и Hold Me Close напоминают вокальные приемы Blonde Redhead иStealing Sheep. Возможно, в контексте современных музыкальных инструментов это и звучало бы эклектично, но в традиционной аранжировке такие элементы органично вплетаются в общее звучание. Они не приближают Fran & Flora к альтернативной сцене, а скорее показывают, что ростки фольклора продолжают пробиваться даже сквозь самые самобытные образцы современной музыки.
🔗 AppleMusic | Spotify | YouTube | Deezer | TIDAL | Bandcamp
The National Choir of Turkish Classical Music — Turkish Classical Music: Tribute to Yunus Emre (Unesco Collection, 1991)
#traditional#ottoman_сlassical#kemenche#kanun#tanbur#ney#oud#violin#cello#Turkey
С XIX века турецкие композиторы стали использовать западную нотную систему для фиксации придворной музыки Османской империи. До этого произведения не записывались, а передавались из уст в уста. В результате значительная часть репертуара оказалась утрачена. Так, до наших дней дошло лишь около тридцати произведений Абдулкадира Мараги, композитора и музыковеда XIV века.
Эта запись Национального хора турецкой классической музыки представляет сохранившиеся произведения 13 поэтов и композиторов Турции. Среди них — Абдулкадир Мераги (1353-1435), Хафиз Пост (1630-1694), Гази Гирей Хан II (1554-1608), Эйюби Эбубекир Ага (1685-1759), Бухуризаде Мустафа Итри (1640-1712), Таби Мустафа Эфенди (1705-1770), Хаджи Садуллах Ага (1760-1808), Дилхаят Калфа (XVIII век), Мехмет Ага младший (конец XVIII века), Султан Селим III (1761-1808), Хаммамизаде Исмаил Деде Эфенди (1778-1846) и Мустафа Чавуш. Работы композиторов на альбоме расположены именно в таком порядке, хотя и не указаны в названиях композиций.
Помимо прочего, альбом был выпущен к 750-летию со дня рождения поэта Юнуса Эмре (1238–1320). Для османской литературы он был тем же, кем Данте был для итальянской: поэтом, преобразившим духовный опыт и язык народа в основу будущей литературы.
🔗Spotify | AppleMusic | Telegram
Fawzi Al-Aiedy — Amina (Arc En Ciel, 1981)
#nursery_rhymes#oud#cello#darbouka#naqqarate#bendir#tambour#zarb#guitar#Iraq#Algeria#Tunisia#Palestine#Morocco#France
Amina — это сборник детских песен в исполнении иракского певца и удиста Фаузи Аль-Айеди. Большинство из них — традиционные и происходят из Палестины, Марокко, Алжира, Туниса и Ирака. Но одна песня принадлежит перу ливанского поэта XX века Джебрана Халиля Джебрана, а ещё две написаны коллегой Аль-Айеди, французом Ги Жаке.
Фаузи Аль-Айеди родился и вырос в Ираке, а в 1971 году переехал во Францию. Он изучал музыку в обеих странах, и это, в общем-то, хорошо слышно на этом альбоме. Хотя записи в целом выдержаны в традиции арабского макама, время от времени в них всплывают неожиданные элементы: то гобои, напоминающие французское барокко, то виолончель, чья партия пародирует звук разгоняющегося автомобиля. Музыка альбома щедра на такие мелкие музыкальные шутки. Манера пения Аль-Айеди тоже особенная. Она напоминает стиль детских песен 1970-х, как будто слегка заигрывает со слушающим эту музыку ребёнком.
С 1977 по 1985 год Аль-Айеди вместе с актёром Ги Жаке и каллиграфом Хасаном Массуди работал над спектаклем L’Arabesque à voir et à entendre, который объединял поэзию, каллиграфию и арабские песни. Вероятно, альбом отчасти вырос из этого сотрудничества. Ги Жаке написал две песни, а Хасан Массуди сделал каллиграфическое оформление либретто.
🔗Telegram
Diana Di L'alba – Diana Di L'alba (Ricordu, 1980)
#corsican#traditional#сharango#cetara#mandolin#mandocello#violin#cello#urganettu#chalumeau#contrabass#cialamedda#pivana#riberbula#France
Diana di l'Alba — группа из корсиканского города Бастиа. Группа была основана в 1978 году и с тех пор исполняет традиционные корсиканские песни на корсиканском языке, диалекте итальянского. Песни сопровождает оркестр народных инструментов, среди которых различные флейты и струнные, диатонический аккордеон, мандолина, чаранго, мандочелло и даже некоторое подобие варгана — рибербула. Группа пережила множество смен состава, но до сих пор существует. Последний альбом вышел в 2018 году.
На стриммингах альбом вышел вторым диском в рамках сборника Diana Di L'alba.
🔗Spotify | AppleMusic