Bug 57314 - alien ожидает slack-специфичную структуру пакета при преобразовании из tgz
Summary: alien ожидает slack-специфичную структуру пакета при преобразовании из tgz
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: alien (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-12-22 17:46 MSK by Лавренко Егор Сергеевич
Modified: 2025-12-23 12:36 MSK (History)
4 users (show)

See Also:


Attachments
тестовый rpm (64.32 KB, application/x-rpm)
2025-12-22 17:46 MSK, Лавренко Егор Сергеевич
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Лавренко Егор Сергеевич 2025-12-22 17:46:21 MSK
Created attachment 20387 [details]
тестовый rpm

Системы:
Alt Workstation 11.1 x86-64
Alt Workstation K 11.1.1 x86-64
Alt Education 11.0 XFCE x86-64 
Alt Education 11.0 KDE x86-64
Alt Server 11.0 x86-64 (Обновленная до Sisyphus)

Версия пакета:
alien-8.95.9-alt3

Шаги для воспроизведения:
1. Скачать любой rpm-пакет (в качестве примера можно использовать файл из вложения)
2. Преобразовать в tgz-формат : 
   $ alien --to-tgz hello-2.10-6.x86_64.rpm
   Вывод: hello-2.10-x86_64-1_alien.tgz generated
3. Выполнить обратное преобразование:
   $ alien --to-rpm hello-2.10-x86_64-1_alien.tgz

Ожидаемый результат (примерный вывод):
hello-2.10-2.noarch.rpm generated

Реальный результат:
Warning: alien is not running as root!
Warning: Ownerships of files in the generated packages will probably be wrong.
Package build failed. Here's the log of the command (cd 'hello-2.10'; rpmbuild --buildroot='/home/test/hello-2.10' -bb --target noarch 'hello-2.10-2.spec'):
Платформы для сборки: noarch
Сборка для платформы noarch
Processing files: hello-2.10-2
ошибка: Нет такого файла или каталога: /home/test/hello-2.10/install
ошибка: Нет такого файла или каталога: /home/test/hello-2.10/install/slack-desc
Ошибки сборки пакетов:
    Нет такого файла или каталога: /home/test/hello-2.10/install
    Нет такого файла или каталога: /home/test/hello-2.10/install/slack-desc

Дополнительно:
1. В P11 не воспроизводится (alien-8.95.6-alt1)
2. Аналогичная ошибка возникает при попытке преобразования из tgz в lsb:
   $ alien --to-lsb hello-2.10-x86_64-1_alien.tgz
3. При конвертации из rpm в tgz формат, создается tar-архив (вместо пакета slack-формата) (https://bugzilla.altlinux.org/show_bug.cgi?id=57269#c1):
   $ file hello-2.10-x86_64-1_alien.tgz 
   Вывод: hello-2.10-x86_64-1_alien.tgz: gzip compressed data, from Unix, original size modulo 2^32 256000
Comment 1 Лавренко Егор Сергеевич 2025-12-23 10:02:14 MSK
При попытке воссоздать структуру каталогов, указанную в ошибке, и снова выполнить конвертацию из tgz в rpm, следующий вывод:
$ mkdir -p /home/test/hello-2.10/install
$ mkdir -p /home/test/hello-2.10/install/slack-desc
$ alien --to-rpm hello-2.10-x86_64-1_alien.tgz
Warning: alien is not running as root!
Warning: Ownerships of files in the generated packages will probably be wrong.
mkdir: невозможно создать каталог «hello-2.10»: Файл существует
unable to mkdir hello-2.10:  at /usr/share/perl5/Alien/Package.pm line 257, <FILELIST> line 145.
Comment 2 Anton Farygin 2025-12-23 10:21:09 MSK
Повесьте в апстримный github, пожалуйста
Comment 3 Anton Farygin 2025-12-23 12:15:49 MSK
(Ответ для Anton Farygin на комментарий #2)
> Повесьте в апстримный github, пожалуйста

не надо вешать
Comment 4 Repository Robot 2025-12-23 12:36:21 MSK
alien-8.95.9-alt4 -> sisyphus:

Tue Dec 23 2025 Anton Farygin <rider@altlinux> 8.95.9-alt4
- fix tar fallback to match Slackware path format (closes: #57314)