TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #210 · 3 фев.

Что делать если нужно поставить какую-то 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

Резултати

Пронајдени 2 слични објави

Пребарај: #civiltà

当前筛选 #civiltà清除筛选
Savino Balzano

@savinobalzano · Post #903 · 20.02.2025 г., 08:52

https://x.com/SavinoBalzano/status/1892496345014968599?t=e-DR9Kiq2eLISEbp0BcZXg&s=19 Non c'è nulla di sconvolgente nelle parole di #Trump su #Zelensky. Lo stupore è frutto del lavaggio del cervello, della propaganda, delle follie che si sono dette e scritte in questi drammatici anni di #guerra sulle spalle di tanta povera gente. La sorpresa è in quelli che davvero pensavano fosse una guerra di #civiltà, una guerra per la #libertà, per la #democrazia: babbei. Che poi, come ho avuto modo di scrivere decine di volte nel mio piccolo, era una narrazione pericolosissima: si, insomma, se in gioco erano valori tanto alti, se l'avversario era davvero un nuovo #Hitler, forse non stavamo facendo abbastanza, forse davvero era necessario lasciare che deflagrasse un conflitto mondiale. A causa di un manipolo di fanatici, ci siamo andati molto molto vicini. Le ragioni del conflitto erano decisamente meno nobili e, semplicemente, esse non sono più coerenti con gli obiettivi statunitensi. Punto. #DonaldTrump ha detto la verità: il presidente ucraino è davvero un comico ed è vero che l'#Ucraina non è una democrazia, com'è vero che il suo leader è una figura mediocre. Cosa c'è di falso in queste parole? Qualche babbeo ritiene che #Biden la vedesse diversamente? che i democratici #Usa ritenessero davvero di volersi immolare per l'eroismo di #VolodymyrZelensky? Dipingerlo come il nuovo eroe mondiale era semplicemente funzionale al perdurare della guerra. Le redini sono sempre state negli #USA: non abbiamo mai avuto voce in capitolo in questo conflitto. Non ce l'ha mai avuta l'#UE, non ce l'ha mai avuta #VonDerLeyen, mai #Kallas (di cui #DonaldTrump certamente non conosce nemmeno l'esistenza), mai il despota francese #Macron o il triste cancellierino tedesco #Scholz. Nessuno di loro ha mai contato nulla: #JoeBiden chiamava (o, meglio, era un amministratore di sostegno a farlo) e loro eseguivano. Punto. Cosa è cambiato? non è difficile da comprendere: chi contava prima voleva la guerra alla #Russia; chi conta adesso non vuole la guerra a #Putin. Tutto il resto è propaganda, è lavaggio del cervello, fesserie: come quelle che ci raccontavano di Putin gravemente ammalato o già morto, delle opposizioni che stavano per rovesciarlo, del suo esercito che lottava con le pale (con tanto di fotografia della vanga, che vergogna!), dell'eroica e vittoriosa resistenza ucraina, della loro controffensiva. Tutte palle. C'è stato solo un intoppo: gli utili idioti di questi anni vorrebbero salvare la faccia e Trump è stato piuttosto repentino nel mettere a nudo la loro irrilevanza, palesando subito i nuovi obiettivi statunitensi. Quegli obiettivi, però, non sono in discussione e dunque chiunque si metta di traverso viene travolto. Si tenta disperatamente di far passare Trump per traditore, ma è lo sciocco racconto dei nostri giornali e di qualche direttore di telegiornale inconsolabile: ve lo siete dimenticato di quando Biden e #BorisJohnson costrinsero l'#Ucraina a continuare la guerra mentre quelli pensavano di avviare una trattativa? in quelle circostanze, che considerazione si nutriva del volere di Zelensky, della visione del popolo ucraino? nessuna. Poi c'è una terza categoria di disperati in stato catatonico, di cui probabilmente parleremo a breve, ed è rappresentata dai quelli che per anni si sono sbracciati per la #pace, per la fine del conflitto, denunciando gli orrori che si consumavano: bene, questi improvvisamente hanno dimenticato tutte le priorità che li costringevano all'insonnia e hanno scoperto in Trump il loro nemico pubblico numero 1: sono i peggiori.

Yukiokhruner

@yukiokhruner · Post #52 · 01.08.2022 г., 10:04

L'esigenza spontanea di uno spazio sacro sembra essere venuta meno nell'ultima forma della nostra civiltà #vaporonda#vaporwave#vapourwave#vaporart#seapunk#webpunk#glitch#glitchart#glitchartistscollective#chillwave#aesthetic#vaporwaveaesthetic#vaporwaveaesthetics#malinconia#melancholy#civiltà#civilization#egemonia#hegemony#sacro#sacred#suora#nun