LINUX.ORG.RU

Если программы нет в репозитории?


0

1

Подскажите, плиз, чайнику, как в общем случае действовать в случае, когда программы нет в репозитории?

Вот, допустим, у меня Scientific Linux и я хочу поставить туда OSSEC отсюда: http://www.ossec.net/main/

Я понимаю, что там есть ридми и инструкция по установке и можно поставить, но не вступит ли это с чем-нибудь в конфликт?

Я делаю


[root@ssssss dims]# yum search ossec
Loaded plugins: kernel-module
Warning: No matches found for: ossec
No Matches found

и получаю фиг. Должен ли я что-то предпринимать? Например, искать аналогичный пакет из репозитория на замену?

скачать архив и собрать его

toybike
()
Ответ на: комментарий от neocrust

Ну или юзать бинарники от других дистрибутивов (ну тут как бэ если зависимостей по минимум).

neocrust ★★★★★
()

Собрать, используя программу checkinstall или готовый spec для сборки rpm.

AITap ★★★★★
()

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

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

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

AS ★★★★★
()

Пытаться поставить от другого дистрибутива.

Это почти всегда работает.

Иначе - компилировать и собирать пакет.

Lockywolf ★★★
()

>и получаю фиг. Должен ли я что-то предпринимать? Например, искать аналогичный пакет из репозитория на замену?

Очевидно же: найти специалиста и заплатить ему за пакет для твоего дистрибутива.

Led ★★★☆☆
()

На livna тоже нет (Scientific, насколько я понимаю, тот же Центос)? Тогда компилять.

ansky ★★★★★
()

Скомпилить из исходника - качаем распаковываем и внутри каталога ./configure && make && make install если вдруг компилятор увидит конфликт то прога не скомпилится!

ipwww ★★
()
Ответ на: комментарий от ipwww
./configure && make && sudo checkinstall -D make install 

fixed, нехрен превращать дистр в слаку (хоть ossec и ставится только в /var/ossec, но все равно)

ну и гугл никто пока не отменял

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

> Проблема в том, что Ваш менеджер пакетов про нее знать не будет

Так вот об этом и речь — а полезно ли, чтобы он знал?

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

> В общем, если собирать, то в виде пакета для своего репозитария.

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

Ну а если так, то оправдано ли париться с тем, чтобы выяснять все эти зависимости? Допустим, я ставлю Tomcat6, которого нет у меня в репозитории. Если я буду делать из него пакет, мне нужно будет там указать, что он завиист от Джавы. От сановской? А вдруг нет? В общем, куча работы по проверке зависимостей. Нужна ли она?

Dims2000
() автор топика

Вот, допустим, nginx. Почему его нет в репозитории? Что это означает? Ведь это распространённая программа? Это значит, что до него просто не дошли пока руки? Или это значит, что ему не доверяет Линукс-сообщество? Или это вообще ничего не значит?

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

Возможно, он есть, но под другим именем? Да, если Вы собираете программу сами, а не ставите с помощью менеджера пакетов, она может не отобразиться в меню, может не показываться в списке «Открыть с помощью... » и т.д.
А вообще, компиляция программ и ручная их установка, включая разборки с глюками, здорово повысят Вашу компетентность

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

Вот, допустим, nginx. Почему его нет в репозитории? Что это означает? Ведь это распространённая программа? Это значит, что до него просто не дошли пока руки? Или это значит, что ему не доверяет Линукс-сообщество? Или это вообще ничего не значит?

Dims2000 (01.10.2010 16:41:04)

Это значит у владельцев, управленцев репозитария такие варианты :

1) не дошли руки до него

2) есть какие-то лучшие аналоги по мнению владельцев репозитария

3) личная неприязнь кого-то из управленцев

4) они на самом деле не слышали о такой программе

Когда имеешь дело с репозитариями, будь готов к тому что твою свободу будут принижать. Теперь ты в руках репозитарщиков. Очень многих хороших програм в репозитарии нету. И не будет из-за особого образа жизни, образа мыслей людей которые владеют репозитариями. Репозитарии это монополии. Репозитарщик он царь и бох.

xcreatepixmap
()

хосспыдя .....
ftp://ftp.pramberger.at/systems/linux/contrib/rhel5/i386/
и вообще, открой для себя такую штуку: http://rpm.pbone.net/
при поиске редких rpm-пакетов полезная весч, это раз, собирать руками .... подумай сначала, стоит ли тянуть всистему кучукомпиляторов и дев-пакетов, это два, ну и три - всяческие checkinstall и alien шапочники не пихают в свои репы и репы производных дистров.

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

> она может не отобразиться в меню, может не показываться в списке «Открыть с помощью... » и т.д.

Даа, человека который ставит ossec, tomcat и ngnix в первую очередь кончено же волнует менюшки и «Открыть с помощью». :)

А вообще, компиляция программ и ручная их установка, включая разборки с глюками, здорово повысят Вашу компетентность

Ага-ага, а вместо использования калькулятора, считайте в лучше на бумажке в столбик. Это повысит Вашу компетентность в математике.

anonymous
()
Ответ на: комментарий от Breton

Мне эти ваши rpm'ы напоминают поиски вареза под винду.

Автор, кто это вам такой дистрибутив впарил? Посмотрите на Debian, там уж точно есть и nginx, и tomcat, и тонны всего необходимого.

Сделаете просто aptitude install tomcat nginx и система обо всем позаботиться, вместо того чтобы бегать по каким-то там сайтикам и руками что-то там беребирать, как вендузятник.

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

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

Ну найди мне в дебиане к примеру pdfmerge, именно где-то в районе main, non-free или contrib, потом сказки рассказывай о полноте и всеобъемлимости дебовских реп. Простейшая консольная утилита для работы с *.pdf, а нету, а в, например, той же федоре, всегда пожалуйста :D

[sanja@diego ~]$ yum info pdfmerge
Загружены модули: presto, refresh-packagekit
adobe-linux-i386                                         |  951 B     00:00     
rpmfusion-free-updates                                   | 2.8 kB     00:00     
rpmfusion-nonfree-updates                                | 2.8 kB     00:00     
updates/metalink                                         | 8.4 kB     00:00     
Доступные пакеты
Name        : pdfmerge
Arch        : noarch
Version     : 1.0
Release     : 4.fc12
Size        : 11 k
Репозиторий : fedora
Summary     : Command line utility program for merging PDF files
Ссылка      : http://microtronyx.com/pdfmerge/
License     : GPLv2+
Описание    : pdfmerge is a command line program that merges PDF files. It can
            : merge any number of pdf files from command line.
novitchok ★★★★★
()
Ответ на: комментарий от novitchok

> pdfmerge

Сравнил тоже nginx и tomcat с какой-то фиговиной. Сайт мертвый, гугл выдает ссылки на виндовые поделки на шарпе. Что как бы намекает на качество репозитория в федоре.

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

фиговый гугл и всё плохо с логикой, это простой скрипт, обёртка для imagemagick)))))) Найди мне сишарп:

[sanja@diego ~]$ cat /usr/bin/pdfmerge 
#!/usr/bin/perl
use Getopt::Long;
use Term::ANSIColor;


# pdf4mergeunix has been written by Didier F.B Casse <didier@microtronyx.com>

############################################################################

#  This is pdfmerge4unix version 1.0-2.
# pdfmerge4unix is a command line utility program that merges pdf files in unix-based platforms.

#   Copyright (C) 2003 Didier F.B Casse
#
#   This program is free software; you can redistribute it and/or modify
#   it under the terms of the GNU General Public License as published by
#   the Free Software Foundation; either version 2 of the License, or
#   (at your option) any later version.
#
#   This program is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#   GNU General Public License for more details.
#
#   You should have received a copy of the GNU General Public License
#   along with this program; if not, write to the Free Software
#   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
# Author: Didier F.B Casse, Singapore Synchrotron Light Source (SSLS).  
# Email: didier@microtronyx.com 
# URL : http://pdfmerge4unix.sourceforge.net

############################################################################



GetOptions('help', 'h');

$usage = <<"END_OF_USAGE";
This is pdfmerge4unix version 1.0-2. pdfmerge4unix is a command line utility program that merges pdf files in unix-based platforms

Syntax:  pdfmerge file1.pdf file2.pdf... fileN.pdf outfile.pdf

Options:      
            --help                  displays this brief help; same as -h
Author:    Didier F.B Casse <didier\@microtronyx.com>
URL:       http://www.microtronyx.com/pdfmerge4unix
END_OF_USAGE

die $usage if ($opt_help or $opt_h or (scalar(@ARGV)==0));



$incantation = << "END_OF_INCANTATION";
%!PS
/_begin_job_
{
        /tweak_save save def
        /tweak_dc countdictstack def
        /tweak_oc count 1 sub def
        userdict begin
}bind def

/_end_job_
{
        count tweak_oc sub{pop}repeat
        countdictstack tweak_dc sub{end}repeat
        tweak_save restore
}bind def

END_OF_INCANTATION





# get it started


if (!scalar(@ARGV)==0){


# $mergedfile gets the output file!
$mergedfile=pop(@ARGV);

if (-e $mergedfile){print color("red"), "outfile.pdf should not exists, it's the name of your output file!\n", color("reset"); exit 0;}


# Dealing with merged.ps 

open(FILE,">merged.ps") || die "can't open merged.ps";
print FILE $incantation;


foreach $ARGV (@ARGV){

print FILE "\n_begin_job_\n"; 
print FILE "(./$ARGV)run\n";print FILE "_end_job_\n";

 }

} # end of !scalar...
    
close(FILE);

`ps2pdf merged.ps $mergedfile`;

#cleanup

unlink("./merged.ps");

[sanja@diego ~]$ 

А вот, что даёт мой гугл :D

Так что, кое-кому, как бы пора худеть)))))

novitchok ★★★★★
()

нужно пойти вот туда - https://build.opensuse.org/ - затем вкурить мануалы как этим пользоваться и собрать пакет.

isden ★★★★★
()

Если программы нет в репозитории, ее не отравит сосед.
И с другом не будет драки, если у вас друга нет.

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


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

debian6
()
Ответ на: комментарий от novitchok

> Ну найди мне в дебиане к примеру pdfmerge,

Debian-овский репозиторий исходит от задачи, а не от знакомого названия. От знакомого названия исходят совсем другие операционные системы.

debian6
()

Я в таких случая собираю всё в ~/.local

В случае с автотулзами для этого достаточно указать префикс, например ./configure --prefix=/home/happyuser/.local

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

> фиговый гугл и всё плохо с логикой, это простой скрипт, обёртка для imagemagick)))))) Найди мне сишарп:

Ты и yum указывали на pdfmerge. А на самом деле программа называется pdfmerge4unix. Что как бы опять намекает на качество репозитория. Гугл по запросу «pdfmerge» выдает виндовую поделку на шарпе: http://sourceforge.net/projects/pdfmerge/.

это простой скрипт, обёртка для imagemagick

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

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