Commit Graph

577 Commits

Author SHA1 Message Date
Yash Tripathi c3c55f5992
added support for setting mirror-region to a dict or a string in config 2021-05-28 08:44:28 +05:30
Dylan M. Taylor 04e58f98fa
Needed to set file mode to write. 2021-05-27 22:50:38 -04:00
Dylan Taylor eb8f459525 Write user configuration JSON to a file in logs directory 2021-05-27 22:24:09 -04:00
Yash Tripathi fd4b2c97fb
Update custom-command-sample.json 2021-05-27 21:29:14 +05:30
Dylan M. Taylor 26a33000d8 Add descriptions for top-level profiles 2021-05-27 08:11:27 -04:00
Yash Tripathi 2aed8c6ad5 removed builtins usage and added gfx_package key in config 2021-05-24 22:12:25 +05:30
Anton Hvornum 515cd4daf0 Merged in latest changes from master 2021-05-24 12:29:43 +02:00
Anton Hvornum 1c9adbbedf Made sure NTP matches the default value when 'skipped'. 2021-05-23 11:41:55 +02:00
Yash Tripathi 1d04acb603
added pulling sys-language and sys-encoding from config 2021-05-23 13:33:48 +05:30
Yash Tripathi 87955e0ba6
fixed pulling mirror-region from config 2021-05-23 11:56:19 +05:30
Yash Tripathi 9be8a3a998
updated mirror-region config key to use value directly 2021-05-23 11:52:21 +05:30
Anton Hvornum 9ce4370fc7 Fix issue from language selection. 2021-05-22 21:00:59 +02:00
Anton Hvornum a9efdac615 Fix issue from language selection. 2021-05-22 21:00:11 +02:00
Anton Hvornum 1552cc8277 Re-worked the select_profile() user interaction. It no longer takes options as a parameter, instead it sources the profiles available, prints a curated list but allows for any input that is a valid profile. 2021-05-22 20:50:02 +02:00
Anton Hvornum d7e23c847f Added in the option to select system locale if --advance is given to guided, as it does potentially cause issues in the installation if not configured properly 2021-05-22 20:40:20 +02:00
Anton Hvornum d0a37843aa Rephrased according to @dylan's suggestions. 2021-05-22 20:13:59 +02:00
Anton Hvornum 1e53f4a65f Made NTP question only on timezone for now. 2021-05-22 20:10:30 +02:00
Anton Hvornum e3a629a6ff Added a information that ntp might require some additional tinkering to work perfectly. 2021-05-22 20:07:15 +02:00
Anton Hvornum b45efe0983 Adding a NTP option to syncronize time. 2021-05-22 20:04:55 +02:00
Anton Hvornum f789a96348 Added in a are-we-root check at the top of guided. 2021-05-22 19:35:57 +02:00
Dylan Taylor ebf5980943 Add ability to provide an array of services to enable in config file 2021-05-21 09:00:32 -04:00
Anton Hvornum f9ec8f2a27 Merging in latest changes from master and resolved conflicts. 2021-05-21 09:56:42 +02:00
Yash Tripathi 7fefd55a0c fallback added for when profile is null/empty 2021-05-20 18:59:22 -04:00
Dylan Taylor bc58ec047d Re-add profile import 2021-05-20 18:39:36 -04:00
Yash Tripathi cba7dae8f0 fixed creating profile object if profile is passed in vars 2021-05-20 18:38:19 -04:00
Dylan Taylor e6befe53c7 Use {installation.target} in custom commands handler 2021-05-20 17:55:40 -04:00
Dylan Taylor 5652ba20ae Extract custom-commands function into general.py 2021-05-20 17:12:41 -04:00
Dylan Taylor 11c9632322 Clean up temp files after they are run 2021-05-20 16:13:16 -04:00
Dylan Taylor 5d6935f9f2 Add logging of execution output 2021-05-20 15:32:15 -04:00
Dylan Taylor 7811e01a90 Switch back to arch-chroot
This reverts commit 27fa511914.
2021-05-20 15:07:58 -04:00
Dylan M. Taylor c39fc34eab Use temporary script files
Path will be different inside of target env.
2021-05-20 14:19:09 -04:00
Anton Hvornum cf3e47aa44
Swapped the instance sent to Boot() 2021-05-20 16:17:04 +02:00
Yash Tripathi 73e3b99f72 changed "desktop" to "profile" while loading config 2021-05-20 08:44:33 -04:00
Dylan Taylor 5fe3a77aed Update configuration script to work with changes 2021-05-20 08:41:18 -04:00
Dylan Taylor 9c8d55dd76 Merge branch 'master' into post-installation-scripts 2021-05-20 08:13:57 -04:00
Yash Tripathi 86fd64ef8a
fixed desktop install from config 2021-05-20 13:22:58 +05:30
Dylan M. Taylor f137bc4076 Modify custom profile example to try to get it working 2021-05-19 23:12:54 -04:00
Yash Tripathi 7a98ccb9aa Update guided.py 2021-05-19 22:43:27 -04:00
Dylan Taylor 27fa511914 Try to use the new systemd-nspawn code paths 2021-05-19 22:43:27 -04:00
Dylan M. Taylor c03da01412 Run custom commands within bash session 2021-05-19 22:09:27 -04:00
Dylan M. Taylor 592c173767 Iterate over custom-command array 2021-05-19 22:09:27 -04:00
Dylan M. Taylor 7775d877d8 Provide sample configuration file showing how one would use commands 2021-05-19 22:09:27 -04:00
Yash Tripathi bbb4599165
Added support for getting configuration from a config file (#364)
* added support for ingesting config

* fixed condition to check key in dictionary

* Removed redundant code, profile and desktop keys are now optional

* Added base-config.json and support for pulling credentials from .env

* added base config file and env file for users credentials

* added silent install switch

* added python-dotenv as a dependency

* Updated Readme to include argparse changes as well as config ingestion

* Updated Readme to include argparse changes as well as config ingestion

* fixed typo in pyproject.toml

* Replaced the magic __builtin__ global variable. This should fix mypy complaints while still retaining the same functionality, kinda. It's less automatic but it's also less of dark magic, which makes sense for anyone but me.

* Fixes string index error.

* Quotation error.

* fixed initializing --script argument

* added python-dotenv as a dependency

* Installation can't be silent if config is not passed

* fixed silent install help

* fixed condition for ask_user_questions

* reverted to creating profile object properly

* Cleaned up and incorporated suggestions

* added Profile import

* added condition if Profile is null

* fixed condition

* updated parsing vars from argparse

* removed loading users from .env

* Reworking SysCommand & Moving to localectl for locale related activities (#4)

* Moving to `localectl` rather than local file manipulation *(both for listing locales and setting them)*.
* Swapped `loadkeys` for localectl.
* Renamed `main` to `maim` in awesome profile.
* Created `archinstall.Boot(<installation>)` which spawns a `systemd-nspawn` container against the installation target.
* Exposing systemd.py's internals to archinstall global scope.
* Re-worked `SysCommand` completely, it's now a wrapper for `SysCommandWorker` which supports interacting with the process in a different way. `SysCommand` should behave just like the old one, for backwards compatibility reasons. This fixes #68 and #69.
* `SysCommand()` now has a `.decode()` function that defaults to `UTF-8`.
* Adding back peak_output=True to pacstrap.

Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
Co-authored-by: Dylan Taylor <dylan@dylanmtaylor.com>

Co-authored-by: Anton Hvornum <anton@hvornum.se>
Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>

* fixed indent

* removed redundant import

* removed duplicate import

* removed duplicate import

Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
Co-authored-by: Anton Hvornum <anton@hvornum.se>
Co-authored-by: Dylan M. Taylor <dylan@dylanmtaylor.com>
2021-05-19 21:31:58 +02:00
Anton Hvornum 49e6cbdc54
Reworking SysCommand & Moving to localectl for locale related activities
* Moving to `localectl` rather than local file manipulation *(both for listing locales and setting them)*.
* Swapped `loadkeys` for localectl.
* Renamed `main` to `maim` in awesome profile.
* Created `archinstall.Boot(<installation>)` which spawns a `systemd-nspawn` container against the installation target.
* Exposing systemd.py's internals to archinstall global scope.
* Re-worked `SysCommand` completely, it's now a wrapper for `SysCommandWorker` which supports interacting with the process in a different way. `SysCommand` should behave just like the old one, for backwards compatibility reasons. This fixes #68 and #69.
* `SysCommand()` now has a `.decode()` function that defaults to `UTF-8`.
* Adding back peak_output=True to pacstrap.

Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
Co-authored-by: Dylan Taylor <dylan@dylanmtaylor.com>
2021-05-19 16:45:13 +02:00
Dylan M. Taylor 22fc18dc46 Add mirror reachability check
Needed error handling
Fix internet connection text not showing up and make it red
2021-05-15 22:53:58 -04:00
Dylan Taylor 1796bbb918 Perform refactoring to PEP 8 naming conventions 2021-05-15 17:50:28 -04:00
Dylan Taylor f7642786c9 Remove some redundant parenthesis 2021-05-15 15:18:46 -04:00
Dylan Taylor 4a34b3a9d0 Fix E712 2021-05-15 15:08:50 -04:00
Dylan Taylor 126c7ebfca More formatting fixes to satisfy PEP 8 2021-05-15 15:04:39 -04:00
Dylan Taylor a0cbb31d3e f-string fixes 2021-05-15 14:29:24 -04:00
Dylan Taylor 37484b7423 Split filesystem message into multiple lines 2021-05-15 14:07:13 -04:00
Dylan Taylor 3b20adb7d2 Whitespace changes 2021-05-15 13:59:37 -04:00
Dylan Taylor 5067aaa260 Change mirror get check as suggested 2021-05-15 13:39:12 -04:00
Dylan Taylor 8d4c314966 Switch to using level=logging.DEBUG 2021-05-15 13:35:39 -04:00
Dylan Taylor e111dd9bc1 Final whitespace changes I think 2021-05-15 13:04:18 -04:00
Dylan Taylor 8d39ff4a76 Minor whitespace changes to guided.py 2021-05-15 13:02:19 -04:00
Dylan Taylor 6057203e5b More formatting fixes 2021-05-15 12:59:38 -04:00
Dylan Taylor 69d675f4aa Many more manual changes 2021-05-15 12:29:57 -04:00
Dylan Taylor 5734b6e4a5 Fix f-string is missing placeholders in unattended 2021-05-15 12:13:26 -04:00
Dylan Taylor e950c6af0f Fix f-string is missing placeholders in minimal 2021-05-15 12:12:55 -04:00
Dylan Taylor 14b89e6e25 Fix unused imports in guided 2021-05-15 12:10:32 -04:00
Dylan Taylor 37e818b3d1 More manual fixes 2021-05-15 12:07:46 -04:00
Anton Hvornum 7f81281f59 Removed dupe formatter
There should be no reason to call `.format()` here, since the steps above take care of all formatting.
2021-05-14 21:29:49 +02:00
Anton Hvornum 1abe2c762e Removed targeted /boot formatting. This should be handled and marked earlier in the locig, the partitioning logic should only honor the marked partitions and their status. No need to explicitly format /boot since - if it's meant to be formatted - it should already be marked. 2021-05-14 19:48:39 +02:00
advaithm 69d079e63a
some type hint fixes and a bad catch fix 2021-05-12 15:45:45 +05:30
Anton Hvornum 129ceaea8b Renamed keyboard-language to keyboard-layout to avoid confusion. Added encryption checks for disk layout selection, if disk encryption password is given - but no partitions were found using encryption, the user will be asked which partitions to encrypt - unless there's only /boot and /<root> then we'll automatically select /<root> because that's what we support for now. 2021-05-11 13:37:08 +02:00
Anton Hvornum e6c28a94ee Fixed line-ending issue after using generic_multi_select() 2021-05-11 11:48:44 +02:00
Anton Hvornum 4b6e312cfa Flipped log level logic. 2021-05-11 11:41:43 +02:00
Anton Hvornum 6d5d9a1798 Added Partition() properties: sector_size, start, end, boot, partition_type and a __dump__() function. As well as kept working on the partition logic of guided to have a more traditional workflow of adding/deleting partitions in a guided manner, as well as the ability to mark partitions as encrypted/boot and set target mountpoints. 2021-05-10 14:32:39 +02:00
Anton Hvornum 3e601ff9ab Added a soft-wrapper around parted logic. This logic will guide users through setting up partitions, if they chose to wipe a drive. We'll avoid doing to much auto-magic, and this is just a start. 2021-05-10 10:14:33 +02:00
Anton Hvornum 8925be6c87 Adding in partition layout structure 2021-05-06 15:18:57 +02:00
Anton Hvornum c20be61e12 Removed obsolete variable in prep for multi-disk support. 2021-05-06 14:20:20 +02:00
Anton Hvornum 8bc3dd685e Beginning work on simplifying disk process in guided.py by reducing complexity and code logic. 2021-05-05 15:06:47 +02:00
Anton Hvornum a0947f527a Allow for multiple disks to be selected (to span partitions such as boot across multiple block devices) 2021-05-05 13:56:24 +02:00
Anton Hvornum 469ab8d15a Moved around the function calls to be more logical and separated. Also moved the target-mount -> target-mountpoint as a parameter for the actual installation. 2021-05-04 11:45:21 +02:00
Anton Hvornum ea0d0a8817 Merge branch 'master' of https://github.com/archlinux/archinstall into torxed-partitioning 2021-05-01 12:12:10 +02:00
Anton Hvornum 0ebc6be7ae
Added a postgresql application profile. (#383)
* Added a postgres application profile. Also introducing runas to the arch_chroot of the installation, to run commands as emulated users. This is highly WIP at the moment.

* Fixing top-level-listing of profiles. As well as testing some postgres installation steps.

* Removed dupe functions.

* Added safety check in case a comment mentions the top level profile thing.

* Patching namespace corruption.

* Avoiding runtime collision due to installation not being initiated yet.

* Allow for parameterization of filesystem in guided.

Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
2021-04-29 13:32:21 +02:00
SecondThundeR 6cfaf30718 Update kernel select
Move select to separate function
Remove 'continue' option
Add hardened kernel as option
2021-04-28 09:41:47 +03:00
Владислав bbe38025fb
Merge branch 'master' into misc-cleanup 2021-04-27 19:01:38 +03:00
Anton Hvornum 090b98b830
Moving away from custom log levels, to something that's well defined. (#360)
* Moving away from custom log levels, to something that's well defined.

* Added backward compability to log() as well.

* Added an option to force log messages out on screen even if the level is below the log level threashold.

* Added force log messages when wrong notation is used.

* Added some more length to the deprecated message

* Swapped all log levels to use logging.<level> instead.

Co-authored-by: Anton Hvornum <anton.feeds@gmail.com>
2021-04-27 16:43:17 +02:00
Владислав 0c6ebc7e80
Merge branch 'master' into misc-cleanup 2021-04-27 15:18:02 +03:00
SecondThundeR 985b7fac3f Revert "Update logging for some functions"
This reverts commit f5b6e7bafe.

Reverting commit due to currently redundant change and merge conflict
2021-04-27 15:14:28 +03:00
Anton Hvornum 5852582bbf Pulled in latest changes from torxed-v2.2.0 2021-04-27 13:33:52 +02:00
Anton Hvornum 2762144e32 Added a failsafe for kernels argument to be defaulted to linux, since 'None' could technically end up here. 2021-04-27 12:39:13 +02:00
Anton Hvornum b6cd5835f1 Reduced complexity in guided for the kernel selection process. 2021-04-27 12:37:16 +02:00
Anton Hvornum 1230fdfe31 Synced latest changes from torxed-v2.2.0. 2021-04-27 12:30:00 +02:00
Anton Hvornum 1be405aa77
Corrected indentation (mixed spaces and tabs) 2021-04-27 12:26:59 +02:00
Aggam Rahamim fa9a08b86d having ability to use multiple kernels - dict fix 2021-04-27 12:40:05 +03:00
Aggam Rahamim e250181317 Merge branch 'master' of https://github.com/AggamR/archinstall 2021-04-25 14:56:03 +03:00
Aggam Rahamim 5c9859d316 having ability to use multiple kernels 2021-04-25 14:55:39 +03:00
advaithm 85e4a85cdb
updated to lastest commit, fixed a conflict 2021-04-24 13:56:35 +05:30
SecondThundeR f5b6e7bafe Update logging for some functions
- Unified view of warning (red) and info (yellow) logs
- Fixed some PEP8 related issues, like removing redundant f-strings and replacing double quotes to single ones
- Removed warning logging level for simple logs
- Removed other background color settings for logs to fully close https://github.com/archlinux/archinstall/pull/171
2021-04-23 01:55:53 +03:00
SecondThundeR 839e945b87 Moved output about base installed packages
This prevents screen from being cluttered if the user enters the wrong package(or packages), allowing only repetitions of prompt to be displayed
2021-04-23 01:03:34 +03:00
Anton Hvornum 3cf8ec7ad6
Added a continuation if partitions are not set yet. 2021-04-22 21:58:47 +02:00
Anton Hvornum 81c57560b3
Fixes #324. 2021-04-22 21:56:52 +02:00
advaithm 15d56c2bc7
merged with master 2021-04-22 16:41:47 +05:30
Anton Hvornum 46b872aa61 Re-working top-level-profile lambda to be a parameter to list_profiles() instead. When skipping a profile, None is returned from somewhere and it causes a glitch. So trying to figure out where and what by cleaning up a bit 2021-04-21 14:37:23 +02:00
Anton Hvornum ccb75f70b9 Merged in latest changes and history from torxed-2.2.0 to avoid odd history in PR #315 2021-04-21 13:10:56 +02:00
advaithm 85c5275a8f
added return true 2021-04-20 21:23:11 +05:30
advaithm 8b723c25e2
changed some strings 2021-04-20 20:36:26 +05:30
advaithm adeae68123
reworked how we remove efimanager and add grub 2021-04-20 19:58:23 +05:30
advaithm 47202d9bf9
moved some stuff 2021-04-20 19:46:22 +05:30
advaithm dbb6d630bd
fixed some issues with adding packages 2021-04-20 19:43:23 +05:30
advaithm 572ab522fc
we should only look for boot on uefi systems 2021-04-20 19:40:09 +05:30
advaithm fc8960f2a9
we should only look for boot on uefi systems 2021-04-20 19:35:28 +05:30
advaithm 1ea02a7e69
we should only look for boot on uefi systems 2021-04-20 19:27:16 +05:30
advaithm 23704b7908
repharsed some stuff 2021-04-20 18:53:47 +05:30
advaithm 9c400aa727
reworked how we handle bootloaders a little 2021-04-20 18:49:02 +05:30
advaithm 7afba65c26
rebase 2021-04-20 18:43:19 +05:30
Anton Hvornum f5ef751d53
Merge branch 'torxed-v2.2.0' into torxed-v2.2.0 2021-04-20 12:57:14 +00:00
SecondThundeR a316846121 Replace input with generic_select where necessary
Here are list of changes:
> From now on, `generic_select` will be called "Select function", for clarity

- Slightly updated select function
- Removed options output for some functions, where it's better to do with select function
- Added sorting for all lists passed to select function
- Replaced `dict.values()` with `dict` as options parameter
- Simplified input checking for all functions that use the select function
- Added temporary *(for now)* workaround for passing `?` and `help` inputs
- Merged fix for `partition.format()`
2021-04-17 16:35:21 +03:00
Anton Hvornum 5fba277dda Merging in master to feature branch. 2021-04-17 09:52:09 +02:00
Malccolm Haak 77894df51c Whitespace needs to be tabs. Added test for UEFI, if not found add grub-install to pacstrap install 2021-04-17 14:37:14 +10:00
Malccolm Haak 80a3ca3826 In guided install Non-UEFI installs need to use grub-install as its the only supported bootloader that doesn't require UEFI 2021-04-17 14:23:39 +10:00
Aggam Rahamim 8b9f16a028 removed new line when ask for kernel 2021-04-16 14:43:17 +03:00
Aggam Rahamim f6fdc11927 fixing - letting user choose kernel 2021-04-16 13:54:22 +03:00
Anton Hvornum a7c0142099
Adding debug data to the log. It will now contain lsblk before and after the installation to help with detecting any potential information. Also removed a traceback log that was for debugging purposes. 2021-04-16 11:48:24 +02:00
Aggam Rahamim 459f161cf0 added option to choose kernel 2021-04-16 12:01:20 +03:00
Anton Hvornum 1aadfa98c4
Added a safety net to language selection 2021-04-14 12:46:18 +02:00
Anton Hvornum 5b3a122141
Updated the loop logic for mirrors
It wouldn't break out of the loop since the `valid_mirror` variable was never changed.
2021-04-14 12:08:37 +02:00
Anton Hvornum 99fb1304ea
Updated the loop logic for packages
It wouldn't loop over the question again, so correct for that.
2021-04-14 12:06:15 +02:00
Anton Hvornum 7ae4b170b3
Removed excessive import
The exceptions are already exposed in `archinstall.<exception>`.
This might change in the future tho.
2021-04-14 11:53:31 +02:00
advaithm 7e12a2abc4
Merge branch 'master' of github.com:advaithm/archinstall 2021-04-14 14:48:11 +05:30
advaithm df3f7af91b
reworked mirror selection 2021-04-14 14:47:57 +05:30
Anton Hvornum c13c109bff
Removed a \t 2021-04-14 11:16:31 +02:00
advaithm b08b2f3062
another patch for line 249 2021-04-14 14:29:46 +05:30
advaithm 78a9f0077e
fixed line 249 2021-04-14 14:21:53 +05:30
advaithm 85bcc58951
missed a merge 2021-04-14 14:16:11 +05:30
advaithm b292981de6
rebased to latest commits 2021-04-14 13:50:54 +05:30
advaithm 3347d04bfa
fixed issues raised in a review 2021-04-14 13:46:47 +05:30
Dylan M. Taylor dffb611d18
Fix warning on BIOS/MBR systems 2021-04-13 20:19:46 -04:00
Anton Hvornum 2433a9ee76
Merge PR #300 - Cloes #299
better logging for audio servers
2021-04-13 13:20:20 +00:00
advaithm 37fae92253
set archinstall.arguments['audio']=None 2021-04-13 18:45:55 +05:30
advaithm 0617292340
better prompts for audio servers 2021-04-13 18:41:23 +05:30
Anton Hvornum 516402cac4 Moved the '.drop_to_shell()' into the with installation context so we don't loose 'installation'. 2021-04-13 13:54:23 +02:00
Anton Hvornum 4750b0b2a1 Fixed a spelling error. 2021-04-13 12:56:50 +02:00
Anton Hvornum 4d7c787cfd Fixing reflector waiting state. It can be dead which means it's done, or failed it systemd failed to start/find it. 2021-04-13 12:47:17 +02:00
Anton Hvornum 9295f38134 Added two comments. 2021-04-13 11:02:45 +02:00
Anton Hvornum 342dbb4ebf Added a Info level to the reflector wait in case it's slow. 2021-04-13 10:56:22 +02:00
Anton Hvornum 311426cbc2 Fixing a logic issue with ask_to_configure_network(). It no longer returns None if skipped, it returns a dict so that we can do sub-level logic checks in guided. 2021-04-13 10:27:33 +02:00
Anton Hvornum 67b05d8fb1 Added option to not touch mirror-list. Example if archlinux.org times out, use the existing mirror-list without trying to overwrite it. 2021-04-13 10:01:54 +02:00
Anton Hvornum 4391dd68d5
Merge pull request #289 from dylanmtaylor/chroot-prompt
Implement chroot prompt after successful installation
2021-04-13 07:09:58 +00:00
Dylan Taylor 3034def365 Move logic to guided 2021-04-12 10:09:37 -04:00
Anton Hvornum 18b5ebff44 Moving warning about UEFI to guided for now. 2021-04-12 14:52:14 +02:00
Anton Hvornum ae33151b9b Moving warning about UEFI to guided for now. 2021-04-12 14:51:32 +02:00
Anton Hvornum 398f95ee56 Merge branch 'master' into torxed-v2.2.0 2021-04-12 00:09:55 +02:00
Anton Hvornum 8429510736
Pulled in master to avoid merge conflicts. 2021-04-10 11:22:15 +02:00
Anton Hvornum 103320b061
Fixing broken logic in guided 2021-04-09 23:43:17 +02:00
Anton Hvornum 22eb6e023d
Fixing broken logic in guided 2021-04-09 23:42:28 +02:00
Anton Hvornum 9b2f627d9e
Fixing broken logic in guided 2021-04-09 23:41:13 +02:00
Anton Hvornum 0370c44ed8
Enabled skipping partitioning in minimal. It now can take /mnt just as guided as it's destination, and skips partitioning all together. Which makes it go straight to installation. 2021-04-09 22:08:33 +02:00
Anton Hvornum 97540293b8
Removed some debugging auto-unmount 2021-04-09 22:06:17 +02:00
Anton Hvornum 5099376dcd
Attempting to fix auto-detection of encrypted drives. So that #124 can perform reverse detection on partitions and detect encryption. 2021-04-09 21:50:53 +02:00
Anton Hvornum f57b533275 Added some debug output
Adding debug output for additional package selection.
2021-04-09 20:18:14 +02:00
Dylan M. Taylor 6a0b839bc8
pipewire-docs isn't really needed. 2021-04-09 11:59:47 -04:00
Advaith Madhukar b6ad3dffc9 fixed network manager check 2021-04-09 11:50:31 -04:00
advaithm dd61830d2b fixed some typos and changed up how we detect if we have to enable/install network manager 2021-04-09 11:50:31 -04:00
advaithm 55622fd79d install networkmanager, if required 2021-04-09 11:50:31 -04:00
advaithm e1e813fc5e updated guided.py to allow network manager as nic 2021-04-09 11:50:31 -04:00
Anton Hvornum cf1fd9e257 Safety precaution by using .get instead of ["..."] 2021-04-09 11:47:47 -04:00
Dylan Taylor 4c92879c1d Make audio server selection only prompt for desktop profiles 2021-04-09 11:47:35 -04:00
Anton Hvornum dbea18dab8 Switched from print to installation.log 2021-04-09 11:46:53 -04:00
Dylan Taylor d252e090a6 Have pulseaudio installed just in case DEs don't depend on it if pipewire is not requested. 2021-04-09 11:46:47 -04:00
Dylan Taylor 9395d68d5d Try removing pipewire.py and calling add additional packages
Unfortunately, calling the profile was not working.
2021-04-09 11:46:39 -04:00
Dylan M. Taylor b803c281ea Move choice into guided installation instead of DEs
Arch wiki says packages should enable the user services automatically
2021-04-09 11:46:24 -04:00
Anton Hvornum bd134c5db0
Moved the 'use /mnt' logic to during disk selection. 2021-04-09 17:33:44 +02:00
Anton Hvornum 0dafeacabd
Removed some debugging 2021-04-09 15:42:35 +02:00
Anton Hvornum ce04406448
Added some debugging 2021-04-09 15:40:48 +02:00
Anton Hvornum f298b9e393
Added a 'use /mnt' option to the formatted #124. This has not yet been tested, but the logic should work according to the new API layout for Installation(). 2021-04-09 15:27:22 +02:00
Anton Hvornum 740eccb213
Removed 'getpass' from imports. 2021-04-09 15:06:34 +02:00
Anton Hvornum da12f36305
Forgot to give a password during encryption. 2021-04-09 13:59:55 +02:00
Anton Hvornum cea8892c7c
Setting .encrypted flag in minimal. 2021-04-09 13:44:03 +02:00
Anton Hvornum e717a72a10
Starting implementing #124. The installer will be detatched from block devices and partitions. Instead it will rely on a given destination to pacstrap to. From there, it should be able to do reverse-lookups on the target and base it's information and choises from there. This removes any form of partitioning logic, hardware logic and other things from the initialization of the installer. These things should be explicitly called from the installers functions instead. Such as .set_hostname() instead of passing it as a initiation variable. 2021-04-08 22:47:13 +02:00
Anton Hvornum ab2a43e19f Forgot a variable. 2021-04-08 21:33:49 +02:00
Anton Hvornum b5245b31fe
I simplified the countdown, by moving it into it's own function instead of wrapped inside guided.. This can now be used by others for a simple countdown. I also re-worked the minimal.py example to work with the new internal partitioning logic API as well as support some flags from archinstall.arguments to minimize user input requirements to just one single question. This one question will most likely go away too, but stays for simplicity right now. 2021-04-08 21:14:19 +02:00
Dylan Taylor 4059d62e55 Add filtration on top level profile 2021-04-08 09:51:11 -04:00
advaithm 44df0f6046 added _post_install hook. 2021-04-08 09:51:11 -04:00
advaithm a16723abde Update guided.py 2021-04-08 09:51:11 -04:00
Dylan M. Taylor b96ba6e237 Break web browser suggestion into second line to avoid wrapping 2021-04-08 09:20:39 -04:00
Dylan M. Taylor ef2e1fd239 Make the minimal installation example use the minimal profile instead of awesome wm 2021-04-08 09:20:39 -04:00
Anton Hvornum e9a3e8661e Moved the print logic for browser warning 2021-04-08 09:20:39 -04:00
Dylan M. Taylor b483c718da Add a message about specifying a web browser 2021-04-08 09:20:39 -04:00
Anton Hvornum f8bf2b313a
Merging in master into feature branch. 2021-04-08 08:39:37 +02:00
Anton Hvornum cdf6fc796f
Safety precaution by using .get instead of ["..."] 2021-04-08 08:17:40 +02:00
Anton Hvornum 0868156a73
Merge pull request #231 from dylanmtaylor/patch-2
Break web browser suggestion into second line to avoid wrapping
2021-04-08 06:14:16 +00:00
Dylan Taylor fd7510a88c Make audio server selection only prompt for desktop profiles 2021-04-07 20:38:20 -04:00
Dylan M. Taylor 8e722d07cf
Break web browser suggestion into second line to avoid wrapping 2021-04-07 20:28:30 -04:00
Dylan M. Taylor 09b4e5bbc0
Make the minimal installation example use the minimal profile instead of awesome wm 2021-04-07 19:41:25 -04:00
Dylan Taylor 75008f3f0e Merge remote-tracking branch 'dylanmtaylor/minimal-install-profile' into torxed-v2.2.0 2021-04-07 19:28:49 -04:00
Dylan Taylor f85fb66bc6 Add filtration on top level profile 2021-04-07 09:23:08 -04:00
Anton Hvornum 87d37193e5
Merge PR #208: Temporary incorp of audio selection
Implement PipeWire sound server as an option, merging so we can work on this more. No this will not make it into the release as-is, it's just a working branch and this will change :)
2021-04-07 12:55:28 +00:00
Anton Hvornum 42470dcc9a Merging changes from master into feature branch to avoid future conflics. 2021-04-07 11:15:42 +02:00
Anton Hvornum 86699ae23e
Switched from print to installation.log 2021-04-07 09:28:16 +02:00
Dylan Taylor fb2c9aca39 Have pulseaudio installed just in case DEs don't depend on it if pipewire is not requested. 2021-04-06 22:20:07 -04:00
Dylan Taylor 93750dbd22 Try removing pipewire.py and calling add additional packages
Unfortunately, calling the profile was not working.
2021-04-06 22:20:07 -04:00
Dylan M. Taylor d9984550b6 Move choice into guided installation instead of DEs
Arch wiki says packages should enable the user services automatically
2021-04-06 22:19:41 -04:00
Anton Hvornum 2e7930857b
Moved the print logic for browser warning 2021-04-06 19:05:52 +02:00
Dylan M. Taylor 6c3f46f617
Add a message about specifying a web browser 2021-04-06 13:03:42 -04:00
Anton Hvornum 610d630863
Merge pull request #190 from advaithm/master
post install hook
2021-04-06 07:57:02 +00:00
Anton Hvornum 4af3bbac23
Phrasing and removed background coloring 2021-04-06 09:55:12 +02:00
advaithm f0e40f5676 added _post_install hook. 2021-04-06 07:21:11 +05:30
Anton Hvornum dc522b74b9
Merge pull request #179 from advaithm/master
i3 and 13-gaps support
2021-04-05 16:21:43 +00:00
advaithm b56f7d0515 fixed subprocess call 2021-04-05 21:28:20 +05:30
advaithm 9404dbe967 Update guided.py 2021-04-05 21:05:15 +05:30
advaithm 947700a605 use subprocess to launch the shell 2021-04-05 21:03:56 +05:30
advaithm 463d1b5fd3 add shell drop for i3 and i3-gaps 2021-04-05 20:58:38 +05:30
advaithm e2a6a85d66 Revert "Fixed issue with no network configueration"
This reverts commit dbe7f3fcb8.
2021-04-05 20:47:42 +05:30
Zach Osman 69a8730845 Removing background color definitions for all log functions 2021-04-04 16:14:13 -04:00
Anton Hvornum f8fc542fd7
Merge branch 'master' into fix-repo-url 2021-04-04 18:32:59 +00:00
Rafael Fontenelle 5a321d6ce5 Update repo to archlinux/archinstall 2021-04-04 11:52:51 -03:00
Rafael Fontenelle 2b5b1ad83d Fix misspellings 2021-04-04 11:28:54 -03:00
advaithm dbe7f3fcb8 Fixed issue with no network configueration 2021-04-04 19:20:08 +05:30
Anton Hvornum f452655d4f
Merge pull request #158 from advaithm/master
Network manager support
2021-04-04 09:37:29 +00:00
Advaith Madhukar 8ad4a7d1c4
fixed network manager check 2021-04-04 14:42:19 +05:30
advaithm 9daa3f4924 fixed some typos and changed up how we detect if we have to enable/install network manager 2021-04-04 09:26:28 +05:30
advaithm 9e3ded8311
install networkmanager, if required 2021-04-04 08:54:35 +05:30
advaithm ae5f9b08c4
updated guided.py to allow network manager as nic 2021-04-04 07:33:17 +05:30
Anton Hvornum 9bd829c0e2
Merging in latest changes from master. 2021-04-03 16:28:40 +02:00
Anton Hvornum bb295cb83a
Fixes #149 as well as --help. This will be added in the next patch release. 2021-04-03 11:25:34 +02:00
advaithm b974b93004
fixed some issues with the changes 2021-04-02 10:08:16 +05:30
advaithm f4e616cd9e
updated to latest commits 2021-04-02 09:48:41 +05:30
Anton Hvornum a29bd75954
Removing a flush of the cache that was excessive. 2021-03-29 17:46:07 +02:00
Anton Hvornum 36dfa2e1c4
Reverting .strip() logic and moving the check into the get_password() function. 2021-03-29 10:20:35 +02:00
Anton Hvornum ed565e1348
Adding some overclarification to encryption checks. 2021-03-29 09:33:58 +02:00
Anton Hvornum a156f224a8
Fixing un-encrypted drives matching on block encrypted. 2021-03-29 08:56:41 +02:00
Anton Hvornum a3aef119b2
Improved english grammar and dialogues. Some 'questions' were formatted in a way where the user would enter 'yes' instead of the expected input. For instance, 'Any additional users to install:' which is a question where 'yes' is a appropriate response, but the expected input was the username to be created. Rephrased it to 'Enter a username to create a additional user:' instead for instance. 2021-03-21 21:30:52 +01:00
Anton Hvornum a75002a36d
Fixed an issue where brand new disks (no partitions), got protected by a safety measurement where .keep_partitions were set to True by default. 2021-03-21 11:12:07 +01:00
Anton Hvornum b67257233f
Fixed #64. installation.set_timezone() already excisted since earlier versions of archinstall in the library section. The guided.py example simply never asked for a time-zone. There's still no NTP option, which I'll add in later. Mostly because there's a lot of settings one can do to a time-client configuration, and I'm not sure all users want the default time servers etc. 2021-03-20 17:26:48 +01:00
Anton Hvornum 61504fc927
Fixed #101. Now warns the users after they skip the network configuration. 2021-03-20 17:12:53 +01:00
Anton Hvornum 54200bf476
Removed evil .format(ext4) which was a remenant from the old days. 2021-03-14 15:39:52 +01:00
Anton Hvornum 51cbec58da
Spelling error. 2021-03-14 15:32:52 +01:00
Anton Hvornum 32ab44e6da
More error handling to encrypted vs not encrypted partitions. 2021-03-14 15:32:22 +01:00
Anton Hvornum 502968b579
Added some error handling to disk encryption passwords. 2021-03-14 15:28:46 +01:00
Anton Hvornum b495b3328e
Added error handling for unlocking an old partition (autodetect feature). 2021-03-14 15:22:25 +01:00
Anton Hvornum 37b1e61828
Corrected some spelling errors and wrong variables. 2021-03-14 14:00:52 +01:00
Anton Hvornum 7ac68b2436
Removed redundant error handling as well as added some more debug logs. 2021-03-14 13:54:01 +01:00
advaithm ee3c48c965
updated examples 2021-03-12 12:02:03 +05:30
Anton Hvornum 3f8f0020f5 Purged last legacy, setting the root pw 2021-03-09 16:22:36 +01:00
Anton Hvornum aabdce9286 fixed a global variable as well as re-organized the guided.py to better match the flow of steps.. 1) Ask user questions function, 2) Perform installation steps, 3) Perform actual installation 2021-03-09 16:16:05 +01:00
Anton Hvornum 2bd220c280 Moved everything into a function block rather than having everything on a line by line situation. This just helps separate what the two major components/blocks are of the guided profile. The change was done in the previous commit, but a spelling mistake was made here and I forgot to mention it in the already long commit log. But user-questions is now in one function. Installation steps are now in a two-tier function, one for setup and one for install steps. 2021-03-09 16:13:21 +01:00
Anton Hvornum aafe3d19c6 Fixed remaining installation steps and remove legacy references to archinstall.storage['_guided'] and archinstall.storage['_guided_hidden']. Which were great at the time, but they are not deprecated and moved into archinstall.arguments instead to support parameters on command-line. As well as being a bit more description, since they are arguments afterall to various setup instructions. 2021-03-09 16:10:57 +01:00
Anton Hvornum 1167cf589b Fixed mirror-region parameter selection. Converting to actual mirrors. 2021-03-09 14:09:17 +01:00
Anton Hvornum ce646a9394 Forgot a variable. 2021-03-09 11:49:20 +01:00
Anton Hvornum 586f8bc32e Adding enforcement to select a filesystem-type for encrypted volumes unless the specified pasword can be used to unlock the device and auto-detect this. 2021-03-09 11:44:17 +01:00
Anton Hvornum f230140ba9 Removed hardcoded partition numbers when acessing partitions. As the order is not fixed and more options to disk layouts have been added. 2021-03-09 10:50:05 +01:00
Anton Hvornum 1f62a97c90 Marking the root partitions as encrypted if a disk password is set. In the future, we need to make this a bit more flexible by allowing multiple partitions to be encrypted. But for now, the main partition should be enough. 2021-03-09 10:41:57 +01:00
Anton Hvornum 7ee4815648
Adding encryption helpers to the Partition() class, that sets up and utilizes luks2.encrypt() in extension. 2021-03-09 00:12:03 +01:00
Anton Hvornum f1cb3209ad Tweaked the guided steps up until the installation. 2021-03-08 17:21:23 +01:00
Anton Hvornum 8bf3296749 Optimization, safe_to_format() now checks partition.allow_formatting as a condition. 2021-03-08 17:14:21 +01:00
Anton Hvornum fb55e318e5 Added two new functions. partition.safe_to_format() and partition.has_content(). The first does some sanity checks to verify if we can format the partition or not. The second temporarly mounts the parition and checks if there's content inside and returns accordingly. 2021-03-08 17:13:21 +01:00