LINUX.ORG.RU
ФорумTalks

Opensource way. Удаление программ.


0

0

Классическая схема устнаовки opensorce программного обеспечения гласит:

1. качаешь исходники из интернета.

2. выполняешь магическую последовательность (./configure ...; make; sudo make install;).

При этом оценивается конфигурация системы в целом, формируются промежуточные Makefile-ы, далее на их основе производится сборка и установка программы.

Вопрос:

Как быть в случае если я захотел удалить установелнную таким образом программу? про make uninstall я знаю, но что если я к тому времени уже удалил исходники из которых устанавливал программу? Заново выполнять распаковывать, выполнять ./configure ? - не хочется. Перед удалением скопировать все Makefile-ы ? - лень с этим возится, да и в целом способ какой-то неудобный. Менеджер пакетов ? - не совсем правильное решение, например , если у меня LFS.

Как сделать правильно ?

Интересует иделогически правильный способ деинсталированния программы.


Re: Opensource way. Удаление программ.

используй checkinstall

JB ★★★★★ ()

Re: Opensource way. Удаление программ.

уже давно для этих целей существует checkinstall вместо make install. Установи checkinstall и используй его :)

Keiko ()

Re: Opensource way. Удаление программ.

Идеологически правильно говорить ./configure --prefix=$HOME/opt/имясофтины

Ну а удалять - rm -rf $HOME/opt/имясофтины

Как добавить все поддиректории в $HOME/opt в PATH, LD_LIBRARY_PATH и MAN_PATH - сам знаешь.

VitalyLugovsky ()

Re: Opensource way. Удаление программ.

> Интересует иделогически правильный способ деинсталированния программы.

apt-get remove --purge

anonymous ()

Re: Opensource way. Удаление программ.

CHECKINSTALL!!!!!!!!!!

K48 ★★★★ ()
Ответ на: Re: Opensource way. Удаление программ. от VitalyLugovsky

Re: Opensource way. Удаление программ.

2VitalyLugovsky: и какой у тебя PATH длины ? тысяча знаков или все же только девятьсот ? не смеши людей такими "советами" . правильный совет уже был - собирать пакет для данного дистра и использовать затем для установки/удаления штатные же средства. а уж будешь ты использовать для сборки checkinstall или еще чего - дело вкуса.

sasha999 ★★★★ ()

Re: Opensource way. Удаление программ.

> Менеджер пакетов ? - не совсем правильное решение, например , если у меня LFS.

Если под LFS понимать произвольный самосборный дистрибутив, то что мешает собрать к нему какой-нибудь package manager и использовать его? Или это мазохизм такой - не использовать менеджер пакетов из принципа?

watashiwa_daredeska ★★★★ ()
Ответ на: Re: Opensource way. Удаление программ. от anonymous

Re: Opensource way. Удаление программ.

А что в этом плохого? Вряд ли юзер соберёт из сырцов более 5-6 софтин. Если их больше будет, он должен начать их запакечивать, или как минимум в stow загонять, для чего этот же приём нужен.

anonymous ()
Ответ на: Re: Opensource way. Удаление программ. от sasha999

Re: Opensource way. Удаление программ.

>>и какой у тебя PATH длины ?

Виталий немного ошибся.

надо ./configure --prefix=$HOME/opt/

дальше export PATH=$PATH;/home/keiko/opt/bin.

/home выносим на отдельный раздел, при спонтанной переустановке Линукса все проги остаются на месте.

Keiko ()
Ответ на: Re: Opensource way. Удаление программ. от VitalyLugovsky

Re: Opensource way. Удаление программ.

> деологически правильно говорить ./configure --prefix=$HOME/opt/имясофтины

Ну а удалять - rm -rf $HOME/opt/имясофтины

Как добавить все поддиректории в $HOME/opt в PATH, LD_LIBRARY_PATH и MAN_PATH - сам знаешь.

Что-то в этом есть. А чтобы постояно не модифицировать окружение можно создать общие директории ~/bin ~/man ~/lib, занести их в окружение, и кидать в них симлинки на ~/opt/имясофтины/bin[lib|man]. Конфликтов имен вроде быть не должно. При деинсталяции достаточно стереть ~/opt/имясофтины и битые симлинки в ~/bin[lib|man].

ukez ()
Ответ на: Re: Opensource way. Удаление программ. от ukez

Re: Opensource way. Удаление программ.

> Что-то в этом есть.

Особенно если этой прогой захочет воспользоваться жена, которой ты завел отдельный аккаунт, и выставил 700 на ~

sin_a ★★★★★ ()

Re: Opensource way. Удаление программ.

imho в качестве инсталлера/анинсталлера рулило бы что то типа InstallShield, и UninstallShield соответственно.

anonymous ()

Re: Opensource way. Удаление программ.

А по времяни создания нельзя файлы одного пакета обособить?

bugmaker ★★★★☆ ()
Ответ на: Re: Opensource way. Удаление программ. от Keiko

Re: Opensource way. Удаление программ.

Если честно так и не догнал зачем это надо :) Ну создам я отдельный раздел, установлю туда проги, как это поможет решить исходную проблему?

ukez ()
Ответ на: Re: Opensource way. Удаление программ. от bugmaker

Re: Opensource way. Удаление программ.

Интересное решение, но попахивает костылем. Есть вариант ошибится и удалить что-нибудь нужное...

ukez ()
Ответ на: Re: Opensource way. Удаление программ. от ukez

Re: Opensource way. Удаление программ.

Имхо, исходная проблема решена была при первом посте о checkinstall ;) Это всё Виталий виноват, не туда попёр. Да-да, именно он =)

Keiko ()

Re: Opensource way. Удаление программ.

Я использую paco - http://paco.sourceforge.net/

Paco is a source code package organizer for Unix/Linux systems, originally written to aid package management when installing an LFS system.

When installing a package from sources, paco wraps the "make install" command (or whatever is needed to install the files into the system), and generates a log containing the list of all installed files. Like any other package manager, paco also provides several options to print package information in different formats. It can remove packages too, among some other basic operations. See the man page for more details.

Technically, to log package installations paco follows the same approach as CheckInstall: A library is preloaded before installation, and during installation it catches the system calls that cause filesystem alterations, logging the names of the created files. But unlike CheckInstall, paco doesn't create rpm or dpkg packages. Paco is a stand-alone package manager. It can even install rpm, dpkg or slackware binary packages with the provided script superpaco.

Gpaco is the GTK+ graphic interface of paco. It's included in the same tarball and installed by default. Gpaco requires GTK+ (2.6 or later), and pkg-config.

mojoholder ★☆ ()
Ответ на: Re: Opensource way. Удаление программ. от Keiko

Re: Opensource way. Удаление программ.

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

anonymous ()
Ответ на: Re: Opensource way. Удаление программ. от ukez

Re: Opensource way. Удаление программ.

Симлинки - это stow так и делает. Но для работы со stow многие софтины надо править - они должны make PREFIX=другой-не-тот-с-кем-конфигуряли install понимать.

anonymous ()
Ответ на: Re: Opensource way. Удаление программ. от anonymous

Re: Opensource way. Удаление программ.

вопрос был не о версиях, а об устновке из исходинков.

P.S. Насколько я помню, я смог установить 2 kdevelop'a, изменив немного суффиксы. См ./configure --help насчёт --suffix.

Keiko ()
Ответ на: Re: Opensource way. Удаление программ. от Keiko

Re: Opensource way. Удаление программ.

Суффиксы не помогут, когда устанавливаются дополнительные файлы с данными.

anonymous ()

Re: Opensource way. Удаление программ.

Ой... любители самосбора... что мешает использовать дистрибутив и пакеты к нему?? Вот и весь ответ! И извращаться меньше придется, а тот напридумывали тут...

[c0der@mycomp ~]$ du /usr/local/bin
4,0K    /usr/local/bin

php-coder ★★★★★ ()
Ответ на: Re: Opensource way. Удаление программ. от MrKooll

Re: Opensource way. Удаление программ.

Серьезно? Вот уж не поверил бы. Скачиваешь бинарный РПМ, и как патчить? Или SRPM надо? А зачем - проще просто тарбол скачать, скомпилять, и установить checkinstall'ом (там можно выбирать: tgz, deb или rpm).

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