AppImage / AppImage/AppImageKit

AppImages don't work in Docker containers any more (cause: magic bytes)

Đang mở
#828 28 bình luận 1 reaction 0 người được giao Xem trên GitHub
bug needs verification
Ngôn ngữ chính
Không có dữ liệu ngôn ngữ
Star
9.4k
Fork
588
Chỉ số merge pull request
Chỉ số pull request đang chờ

Mô tả

A few weeks ago, I first noticed that some AppImages no longer run in Docker containers. This is a bit annoying especially when working with software like e.g., linuxdeploy, to build AppImages in those containers.

Now, the strange part is that I couldn't reproduce this on Travis yet. But tonight I found out that it must have something to do with the magic bytes in the ELF header. As mentioned previously (e.g., in #699), by embedding the magic bytes as we do currently, we occupy some "might be evaluated by interpreter" ones, which break other software, e.g., qemu. It seems like this is the case in those containers as well.

Temporary fix:

```
dd if=/dev/zero bs=1 count=3 seek=8 conv=notrunc of=my.AppImage
```

We should analyze whether this is a bug we caused while we changed the building of the runtime recently (see #818), or whether some component e.g., received an update, in the container. I'm pretty sure I've seen this issue _before_ that PR was merged, though, and actually it'd be better if this was a bug in this container in my opinion.

A start would be to test this in other container images. I ran `ubuntu:trusty` containers, and we could check whether e.g., `centos` or `opensuse` containers yield the issue as well. We could also try this on the latest Ubuntu trusty live ISO.

Note: I tested a variety of AppImages and also the pure runtime, this is not limited to linuxdeploy only.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.