Release 2.0.0 After bumping the minor version 53 (!) times in 1.x.y, we have some breaking changes justifying a major version bump. For users it should still feel the same overall. Enjoy this release, and thanks so much to everybody who contributed to it! "Breaking" changes: * Remove distcc support (was already disabled by default since crossdirect had been added in 2019) * Remove --no-crossdirect argument * flasher: remove long deprecated flash_system alias * flasher: set default fastboot rootfs partition to userdata Features: * aportgen: replace deviceinfo_modules_initfs for modules file * pmb.install: create fstab and crypttab * Add mtkclient as a flasher option * Install makedepends in native chroot for packages using Rust * Support --no-cgpt * lint: drop call to pmb.build.init * aportgen: use pmb.build.init_abuild_minimal * pmb.config: only show first 3 releases * init: allow all locales * pmb.flasher: Improve flash_lk2nd action * pmb.helpers.frontend: Also clear testsuite log when running log -c * Don't use 'sudo' when running as root * config: use en_US as default locale * pmb: Remind users to ensure pmbootstrap is updated before reporting errors Fixes: * pmb.helpers.run_core: fix proxy env var logic * pmb/partition: fix cgpt root_size to not cause resize on boot * pmb.helpers.run_core: always configure proxy vars if set in environment * install/partition: set efi flag with cgpt * pmb.config: Use Python 3.8-compatible type annotation * envkernel.sh: use realpath to deal with symlink * pmb.helpers.run_core: fix sudo timer when not using sudo * install: run setup-timezone with "-i" when appropriate * pmb.config: select default UI in case current is not available * pmb.config: set default UI to console * pmb.config: add missing flash_rk_partition* flags * pmb.qemu.run: replace removed -soundhw option * pmb.helpers.run: fix sudo timer * pmb.config.sudo: Use type union compatible with Python 3.7 Other: * aportgen: device: rename modules to modules-initfs * test: fix test_build_depends_binary_outdated * test: fix running test_build_package.py standalone * deviceinfo: make parse_kernel_suffix private * pmb.helpers.run_core: move flat_cmd here * test/test_pkgrel_bump: make sure pmb doesn't cross compile * test: crossdirect: update stable branch ref * test: specify default git branch * test: dont fail on githook symlinks * CI: add codespell * treewide: fix typos found with codespell * install/partition: rearrange cgpt commands in natural order * CI: enable eval-annotations for vermin * Remove workaround for gcc with !tracedeps * install: move setup_timezone to its own function * treewide: rename _system to _rootfs in various places * pmb.flasher: remove outdated comment * Use ruff for linting * aportgen/binutils: set pmOS bugurl * aportgen/binutils: add more makedepends_host * aportgen/binutils: order fields alphabetically * pmb.flasher.frontend: Use elif instead of repeated if