Commit Graph

163 Commits

Author SHA1 Message Date
correctmost e23e5e7f2a
Enable stricter global mypy defaults (#2817)
Some checks only need to be disabled for the lib/ directory now.
2024-11-16 13:56:43 +11:00
correctmost c87c723549
Remove most deprecated typing.Dict usage (#2813) 2024-11-16 11:57:46 +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
Daniel Girtler 83ece36ec3
Ignore disk encryption config when no password found (#2779) 2024-11-07 13:08:42 +01:00
Anton Hvornum 3d35da71df
Bumping version to: v2.8.6 (#2656) 2024-08-28 22:45:46 +02:00
correctmost 35c8eb3394
Fix unnecessary f-strings and enable flake8 rule (#2653) 2024-08-29 03:01:55 +10:00
correctmost 62d66e1caf
Fix most mypy errors in archinstall/scripts/, docs/, and the __init__ file (#2641) 2024-08-29 00:24:08 +10:00
Anton Hvornum 74f4fb02cd
Bumping version to: v2.8.5 (#2645) 2024-08-28 07:57:05 +02:00
Anton Hvornum fe5e7cdbf7
Bumping version to: v2.8.4 (#2633) 2024-08-26 13:03:49 +02:00
Anton Hvornum 1097e5ca17
Bumping version to: v2.8.3 (#2627) 2024-08-25 10:20:32 +02:00
Anton Hvornum f6776f3801
Bumping version to: v2.8.2 (#2616) 2024-08-17 10:07:02 +02:00
Daniel E Rodriguez Rivera 58d74ea237
Refactor Argument Parsing Logic (#2605)
* Update Spanish translation for 'greeter'

* Moved the os.execve call below the debug logging statement in SysCommandWorker

* Fix call to removed function in DesktopProfile class

* Refactor: Move precondition check for '=' to the beginning of the loop

This commit moves the check for the '=' element to the start of the while loop in the `parse_unspecified_argument_list` function. This change improves code readability and ensures that the precondition is evaluated before processing other elements, enhancing the overall flow of the argument parsing logic.

* Refactor: Remove redundant 'else' statement in argument parsing logic

This commit simplifies the control flow in the `parse_unspecified_argument_list` function by removing a redundant 'else' block. The logic is streamlined to improve readability and maintainability while preserving the original functionality. The removal of unnecessary nesting helps clarify the conditions under which elements are processed.

* Refactor: Remove redundant 'else' statement in argument parsing logic

This commit simplifies the control flow in the `parse_unspecified_argument_list` function by removing a redundant 'else' block. The logic is streamlined to improve readability and maintainability while preserving the original functionality. The removal of unnecessary nesting helps clarify the conditions under which elements are processed.

* Replace conditional validation with filtering

This commit modifies the `parse_unspecified_argument_list` function to filter out unwanted elements from the `unknowns` list instead of using a conditional check with an `if` statement. This change improves code readability and efficiency by utilizing list comprehension to create a new list that excludes elements equal to "=".
2024-08-05 12:38:53 +02:00
Kenneth Seet 0f1c8ab4be
Update user permission check for --help (#2568)
* Update user permission check for --help

* Fix code style

* Fix code style

* Fix docstring

* Fix newline

* Fix newline

* Fix argument error

* Fix formatting
2024-07-11 11:43:58 +10:00
Anton Hvornum 354fa5a2e4
Bumping version to v2.8.1 (#2543) 2024-06-23 10:13:22 +02:00
Daniel Girtler 5c180f0741
New menu implementation with curses (#2506)
* TUI

* Fix menu iterating

* Add help menu

* Add column menu

* Fix filter

* Tweaked import statement

---------

Co-authored-by: Anton Hvornum <torxed@archlinux.org>
2024-06-06 22:31:15 +02:00
Anton Hvornum 7d9e9d8ba0
Bumping version to: v2.8.0 (#2460) 2024-04-15 06:50:17 +02:00
Rafael Fontenelle 0d5e1cf752
Fix misspellings (#2306) 2024-03-07 13:19:44 +01:00
Anton Hvornum 74476de1f1
Version bump 2.7.2 (#2387) 2024-03-07 12:27:26 +01:00
codefiles 5db4456dba
Restrict UKI to supported options (#2280) 2023-12-01 15:59:44 +01:00
Anton Hvornum c13d5fae05
Preparing release: v2.7.1 (#2272) 2023-11-28 17:02:54 +01:00
Anton Hvornum 62296cfa12
Prepare for release 2.7.0 (#2252)
* Preparing release

* Bumping version to: v2.7.0
2023-11-23 09:45:47 +01:00
Anton Hvornum a62f833332
Fixing --skip-ntp. Changed nargs -> action in argparse! (#2250) 2023-11-22 23:45:13 +01:00
Anton Hvornum 2437e901d9
Added a --skip-ntp parameter to deal with #2144 (#2225)
* Added a --skip-ntp parameter to deal with #2144

* Made info/warn strings translateable

* Corrected spelling mistake
2023-11-22 22:52:21 +01:00
Anton Hvornum cc806d9c4c
Started a re-write of the docs (#1967)
* Started a re-write of the docs, using CSV for tables and re-organizing parameter definitions

* Added final config options in --config, some have external references which needs to be populated

* Forgot to escape a comma

* Clarified a note

* Added disk configuration and disk encryption docs

* Changed way of installing using source and python

* Added a 'list script' that lists available scripts. This could be converted to a argparse later. But this does the trick for now. And it's added to ease documentation and listing of available options.

* Added a 'Known issues' section, as well as renamed the issues tab

* Finished up the known issues section

* Added a section regarding --plugin

* Added plugin description, tweaked disk_config to the latest changes from #2221

* Added custom-commands docs, and improved some creds and known issue links
2023-11-21 14:34:30 +01:00
Daniel Girtler ce9828c293
Fixes for prev PR (#2175)
* Fixes for prev PR

* Update

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-10-18 16:57:44 +11:00
Daniel Girtler c4c5cc4224
User error info and version check (#2169)
* Add user information for error

* Show output if newer version available

* Update

* Update

* flake8

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-10-15 20:26:27 +11: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
Anton Hvornum a78ab490be
Bumping version to: v2.6.3 (#2135) 2023-09-30 15:56:22 +02:00
Anton Hvornum 72856ed5ec
Bumping version to: v2.6.2 (#2123) 2023-09-27 23:17:26 +02:00
Anton Hvornum 5513ac0af5
Bumped version to: v2.6.1 2023-09-23 15:15:11 +02:00
Alexander Seiler 12b7017240
Fix many typos (#1692)
Signed-off-by: Alexander Seiler <seileralex@gmail.com>
2023-09-18 22:04:36 +10:00
Anton Hvornum ada1ffeaad
Bumping version (#1965) 2023-07-30 23:44:52 +02:00
Anton Hvornum a43344c5ae
Adding pack packages to profiles after they were removed (#1956)
* Added back xinit for awesome, since it can be used without a greeter, as well as other useful tools we've had in previous releases

* Fixing xinitrc for awesome profile

* Attempting to grab xorg packages when installing the desktop profile

* Spelling error on xorg-server

* Fixed sway value error on seat selection
2023-07-30 00:28:21 +02:00
Daniel Girtler 439bb5428b
Fix 1934 - audio server regression (#1946)
* Audio configuration

* Update

* Update schema

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-07-25 11:17:09 +02:00
Daniel Girtler 2f273868d4
Fix network settings loading from config file (#1921)
* Fix network config error and simplify code

* Update schema and exmaple

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-07-17 09:27:21 +02:00
Anton Hvornum 5b102b0228
Adding python-simple-term-menu to the dependency list (#1901)
* Adding python-simple-term-menu to the dependency list

* Added dependencies to all binaries we call, such as 'ps' and 'mkfs' etc

* Sorted the depends list - just for peace of mind

* Bumped version in prep for release of rc1, also updated README a bit

* Removed older python versions from classifiers
2023-06-28 14:22:07 +02:00
Himadri Bhattacharjee 72661dbf9b
Simplify object serialization before JSON encoding (#1871)
* fix: check for helper functions for unsafe encode before falling back to safe encoding

* feat: merge _encode and _unsafe_encode into simple serialization function to avoid immediate json.loads after json.dumps

* fix: use function instead of a serializing class without trying to serialize keys that are unhashable or unsupported

* feat: lazily evaluate serialized value based on key validity

* feat: use dictionary comprehension and predefined compatible types

* fix: handle enum types immediately after dicts

* fix: return stringified object as a default

* doc: update function docstring for serialize_to_dict

* fix: rename serialize_to_dict to jsonify as it serializes to other primitive types as well
2023-06-22 14:09:14 +02:00
Daniel Girtler c7c34c9e70
Make Gfx driver handling saver (#1885)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-21 09:52:48 +02:00
Daniel Girtler 1b5ecb65aa
Always verify permissions and check for log dir (#1874)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-21 09:47:30 +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 8a292a163e
Add custom mirror support (#1816)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-15 09:16:18 +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
Daniel Girtler eb23b2d7c9
Update version 2.5.6 (#1791)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-07 08:38:29 +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 32982b880b
Fix import and configuration loading issues (#1764)
* Fix import and configuration loading issues

* Fix mypy

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-04-22 08:04:36 +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
Anton Hvornum 9fe9fd6e62
Version bump v2.5.4 (#1694) 2023-03-29 13:29:13 +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
Anton Hvornum 70213ee114
Fixed indentation issue after #1657 2023-02-28 15:52:30 +01:00
Himadri Bhattacharjee 2559e0dc10
Uses dict setdefault instead of manually checking if key-value pair exists. (#1657) 2023-02-28 15:46:38 +01:00