Commit Graph

3051 Commits

Author SHA1 Message Date
Timothy Pidashev 64bde666ac
Add --noconfirm flag to update_keyring() (#922) 2022-01-30 17:28:59 +01:00
Anton Hvornum 281ccf99a4 Fixed an issue where SysCommand() never utilized the SysCommandWorker() context, which means SysCommandWorker() never closed the pty, hogging all system handles for it. 2022-01-30 17:24:01 +01:00
Timothy Pidashev 179c103cdd
Synchronize `archlinux-keyring` when running guided.py (#917)
* Update guided.py

* Update guided.py

* Update guided.py

* Fix typo

* Format string properly; elaborate log msg

* Make change consistent to mirror-check

* Update documentation
2022-01-30 11:01:04 +01:00
Sebas-h 275a960e6c
Fix trailing comma in schema.json (#915)
(Tried to [generate docs](https://github.com/coveooss/json-schema-for-humans) and noticed the comma preventing that)
2022-01-27 21:41:13 +01:00
Dylan M. Taylor fe9fb988c9
Move from the basic pipewire media session manager to wireplumber (#914) 2022-01-27 18:01:06 +01:00
OneLongneck f0886f3a7f
Update installer.py (#1) (#793)
Added "--removable" after "--bootloader-id=GRUB" on Line 669, because it would throw an input/output error without it on my laptop
2022-01-26 09:38:01 +01:00
Dylan M. Taylor 90e320dd11
Allow mirror reachability check to be skipped (#910)
* Allow network check to be skipped

* Technically it is a mirror check - not a check for general connectivity
2022-01-26 07:53:38 +01:00
Werner Llácer e629729d55
Correct definition of btrfs standard layout (#906) 2022-01-25 18:12:45 +01:00
Anton Hvornum 1aa738691e
Fixing the 'device_instance' being None in some partition places (#902)
* Added a new return value from add_partition. Also added an exception to make sure `add_partition` can't continue silently

* Added a log of debugging to add_partition

* Removed a blank line (flake8)

* Misconfigured variable

* Added some more debugging information to partprobe

* FIX: disk layout: partprobe should be called and checked only for target device (#896)

* disk layout: partprobe should be called and checked only for target device

* disk layout: partprobe: removed unnecessary bash subprocess

* Properly defined BlockDevice() on Partition() creation. Also made sure mount-checks got some rrro handling and non-block devices should no longer attempt to return a size

Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
Co-authored-by: Victor Gavro <vgavro@gmail.com>
2022-01-25 16:09:34 +01:00
Dylan M. Taylor 5406f1ed45
Make text for getting filesystems more grammatically correct (#903)
* Make text for getting filesystems more grammatically correct

Use 'Retry attempt {count} of 10.' instead of Waiting for the {count} time". It's more grammatically correct since we're not doing '1st', '2nd', etc.

* Maybe mention waiting still
2022-01-25 15:31:38 +01:00
Victor Gavro eb712a9ca5
FIX: disk layout: partprobe should be called and checked only for target device (#896)
* disk layout: partprobe should be called and checked only for target device

* disk layout: partprobe: removed unnecessary bash subprocess
2022-01-25 14:45:28 +01:00
Anton Hvornum 26f9b681a4 Removed last lsblk to grab PARTUUID (#901)
Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
2022-01-25 12:40:04 +00:00
Werner Llácer b5f50889eb
get rid of an exit() (#899) 2022-01-24 12:36:23 +01:00
Werner Llácer bb98594054
Solve issue #894 (#898)
some references to archinstall.storage turned to archinstall.arguments
2022-01-24 10:33:46 +01:00
Thomas 34488d25c5
Disable zswap (#883)
Disable zswap when using zram.

The swap device is now initialised before the bootloader, inline with the
installation guide.
2022-01-20 17:49:18 +00:00
Thomas 671bf7595c
Enable periodic TRIM (#882) 2022-01-20 16:32:07 +01:00
Werner Llácer c776e30191
Some issues at Guided.py (#878)
* Solves issue #873 (error by key sys-language
Now disk_layouts file contents are loaded before calling the menu

* Solves issue #873 (error by key sys-language. Solution in previous commit was still too restrictive
2022-01-18 20:57:30 +01:00
Werner Llácer 3d30a4eb28
Missing arguments after GlobalMenu execution (issue #868) (#871)
* Install.__init__ parameter kernel as a list everywhere.
I've dropped the string check, as it shouldn't happen again, and it's good that it fails, when it happens

* Global Menu now loads in the arguments dict all options enabled with default value and no manually selected (issue #868)
2022-01-15 21:44:13 +01:00
Werner Llácer 31f55e8d6b
Activate file write into only_hd and upgrade to guided.py level (#867) 2022-01-15 14:20:06 +01:00
Werner Llácer 6b4f09ef01
Changes to take correctly the 'kernels' argument (cf. isssue 868) (#869) 2022-01-15 14:17:04 +01:00
Anton Hvornum b533bd0553 Moved lib.plugin import to the top 2022-01-14 13:23:30 +01:00
Anton Hvornum da0c08e79a Added in version history in the configuration 2022-01-14 12:54:22 +01:00
Anton Hvornum f175ea8b7d
Created a save_user_configurations (#856)
* Created a save_user_configurations

This should avoid accidental placement of individual json outputs in a way that some doesn't get saved before installation continues etc.

* Was looking for disk_layouts in the wrong place.
* changed numerous other references to disk_layouts looking in the wrong place.
2022-01-14 11:48:56 +01:00
Anton Hvornum 8fae958571 Unified filesystem names by using get_mount_fs_type() function before .format() is called 2022-01-14 11:19:34 +01:00
Anton Hvornum bb37dae16b Added instructions on how to post logs publicly. 2022-01-14 10:23:16 +01:00
Anton Hvornum 7c20c8fb56 Improved mentions of logs and configuration files. This fixes #839 2022-01-14 10:03:56 +01:00
Anton Hvornum ae35f11e1a Changed the default btrfs layout to have @ as / 2022-01-14 08:47:34 +01:00
Anton Hvornum c88b250eac Version decrease in docs for master 2022-01-14 08:13:58 +01:00
Anton Hvornum 4bd07ea19f Merge branch 'master' of github.com:archlinux/archinstall 2022-01-14 08:11:30 +01:00
Anton Hvornum 0bc3e94c79 Version bump in docs 2022-01-14 08:11:23 +01:00
Werner Llácer e8b6b1b334
Restore generic_select function (#857)
* recreate generic_select and generic_multi_select functions

* flake8 complains

* Addressed some review issues
-> Options checks propagated to Menu(()
-> Options parameter inmutable at Menu()
-> Some text adapted
-> Sort will be handled by Menu()
-> Better handling of default value

* Solved the two problems found:
lack of list(dict.[keys/values] and impact in copy()
sideffects of renaming menu parameter options into p_options

* Now the problem of the copy was with a generator

* Add a log message whenever an "strange" object type is sent into Menu

* Validation of types has been streamlined.
Default values are now accesible to generic_select without restriction
2022-01-12 23:24:38 +01:00
Romain Goncalves c6fdf775c8
partition.py: Use exit code for mkfs.fat exception (#853)
When using archinstall on an existing Arch Linux installation, (e.g. for
migrating the current system on a new drive), no exception is raised if
mkfs.vfat is missing in the base install (no dosfstools package currently
installed).
2022-01-08 21:16:19 +01:00
Werner Llácer 116246b0e8
obsolete call for timezone changed (#850) 2022-01-07 12:54:45 +01:00
Anton Hvornum a14533818b Wrongly spelled import 2022-01-07 10:55:51 +00:00
Anton Hvornum 93f9d159bd
Fixed import error ModuleType (#848)
Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
2022-01-07 10:54:29 +00:00
Daniel 1234261a7a
Global menu (#806)
* Global menu

* Fix flake8

* Refactor code

* Add documentation

* Fix flake8

* Add support for user flow mentioned in #799

* Move import

* Fix flake8 (again)

Co-authored-by: Daniel Girtler <girtler.daniel@gmail.com>
Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
2022-01-07 10:48:23 +00:00
Werner Llácer 2190321eb4
Btrfs II (#838)
* Btrfs with encrypted partitions.
We have changed installer.mount_ordered_layout into a series of loops
* open the encrypted devices
* manage btrfs subvolumes
* mount whatever
* create kyefiles for encrypted volumes
We have simplified the btrfs subvolume manager

We merged the locale branch as it is needed here

* We allow only the creation of keyfiles if the partition does not contain the root mount point.
Also, adapt examples/only_hd to the new __init__.py
Also, assorted flake8 warnings

* Cleanup code

* Naming schema for encrypted volumes
revert global locale association (provisional)

* We introduce the option of defining mount options in the partition dictionary.
It has forced us to define two new entries in this dictionary:
* format_options (formerly options) for mkfs options and
* mount_options for mount -o ones.
The different meaning of compress between partition and subvolumes is treated

* Function lib/disk/btrfs.py mount_subvolume marked as deprecated
Code cleanup.

* format_options now filesystem.options

* format_options now filesystem.format_options
mount_options  nof filesystem.mount_options

* flake8 uncovered a slip in the code
2022-01-07 10:29:30 +00:00
HTV04 08d7375e62
Fix partition layout (#794)
* Fix partition layout

* Tweaked the numbers to match the alignment of previous partitions.

Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
2022-01-07 09:55:51 +00:00
Liam McNair 762cea1da8
Created config schema (#727)
* Created config schema

* Tweaked the schema to suit v2.3.0+

Co-authored-by: Anton Hvornum <anton.feeds+github@gmail.com>
2022-01-07 09:44:54 +00:00
Werner Llácer b63cf7cb15
- No treatement of disk_layouts_file (#844)
- Ordered exit
2022-01-06 23:27:56 +01:00
Werner Llácer a8862e9b24
Define an standard locale for all the commands executed (#827)
* Define an standard locale for all the commands executed inside the application

* Allow LC_ALL to be overriden during call

* flake8 corrections
2022-01-06 23:26:49 +01:00
Anton Hvornum e32cf71ae7
Added type annotations to all functions (#845)
* Added type annotations for 1/5 of the files.

There's bound to be some issues with type miss-match, will sort that out later.

* Added type hints for 4/5 of the code

* Added type hints for 4.7/5 of the code

* Added type hints for 5/5 of the code base

* Split the linters into individual files

This should help with more clearly show which runner is breaking since they don't share a single common name any longer. Also moved mypy settings into pyproject.toml

* Fixed some of the last flake8 issues

* Missing parameter

* Fixed invalid lookahead types

* __future__ had to be at the top

* Fixed last flake8 issues
2022-01-06 22:01:15 +01:00
Anton Hvornum 015cd2a59f
Update simple_menu.py 2022-01-06 16:57:50 +01:00
Anton Hvornum 33c27db1ba
Update README.md 2022-01-05 23:44:37 +01:00
Anton Hvornum ddb0810af0
Improve documentation v2.3.1 (#843)
* Updated documentation

Mostly I've moved things around, cleaned up some dead paths and added more clarity.

* Cleaned up !superusers section

* Mentioning of accessibility
2022-01-05 23:42:06 +01:00
HTV04 a68a23d10a
Add prompt for /home partition (#801) 2022-01-04 13:31:21 +00:00
Ilario Gelmetti 3474176e64
examples/guided: if selected, activate NTP also in installer system (#831)
* Ask for NTP even if timezone is unset
* Ask for NTP before retrieving mirror list
* Activate NTP in the installer as soon as asked
* Removed excessive import
SysCommand is exposed through archinstall
* Removed f-string

Co-authored-by: Anton Hvornum <anton.feeds+github@gmail.com>
2022-01-02 22:45:44 +01:00
Anton Hvornum 240f688cce Adding a Pipewire application profile (#821)
* Adding a Pipewire application profile

This to better manage the pipewire setup process and minimize guided a bit. This also adds the concept of @archinstall.plugin decorators to add a plugin in run-time. Which pipewire uses to detect user creation and enable the pipewire-pulse service for new users.

* Forgot to run .install() on pipewire Application()
* Backwards compatible variable insertion for installation session
2022-01-02 16:38:02 +01:00
Anton Hvornum 93aa4aa6cc
Fix inspired by #804 to tweak the fix in v2.3.1-dev 2022-01-02 14:14:00 +01:00
Anton Hvornum b1af3eda83 Fixed issue #799. Where user prompt wouldn't be shown if a root password was set. 2022-01-02 14:11:00 +01:00