LINUX.ORG.RU

Как правильно конвертировать tar.gz в .txz или .tgz (slackware 14)

 installpkg,


0

3

Есть архив «program.tar.gz» (внунри бинарные файлы) в файле README написано что ставить используя «make install»

я таки образом ставить не хочу, я хочу по человечески преобразовать «program.tar.gz» в «program.txz» и поставить программу используя «installpkg program.txz»

вот причина недовольства: http://habrahabr.ru/post/130868/

подскажите как быть?



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

С этим принтером обычно всё плохо, там дрова с каждым обновлением надо всё хитрее патчить.

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

Для создания пакетов нужен слакобилд. Желательно от Самого Патрега.

Вовсе не обязательно. --prefix=DESTDIR а потом makepkg

Я на слаке так делал, когда слакбилд писать было лень

Пишу по памяти.

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

По поводу того, как собирать-паковать, всегда можно подглядеть в соответствующем PKGBUILD'е (или EBUILD'е, на выбор):

https://aur.archlinux.org/packages/cn/cndrvcups-capt/PKGBUILD

https://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=p...

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

zhuravlik ★★★★
()

Если program уже скомпилирован то жизнь говно и нужны различной степени грязности хаки. В общем случае скорее всего хватит следующего:

  • Создаём папку в которой будем собирать пакет. Например ./pkg
  • Затем создаём там иерархию что-то вроде ./pkg/usr/lib/program и копируем туда содержимое нашего тарбола.
  • Затем создаём путь вида ./pkg/usr/bin и создаём там относительный симлинк на исполняемый файл твоего приложения (что-то вроде (cd ./pkg/usr/bin; ln -s ../lib/program/program-bin .)
  • Не забываем создать ./pkg/install и поместить туда slack-desc для красоты и православности.
  • Переходим внутрь ./pkg и запускаем makepkg для того чтобы запаковать всё это дело в пакет (примерно makepkg ../prognam-progver-i486-1.txz).
  • Ставим пакет, пытаемся радоваться жизни, читаем про desktop файлы и про то где они должны находиться, собираем пакет снова, пишем скрипт, который делает всё тоже самое обзываем его SlackBuild ну и так далее, пока не наступит have fun :^)
KblCb ★★★★★
()
Ответ на: комментарий от KblCb

Поэтому комментом выше я и дал ссылку на готовую библиотеку грязных хаков под названием AUR. Для чего там только нет грязных хаков, вплоть до wget с захардкоженными хедерами для автопринятия лицензии.

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

Ну… Я тоже хотел ответить «читни pkgbuild'цов», но потом решил подойти к своей роли в русскоязычном slackware-сообществе более ответственно. Кроме того я так и не понял о какой программе идёт речь и решил что она вполне может оказаться настолько никому не нужной, что её нет даже в AUR.

KblCb ★★★★★
()

mv file.tar.gz file.tgz
txz — хз

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

пытаюсь бороться с принтером делаю по инструкции от Belkrr: http://forum.altlinux.org/index.php?topic=680.0

Перезапустить сервер печати CUPS не получается, его нет такого файла

И еще устройство по умолчанию отпределяется как usb://Canon/LBP2900?serial=0000B182MIE3

но по ииструкции его кидаю на ccp:/var/ccpd/fifo0 это нормально?

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

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

Я тоже не особо хотел рекламировать дистрибутив, с которого я ухожу, но в AUR действительно рай для поиска, даже разных ненужностей, которые нужны полутора людям. Сам туда пару таких ненужностей сабмиттил. :)

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

KblCb Double Commander и дрова на принтер - вот за какие пока программы идет речь.

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

на что посмотреть и в какие логи чтобы определить где проблема?

/var/log/cups/error_log

Хотя там обычно настолько информативно, что еще полчаса можно продумать, а что же на самом деле.

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

Участников здесть двое. Кэноновский демон (cppd) и cups.

Нужны логи обоих.

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

Cups же для работы принтера требует его описание в формате ppd, и его uri.

Все.

P.S. Slackware стоит убитого пятничного вечера?

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

P.S. Slackware стоит убитого пятничного вечера?

Девочке скучно, она выбирает slackware.

Принцы настроят ей принтер, она в это верит,

Патрика имени бой, все в сияющих латах...

Только вот принц компиляет gentoo, ах проклятый.

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

вот лог cups

E [02/Mar/2013:01:20:40 +0400] Returning HTTP Запрещено for CUPS-Add-Modify-Printer (ipp://localhost/printers/LBP2900) from localhost E [02/Mar/2013:01:21:05 +0400] [Job 32] ccp recv_packet error, exit E [02/Mar/2013:01:21:05 +0400] [Job 32] ccp send_data error, exit E [02/Mar/2013:01:21:12 +0400] [Job 33] ccp recv_packet error, exit E [02/Mar/2013:01:21:12 +0400] [Job 33] ccp send_data error, exit E [02/Mar/2013:01:24:16 +0400] [CGI] Saw EOF, expected '}'! E [02/Mar/2013:01:24:18 +0400] [CGI] Saw EOF, expected '}'! E [02/Mar/2013:01:24:23 +0400] [CGI] Saw EOF, expected '}'! E [02/Mar/2013:01:24:25 +0400] [CGI] Saw EOF, expected '}'! E [02/Mar/2013:01:25:50 +0400] [Job 35] Can't connect to CCPD: Connection refused E [02/Mar/2013:01:25:50 +0400] [Job 35] ccp send_data error, exit

куда копать с этими ошибками?

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

И кстати...

cups установлен?

ls /var/log/packages/cups*
Если нет - установить и попытаться еще раз настроить/печатать.

braboar ★★
()
Ответ на: вот лог cups от AnastasiaM

Не прочитал этот пост, извини.

Дальше я не знаю, что делать.

Посмотри, где-то здесь был топик помощи начинающим.

braboar ★★
()
Ответ на: вот лог cups от AnastasiaM

зачем тебе слака? кто-то взял на слабо?

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

как настроить принтер LBP2900 под slacware

http://forum.agilialinux.ru/viewtopic.php?pid=18912#p18912

эта ссылка реально помогла, БОЛЬШОЕ спасибо.

зачем тебе слака? кто-то взял на слабо? нет просто подкупило то что она очень стабильная и надежная, после windows которая за день паказала 8 синих экранов смерти и потере важных документов, я задумалась о смене на что-то более надежное.

по поводу преобразования архив «program.tar.gz» в .txz я лучше это сделаю руками т.к писать скрипты мне сложнее. я посмотрела скрипты если я правильно поняла они просто перекидывают содержимое (если оно не исходник, а только бинарное) в отдельную папочку и потом это просто запаковывают в .txz.

я чуть позже попробую написать мануал «от новичка для новичков» по настройке slacware. сама намучалась, другим тогоже не советую.

P.S. как правильно собрать прогу из исходников пока не осилила, через время разберусь.

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

я чуть позже попробую написать мануал «от новичка для новичков» по настройке slacware. сама намучалась, другим тогоже не советую.

P.S. как правильно собрать прогу из исходников пока не осилила, через время разберусь.

www.linux.org.ru/wiki/en/Slackware

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

слака первый линукс? О_о дерзай. не жрать после 6 сложнее, чем линуксы освоить до более-менее нормального уровня.

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

по поводу преобразования архив «program.tar.gz» в .txz

gzip -cd program.tar.gz | xz - > program.txz

Это без изменения внутренней структуры, только смена типа архивации, разумеется.

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

по поводу преобразования архив «program.tar.gz» в .txz я лучше это сделаю руками т.к писать скрипты мне сложнее

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

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

Для бинарных вариантов — как правило так и есть (что еще можно сделать с бинарниками?). Иногда приходится дополнительно поправить настройки/сценарии запуска и т.п.

ps. Если про «сборку из исходников» было в отношении DoubleCommander — не стоит отчаиваться, у него действительно нестандартная сборка (нужны fpc и lazarus). Но обычно, если приходится при сборке делать более чем
./configure ...; make; make DESTDIR=/tmp/package-something install; cd /tmp/package-something; makepkg /tmp/something-ver-arch-buuld_tag.txz, не считая разрешения сборочных/рантаймовых зависимостей, то это делается, как правило, за разработчика.

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

Что сказать-то хотел?

Видимо, не понял только ты... :-)

Повторить ? Хорошо. Считать классическое имя файла с архивом признаком того, что это пакет - странное, скажем так, решение. А коль скоро такое произошло, надо чётко говорить, когда речь про архив, а когда про архив со структурой пакета.

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

не жрать после 6 сложнее, чем линуксы освоить до более-менее

Так это... После шести осваивать линуксы - будет не до еды. :-)

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

Пакеты мы будем собирать под правами root-а

В Slackware иначе нельзя?

можно. Но зачем? Если ты пакет для системы делаешь, то его всё равно руту ставить. А вот make install можно (и нужно) делать от юзера.

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

Вовсе не обязательно. --prefix=DESTDIR а потом makepkg Я на слаке так делал, когда слакбилд писать было лень

ага. А потом всем рассказывал, что в «шлаке файлопомойка начинается с корня»?

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

нет просто подкупило то что она очень стабильная и надежная, после windows которая за день паказала 8 синих экранов смерти и потере важных документов, я задумалась о смене на что-то более надежное.

слака имеет очень давнюю историю, и очень многие вещи в ней просто подразумеваются. Надо slackbook читать. Иначе - ты наступаешь на грабли, которые ВНЕЗАПНО лежат там, где ты их не ждёшь. Суть в том, что эти грабли тут всю жизнь лежали, это их законное место, и все об этом знают. А проблемы тех, кто об этом не знает, никого не волнуют. Переносить их в другое место никто не будет, зачем?

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

Повторить ? Хорошо. Считать классическое имя файла с архивом признаком того, что это пакет - странное, скажем так, решение. А коль скоро такое произошло, надо чётко говорить, когда речь про архив, а когда про архив со структурой пакета.

зачем Патрегу вводить новый формат архивов программ, если t?z нормально подходит? В принципе, source.tar.gz это тоже ПАКЕТ, только для ВСЕХ линуксов СРАЗУ. Потому-то ставить его просто как там в README написано и НЕ рекомендуется. В каждой избушке свои погремушки.

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

можно. Но зачем?

Действительно, зачем? Что плохого в том, что у процесса больше прав, чем ему реально нужно?

Если ты пакет для системы делаешь, то его всё равно руту ставить.

Вот когда дойдет до установки, тогда рутовые права и задействовать.

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

зачем Патрегу вводить новый формат архивов программ, если t?z нормально подходит?

Почему формат ? Наименование. Чтобы сразу было понятно, о чём речь. Пример я приводил один уже: Open Document - в чистом виде zip. Но именуется иначе.

В принципе, source.tar.gz это тоже ПАКЕТ, только для ВСЕХ линуксов СРАЗУ

Просто архив исходников. Может быть, там что-то есть для сборки посредством make, может нет. Чаще, конечно есть, но не всегда.

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

Действительно, зачем? Что плохого в том, что у процесса больше прав, чем ему реально нужно?

в данном случае я согласен с Патрегом. Если не согласен - делай как знаешь.

drBatty ★★
()
25 октября 2013 г.
Ответ на: комментарий от tatiana

худеть легко, надо только чтобы кто-то сломал челюсть, тогда на месяц зашьют рот и килограмм 5 - 10 как ветром сдует.

можно шинировать челюсть и без перелома, но платно, где-то рублей 500 - 700 стоит.

IvanR ★★★
()

Какой упоротый тред, checkinstall по моему на 2013 год только в дебиане/рхел толком работает, у cлаки есть замечательная программа Src2pkg.

Так что man Src2pkg и ваши волосы станут покладистыми.

anonymous
()

Для этого нужно распаковать файл в отдельную директорию, пусть будет appdir, в ней соответственно будет appdir/usr и прочее. Там нужно создать директорию install в которой разместить файл slack-desc — его шаблон можешь взять из любого пакета или слакбилда. Это не обязательно делать, но полезно. Кроме того, если нужен скрипт, создающий всякие там симлинки, его так же нужно подготовить и назвать doinstall.sh или как-то так.

После этого нужно перейти в эту директорию: cd appdir и вызвать makepkg имя_получаемого_пакета.txz

Вот и всё. Скрипты и описания есть в любом приличном пакете, но если делаешь только для себя, они не обязательны.

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