The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Как обмануть apt?"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Системное и пользовательское ПО)
Изначальное сообщение [ Отслеживать ]

"Как обмануть apt?"  +/
Сообщение от Русский рэп (?), 01-Май-20, 05:54 
Здравствуйте

Предыстория.
В репах убунты по умолчанию древняя версия nodejs. К счастью, есть сторонний резозиторий nodesource. Беда в том, что лентяи из nodesource сделали жесткую привязку ихней ноды ко второму питону

Обойти привязку вроде бы несложно: скачать deb-пакет, и установить командой
sudo dpkg --force-all -i nodejs_14.1.0-1nodesource1_amd64.deb

Беда в том, что после такого лайфхака ничего более установить не получится. Утилита apt завершается с ошибкой:
Unmet dependencies. Try 'apt --fix-broken install' with no packages

А если скомандовать этот самый 'apt --fix-broken install', то установится ненужный python2

Подскажите, как поставить пакет nodesource без зависимостей и не вызвать гнева apt? или иной выходи из ситуации

Ссылка на устанавливаемый deb-пакет: https://deb.nodesource.com/node_14.x/pool/main/n/nodejs/

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Как обмануть apt?"  +/
Сообщение от bootforce (?), 01-Май-20, 06:12 
1) А зачем?

2) Сделать фейковый пакет, который "Provides: python2" и поставить его перед установкой ноды

Ответить | Правка | Наверх | Cообщить модератору

2. "Как обмануть apt?"  +/
Сообщение от Русский рэп (?), 01-Май-20, 08:32 
> 1) А зачем?

Присутствие второго питона в системе вызывает неприятные эмоции )

> 2) Сделать фейковый пакет, который "Provides: python2" и поставить его перед установкой
> ноды

Как вариант. Или подправить зависимости в этом пакете. Но может есть способ без колдовства с файлами. Команда какая-нибудь

Ответить | Правка | Наверх | Cообщить модератору

3. "Как обмануть apt?"  +/
Сообщение от bootforce (?), 01-Май-20, 10:35 
>> 1) А зачем?
> Присутствие второго питона в системе вызывает неприятные эмоции )

Имхо, система с поломанными зависимостями -- больший повод для беспокойства

Ответить | Правка | Наверх | Cообщить модератору

4. "Как обмануть apt?"  +1 +/
Сообщение от Аноним (4), 01-Май-20, 11:20 

> Присутствие второго питона в системе вызывает неприятные эмоции )

это при том, что ты ноду ставишь

1. какая разница, что будет питон?
2. не ломай apt

можно еще попробовать тупо распаковать пакет, тогда apt ничего о нем знать не будет и, соответственно, не будет ругаться. Только потом не удивляйся.

Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

8. "Как обмануть apt?"  +1 +/
Сообщение от Аноним (8), 02-Май-20, 11:06 
> Присутствие второго питона в системе вызывает неприятные эмоции )

NodeJS вызывает еще бОльшие неприятные эмоции

Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

5. "Как обмануть apt?"  +/
Сообщение от Аноним (5), 01-Май-20, 12:28 
Единственно верное решение - собрать ноду нужной вам версии самостоятельно. Опционально убрать в пакет, автоматизировать пересборку на актуальную версию с перепакетированием, локальный репозиторий, вот это всё.
Но первое движение - make && make install
Ответить | Правка | Наверх | Cообщить модератору

6. "Как обмануть apt?"  +/
Сообщение от Аноним (4), 01-Май-20, 12:53 
> Единственно верное решение
> make install

как из убунты сделать слаку?

Ответить | Правка | Наверх | Cообщить модератору

7. "Как обмануть apt?"  +/
Сообщение от муу (?), 01-Май-20, 15:41 
> Единственно верное решение - собрать ноду нужной вам версии самостоятельно. Опционально
> убрать в пакет, автоматизировать пересборку на актуальную версию с перепакетированием,
> локальный репозиторий, вот это всё.
> Но первое движение - make && make install

ноде <13 нужен питон _2_ для сборки, ибо это гмо использует gypi

Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

11. "Как обмануть apt?"  +/
Сообщение от Аноним (5), 03-Май-20, 02:20 
Собирайте 14. В любом случае подход "сделай сам" лучше, чем подсесть на чужую сборку, а потом мантейнер ее дропнет или накосячит с ней.
Ответить | Правка | Наверх | Cообщить модератору

9. "Как обмануть apt?"  +/
Сообщение от 1 (??), 02-Май-20, 17:57 
Если ставить из snap то там 15.0.0-nightly20200501e9518254
Ответить | Правка | Наверх | Cообщить модератору

10. "Как обмануть apt?"  +/
Сообщение от 1 (??), 02-Май-20, 18:03 
ну там похоже можно и из stable установить -- 14/stable: 14.1.0

Ответить | Правка | Наверх | Cообщить модератору

12. "Как обмануть apt?"  +/
Сообщение от And (??), 04-Май-20, 18:33 
Вроде, нужно дописать знак минус в конце имени ненужного пакета:
https://serverfault.com/questions/250224/how-do-i-get-apt-ge...

Запомнит ли Апт это - не знаю. Но, система пакетирования специально придумана и сделана чтобы таких вещей с зависимотями не делалось.

Но - большое достоинство этого мира - оставлена возможность сделать лучше других. :)

Ответить | Правка | Наверх | Cообщить модератору

13. "Как обмануть apt?"  +/
Сообщение от BrainFucker (ok), 01-Авг-20, 14:25 
А зачем именно apt? None есть на официальном сайте портабельно собранный, просто распаковывается куда нибудь в /opt/nodejs и используется без всяких этих dependency hell.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2020 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру