[freebsd] Цей дивний pkg manager
Hi! Хотів запитати про дивну поведінку pkg (може це не вона дивна, може це я?). Обновив систему з 13 на 14. Треба обновити пакети, що стоять на системі. Ну "pkg update" після чого "pkg upgrade dovecot" (були проблеми саме з цим пакетом, хотів почати з нього). І тут мені pkg говорить "ну я тут знесу exim, postgresql server, mysql server і ще щось тут "по мєлочам". Добре, що воно питає, чи я таки хочу це робити. Будь яка спроба проапгрейдити якийсь один пакет приводила до повідомлення, що він мені що-небудь знесе. Залежності від оновлюваних пакетів ніякої -- при спробі оновити apache24 він погрожував знести bash і bind (крім списку пакетів з менш очевидною залежністю). Вирішилося це командою pkg upgrade без аргументів. Тобто коли апгрейд всього, то да, тут він згодився, що нічого зносити не буде, а оці пакети оновить, а ці перевстановить. Чесно кажучи, мене така поведінка "дещо здивувала". "По зрєлом размишлєніі" я підозрюю, що при оновленні якихось конкретних пакетів, оновлюються пакети, від яких залежать інші пакети, і pkg не знаходить нічого краще, ніж просто їх знести, бо інакше буде погано з залежностями. При наявності досить великої кількості пакетів на сервері, лочити їх -- варіант досить незручний. Чи є якийсь варіант сказати pkg не видаляти пакети при апгрейді, крім лочки конкретних пакетів? -- tasic@ ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd
Re: [freebsd] Цей дивний pkg manager
hi, Mon, Jul 08, 2024 at 10:18:46, tasic wrote about "[freebsd] Цей дивний pkg manager": > Хотів запитати про дивну поведінку pkg (може це не вона дивна, може це я?). > Обновив систему з 13 на 14. Треба обновити пакети, що стоять на системі. Ну > "pkg update" після чого "pkg upgrade dovecot" (були проблеми саме з цим > пакетом, хотів почати з нього). І тут мені pkg говорить "ну я тут знесу > exim, postgresql server, mysql server і ще щось тут "по мєлочам". Добре, що > воно питає, чи я таки хочу це робити. Будь яка спроба проапгрейдити якийсь > один пакет приводила до повідомлення, що він мені що-небудь знесе. А оно говорит, что при этом ставит взамен? Может, там есть такие же мыскули и постгресы, но название пакета чем-то отличается - или версиями, или стилями сборки? Или перегруппирована другим образом большая база по мелким пакетам? Я в таком случае сохраняю старый список пакетов, даю ему снести что хочет и затем по списку добавляю нужные обратно, если он сам не вернул. Есть шанс, что сам вернёт. (В списке надо оставить или те, у которых нет признака автоустановки по зависимости, или ты твёрдо уверен, что понадобится явно.) Или вообще все пакеты сносил, а потом по списку ставил обратно по названиям. При этом можно ещё /usr/local/ проверить на мусор. > Залежності від оновлюваних пакетів ніякої -- при спробі оновити apache24 він > погрожував знести bash і bind (крім списку пакетів з менш очевидною > залежністю). Вирішилося це командою pkg upgrade без аргументів. Тобто коли > апгрейд всього, то да, тут він згодився, що нічого зносити не буде, а оці > пакети оновить, а ці перевстановить. > > Чесно кажучи, мене така поведінка "дещо здивувала". "По зрєлом размишлєніі" > я підозрюю, що при оновленні якихось конкретних пакетів, оновлюються пакети, > від яких залежать інші пакети, і pkg не знаходить нічого краще, ніж просто > їх знести, бо інакше буде погано з залежностями. При наявності досить > великої кількості пакетів на сервері, лочити їх -- варіант досить незручний. > Чи є якийсь варіант сказати pkg не видаляти пакети при апгрейді, крім лочки > конкретних пакетів? Лочка вредна, могут пойти расхождения по зависимостям. Лучше таки дать ему доработать чего хочет и доустановить вручную что тебе нужно именно из твоих задач. -netch- ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd
Re: [freebsd] Цей дивний pkg manager
08.07.2024 18:09, Valentin Nechayev: hi, Mon, Jul 08, 2024 at 10:18:46, tasic wrote about "[freebsd] Цей дивний pkg manager": Хотів запитати про дивну поведінку pkg (може це не вона дивна, може це я?). Обновив систему з 13 на 14. Треба обновити пакети, що стоять на системі. Ну "pkg update" після чого "pkg upgrade dovecot" (були проблеми саме з цим пакетом, хотів почати з нього). І тут мені pkg говорить "ну я тут знесу exim, postgresql server, mysql server і ще щось тут "по мєлочам". Добре, що воно питає, чи я таки хочу це робити. Будь яка спроба проапгрейдити якийсь один пакет приводила до повідомлення, що він мені що-небудь знесе. А оно говорит, что при этом ставит взамен? Может, там есть такие же мыскули и постгресы, но название пакета чем-то отличается - или версиями, или стилями сборки? Или перегруппирована другим образом большая база по мелким пакетам? Ні, нічого взамін ставити вона не збирається. Вона показує три групи пакетів 1. будуть видалені 2. будуть оновлені 3. будуть перевстановлені на pkg uograde без аргументів 1-й пункт не показується Я в таком случае сохраняю старый список пакетов, даю ему снести что хочет и затем по списку добавляю нужные обратно, если он сам не вернул. Есть шанс, что сам вернёт. (В списке надо оставить или те, у которых нет признака автоустановки по зависимости, или ты твёрдо уверен, что понадобится явно.) Или вообще все пакеты сносил, а потом по списку ставил обратно по названиям. При этом можно ещё /usr/local/ проверить на мусор. Є декілька пакетів, про які я знаю, що я їх ставив і навіщо вони на машині. Звичайно, набагато більше тягнеться залежностями. В принципі pkg autoremove підтримує здоровий рівень сміття на машині. Залежності від оновлюваних пакетів ніякої -- при спробі оновити apache24 він погрожував знести bash і bind (крім списку пакетів з менш очевидною залежністю). Вирішилося це командою pkg upgrade без аргументів. Тобто коли апгрейд всього, то да, тут він згодився, що нічого зносити не буде, а оці пакети оновить, а ці перевстановить. Чесно кажучи, мене така поведінка "дещо здивувала". "По зрєлом размишлєніі" я підозрюю, що при оновленні якихось конкретних пакетів, оновлюються пакети, від яких залежать інші пакети, і pkg не знаходить нічого краще, ніж просто їх знести, бо інакше буде погано з залежностями. При наявності досить великої кількості пакетів на сервері, лочити їх -- варіант досить незручний. Чи є якийсь варіант сказати pkg не видаляти пакети при апгрейді, крім лочки конкретних пакетів? Лочка вредна, могут пойти расхождения по зависимостям. Лучше таки дать ему доработать чего хочет и доустановить вручную что тебе нужно именно из твоих задач. -netch- -- tasic@ ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd
Re: [freebsd] Цей дивний pkg manager
08.07.2024 14:18, Taras Heichenko пишет: > Hi! > > Хотів запитати про дивну поведінку pkg (може це не вона дивна, може це я?). > Обновив систему з 13 на 14. Треба обновити пакети, що стоять на системі. Ну > "pkg update" після чого "pkg upgrade dovecot" (були проблеми саме з цим > пакетом, хотів почати з нього). І тут мені pkg говорить "ну я тут знесу exim, > postgresql server, mysql server і ще щось тут "по мєлочам". Добре, що воно > питає, чи я таки хочу це робити. Будь яка спроба проапгрейдити якийсь один > пакет приводила до повідомлення, що він мені що-небудь знесе. Залежності від > оновлюваних пакетів ніякої -- при спробі оновити apache24 він погрожував > знести bash і bind (крім списку пакетів з менш очевидною залежністю). > Вирішилося це командою pkg upgrade без аргументів. Тобто коли апгрейд всього, > то да, тут він згодився, що нічого зносити не буде, а оці пакети оновить, а > ці перевстановить. > > Чесно кажучи, мене така поведінка "дещо здивувала". Если ты живешь с пакетами из официального репозитория, так и должно быть. Так и задумано. У тебя тогда нет свободы выбора - кушай, что дают. Техническая причина этого в следующем: dovecot наверняка зависит от кучи библиотек, которые тоже отдельные пакеты. Пакет dovecot в официальном репозитории собран с *конкретными* версиями библиотек и лочить эти версии, заставляя этот пакет работать с другими версиями библиотек - напрашиваться на креши dovecot. Поэтому pkg будет настаивать на том, чтобы удалить старые версии библиотек и поставить новые ради обновления dovecot. Проблема в том, что от старых версий библиотек могут зависеть (и часто зависят) многие другие пакеты. И если сносить старые либы, придется сносить (или обновлять) и зависящие от них совсем другие пакеты. Решение этой проблемы либо использование пудры для создания собственного репозитория пакетов с нужными тебе версиями, либо сборка из портов. Порту относительно всё равно, какая версия библиотек у тебя стоит, лишь бы совместимая. pkg настаивает на абсолютном совпадении версий. ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd
Re: [freebsd] Цей дивний pkg manager
09.07.2024 5:54, Eugene Grosbein: 08.07.2024 14:18, Taras Heichenko пишет: Hi! Хотів запитати про дивну поведінку pkg (може це не вона дивна, може це я?). Обновив систему з 13 на 14. Треба обновити пакети, що стоять на системі. Ну "pkg update" після чого "pkg upgrade dovecot" (були проблеми саме з цим пакетом, хотів почати з нього). І тут мені pkg говорить "ну я тут знесу exim, postgresql server, mysql server і ще щось тут "по мєлочам". Добре, що воно питає, чи я таки хочу це робити. Будь яка спроба проапгрейдити якийсь один пакет приводила до повідомлення, що він мені що-небудь знесе. Залежності від оновлюваних пакетів ніякої -- при спробі оновити apache24 він погрожував знести bash і bind (крім списку пакетів з менш очевидною залежністю). Вирішилося це командою pkg upgrade без аргументів. Тобто коли апгрейд всього, то да, тут він згодився, що нічого зносити не буде, а оці пакети оновить, а ці перевстановить. Чесно кажучи, мене така поведінка "дещо здивувала". Если ты живешь с пакетами из официального репозитория, так и должно быть. Так и задумано. У тебя тогда нет свободы выбора - кушай, что дают. Техническая причина этого в следующем: dovecot наверняка зависит от кучи библиотек, которые тоже отдельные пакеты. Пакет dovecot в официальном репозитории собран с *конкретными* версиями библиотек и лочить эти версии, заставляя этот пакет работать с другими версиями библиотек - напрашиваться на креши dovecot. Поэтому pkg будет настаивать на том, чтобы удалить старые версии библиотек и поставить новые ради обновления dovecot. Проблема в том, что от старых версий библиотек могут зависеть (и часто зависят) многие другие пакеты. И если сносить старые либы, придется сносить (или обновлять) и зависящие от них совсем другие пакеты. Ну собственно я это и предполагал в том, что я написал. Поэтому pkg и не предлагал ничего удалять, когда было сказано обновлять все. Мой вопрос был в том -- нельзя ли pkg сказать "не удаляй это пакеты под мою ответственность -- я в здравом уме и твердой памяти хочу выстрелить себе в ногу"? Решение этой проблемы либо использование пудры для создания собственного репозитория пакетов с нужными тебе версиями, либо сборка из портов. Порту относительно всё равно, какая версия библиотек у тебя стоит, лишь бы совместимая. pkg настаивает на абсолютном совпадении версий. -- tasic@ ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd
Re: [freebsd] Цей дивний pkg manager
P.S. к предыдущему письму я подозреваю, что такого эффекта можно добиться, залочив пакеты, которые он собирается удалять. И видимо он их не тронет. Но если их штук 20, то это грустное занятие. 09.07.2024 5:54, Eugene Grosbein: 08.07.2024 14:18, Taras Heichenko пишет: Hi! Хотів запитати про дивну поведінку pkg (може це не вона дивна, може це я?). Обновив систему з 13 на 14. Треба обновити пакети, що стоять на системі. Ну "pkg update" після чого "pkg upgrade dovecot" (були проблеми саме з цим пакетом, хотів почати з нього). І тут мені pkg говорить "ну я тут знесу exim, postgresql server, mysql server і ще щось тут "по мєлочам". Добре, що воно питає, чи я таки хочу це робити. Будь яка спроба проапгрейдити якийсь один пакет приводила до повідомлення, що він мені що-небудь знесе. Залежності від оновлюваних пакетів ніякої -- при спробі оновити apache24 він погрожував знести bash і bind (крім списку пакетів з менш очевидною залежністю). Вирішилося це командою pkg upgrade без аргументів. Тобто коли апгрейд всього, то да, тут він згодився, що нічого зносити не буде, а оці пакети оновить, а ці перевстановить. Чесно кажучи, мене така поведінка "дещо здивувала". Если ты живешь с пакетами из официального репозитория, так и должно быть. Так и задумано. У тебя тогда нет свободы выбора - кушай, что дают. Техническая причина этого в следующем: dovecot наверняка зависит от кучи библиотек, которые тоже отдельные пакеты. Пакет dovecot в официальном репозитории собран с *конкретными* версиями библиотек и лочить эти версии, заставляя этот пакет работать с другими версиями библиотек - напрашиваться на креши dovecot. Поэтому pkg будет настаивать на том, чтобы удалить старые версии библиотек и поставить новые ради обновления dovecot. Проблема в том, что от старых версий библиотек могут зависеть (и часто зависят) многие другие пакеты. И если сносить старые либы, придется сносить (или обновлять) и зависящие от них совсем другие пакеты. Решение этой проблемы либо использование пудры для создания собственного репозитория пакетов с нужными тебе версиями, либо сборка из портов. Порту относительно всё равно, какая версия библиотек у тебя стоит, лишь бы совместимая. pkg настаивает на абсолютном совпадении версий. -- tasic@ ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd
Re: [freebsd] Цей дивний pkg manager
On Mon, Jul 8, 2024, 17:54 Taras Heichenko wrote: > Чи є якийсь варіант сказати pkg > не видаляти пакети при апгрейді, крім лочки конкретних пакетів? > Ні. > ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd
Re: [freebsd] Цей дивний pkg manager
При очередном `pkg uprgade` ему захотелось удалить sysutils/android-file-transfer. Из-за апгрейда taglib до 2.0.1 . Мне кажется, что в CLI android-file-transfer эта библиотека вообще не используется, а GUI этот порт устанавливать не умеет (только CLI). На всякий случай в /etc/pkg/FreeBSD.conf я изменила latest на quarterly, pkg update -f pkg delete -f taglib pkg install taglib скопировала libtag.so.1.19.1 и ссылку libtag.so.1 из /usr/local/lib в /usr/local/lib/compat/pkg изменила назад с quarterly на latest и опять pkg update -f pkg delete -f taglib pkg install taglib ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd