Skip to content

Makedeb Docker Permissions Error With Noble, Works With Jammy #3

@dfloer

Description

@dfloer

I'm working on a build system using the makedeb arm64 docker container (on an arm64 Jammy host) to build versions of a couple packages for Jammy and Noble based systems. Things work great for Jammy, but not for Noble. I get a permissions error: [!] You do not have write permission for the directory $BUILDDIR (/home/makedeb). and note that on Jammy, the /home/makedeb directory is owned by user "ubuntu", but on Jammy it's "makedeb".

Here's a minimal repro:
docker-compose.yaml

services:
  build-jammy:
    volumes:
      - ./build/jammy:/home/makedeb
    build:
      context: .
      dockerfile: Dockerfile-jammy

  build-noble:
    volumes:
      - ./build/noble:/home/makedeb
    build:
      context: .
      dockerfile: Dockerfile-noble

Dockerfile-jammy

FROM ghcr.io/makedeb/makedeb:ubuntu-jammy
CMD pwd; ls -la .; makedeb

Dockerfile-noble

FROM ghcr.io/makedeb/makedeb:ubuntu-noble
CMD pwd; ls -la .; makedeb

I then created a directory structure to test (empty PKGBUILD files are fine for this repro):

mkdir -p build/jammy
mkdir -p build/noble
touch build/jammy/PKGBUILD
touch build/noble/PKGBUILD

And then build and try to run the containers:

docker-compose build
<successful results trimmed>

In my code, I've got PKGBUILDs ported from Arch, but I don't need an actual PKGBUILD to demonstrate the permissions issue, so here's the output from

docker-compose up
Creating network "makedeb-repro_default" with the default driver
Creating makedeb-repro_build-jammy_1 ... done
Creating makedeb-repro_build-noble_1 ... done
Attaching to makedeb-repro_build-jammy_1, makedeb-repro_build-noble_1
build-noble_1  | /home/makedeb
build-jammy_1  | /home/makedeb
build-noble_1  | total 8
build-noble_1  | drwxrwxr-x 2 ubuntu ubuntu 4096 Jun 15 21:15 .
build-noble_1  | drwxr-xr-x 1 root   root   4096 Jun 15 00:11 ..
build-noble_1  | -rw-rw-r-- 1 ubuntu ubuntu    0 Jun 15 21:15 PKGBUILD
build-jammy_1  | total 8
build-jammy_1  | drwxrwxr-x 2 makedeb makedeb 4096 Jun 15 21:15 .
build-jammy_1  | drwxr-xr-x 1 root    root    4096 Jun 10 00:05 ..
build-jammy_1  | -rw-rw-r-- 1 makedeb makedeb    0 Jun 15 21:15 PKGBUILD
build-noble_1  | [!] You do not have write permission for the directory $BUILDDIR (/home/makedeb).
build-noble_1  |     Aborting...
build-jammy_1  | [!]  is not available for the 'arm64' architecture.
build-jammy_1  | [!] pkgrel is not allowed to be empty.
build-jammy_1  | [!] pkgver is not allowed to be empty.
build-jammy_1  | [!] pkgname is not allowed to be empty.
build-jammy_1  | [!] A maintainer must be specified. This will be an error in a future release.
build-jammy_1  | [!] pkgdesc must be set.
makedeb-repro_build-noble_1 exited with code 11
makedeb-repro_build-jammy_1 exited with code 12

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions