Commit Graph

546 Commits

Author SHA1 Message Date
Martin 0ea6dbbd76
Rename "Kde" profile to the correct "KDE Plasma" / "Plasma" (#2421)
* schema.json: Remove dead misspelled i3-gasp profile

* schema.json: Rename KDE Plasma profile to the correct "Plasma" shorthand

* Rename to KDE Plasma in user facing parts and keep the old "Kde" profile for now

* Add back an accidental deleted character

* Backwards compat v2
2024-04-19 22:47:18 +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
codefiles 2a33d7cd97
Set keyboard layout in minimal installation (#2399) 2024-03-10 09:34:32 +01:00
Daniel Girtler f927fb6e6a
Fix 2307 - Custom mirrors (#2350)
* Fix 2307 - Custom mirrors

* Update
2024-03-07 14:43:16 +01:00
codefiles 717a22371f
Fix `mountpoint` for pre-mounted disk configuration (#2113)
* Fix `mountpoint` for pre-mounted disk configuration

* Add missing commas
2023-09-26 10:57:45 +02:00
Daniel Girtler b141609990
Fix 1669 | Refactor display of sizes in tables (#2100)
* Use sector as default display

* Display tables in sector size

* Refactor size

* Update

* Update

* fix flake8

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-09-24 19:47:38 +10:00
Alexander Seiler 12b7017240
Fix many typos (#1692)
Signed-off-by: Alexander Seiler <seileralex@gmail.com>
2023-09-18 22:04:36 +10:00
Daniel Girtler 3ba1a3718e
Fix 1973 - pipewire (#2030)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-09-14 19:59:32 +10: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
Daniel Girtler 885f89c3a1
Rename encryption method (#1888)
* Rename encryption method

* Update

---------

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-06-21 09:54:42 +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
codefiles 06f35fd289
Install the package `alsa-firmware` if required (#1812) 2023-05-12 14:01:24 +02:00
codefiles 128db1cdf6
Install the package `sof-firmware` if required (#1811) 2023-05-12 08:24:14 +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 f211906a5a
Remove obsolete enabling of NTP in ISO (#1729)
* Remove obsolete enabling of NTP in ISO

* Fixed flake8 linting

* Remove `activate_ntp()`

* Update comment

---------

Co-authored-by: Anton Hvornum <anton@hvornum.se>
2023-05-04 16:04:35 +02:00
Daniel Girtler 2d06cf592a
Fix 1772 (#1773)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2023-05-03 16:37:55 +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
Anton Hvornum fdb1b48330
Removed the archlinux-keyring package update
it should no longer be needed as there's a service populating keys. (#1690)
2023-03-26 23:00:52 +02:00
Anton Hvornum 3f5170f422
Added 'exited' as a viable status code for services 2023-02-27 11:56:44 +01:00
Anton Hvornum 50d20f0b80
Added more services that we need to wait for. (#1647)
* Added more services that we need to wait for.

* Fixed small issue with previous commit not checking if disk_encryption is None or not.
2023-02-27 09:43:26 +01:00
Daniel Girtler e05df22986
Remove HSM from global menu (#1559)
* Remove HSM from global menu

* Update

* Update

* Removed sys import

Unused import

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton.feeds+github@gmail.com>
2022-11-13 13:56:21 +01:00
Daniel Girtler c3862c5779
New encryption menu (#1520)
* New encryption menu

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-11-11 09:40:05 +01:00
Anton Hvornum faa93d9e24
Improved speed in --skip-mirror-check (#1505) 2022-10-06 18:56:53 +02:00
codefiles 977976f88e
Add hostname and locales as parameters to `minimal_installation()` (#1458) 2022-10-03 16:42:10 +02:00
Daniel Girtler 4dcd5e684f
Move deserialization into init (#1456)
Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-09-06 08:31:08 +02:00
Anton Hvornum ee64276f0e
Value comparison error for dropping into shell (#1441)
* Changed choice to choice.value.
2022-08-29 00:19:20 +02:00
codefiles 397cceca90
Fix check for additional repositories (#1391)
* Fix typos

* Fix check for additional repositories
2022-08-11 11:32:33 +02:00
Abhay Mohandas 463114356c
Option for Parallel Downloads (#1397)
* Adding menu

* Working on parallel downloads

* error updates

* updates

* update

* Few more updates

* bug fixes

* More bug fixes

* Minor bug fixes

* Few changes

* Minor changes

* Cleaned up add_number_of_parrallel_downloads() and hid it behind --advanced

* Forgot one import

* Fixed flake8

Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-08-01 15:39:39 +02:00
virtual-meme-machine 956b34905b
- Fix KeyError exceptions (#1354) 2022-08-01 09:56:08 +02:00
Daniel Girtler cfea0d6d1a
Update translations (#1348)
* Show translations in own tongue

* Fix flake8

* Update

* Update

* Update

* Update

* fix mypy

* Update

* Update

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-08-01 09:44:57 +02:00
LittleboyHarry 766176cfe2
Update swiss.py (#1295)
fix bug
2022-06-06 20:07:18 +02:00
Anton Hvornum 7943dd8236
Added more offline functionality, such as skipping package search (#1296)
* Added more offline functionality, such as skipping package search

* Disabled list_mirrors() from going online if --offline is given. Defaults to /etc/pacman.d/mirrorlist instead.

* Forgot import of pathlib

* Made list_mirrors() open /etc/pacman.d/mirrorlist in byte mode to better emulate the result of urllib response reading.

* Forgot variable declaration

* Made list_mirrors include activated server definitions
2022-06-02 13:32:42 +02:00
Anton Hvornum 0601956b5b
Moved genfstab() to guided.py instead of __exit__ of Installer(). This is a breaking change. 2022-05-29 09:44:31 +02:00
Kian-Meng Ang 2de153003e
Fix typos (#1265) 2022-05-29 09:31:18 +02:00
Daniel Girtler 870da403e7
Rework user management (#1220)
* Rework users

* Update user installation

* Fix config serialization

* Update

* Update schemas and documentation

* Update

* Fix flake8

* Make users mypy compatible

* Fix minor copy

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-05-26 21:48:29 +02:00
Anton Hvornum 493cccc18f
Added a HSM menu entry (#1196)
* Added a HSM menu entry, but also a safety check to make sure a FIDO device is connected

* flake8 complaints

* Adding FIDO lookup using cryptenroll listing

* Added systemd-cryptenroll --fido2-device=list

* Removed old _select_hsm call

* Fixed flake8 complaints

* Added support for locking and unlocking with a HSM

* Removed hardcoded paths in favor of PR merge

* Removed hardcoded paths in favor of PR merge

* Fixed mypy complaint

* Flake8 issue

* Added sd-encrypt for HSM and revert back to encrypt when HSM is not used (stability reason)

* Added /etc/vconsole.conf and tweaked fido2_enroll() to use the proper paths

* Spelling error

* Using UUID instead of PARTUUID when using HSM. I can't figure out how to get sd-encrypt to use PARTUUID instead. Added a Partition().part_uuid function. Actually renamed .uuid to .part_uuid and created a .uuid instead.

* Adding missing package libfido2 and removed tpm2-device=auto as it overrides everything and forces password prompt to be used over FIDO2, no matter the order of the options.

* Added some notes to clarify some choices.

* Had to move libfido2 package install to later in the chain, as there's not even a base during mounting :P
2022-05-18 11:28:59 +02:00
Reza bdf11913d4
Fix lengthy translations in Main Menu (Important) (#1195)
* Fix lengthy translations in Main Menu

* rename 'Additional repositories' to 'Optional repositories'

* rename 'Drives' to 'Drive(s)'

* rename 'Choose keyboard layout' to 'Select keyboard layout'
2022-05-16 23:11:09 +02:00
Daniel Girtler 0fa52a5424
Introduce ctrl+c and other bug fixes (#1152)
* Intergrate ctrl+c

* stash

* Update

* Fix profile reset

* flake8

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-05-09 12:02:48 +02:00
Alexmelman88 20ffebac50
Updated base.pot, added new translation strings from *.py files, updated ru locale (#1146)
* Create base.po

* Add files via upload

* Delete base.po

* Add files via upload

* Delete base.mo

* Add files via upload

* Update base.pot

* Update base.po

* Delete base.mo

* Add files via upload

* Delete base.mo

* Add files via upload

* Update base.po

* Delete base.mo

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update desktop.py

* Update minimal.py

* Update xorg.py

* Update server.py

* Update desktop.py

* Update server.py

* Update guided.py

* Add files via upload

* Add files via upload

* Update guided.py

* Add files via upload

* Add files via upload
2022-05-09 09:58:06 +02:00
Daniel Girtler bcd810d2d2
Fix 1117 (#1126)
* Fix 1117

* Update

* flake8

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-05-05 12:48:01 +02:00
Anton Hvornum eafbf49cdc
Adding back 'timedatectl set-ntp true' but with the condition of it being activated. This is because the default NTP value is set to True. And will subsequently never be triggered through the menu system. So we'll have to activate it (again) if set to True before installer starts. 2022-04-26 15:13:29 +02:00
Anton Hvornum 010f6eaf97
Added a NTP status check before processing to installation. (#1086) 2022-04-26 15:07:12 +02:00
Anton Hvornum 9a6e85fb46
Removed NTP by default. Instead, if NTP is selected or de-selected it will activate/de-activate ntp accordingly. 2022-04-26 14:49:03 +02:00
Daniel bbedc0bb19
Flexible order of menu options (#1078)
* Allow custom ordering of the menu entries

* Update

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-04-22 13:24:43 +02:00
Daniel 477b5b120e
Support for multiple network interfaces (#1052)
* Support for multiple network interfaces

* Fix mypy

* Fix flake8

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
2022-04-22 13:24:12 +02:00
Werner Llácer 4b4473632d
Subvolume User Interface (#1032)
* Deflate the user interactions file

* Fix flake8

* GlobalMenu split from selection_menu.py

* Upgrades to ListManager:
Can now show an empty list if there is no null action.
More information to the user at the header

* Put only_hd.py  and swiss.py to use new config printing mechanism
Solved a couple of bugs at
ListManager adding a str and a DeferredTranslation
ManageUser was missing an self argument in _check ...

* Create list and menus to manage subvolumes in btrfs partitions
Needed to modify manage_new_and_existing_partitions
Added a new parameter filter to select_partition, to allow filtering there

* Update internationalization strings

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
2022-03-28 13:55:15 +02:00
Werner Llácer e85c9b6531
Issues with Network Management and user management in menu (#1036)
* A problem with default values treatment at superusers (and users) on the main menu

* Solving issues when changing the selection of nic, ask_to_configure_network failed in several places.
Solved, temporarily with the creation of __getitem__ and get methods at NetworkManager

* Accept old style definitions for nic

* flake8 complains

* log string corrected (issue 1039)

* Correct exit when no disk is selected and we don't wish to continue
2022-03-28 13:44:10 +02:00