Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mc.ext.ini: support OpenEmbedded ipk archives #4626

Closed
mc-butler opened this issue Jan 6, 2025 · 5 comments
Closed

mc.ext.ini: support OpenEmbedded ipk archives #4626

mc-butler opened this issue Jan 6, 2025 · 5 comments
Assignees
Labels
area: core Issues not related to a specific subsystem prio: medium Has the potential to affect progress
Milestone

Comments

@mc-butler
Copy link

Important

This issue was migrated from Trac:

Origin https://midnight-commander.org/ticket/4626
Reporter ad (git+midnight-commander@….net)

Two types of ipk archives appear to exist:

  • OpenWRT
  • Openembedded / Yocto

The former is a (gzip-compressed) tar archive, which appears to be
modelled after the Debian package format (but not matching it
exactly!), containing the three files debian-binary, data.tar, and
control.tar (the latter two may be compressed).

The latter is a proper Debian archive, which means it's an ar archive,
with the files debian-binary, control.tar, and data.tar in exactly this
order. control and data may also be compressed.

While modelled after the Debian package format [1], OpenWRT ipk
archives don't strictly adhere to it: Debian packages should be ar
archives (not tar) and the order of files inside the archive matters
(OpenWRT doesn't follow this).

Midnight Commander is currently unable to display the Openembedded ipk
archives as both use the .ipk suffix, and because one is a tar- and one
is an ar archive, and because the ipk suffix is hooked up to
Include=tar.gz, which (obviously) doesn't support ar archives.

Update mc.ext.ini to also handle OpenEmbedded ipk packages by also
inspecting the type, in addition to the suffix. Note that we can not
unconditionally use the deb rule for both types because the OpenWRT
package don't strictly conform to the Debian package format and
dpkg-deb and friends complain.

Link: https://manpages.debian.org/bookworm/dpkg-dev/deb.5.en.html [1]
Signed-off-by: André Draszik <andre.draszik@linaro.org>

Note

Original attachments:

@mc-butler
Copy link
Author

Changed by ad (git+midnight-commander@….net) on Jan 6, 2025 at 16:29 UTC

@mc-butler
Copy link
Author

Changed by andrew_b (@aborodin) on Jan 7, 2025 at 7:57 UTC (comment 1)

  • Status changed from new to accepted
  • Milestone changed from Future Releases to 4.8.33
  • Branch state changed from no branch to on review
  • Owner set to andrew_b
  • Votes set to andrew_b

Branch: 4626_ipk
[8cfb4ef4e06c8e677403c889512d5d792af55597]

@mc-butler
Copy link
Author

Changed by zaytsev (@zyv) on Jan 7, 2025 at 19:52 UTC (comment 2)

  • Branch state changed from on review to approved
  • Votes changed from andrew_b to andrew_b zaytsev

Maybe better call it ipk-openwrt instead of ipk-targz ? Not sure about it.

@mc-butler
Copy link
Author

Changed by andrew_b (@aborodin) on Jan 8, 2025 at 14:11 UTC (comment 2.3)

  • Votes changed from andrew_b zaytsev to committed-master
  • Resolution set to fixed
  • Status changed from accepted to testing
  • Branch state changed from approved to merged

Replying to zaytsev:

Maybe better call it ipk-openwrt instead of ipk-targz ?

Done.

Merged to master: [da12b1a].

@mc-butler
Copy link
Author

Changed by andrew_b (@aborodin) on Jan 8, 2025 at 14:14 UTC (comment 4)

  • Status changed from testing to closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: core Issues not related to a specific subsystem prio: medium Has the potential to affect progress
Development

No branches or pull requests

2 participants