Skip to content

Multi arch support #6

Open
Open

Description

@waja

Hi @hoellen,

what do you think about multi arch builds? This can be done with little effort with github actions and uploaded to ghcr. The downside of this is, that builds needs more time the more archs are added to the pipeline.

If you like, I can propose a PR.

Chears, Jan.

Activity

  1. hoellen commented on Dec 11, 2021

    @hoellen
    Owner

    Yes, I would happily merge such a PR. The longer build time is negligible.

  2. waja commented on Dec 13, 2021

    @waja
    ContributorAuthor

    Looks like malloc has issues on 32 bit arch ... seen this on i386 and armv6 (other not tested yet):

     > [linux/arm/v6 build-malloc 2/2] RUN apk --no-cache add build-base git gnupg && cd /tmp  && wget -q https://github.com/thestinger.gpg && gpg --import thestinger.gpg  && git clone --depth 1 --branch 8 https://github.com/GrapheneOS/hardened_malloc  && cd hardened_malloc && git verify-tag $(git describe --tags)  && make CONFIG_NATIVE=false:
    #79 69.56 gpg: WARNING: This key is not certified with a trusted signature!
    #79 69.56 gpg:          There is no indication that the signature belongs to the owner.
    #79 69.56 Primary key fingerprint: 65EE FE02 2108 E2B7 08CB  FCF7 F9E7 12E5 9AF5 F22A
    #79 76.54 cc  -std=c11 -O3 -flto -fPIC -fvisibility=hidden -fno-plt -fstack-clash-protection -fstack-protector-strong -pipe -Wall -Wextra -Wcast-align=strict -Wcast-qual -Wwrite-strings -Werror -Wmissing-prototypes  -D_GNU_SOURCE -I include -DCONFIG_SEAL_METADATA=false -DZERO_ON_FREE=true -DWRITE_AFTER_FREE_CHECK=true -DSLOT_RANDOMIZE=true -DSLAB_CANARY=true -DSLAB_QUARANTINE_RANDOM_LENGTH=1 -DSLAB_QUARANTINE_QUEUE_LENGTH=1 -DCONFIG_EXTENDED_SIZE_CLASSES=true -DCONFIG_LARGE_SIZE_CLASSES=true -DGUARD_SLABS_INTERVAL=1 -DGUARD_SIZE_DIVISOR=2 -DREGION_QUARANTINE_RANDOM_LENGTH=256 -DREGION_QUARANTINE_QUEUE_LENGTH=1024 -DREGION_QUARANTINE_SKIP_THRESHOLD=33554432  -DFREE_SLABS_QUARANTINE_RANDOM_LENGTH=32 -DCONFIG_CLASS_REGION_SIZE=34359738368  -DN_ARENA=4 -DCONFIG_STATS=false  -c -o chacha.o chacha.c
    #79 79.02 In file included from chacha.h:4,
    #79 79.02                  from chacha.c:5:
    #79 79.02 util.h:39:18: error: '__int128' is not supported on this target
    #79 79.02    39 | typedef unsigned __int128 u128;
    #79 79.02       |                  ^~~~~~~~
    #79 80.33 make: *** [<builtin>: chacha.o] Error 1
    

    Any idea?

  3. waja commented on Dec 14, 2021

    @waja
    ContributorAuthor

    I opened an issue down at hardened_malloc.

  4. waja commented on Dec 14, 2021

    @waja
    ContributorAuthor

    @hoellen okay ... since hardened_malloc is not intended for 32 bit arch, how to deal with this?

  5. hoellen commented on Jan 13, 2022

    @hoellen
    Owner

    Mmh... I vote for only supporting 64bit architecture. That still gives us support for many devices. Everything else introduces unnecessary complexity.

  6. waja commented on Jan 18, 2022

    @waja
    ContributorAuthor

    Unfortunately archs beside amd64 are failing with exit code 137 (https://github.com/waja/docker-nextcloud/runs/4855481160?check_suite_focus=true#step:11:5105) which seems to be an issue with memory shortage of the running container (it has 6.5 GiB) when installing packages in the nextcloud image.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions