Vanilla-OS/live-iso

Can't Build Os In CodeSpaces "mounted with noexec or nodev"

azkadev opened this issue · 2 comments

Issue Description

I tried to build this OS in codespaces because my internet is not fast, but when building this error appeared

#------------------#
# LIVE-BUILD BUILD #
#------------------#

[2023-12-23 19:13:15] lb build 
P: live-build 20230502
P: Building for a debian/sid/amd64 system
[2023-12-23 19:13:15] lb bootstrap 
P: Setting up clean exit handler
[2023-12-23 19:13:15] lb bootstrap_cache restore
[2023-12-23 19:13:15] lb bootstrap_debootstrap 
P: Begin bootstrapping system...
P: If the following stage fails, the most likely cause of the problem is with your mirror configuration or a caching proxy.
P: Running debootstrap...
/usr/sbin/debootstrap: 1785: cannot create /working_dir/tmp/amd64/chroot/test-dev-null: Permission denied
E: Cannot install into target '/working_dir/tmp/amd64/chroot' mounted with noexec or nodev
E: An unexpected failure occurred, exiting...

Steps to Reproduce

I have tried adding sudo in the build command but the result is still the same,

sudo docker run --privileged -i -v /proc:/proc \
    -v ${PWD}:/working_dir \
    -w /working_dir \
    ghcr.io/vanilla-os/pico:main \
    /bin/bash -s etc/terraform.conf < build.sh

I have also done chmod 777 on all files but the results are still the same

On what version of Vanilla OS this happens?

22.10

Additional Information

How about this? Do you have to use Debian OS? i am using ubuntu 20 on codespaces

You are running the command in a folder that doesn't allow for executables or devices. "mounted with noexec or nodev"

Changing the build process to allow for this setup would probably be a bit of work.

You should check if you can run this in a folder that allows it.

@azkadev You can fork the repo and directly run the build as part of GitHub actions, the manual docker building process isn't required in this case. Also, Codespaces aren't ideal for building ISOs or large artefacts generally (as you might incur payments if the storage usage crosses the monthly limit).


Kinda curious, why are you building the ISO from scratch?

If you need to make modifications to the root then it must be in a custom desktop image which you can rebase to after installation.