Что делать если нужно поставить какую-то 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
🏝️ Tourism tax levy on Bali
The new tourism tax levy, introduced on the 14th of February, 2024, makes it mandatory for all international tourists to pay IDR 150,000 ($9.25) in tourism taxes.
The Bali Tourism Police have been instructed to conduct more spot checks on tourists to catch those who have not paid the tourism tax levy.
Despite the fact that the new tourism tax has already raised $3.9 million, this is only a fraction of what tourism officials should have in the bank by now.
It has been calculated that as much as 60% of tourists haven’t been paying their tourism tax levies.
@BaliNews
#economics#tourism
📈Indonesian economy grows faster than forecasts
📰 Indonesia's GDP growth for 2Q 2024 was 5.05%, exceeding analysts' forecasts, according to the country's statistics agency.
📈 Household consumption remains the main sector of the Indonesian economy with a contribution to overall growth of 55%. Manufacturing and construction sectors are next in terms of volume.
👍 The country's finance minister forecasts GDP growth of more than 5% for the whole of 2024.
@BaliNews
#goodnews#economics
🤑Bali to make a center for family offices in the region
🏝 Investment Minister Luhut has proposed to make Bali an alternative center for wealthy investors, on par with Singapore and Hong Kong, which are setting up family offices to do business.
📈 The minister shared statistics from Singapore, where there is a boom in such offices and added that he is now receiving many requests to set up an investment hub in Bali between Singapore, Hong Kong and Dubai.
🪙 A number of issues remain to be sorted out by the authorities to make this possible. First and foremost is to amend the tax laws or create a special economic zone in Bali. So far all income, including foreign income, such offices will have to declare inside Indonesia and pay taxes on it. This goes against the classical offshore jurisdictions, where such income is not taxed.
#statistics#economics
📈Indonesia's budget for 2025 – which sectors are expected to grow the most
The Indonesian government approved a $230 billion budget for next year. Bloomberg looked at which sectors of the Indonesian economy will benefit from it, and which public companies will show the most growth.
📈The obvious winners of the new budget:
・Food industry
・Healthcare
・Commercial and hotel real estate
・Automotive industry
・Mining
・Green energy
That said, there are also potential losers in the form of large construction companies following a 6% cut in infrastructure spending.
Overall, Indonesia's stock market has performed enviably well when compared to Europe or Asia. For example, the growth over 10 years amounted to 47%.
@BaliNews
#economics#business
💰 BlackRock установили рекорд — под их управлением $11 триллионов. Компания управляет активами, которые превосходят по своей капитализации ВВП Китая, Индии и РФ вместе взятых.
Black Rock - это не просто инвесторы. Это и есть реальная власть, управляющая миром с помощью финансовых инструментов.
BlackRock владеет блокирующим пакетом акций в половине публичных компаний США. У фонда около 10 % акций Coca-Cola и PepsiCo, он является крупнейшим инвестором в Boeing и Airbus, Apple и Microsoft. Также Black Rock владеет акциями конкурирующих горнодобывающих и нефтяных компаний, сталелитейных заводов, автомобильных гигантов и, банков, в том числе всех из так называемой "большой четверки".
Им же принадлежат блокирующие пакеты акций в трех крупнейших фармацевтических компаниях Америки - Pfizer, Johnson & Johnson и Merck.
Есть данные, что под непрямым управлением Black Rock находится порядка 10 % всех финансовых активов мира. Но данные остаются остаются слухами, потому BlackRock владеет от 8 до 18 % акций таких крупнейших медиакомпаний, как CNN, CBS, Fox, Disney, ABC.
#Economics#Окно_Овертона
Emir in India: Whenever Modi has a bilateral visit, Adani’s not far behind
https://www.newslaundry.com/2025/02/19/emir-in-india-whenever-modi-has-a-bilateral-visit-adanis-not-far-behind
https://archive.vn/fyWKK
#geopolitics#economics#india
🌍 The world’s largest diamond trading hub is not near a mine but in Antwerp, Belgium. Over 80% of all rough diamonds pass through this city, shaping global trade far from their origin. ✨
#economics⚡#trade⚡#cities⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography
👉more Channels