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

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

Open
dfloer opened this issue Jun 15, 2024 · 0 comments
Open

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

dfloer opened this issue Jun 15, 2024 · 0 comments

Comments

@dfloer
Copy link

dfloer commented Jun 15, 2024

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
@dfloer dfloer changed the title Makedeb Docker Permissions Error, Works With Jammy Makedeb Docker Permissions Error With Noble, Works With Jammy Jun 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant