Commit Graph

139 Commits

Author SHA1 Message Date
Daniel Girtler 063b9643b4
Add new version indicator in the title of the main menu (#3587)
* Add new version indicator in the title of the main menu

* Update
2025-06-12 07:14:30 +10:00
correctmost 1e7a4831ae
Use a generic instead of Any in MenuHelper (#3574)
This commit also removes an unused _get_table_header method.
2025-06-04 11:55:07 +10:00
correctmost a580da2bbd
Enable the bad-exit-annotation ruff rule and fix related warnings (#3564) 2025-06-01 11:41:34 +02:00
correctmost a1b83ad29f
Remove unused _DeferredTranslation methods and references (#3557) 2025-05-31 16:04:23 +10:00
Daniel Girtler d3f32f308c
Update ruff formatter (#3496)
* Update ruff formatter

* Update
2025-05-24 07:58:42 +00:00
Daniel Girtler 57bd2451e9
Simplify translating of strings (#3479)
* Simplify translation fucntion

* Simplify translation fucntion
2025-05-19 22:33:02 +10:00
Daniel Girtler c67ac97f18
Ruff formatting (#3459)
* Update

* Update
2025-05-15 14:26:41 +02:00
correctmost 9c633924ba
Remove extraneous inline type annotations (#3418) 2025-04-30 08:31:28 +10:00
Daniel Girtler 4c20331633
Fix 3376 - header alignment (#3414) 2025-04-28 14:04:15 +02:00
correctmost 0de90bd55b
Specify menu return types using generics instead of Any (#3400) 2025-04-27 13:01:17 +10:00
correctmost e281c2fa6a
Split out Result and ResultType to break import cycle (#3387)
Previously, there was an import cycle between tui.menu_item and
tui.types.
2025-04-13 15:06:48 +10:00
Daniel Girtler bae0e29e18
Fix #3330 (#3360)
* Fix #3330

* Update
2025-04-08 08:46:19 +02:00
mintsuki e6b0ebb5f3
Actually prevent installing if the config is invalid (#3335)
This also makes use of the previously unused _is_config_valid() method.
2025-04-04 09:46:55 +11:00
correctmost f100e5110d
Use __all__ in __init__.py files to fix unused-import warnings (#3252)
This commit allows ruff and flake8 ignores to be removed. It also
allows mypy to be run in strict mode by default.
2025-03-13 14:19:05 +11:00
correctmost 269e6f8e54
Enable most flake8-pyi rules in ruff and fix a warning (#3248) 2025-03-13 08:27:53 +11:00
correctmost 6a90760e67
Clean up most no-implicit-reexport warnings from mypy (#3233)
This makes it easier to run mypy --strict from the command line
and should hopefully make it easier to clean up import cycles in
future commits.
2025-03-09 19:50:56 +11:00
Daniel Girtler b57f7f91cf
Integrate new arguments data structure (#3167)
* Integrate new args dataclass

* Integrate args

* Update

* Update

* Update

* Update
2025-02-20 07:35:59 +11:00
Daniel Girtler 198efb5f53
Fix 2916 - Reinstate prompt in list menus (#2940)
* Reinstate prompt in list menus

* Ruff
2024-11-26 11:10:48 +01:00
correctmost f2bc5ff280
Remove unused Selector class (#2938)
The code is unused as of 88b91ae201.
2024-11-26 12:22:16 +11:00
correctmost 8d807c08ee
Use precise type hints for most DeferredTranslation references (#2929)
The remaining "_: Any" instances will require accompanying code
changes.
2024-11-25 18:49:22 +11:00
correctmost 3255744278
Sort and format remaining imports (#2877)
This commit also enables isort rules in the Ruff config.
2024-11-19 11:18:47 +11:00
Daniel Girtler 41e5a0fcfd
Fixes 2849 (#2862) 2024-11-18 09:54:29 +01:00
correctmost 0dc77f8e8a
Replace more Optional instances with union syntax in lib/ (#2841) 2024-11-17 11:01:57 +11:00
correctmost 25172bd0f8
Start replacing Optional with union syntax in lib/ (#2837) 2024-11-17 09:03:01 +11:00
correctmost 44f4bc8612
Use union syntax for isinstance checks (UP038 rule in Ruff) (#2829) 2024-11-16 10:47:01 +01:00
correctmost ecad6762e5
Fix some mypy warnings in the lib/ directory (#2822) 2024-11-16 18:27:26 +11:00
correctmost 01b72b9293
Remove most of the remaining deprecated typing imports (#2818) 2024-11-16 14:01:24 +11:00
correctmost c87c723549
Remove most deprecated typing.Dict usage (#2813) 2024-11-16 11:57:46 +11:00
correctmost dff101e279
Remove most deprecated typing.List usage (#2810) 2024-11-16 10:13:51 +11:00
Daniel Girtler 88b91ae201
Integrate new curses menu (#2663)
* Edit text menu

* Fix alignment

* Scroll functionality

* Fix flake8

* Migrate locales menu

* Fix language translation

* Fix interrupt

* Fix flake8

* Edit mode preset

* Convert print to tui prints

* Fix mypy

* Fix cycling through long menu

* Fix profile view

* Fix scrolling

* Fix scrolling

* Fix mypy

* Fix swiss script

* Display asterisk for passwords

* Corrected a variable usage in the local mirror parsing

* Made sure that curses menu selection on mirrors use url object from mirror.url instead of the class instance

* Fixed mypy type on mirror list

---------

Co-authored-by: Torxed <torxed@archlinux.org>
2024-11-15 08:23:22 +01:00
correctmost 0370e893ac
Enable the self-assigning-variable Pylint warning (#2772) 2024-11-04 18:34:05 +01:00
correctmost 62b4099c8d
Fix whitespace issues detected by flake8 (#2652)
This commit also removes exclusions that are no longer needed.
2024-08-29 01:40:53 +10:00
correctmost 7b5f1f72f9
Expand mypy checks to include more files and more checks (#2651)
This commit also centralizes the mypy configuration in one spot.
2024-08-29 00:39:22 +10:00
correctmost c7aeead7d2
Fix various mypy errors in archinstall/lib/ (#2640)
* Fix various mypy errors in archinstall/lib/

* Additional mypy fixes in archinstall/lib/ to pass CI checks
2024-08-28 05:43:54 +10:00
Daniel Girtler b470b16ec9
LVM support (#2104)
* Submenu for disk configuration

* Update

* Add LVM manual config

* PV selection

* LVM volume menu

* Update

* Fix mypy

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update LVM

* Update

* Update

* Btrfs support

* Refactor

* LVM on Luks

* Luks on LVM

* Update

* LVM on Luks

* Update

* Update

* mypy

* Update

* Fix bug with LuksOnLvm and Btrfs

* Update

* Update

* Info -> Debug output
2024-04-15 18:49:00 +10:00
Daniel Girtler 08a6d402c4
Fix 2215 | Display installed packages for all profile submenus (#2355)
* Display all packages to be installed

* Display all packages to be installed
2024-03-07 14:43:51 +01:00
Rafael Fontenelle 0d5e1cf752
Fix misspellings (#2306) 2024-03-07 13:19:44 +01:00
codefiles 7930ea58fd
Fix install text initialization (#2162) 2023-10-13 18:50:35 +11:00
codefiles 5e59acf937
Add handling of signal interrupt and EOF at input prompts (#2154) 2023-10-10 10:00:22 +02:00
Daniel Girtler edbc135903
Extend the mypy checks (#2120)
* Extend the mypy checks

* Update

* Update

* Update

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-10-03 18:31:17 +11:00
Alexander Seiler 12b7017240
Fix many typos (#1692)
Signed-off-by: Alexander Seiler <seileralex@gmail.com>
2023-09-18 22:04:36 +10:00
Wu Xiaotian 47ed711743
Support CJK text alignment (#2012)
* Add functions for unicode string alignment

* use unicode alignment function to show menu

* Allow table content to support unicode text alignment
2023-09-17 09:08:38 +10:00
Wu Xiaotian d878496a2f
Improve the Chinese, Japanese and Korean text menu layout (#1945)
Before this patch, menus in Korean language would not be aligned:

```
  Archinstall 언어            Korean (71%)
> Mirrors
  Locales                   Defined
  Disk configuration
  부트로더                      Systemd-boot
  스왑                        True
```

After apply this patch, menus in Korean language are aligned:

```
  Archinstall 언어          Korean (71%)
> Mirrors
  Locales                   Defined
  Disk configuration
  부트로더                  Systemd-boot
  스왑                      True
```
2023-07-31 09:39:06 +02:00
Daniel Girtler a548d7df70
Fix 1916 (#1920)
* Do not stdout when menu is active

* Handle missing libfido2 gracefully

* Update

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-07-25 11:19:14 +02:00
Daniel Girtler 06eadb31d4
Move locales and cleanup menu (#1814)
* Cleanup imports and unused code

* Cleanup imports and unused code

* Update build check

* Keep deprecation exception

* Simplify logging

* Move locale into new sub-menu

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-05 10:02:49 +02:00
Daniel Girtler 89cefb9a1c
Cleanup imports and unused code (#1801)
* Cleanup imports and unused code

* Update build check

* Keep deprecation exception

* Simplify logging

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-11 18:30:09 +02:00
Daemon Coder a968dccbf1
Fix default value idx in `_determine_cursor_pos()` (#1800)
Co-authored-by: Daniel Girtler <blackrabbit256@gmail.com>
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-07 08:48:46 +02:00
Daniel Girtler ec4ecbcb7a
Full mypy compliance and small fixes (#1777)
* Fix mypy compliance

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-03 16:36:46 +02:00
Daniel Girtler 00b0ae7ba4
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 <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
Co-authored-by: Anton Hvornum <anton.feeds+github@gmail.com>
Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com>
2023-04-19 12:55:42 +02:00
Daniel Girtler 83f4b4178f
Save encryption configuration (#1672)
* Save encryption configuration

* Fix deserialization problem

* Added .part_uuid to MapperDev

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
Co-authored-by: Anton Hvornum <anton.feeds+github@gmail.com>
2023-03-29 12:48:11 +02:00