InsanePrawn
|
707efe6bbd
|
image: use Flavour.parse_flavourinfo() for rootfs_size
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
eebca29c55
|
packages/flavour: implement flavourinfo.json parsing
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
3c91abd175
|
image.py: use new constants.POST_CMDS for post-cmd instead of per-flavour cmd
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
b3e2059196
|
packages/cli: add help str for cmd_list
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
6b613287bf
|
packages.srcinfo_cache: make dumped json more human-readable with indent=2
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
eb63a6869a
|
binfmt: fix up unnecessary shell and missing quoting at once
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
02e1b75a79
|
image.py: migrate to packages.flavour.get_profile_flavour() for the flavour name
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
4d86962862
|
packages: check_package_version_built(): clean up logging a bit
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
7ab4904cbc
|
main.py: always print at least the beginning and end of the stack trace
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
42d7a701fb
|
flash.py,boot.py: use packages.flavours.get_profile_flavour(), add --profile option
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
c0b3b15260
|
packages: cmd_list_{devices,flavours}(): error on empty results
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
34ffbfb0bf
|
pkgbuild: clone_pkgbuilds(): fix typos
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
ba5cda7cfa
|
config: prompt_profile(): handle uninitialised PKGBUILDs gracefully and warn user
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
72d9bf3a37
|
config: cmd_profile_init(): make profile name optional, default to config.file.profiles.current
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
771199d932
|
packages.setup_sources(): log when package version changes after refreshing
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
f705e39ca1
|
chroot.mount_{ccache,rust}: use config.get_path() to resolve %cache_dir%
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
2757490a8f
|
packages: check_package_version_built(): don't refresh sources by default, default to doing it in get_unbuilt_package_levels() though
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
851b4e7477
|
packages: build_package(): improve logging so the user has a chance to know what's going on.
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
49f452342e
|
packages: setup_sources(): we need to use a chroot or else the paths in pkgbuilds/$pkg/src/ will be hosed up
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
97ae046f1e
|
packages/build: setup_sources(): remove chroot, add srcinfo cache, use in check_package_built()
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
16b2f1a3c2
|
packages: Pkgbase.update(): fixups
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
e691afd328
|
packages/srcinfo_cache: add src_initialized=sha256sum(PKGBUILD)
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
0fdb6f891b
|
dataclass: handle non-DataClass Munches properly
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
b709fd73b9
|
packages/srcinfo_cache: track whether cache was correct or state had been changed
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
0983d3466d
|
packages.pkgbuild: add Pkgbuild.srcinfo_cache
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
3ea7e98a48
|
pytest: move coverage flags from .gitlab-ci.yml to pytest.sh, add test_requirements.txt for pip
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
5c8f0acfcd
|
exec: run_cmd() include cwd in debug log
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
f535344351
|
utils.git(): default cwd to None instead of "."
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
686a62685e
|
packages: parse_pkgbuild(): banish SRCINFO caching into new file srcinfo_cache.py
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
2f8d53648e
|
packages: discover_pkgbuilds: caching fixes and cleanups
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
73dc5a287a
|
packages: discover_pkgbuilds: use threading as backend for Parallel instead of loky for speed
benchmark: `time kupferbootstrap -vW packages list`
uncached srcinfos:
- threading: ~83s
- multiprocessing: ~86s
- loky: ~144s (~2x)
cached srcinfos:
- threading: ~0.6s
- multiprocessing: ~0.8s
- loky: ~50s (~100x)
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
3b8242be19
|
packages: parse_pkgbuilds: cache makepkg --printsrcinfo output to SRCINFO, tie to PKGBUILD checksum in srcinfo_meta.json
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
b31160146b
|
utils.py: add sha256sum(filepath)
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
f77aa4f2a2
|
config: add listings of devices and flavours to config profile init aka prompt_profile() and --no-parse flag
This is slow-ish without SRCINFO caching
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
7b7caf3f37
|
dataclass: DataClass.tranform(): handle Optional dict/Munch items
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
adcdf38c14
|
packages: add flavour.py: initial implementation for Flavour scanning
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
6f9a013c2e
|
packages: add cmd_devices_list()
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
75c832cbfb
|
packages: get_devices(): use lazy scanning, scan only device repository
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
ddc92012b8
|
packages: discover_pkgbuilds(): introduce ability for partial scanning by limiting repositories
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
2a20f6c45a
|
config: add Config.enforce_profile_flavour_set()
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
d3cdd64aea
|
packages: improve ux around cli and filter_pkgbuilds() to indicate that the query was empty or wrong
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
bca1e29648
|
packages/pkgbuild: add pkgdesc description parsing
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
1fd84bb9c2
|
packages/pkgbuild: add get_pkgbuild_by_name(name, lazy=True) for easy cache access
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
e4320578ef
|
packages: init_pkgbuilds(): add lazy param and behaviour
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
69404a4267
|
packages/build: check_package_built(): add init_prebuilts(arch)
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
7d803fc5bd
|
config: Config.update(): avoid Munch attr error by calling .toDict() on self.file before comparison with merged
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
dd0d848b8f
|
image.cmd_build(): parse deviceinfo only after building the packages
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
98140565ef
|
packages: parse_pkgbuild(): handle split packages properly
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
ad966d6616
|
chroot.cmd_chroot(): call image.cmd_inspect() for type='rootfs' and clean up
|
2022-11-09 20:19:04 +01:00 |
|
InsanePrawn
|
1d0a97560b
|
chroot.mount_pacman_cache(): use /var/cache/pacman/pkg to avoid problems while pacstrapping, adjust pacman.conf generator
|
2022-11-09 20:19:04 +01:00 |
|