Comments (8)
Originally, there was a caching mechanism, but it has been removed in favour of 'APT_PROXY' with 'apt-cacher-ng'.
The builds were resumable, unless CLEAN=1
is set, but that was broken a while back. For now you can 'SKIP' the finished stages and re-run from the one that failed.
from pi-gen.
It still requires manual removal of the directory for the stage that failed. I saw an APT_PROXY setting in a config file but was not aware of 'apt-cacher-ng'.. Might be a good idea to add that into the readme.
With that in mind, it makes it easier to resume, but maybe the script should remove the directory for the stage that failed, and make a note of which stages were successful, so re running just resumes at the next stage not finished.. unless a 'clean' is indicated then restart the entire thing. That way no manual files have to be created and remembered to be removed.
The failure also creates a situation where everything is still mounted, so it has to be unmounted before anything can be removed.
If I added any of this in locally, would it be useful to submit back?
If not, or at lest for now a note in the readme of what needs to be done if a stage fails would be helpful.
from pi-gen.
from pi-gen.
I apologize.. I did not see the APT_PROXY note ..
CLEAN=1 doesn't seem to do anything.. it's in the build script, but what exactly is it supposed to do?
from pi-gen.
Before starting a stage, it clears out the existing files.
from pi-gen.
Ahh.. okay.. it seems CLEAN=1 is set before export stage in build.sh.. so would need to be set in config to clean out the stage directories.
CLEAN should probably be added to the readme.. it would have saved me from manually cleaning things up.
from pi-gen.
A related problem is that sometimes /proc, /sys, etc. might remain mounted, preventing removal of the work directory without manually unmounting things.
from pi-gen.
A related problem is that sometimes /proc, /sys, etc. might remain mounted, preventing removal of the work directory without manually unmounting things.
I had noticed that as well but never thought to mention it. It has been a while since I have had to build a custom Pi image and was wondering if the script issue was still an issue. Since you posted about things still being mounted I take it the issue still persists.
from pi-gen.
Related Issues (20)
- uuid command missing in Lite images HOT 1
- /boot/firmware changes missing in resize script HOT 2
- piwiz always starts HOT 2
- build.sh failes, error hidden and can't be accessed HOT 15
- aplay: set_params:1352: Sample format non available HOT 7
- Orange Pi support
- Unabel to see /dev/ttyAMA0 HOT 6
- Image size and build time drastically increased HOT 1
- Cannot build 32-bit images (bullseye, bookworm) using standard build.sh on i686 Debian any more HOT 8
- Customization Using RPi Imager Cause Images to Fail on Boot HOT 7
- Use gpt and btrfs as root filesystem HOT 2
- Problems with `initramfs` not being generated HOT 4
- Removal of config.txt symlinks breaks postinst for fbturbo package HOT 1
- When building an image with zfs-dkms and DEBIAN_FRONTEND=noninteractive and still getting confirmation window HOT 3
- Custom raspberry OS image cannot boot up when boot partition size is 64MB or 128MB HOT 8
- MacOS + Docker: qemu-user-static check from #685 breaking build early HOT 5
- /usr/bin/raspi-config: 847: lxpanelctl: not found HOT 6
- The apt caching proxy we use currently is unreliable - let's replace it with nginx? HOT 1
- stage_list availability during build HOT 2
- ./build-docker.sh error "setarch: failed to set personality to linux32: Invalid argument" HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pi-gen.