Skip to content

Packages built on MacOS with docker runner are dropping permission/executable bits #2103

@conorpp

Description

@conorpp

When building on MacOS and using the docker runner, the permission bits on binaries in packages seem to get dropped. This makes the packages unsable.

Docker

Client:
 Version:           27.4.0
 API version:       1.47
 Go version:        go1.22.10
 Git commit:        bde2b89
 Built:             Sat Dec  7 10:35:43 2024
 OS/Arch:           darwin/arm64
 Context:           desktop-linux

Server: Docker Desktop 4.37.2 (179585)
 Engine:
  Version:          27.4.0
  API version:      1.47 (minimum version 1.24)
  Go version:       go1.22.10
  Git commit:       92a8393
  Built:            Sat Dec  7 10:38:33 2024
  OS/Arch:          linux/arm64
  Experimental:     false
 containerd:
  Version:          1.7.21
  GitCommit:        472731909fa34bd7bc9c087e4c27943f9835f111
 runc:
  Version:          1.1.13
  GitCommit:        v1.1.13-0-g58aa920
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Melange

  __  __   _____   _          _      _   _    ____   _____
 |  \/  | | ____| | |        / \    | \ | |  / ___| | ____|
 | |\/| | |  _|   | |       / _ \   |  \| | | |  _  |  _|
 | |  | | | |___  | |___   / ___ \  | |\  | | |_| | | |___
 |_|  |_| |_____| |_____| /_/   \_\ |_| \_|  \____| |_____|
melange

GitVersion:    0.30.0
GitCommit:     brew
GitTreeState:  clean
BuildDate:     2025-07-25T07:24:48Z
GoVersion:     go1.24.5
Compiler:      gc
Platform:      darwin/arm64

To reproduce:

melange build ./examples/go-install.yaml --arch aarch64 --out-dir=build
cd build/aarch64
tar xvf hello-0.0.1-r0.apk
ls -ltr usr/bin
total 3584
-rw-------@ 1 conorpatrick  staff  1832909 Dec 31  1969 hello

OrbStack

Note I tried the same with OrbStack and I noticed that it works fine. I wonder if this is a problem with Docker.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions