From 00b0ae7ba439a5a420095175b3bedd52c569db51 Mon Sep 17 00:00:00 2001 From: Daniel Girtler Date: Wed, 19 Apr 2023 20:55:42 +1000 Subject: PyParted and a large rewrite of the underlying partitioning (#1604) * Invert mypy files * Add optional pre-commit hooks * New profile structure * Serialize profiles * Use profile instead of classmethod * Custom profile setup * Separator between back * Support profile import via url * Move profiles module * Refactor files * Remove symlink * Add user to docker group * Update schema description * Handle list services * mypy fixes * mypy fixes * Rename profilesv2 to profiles * flake8 * mypy again * Support selecting DM * Fix mypy * Cleanup * Update greeter setting * Update schema * Revert toml changes * Poc external dependencies * Dependency support * New encryption menu * flake8 * Mypy and flake8 * Unify lsblk command * Update bootloader configuration * Git hooks * Fix import * Pyparted * Remove custom font setting * flake8 * Remove default preview * Manual partitioning menu * Update structure * Disk configuration * Update filesystem * luks2 encryption * Everything works until installation * Btrfsutil * Btrfs handling * Update btrfs * Save encryption config * Fix pipewire issue * Update mypy version * Update all pre-commit * Update package versions * Revert audio/pipewire * Merge master PRs * Add master changes * Merge master changes * Small renaming * Pull master changes * Reset disk enc after disk config change * Generate locals * Update naming * Fix imports * Fix broken sync * Fix pre selection on table menu * Profile menu * Update profile * Fix post_install * Added python-pyparted to PKGBUILD, this requires [testing] to be enabled in order to run makepkg. Package still works via python -m build etc. * Swaped around some setuptools logic in pyproject Since we define `package-data` and `packages` there should be no need for: ``` [tool.setuptools.packages.find] where = ["archinstall", "archinstall.*"] ``` * Removed pyproject collisions. Duplicate definitions. * Made sure pyproject.toml includes languages * Add example and update README * Fix pyproject issues * Generate locale * Refactor imports * Simplify imports * Add profile description and package examples * Align code * Fix mypy * Simplify imports * Fix saving config * Fix wrong luks merge * Refactor installation * Fix cdrom device loading * Fix wrongly merged code * Fix imports and greeter * Don't terminate on partprobe error * Use specific path on partprobe from luks * Update archinstall/lib/disk/device_model.py Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> * Update archinstall/lib/disk/device_model.py Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> * Update github workflow to test archinstall installation * Update sway merge * Generate locales * Update workflow --------- Co-authored-by: Daniel Girtler Co-authored-by: Anton Hvornum Co-authored-by: Anton Hvornum Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> --- pyproject.toml | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) (limited to 'pyproject.toml') diff --git a/pyproject.toml b/pyproject.toml index 6e0fcb99..557418cc 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "archinstall" -dynamic = ["version", "entry-points"] +dynamic = ["version"] description = "Arch Linux installer - guided, templates etc." authors = [ {name = "Anton Hvornum", email = "anton@hvornum.se"}, @@ -12,15 +12,17 @@ authors = [ license = {text = "GPL-3.0-only"} readme = "README.md" requires-python = ">=3.10" - keywords = ["linux", "arch", "archinstall", "installer"] - classifiers = [ "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Operating System :: POSIX :: Linux", ] +dependencies = [ + "pyparted==3.12.0", + "simple-term-menu==1.6.1", +] [project.urls] Home = "https://archlinux.org" @@ -28,23 +30,33 @@ Documentation = "https://archinstall.readthedocs.io/" Source = "https://github.com/archlinux/archinstall" [project.optional-dependencies] +dev = [ + "mypy==1.1.1", +] doc = ["sphinx"] [project.scripts] archinstall = "archinstall:run_as_a_module" +[tool.setuptools.dynamic] +version = {attr = "archinstall.__version__"} +readme = {file = ["README.rst", "USAGE.rst"]} + [tool.setuptools] -packages = ["archinstall", "profiles", "examples"] +packages = ["archinstall"] [tool.setuptools.package-data] -archinstall = [ - "examples/*.py", - "profiles/*.py", - "profiles/applications/*.py" +# We could specify locales/lancuages.json etc instead, but catchall works too. +"archinstall" = [ + "**/*.py", + "**/*.mo", + "**/*.po", + "**/*.pot", + "**/*.json", ] -[tool.setuptools.dynamic] -version = {attr = "archinstall.__version__"} +# [tool.setuptools.packages.find] +# where = ["archinstall"] [tool.mypy] python_version = "3.10" -- cgit v1.2.3-70-g09d2