[devel-distro] apt + http for mkimage-profiles

Ivan A. Melnikov iv at altlinux.org
Thu Jul 23 10:26:35 MSK 2020


On Wed, Jul 22, 2020 at 09:07:16PM +0400, Evgeny Sinelnikov wrote:
> Здравствуйте,
> 
> Вновь столкнулся с давней проблемой, которая тянется ещё с 2008 года.
> Собрал тестовый образ:
> 
> sin �� xpi mkimage-profiles-baikalm $ make  DEBUG=1 ARCH=aarch64
> APTCONF=/home/sin/etc/apt.p9-aarch64-altlinux.local.task.conf
> alt-workstation-baikalm.iso
> ** ARCH: aarch64
> 15:51:05 initializing BUILDDIR: build/
> 15:51:05 preparing distro config: build/distcfg.mk
> 15:51:09 starting image build: tail -f build/build.log
> 16:48:14 done (57:05)
> ** image: ~/tmp/out/alt-workstation-baikalm-20200722-aarch64.iso [3,6G]
> 
> $ cat /home/sin/etc/apt.p9-aarch64-altlinux.local.task.conf
> Dir::Etc::main "/dev/null";
> Dir::Etc::parts "/var/empty";
> Dir::Etc::SourceParts "/var/empty";
> RPM::Ignore { "vim-plugin-vimruby"; };
> Dir::Etc::SourceList
> "/home/sin/etc/sources.p9-aarch64-altlinux.local.task.list";
> 
> $ cat /home/sin/etc/sources.p9-aarch64-altlinux.local.task.list
> rpm file:///store/mirrors/alt p9/branch/aarch64 classic
> rpm file:///store/mirrors/alt p9/branch/noarch classic
> rpm http://git.altlinux.org repo/255228/aarch64 task
> 
> 
> Суть проблемы:
> Если указать в списках источников не file, а http URI (например, как
> сейчас, из таски 255228), то имена файлов в исошку приезжают в не
> читаемом для других утилит виде (это предположение):
> 
> $ isoinfo -Jl -i
> ~/tmp/out/alt-workstation-baikalm-20200722-aarch64.iso |grep
> kernel-image-
> ----------   0    0    0        23777564 Jul 22 2020 [ 517344 00]
> kernel-image-bmitx-def_4.9.229-alt1%3ap9+255228.100.1.1 �� 15954.rpm
> ----------   0    0    0        72037551 Jul 22 2020 [ 528955 00]
> kernel-image-un-def-5.7.8-alt1.aarch64.rpm
> 
> В итоге установка падает (см. скриншоты):
> https://yadi.sk/i/y1Qa9A3CBdhlSQ
> https://yadi.sk/i/ja8mgq2bUaQYKg
> 
> 
> Возможно проблема в смешивании file:// и http://, поскольку в
> некоторых конфигурациях процент именах файлов проблемы при установке
> не вызывает. При этом почти все файлы содержат процент:
> $ isoinfo -Jl -i
> /srv/archive/BaikalM/alt-workstation-baikalm-20200712-aarch64.iso
> |grep '\.rpm\s*' | tail
> ----------   0    0    0          736402 Jul 12 2020 [1088821 00]
> yelp_3.32.2-alt1%3asisyphus+229064.200.1.1 �� 1557246359_aarch64.rpm
> ----------   0    0    0           23563 Jul 12 2020 [1089388 00]
> zabbix-agent-sudo_1%3a4.4.4-alt0.p9.1%3ap9+244181.200.5.1 �� 157.rpm
> ----------   0    0    0          242605 Jul 12 2020 [1089269 00]
> zabbix-agent_1%3a4.4.4-alt0.p9.1%3ap9+244181.200.5.1 �� 15796175.rpm
> ----------   0    0    0           24143 Jul 12 2020 [1089400 00]
> zabbix-common_1%3a4.4.4-alt0.p9.1%3ap9+244181.200.5.1 �� 1579616.rpm
> ----------   0    0    0         4341033 Jul 12 2020 [1089412 00]
> zenity_3.32.0-alt1%3asisyphus+225852.100.1.1 �� 1553840834_aarch.rpm
> ----------   0    0    0          245024 Jul 12 2020 [1091532 00]
> zip_30000000%3a3.0-alt1 �� 1442955689_aarch64.rpm
> ----------   0    0    0           56685 Jul 12 2020 [1091652 00]
> zlib_1.2.11-alt1%3asisyphus+221902.6000.4.1 �� 1550614830_aarch6.rpm
> ----------   0    0    0           74879 Jul 12 2020 [1091680 00]
> zpaq_715-alt2 �� 1488811703_aarch64.rpm
> ----------   0    0    0         2540154 Jul 12 2020 [1091717 00]
> zsh_1%3a5.6.2-alt1%3asisyphus+224143.100.1.1 �� 1552102864_aarch.rpm
> ----------   0    0    0          226822 Jul 12 2020 [1092958 00]
> zstd_1.4.3-alt1%3ap9+238696.400.1.1 �� 1570232605_aarch64.rpm
> 
> Для моей конфигурации образ не выдаёт ошибок при установке с таким
> вариантом списка источников:
> 
> $ cat /home/sin/etc/sources.p9-aarch64-altlinux.local.task.list
> rpm file:///store/mirrors/alt p9/branch/aarch64 classic
> rpm file:///store/mirrors/alt p9/branch/noarch classic
> rpm file:///home/sin/repo/git.altlinux.org repo/255228/aarch64 task
> 
> Ну, и процентов в именах файлов, при этом не возникает, никаких нет.
> 
> $ isoinfo -Jl -i
> ~/tmp/out/alt-workstation-baikalm-20200722-aarch64.iso |grep
> kernel-image
> ----------   0    0    0        23777564 Jul 22 2020 [ 517344 00]
> kernel-image-bmitx-def-4.9.229-alt1.aarch64.rpm
> ----------   0    0    0        72037551 Jul 22 2020 [ 528955 00]
> kernel-image-un-def-5.7.8-alt1.aarch64.rpm
> $ isoinfo -Jl -i ~/tmp/out/alt-workstation-baikalm-20200722-aarch64.iso | grep %
> $
> 
> $ isoinfo -Jl -i
> ~/tmp/out/alt-workstation-baikalm-20200722-aarch64.iso |grep
> '\.rpm\s*' | tail
> ----------   0    0    0          179525 Jul 22 2020 [1090400 00]
> yelp-xsl-3.32.1-alt1.noarch.rpm
> ----------   0    0    0          242605 Jul 22 2020 [1090488 00]
> zabbix-agent-4.4.4-alt0.p9.1.aarch64.rpm
> ----------   0    0    0           23563 Jul 22 2020 [1090607 00]
> zabbix-agent-sudo-4.4.4-alt0.p9.1.noarch.rpm
> ----------   0    0    0           24143 Jul 22 2020 [1090619 00]
> zabbix-common-4.4.4-alt0.p9.1.noarch.rpm
> ----------   0    0    0         4341033 Jul 22 2020 [1090631 00]
> zenity-3.32.0-alt1.aarch64.rpm
> ----------   0    0    0          245024 Jul 22 2020 [1092751 00]
> zip-3.0-alt1.aarch64.rpm
> ----------   0    0    0           56685 Jul 22 2020 [1092871 00]
> zlib-1.2.11-alt1.aarch64.rpm
> ----------   0    0    0           74879 Jul 22 2020 [1092899 00]
> zpaq-715-alt2.aarch64.rpm
> ----------   0    0    0         2540154 Jul 22 2020 [1092936 00]
> zsh-5.6.2-alt1.aarch64.rpm
> ----------   0    0    0          226822 Jul 22 2020 [1094177 00]
> zstd-1.4.3-alt1.aarch64.rpm
> 

Исходная проблема, которая тянулась с 2008 года, выглядела иначе:
там образ вообще не собирался. Эта проблема была неоднократно
исправлена в RPM: файлы с '#' и '%' были признаны нормальными, и
всё работало^{TM}. Её последняя инкарнация тут:

https://bugzilla.altlinux.org/35125

Так что я сомневаюсь, что это та же проблема. Может, у тебя образ по пути
побился, или ещё что, надо бы посмотреть конечно.

Сами по себе проценты в именах файлов влиять ни на что не должны,
но конечно неприятны: плохо, что образ зависит от использованного при
сборке метода apt. Явно задавать имена в виде
'%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm' где-нибудь
в mkimage кажется разумным.

-- 
wbr,
  iv m.


More information about the devel-distro mailing list