Andy-Python-Programmer / aero

Aero is a new modern, experimental, UNIX-like operating system following the monolithic kernel design. Supporting modern PC features such as long mode, 5-level paging, and SMP (multicore), to name a few.
https://aero.andypy.dev
GNU General Public License v3.0
1.17k stars 50 forks source link

recompile specific packages with aero.py flags #40

Open YusufKhan-gamedev opened 2 years ago

YusufKhan-gamedev commented 2 years ago

There should be an option in aero.py to recompile specific packages, it would allow broken packages to be repaired faster.

48cf commented 2 years ago

There is a script in tools directory called rebuild-sysroot.sh which allows to rebuild a package, it will remove all the sources and binaries from that package, clone it, patch it and build it all over. If you want to rebuild the package from the source that's in the bundled directory you can do this in the sysroot directory instead (substitute $PACKAGE with the actual package name):

rm -rf pkg-builds/$PACKAGE
rm -rf packages/$PACKAGE
xbstrap install $PACKAGE
YusufKhan-gamedev commented 2 years ago

There is a script in tools directory called rebuild-sysroot.sh which allows to rebuild a package, it will remove all the sources and binaries from that package, clone it, patch it and build it all over. If you want to rebuild the package from the source that's in the bundled directory you can do this in the sysroot directory instead (substitute $PACKAGE with the actual package name):

rm -rf pkg-builds/$PACKAGE
rm -rf packages/$PACKAGE
xbstrap install $PACKAGE

This should be integrated into aero.py, thats why I put a issue up.

Dennisbonke commented 2 years ago

Isn't aero.py a wrapper already? And for good measure, one only has to do xbstrap install --recon $PACKAGE and it will reconfigure, rebuild and reinstall the package.

48cf commented 2 years ago

Isn't aero.py a wrapper already? And for good measure, one only has to do xbstrap install --recon $PACKAGE and it will reconfigure, rebuild and reinstall the package.

We don’t shell out for xbstrap, though I’ll still look into that since it looks like xbstrap is capable of that

YusufKhan-gamedev commented 2 years ago

Isn't aero.py a wrapper already? And for good measure, one only has to do xbstrap install --recon $PACKAGE and it will reconfigure, rebuild and reinstall the package.

We don’t shell out for xbstrap, though I’ll still look into that since it looks like xbstrap is capable of that

Anyway, we need to remove the code in uwux/bundled/

Andy-Python-Programmer commented 2 years ago

what

YusufKhan-gamedev commented 2 years ago

what

You need to remove the source in aero/bundled/xxxxx as well when restoring a package just in case the source got corrupted when downloading