LINUX.ORG.RU
ФорумTalks

Установка программ в Linux

 


0

1

Давно наблюдаю за общим развитием дистрибутивов Linux и постоянно ловлю себя на мысли, что что-то тут не так. Речь пойдёт о десктопном использовании Linux.

Как устанавливает программу пользователь Windows? Он заходит на сайт производителя/автора программы и просто скачивает и запускает инсталяцию. Точно также, я полагаю, поступает и пользователь Mac. А что делает пользователь Linux? В большенстве случаев он не найдёт готовый и пригодный для его дистрибутива пакет на сайте производителя/автора программы. Поэтому он вынужден устанавливать эту программу из репозитория пакетов своего дистрибутива. Если речь идёт о недавно вышедшей версии программы, необходимо ждать какое-то время, пока маинтейнер не соблаговолит создать соответствующий пакет. Многие дистрибутивы имеют отдельные наборы пакетов для разных версий своих дистрибутивов, что лишь усложняет работу маинтейнеров и увеличивает время ожидания нового пакета.

К чему это приводит? С одной стороны типичный пользователь хотел бы иметь стабильную операционную систему. А с другой стороны он хотел бы пользоваться последними версиями прикладного ПО, например последней версией браузера. Для первого необходим такой дистрибутив как CentOS, а для второго необходим rolling дистрибутив, такой как Arch или Fedora. Но это взаимно противоречащии друг другу требования. Выбрав rolling дистрибутив вы не можете быть уверенными, что всё у вас будет работать как надо или что завтра, после очередного обновления системы, у вас что-то не отвалится. Выбрав обычный дистрибутив вы будете вынуждены использовать старый прикладной софт или очень долго ждать его обновления до последней версии.

Взять например Firefox в нескольких обычных (не rolling дистрибутивах):

В репозитории CentOS 7 пакет Firefox версии 45.4
http://mirror.centos.org/centos/7/os/x86_64/Packages/

В репозитории OpenSUSE 42.3 пакет Firefox версии 52.2
http://download.opensuse.org/distribution/leap/42.3/repo/oss/suse/x86_64/

При этом последняя версия Firefox на сегодняшний день - 54.0.1 и она сразу доступна пользователям Windows и Mac
http://ftp.mozilla.org/pub/firefox/releases/54.0.1/win64/en-US/
http://ftp.mozilla.org/pub/firefox/releases/54.0.1/mac/en-US/

Почему в Linux так невозможно или точнее - почему обычно так не делают? Делают очень редко, например Oracle JDK/JRE можно скачать в виде RPM пакета прямо с сайта Oracle в день релиза.

Тут ещё вспомнилось моё старое обсуждение самих пакетный менеджеров, с Reset и Nxx. В том обсуждении ими было сказано, что в отличии от deb пакетов rpm пакеты привязаны к зависимостям не по именам пакетов зависимостей, а по версиям их ABI. Видимо это и позволяет выпускать не привязанные к какому-то конкретному дистрибутиву RPM пакеты Oracle JDK/JRE. И видимо по этой же причине RPM является частью стандарта LSB. Но почему это не стало общепринятой практикой? Впрочем я догадываюсь почему. Потому что зоопарк пакетных менеджеров привёл к фрагментации и производителям/авторам прикладных программ невыгодно или сложно самим заниматься созданием пакетов для всех.

Кстати какова архитектура pacman? Полагаю, что она ближе к deb, а не к rpm.

★★★★★
Ответ на: комментарий от next_time

даже просто логично подумать: если человек, грубо говоря, месяц сидел исправлял баги, как так может получиться, что в новой версии софта, после исправлений, багов в нём окажется больше, чем было первоначально?

Почему нет? Он те баги туда раньше специально внес? Нет? Вот и новых наделает точно также. Статистика — вещь упрямая ;) По крайней мере в этой реальности все немного иначе, чем вам логично думается, увы.

bormant ★★★★★
()
Ответ на: комментарий от bormant

Потому, что если команда целенаправленно занимается устранением багов, и в результате регулярно вносит больше, чем багов было, то она не способена писать прикладной софт в принципе.

next_time ★★★★★
()
Последнее исправление: next_time (всего исправлений: 2)
Ответ на: комментарий от bormant

А так, конечно, понаделает, только меньше, чем было.

next_time ★★★★★
()
Ответ на: комментарий от next_time

Как раз наоборот, последний прикладной софт == стабильный, баги-то исправлены в нём.

Не совсем. Свежие мажорные версии могут содержать новые функции, реализация которых еще не обкатана, а уже в минорных прилетают багфиксы.

templarrr ★★★★★
()
Ответ на: комментарий от RazrFalcon

В первом случае, примерно 60/40, что в новой программе будет меньше багов: с одной стороны,переписывают ведь не просто так, а с целью улучшения архитектуры и багов должно быть меньше, с другой - это убирает старые костыли и подпорки и кол-во новых багов растёт.

Во 2-м случае, мы знаем, что первое требование к архитектуре приложения - это модульность, т.е. добавление новых фич должно сводиться к написанию новых изолированных модулей (в концептуальном смысле) и т.о. в принципе не влиять на работоспособность старого кода. Стало быть, кол-во багов вырастет, но это будут исключительно баги в функционале, который старое приложение вообще не поддерживает.

next_time ★★★★★
()
Ответ на: комментарий от next_time

Ну и свежие, как правило, и есть стабильные.

Как правило у многих программ есть стабильные ветки.

У того же ff она есть.

Ygor ★★★★★
()
Ответ на: комментарий от templarrr

Совершенно верно. Но очевидно, баги в новых функциях, которые в старом софте вообще отстутствует из сравнения забагованности старого и нового софта, следует исключить.

next_time ★★★★★
()
Ответ на: комментарий от Ygor

Только эти ветки частно стабилизируются перед внесением большого числа изменений (читай, важных фич).

Что касается именно ff, то нытьё топикстартера мне непонятно, т.к. я сейчас пишу с фаерфокса, скаченного бинарником под линукс с сайта мозиллы. Точно также, как если бы ставил на какую-нибудь макось.

next_time ★★★★★
()
Ответ на: комментарий от next_time

Что касается именно ff, то нытьё топикстартера мне непонятно, т.к. я сейчас пишу с фаерфокса, скаченного бинарником под линукс с сайта мозиллы. Точно также, как если бы ставил на какую-нибудь макось.

Не так, файрфокс с бинарника не прописывается в меню, что не удобно. Так что эта большая разница с макосью и виндой.

petyanamlt ★★★★
()
Ответ на: комментарий от bbk123

Вай-вай, какой кошмар. Сижу на opensuse tumbleweed и страдаю с глюкодромом, лол. Особенно смешно сравнивать такое с виндой, ога. 10 минут назад пришлось ребутать винду - повисло фуллскрин приложение, никакое окно нельзя вывести на передний план. Ни хоткеи, ни консоль, ни диспетчер задач, ни даже другой рабочий стол, лол.

ekzotech ★★★★
()
Ответ на: комментарий от next_time

Ничего не очевидно, новые фичи != 100% новый код.

templarrr ★★★★★
()
Ответ на: комментарий от ekzotech

повисло фуллскрин приложение

Лул. У меня так ведьмак пару недель назад завис на десятке. Пришлось кнопкой ребутать.

RazrFalcon ★★★★★
()

Тред не читал, да и первый пост не осилил. У самого стоит 52.2 ESR и нет пока смысла обновлять.
А не, пост ТСа осилил все ж. На самом деле проблемы с пакетными менеджерами нет. Но для тех, кому так не кажется — что-то было, чтобы ставить софт прямо в хомяк своим, новым ПМ для всех дистров

sehellion ★★★★★
()
Ответ на: комментарий от sehellion

что-то было, чтобы ставить софт прямо в хомяк своим, новым ПМ для всех дистров

Ага, венда называется.

templarrr ★★★★★
()
Ответ на: комментарий от bbk123

Тогда зачем ты в разговор с DawnCaster влез?

Ситуация в линуксах неоднозначная, 5 звёзд нажил а не знаешь. Если ты не помнишь всего разговора и ленишься смотреть повтор всех нюансов, то я тем более. Весёлый срач уже закончился, и адепты секты «в линуксах на серверах всё нормально, ничего менять не нужно» уже спят, устали нести свет в тёмные массы.

Napilnik ★★★★★
()

Давайте посмотрим на FreeBSD, Solaris... там уже что-то такое выросло, которое по зонам раскидывает приложения и прочее. Вот оно уже 12 лет окучивалось с 2005года.

Но пгастите-извините, такой пакетный менеджмент ничего общего с десктопом не имеет, как и с андроидом :-)

Deleted
()
Последнее исправление: RTP (всего исправлений: 1)
Ответ на: комментарий от Deleted

Короче, для реалий десктопа - пакетный менеджмент, рассчитанный на серверное применение, да еще и зоны-с-контейнерами - не самое мудрое решение.

Deleted
()
Ответ на: комментарий от bbk123

А я говорю о полноценной десктопной системе, которую не надо дуалбутить.

Скажу тебе страшшшшшную тайну - линукс на дестопе надо иногда дуалбутить на другой линукс чтобы без проблем починить разделы кедовской или гномосековской гуёвой утилитой, обе нужны. Консольные команды сложные проблемы чинят хреново а время жрут.

Napilnik ★★★★★
()

Как устанавливает программу пользователь Windows? Он заходит на сайт производителя/автора программы и просто скачивает и запускает инсталяцию. Точно также, я полагаю, поступает и пользователь Mac. А что делает пользователь Linux? В большенстве случаев он не найдёт готовый и пригодный для его дистрибутива пакет на сайте производителя/автора программы. Поэтому он вынужден устанавливать эту программу из репозитория пакетов своего дистрибутива.

Не-не-не. Это пользователь Linux ставит программу одной командой из официального репозитория, а пользователи Windows и Mac вынуждены лазить по сайтам производителей/авторов. И знаешь что? Им это зело не нравится, поэтому на маке появлются всякие MacPorts и Homebrew, а на Windows ничего не появляется, поскольку на нём остались только технически неграмотные.

Если речь идёт о недавно вышедшей версии программы, необходимо ждать какое-то время, пока маинтейнер не соблаговолит создать соответствующий пакет. Многие дистрибутивы имеют отдельные наборы пакетов для разных версий своих дистрибутивов, что лишь усложняет работу маинтейнеров и увеличивает время ожидания нового пакета.

В нормальных дистрибутивах время обновления пакета исчисляется часами-днями, обычно это быстрее чем ты вообще соблаговалишь новость о новой версии узреть.

К чему это приводит? С одной стороны типичный пользователь хотел бы иметь стабильную операционную систему. А с другой стороны он хотел бы пользоваться последними версиями прикладного ПО, например последней версией браузера. Для первого необходим такой дистрибутив как CentOS, а для второго необходим rolling дистрибутив, такой как Arch или Fedora. Но это взаимно противоречащии друг другу требования. Выбрав rolling дистрибутив вы не можете быть уверенными, что всё у вас будет работать как надо или что завтра, после очередного обновления системы, у вас что-то не отвалится. Выбрав обычный дистрибутив вы будете вынуждены использовать старый прикладной софт или очень долго ждать его обновления до последней версии.

Чушь собачья. Стабильность никак не противоречит rolling release модели, просто CentOS и другие нехорошие люди под словом стабильность понимают нечто своё и никак с ней не связанное, а именно замораживание версий пакетов, в основном чтобы проприетарное говнецо было удобнее запускать. На деле это, помимо отсутствия новой функциональности, уменьшение стабильности, поскольку исправления бэкпортятся только для безопасности и критичных багов, а многие случаи некорректного поведения программ не будут исправлены никогда, поскольку требуют обновления версии.

Нормальные rolling release не ломаются при обновлении - debian unstable и freebsd живут постоянно обновляясь ещё с нулевых безо всяких проблем, про федору ничего плохого тем более не слышно. С арчем только проблемы, так это и не дистрибутив а конструктор - те кто его используют и починить всё могут.

почему обычно так не делают?

Потому что это не правильно, софт должен ставиться только их оф. репозитория. Во-первых, управление пакетами должно быть централизовано, потому что а) это удобно б) только так можно поддерживать систему в актуальном состоянии - пока ты прочитаешь новость о новой версии одной из тысячи установленных у тебя программ, соизволишь слазить на сайт и установить её, тебя поимеют десять раз во все дыры. Во-вторых, совместимость и работоспособность пакета. Автор не способен собрать адекватный пакет под любой дистрибутив помимо своего. Да и под свой не всегда способен. И не должен быть, это не его работа. Пакеты собирают специально обученные люди, точка, только они делают это правильно. В-третьих, безопасность. В бинарный пакет зловреда можно посадить в любой точке его следования от автора до тебя. Сначала сам автор, потом его машина (вспомним вирус в QiP котрый распространялся между делфёвыми программами и попал в релиз), потом канал до сервера, потом сервер, потом канал до вас. И в любом случае о зловреде вы никак не узнаете. Не имеет смысла в сотый раз рассказывать насколько офф реп с подписанными пакетами и повторяемыми сборками безопаснее.

slovazap ★★★★★
()

Ubuntu LTS + несколько PPA для интересующего прикладного софта. /thread

Andrew ★★★
()
Ответ на: комментарий от Napilnik

Скажу тебе страшшшшшную тайну - линукс на дестопе надо иногда дуалбутить на другой линукс чтобы...

Я тебе тоже расскажу страшную тайну. Речь шла о дуалбуте RTP между Linux и Windows 10. Ты опять влез в разговор не разобравшись.

bbk123 ★★★★★
() автор топика
Последнее исправление: bbk123 (всего исправлений: 1)
Ответ на: комментарий от slovazap

Не хочу комментировать всю твою простыню, но мимо этого опуса было трудно пройти:

Нормальные rolling release не ломаются при обновлении - debian unstable и freebsd живут постоянно обновляясь ещё с нулевых...

Если ты считаешь FreeBSD rolling системой, то ты технически безграмотный.

bbk123 ★★★★★
() автор топика

Мой пакетный менеджер ставит прямо с git-а например. Без ненужных телодвижений с браузером. И я юзаю старый прикладной софт потому что хочу юзать именно его. Или юзаю новый, если мне хочется.

ass ★★★★
()
Ответ на: комментарий от Andrew

Пока ничего официального, но у разработчиков много претензий к ppa, к зависимостям, необходимости держать репы под несколько версий Убунты и т.д.. Snap часть проблем решает.

Valeg ★★★
()
Последнее исправление: Valeg (всего исправлений: 1)
Ответ на: комментарий от bbk123

Я тебе тоже расскажу страшную тайну. Речь шла о дуалбуте RTP между Linux и Windows 10. Ты опять влез в разговор не разобравшись.

Если тебе кажется что другие не разобрались, то у тебя глюки.

Napilnik ★★★★★
()
Ответ на: комментарий от bbk123

ну даже не знаю что тут страшного.

т.е. выбирать между потешной (убунта-десктоп) и промышленной ОС(шин/мак) это как выбирать между велосипедом и поездом до Нового Уренгоя, в феврале. Оба едут, но кто-то один может ездить долго и далеко.

Deleted
()
Ответ на: комментарий от DawnCaster

Нужно освоить одну (!) волшебную комманду «osc branch».

Или мышкой кликнуть.

Nxx ★★★★★
()
Ответ на: комментарий от Valeg

У Винды тоже куча разновидностей инсталляторов.

Я думаю, на винде скоро реактосовский магазин приложений всех победит.

Nxx ★★★★★
()
Ответ на: комментарий от Deleted

Я правильно понял, вы считаете, что это хуже windows-способа?

Система репозиториев убога потому что количество людей, необходимых для поддержки пакетов линейно зависит от количества ПО.

То есть, ни один дистр линукса никогда не будет иметь столько же ПО как и винда. Даже если в теории данное ПО есть в версии для линукса.

Количество ПО для винды растёт экспоненциально, и система репозиториев для этого совершенно непригодна.

Nxx ★★★★★
()
Ответ на: комментарий от Nxx

Как всякие плеймаркеты справляются?

Deleted
()
Ответ на: комментарий от RazrFalcon

Вот и у меня первый ведьмак внезапно повис. Единственная возможность - ребут с кнопки. Такие дела.

ekzotech ★★★★
()
Ответ на: комментарий от slovazap

Я то как раз различию. А ты в курсе, что понятие «rolling система» относится таки к системе, а не к портам и пакетам?

bbk123 ★★★★★
() автор топика
Ответ на: комментарий от Napilnik

Мне то не кажется. А вот ты понимаешь, что дуалбут между двумя разными Linux и между Linux и Windows 10 - не одно и тоже? Или у тебя глюки?

bbk123 ★★★★★
() автор топика
Ответ на: комментарий от Deleted

и да, уже не дуалбучусь.
винда всё схавала.

Ну вот видишь, даже ты не выдержал. Очень жаль, что Linux до сих пор не стала альтернативной ОС на десктопах. Необходимость в левых репозиториях и маинтейнерах пакетов, несоблюдения единого стандарта - ода из причин этого.

bbk123 ★★★★★
() автор топика
Ответ на: комментарий от bbk123

Мне то не кажется.

А чего тогда говоришь глупости.

А вот ты понимаешь, что дуалбут между двумя разными Linux и между Linux и Windows 10 - не одно и тоже?

Я то понимаю, но какое это имеет отношение к термину «дуалбут»? Тебе недвусмысленно намекают на его тупость и неприменимость ко многим случаям на ПК. Например, параллельно линуксу в груб пропишем семёрку, хрюшу, фряху и дос - всё, _дуалбута_ на ПК нет!

Napilnik ★★★★★
()
Ответ на: комментарий от Napilnik

Ты действительно такой тупой или прикидываешься? Речь шла о том, что человек, ратующий за пакетную систему современных дистров, тем не менее предпочитает сидеть в Windows 10.

bbk123 ★★★★★
() автор топика
Ответ на: комментарий от bbk123

Ты действительно такой тупой или прикидываешься?

У зеркала спроси.

Речь шла о том, что человек, ратующий за пакетную систему современных дистров, тем не менее предпочитает сидеть в Windows 10.

Не отмазывайся, наговорил фигни - обтекай. И да, одмины они такие, линукс им нужен тупо для зарабатывания бабла несколькими командами в консольке, а все прочие потенциальные удобства в ОС грозят нагрузить мозг не приносящей прибыли информацией. Это как «бизнесмены», которые гребут в одной стране, а жить и хранить доходы предпочитают в другой.

Napilnik ★★★★★
()
Ответ на: комментарий от bbk123

Ага, вейся теперь как уж на сковородке, а сев раз в лужу уже не отмоешься. Как ни тужься, не придумаешь ситуацию в которой здоровый человек в разговоре об «установке программ» приплетёт базовую систему FreeBSD вместо портов. Вывод - ты либо нездоровый, либо только сейчас, когда тебя в твою безграмотность ткнули, прочитал про них в википедии. Теперь-то ты конечно

Я то как раз различию

Молодец. «Я-то». Просвещайся.

slovazap ★★★★★
()

И тут срач. :-)
Проблема давно озвучена и есть некие пожелания пользователей, что в будущие дистрибутивы не надо включать Либру, Гимпу, Лису... и еще куча других тяжелых приложений, которые просто вылетели из памяти.

Deleted
()
Ответ на: комментарий от slovazap

Как это типично, доипаться к пунктуации и просрать общий смысл разговора. Перечитай заглавное сообщение этой темы, найди там места, где обсуждается как раз таки базовая система. Задумайся к чему именно там применялось слово rolling.

bbk123 ★★★★★
() автор топика
Ответ на: комментарий от Deleted

И давно есть решение этой проблемы - следование каким-то единым стандартам или соглашениям. На сегодняшний день есть LSB (с требованием RPM), созданый при участии большинства крупных дистростроителей. Сам RPM (как это объяснили в другой теме Reset и Nxx) позволяет создавать универсальные пакеты без привязки к зависимостям по названиям их пакетов. Тоесть при соблюдении стандарта любой автор программы под Linux мог бы создавать один RPM пакет (или хотя бы один его спек и класть его в архив с исходниками) для всех соблюдающих стандарт дистрибутивов. Не было бы никакой железной привязки к каким-то левым репозиториям и не менее левым маинтейнерам. И эта тема вообще не возникала бы.

bbk123 ★★★★★
() автор топика
Последнее исправление: bbk123 (всего исправлений: 1)
Ответ на: комментарий от bbk123

Тупи дальше, это твоя тема - ты тут и клоун и зритель в одном флаконе. Аргументировать свои мычания не в состоянии, но клоуну это и не надо, главное эмоции в толпу плескать и собирать аплодисменты. Так вот - нету у меня для тебя аплодисментов, клован.

Napilnik ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.