Commit Graph

503 Commits

Author SHA1 Message Date
Dylan Taylor 04c2b19dbe Fix error at end of installation from missing method import 2021-11-23 15:27:02 -05:00
Dylan M. Taylor 72d02a391d
Add accessibility packages to installed system if using the on the live ISO (#760)
* Add group of accesibility tools
* Conditionally extend base packages
* Enable it if accessibility in use in guided
* Fix circular import
2021-11-23 21:10:21 +01:00
Anton Hvornum 6b6c9c84be
Adding a warning when /boot is reasonably too small (#738)
* Moved convert_size_to_gb() into disk/helpers.py, Added a Partition().size property meta function. Using the .size value to check if /boot is too small which will raise an exception. The only drawback is that it's done post-formatting. This in order to catch scenarios where formatting isn't used.
* Changed /boot warning from 0.15GB to 0.25GB
* Changed the wording in the warning when /boot is too small.
2021-11-23 11:37:51 +00:00
Dylan Taylor 45ba4a3f1b Rewrite bootloader selection to allow efistub if advanced flag is set 2021-11-22 20:25:43 -05:00
Dylan M. Taylor e532b76158
Make NTFS an advanced option (#753)
* Make NTFS an advanced option
2021-11-22 21:08:41 +01:00
Anton Hvornum 29d0b3d155
Simplified size definition in dict. (#752)
* Simplified size definition in dict. Also changed from MiB to MB and GiB to GB on places where they were used, as BlockDevice().size now returns GB by default, so no math operations needed
* Appended the /boot offset to /root when specifying /home start.
2021-11-22 11:27:49 +00:00
Anton Hvornum 66e23af422
Merge PR #739 - Added @staticmethod decorators
source code improvement
2021-11-20 22:21:00 +00:00
Anton Hvornum 627b6b5207
Incorrect location usage of AVAILABLE_GFX_DRIVERS
#710
2021-11-20 10:32:28 +01:00
Steven Lee 91d030a09c
source code improvement 2021-11-19 14:09:47 +11:00
Anton Hvornum b22500babd Removed assumptions that !user and !super-users exists. 2021-11-11 18:59:53 +01:00
Anton Hvornum ad09c8cfa2 Bad copy paste of code prohibited credentials from being stored. 2021-11-11 09:59:22 +00:00
Anton Hvornum 813afa1507 Only adding disk encryption to user_credentials.json when supplied. 2021-11-11 09:43:06 +00:00
Anton Hvornum 71a86f65aa Forgot the disk encryption password, also escaped with ! 2021-11-09 19:01:48 +01:00
Anton Hvornum 389aa1080b Adding in storage of user supplied credentials. This separates credentials from user_configuration.json into user_credentials.json. As well as the JSON serializer will omit the credentials from the user_configuration.json by detecting ! in the dictionary keys (which is why they are important). UNSAFE_JSON will leave those keys in there, good for storing credentials in a separate file." 2021-11-09 17:43:28 +01:00
Anton Hvornum d1716eeeef Revert default automatic hostname in user_config.json, I realized it's better to use --silent than forcing something in there. Some users might want to get poked on every machine. 2021-11-09 17:20:48 +01:00
Anton Hvornum 07255391cc Automatically fill the hostname in user_config.json 2021-11-09 17:16:25 +01:00
Anton Hvornum dbe8ce9982
Fixed broken import from master 2021-11-05 22:04:45 +01:00
Anton Hvornum a5730dec85
Misspelled variable name 2021-11-05 22:03:24 +01:00
Anton Hvornum 0067e34970
Merged latest master 2021-11-05 21:37:40 +01:00
Anton Hvornum 93efce92a9
Renamed the ntp function, as it doesn't install/enable ntp any longer. Even tho it uses the NTP protocol. 2021-11-05 17:03:07 +01:00
Anton Hvornum 0071a06908
Merged PR #650 - flake8 fixes and tightening
Tighten up flake8 tests used by GitHub Action lint_python
2021-11-05 15:48:03 +00:00
Anton Hvornum 2fcd8198b2
Cleaned up all flake8 issues/warnings. Did some code cleaning as well, mostly how we called things in guided.py but also some SysCommand calls 2021-11-05 16:27:01 +01:00
TheEvilSkeleton 675db53f1d
Fix typos 2021-11-02 12:01:07 -04:00
Anton Hvornum b4eb8557f5 Adding support for swap on zram 2021-11-01 09:59:32 +00:00
Anton Hvornum 2a2239dd03 Merge branch 'master' of https://github.com/archlinux/archinstall into torxed-fix-93 2021-10-30 20:36:21 +02:00
Anton Hvornum 05a8739231
Wrong exposed variable corrected. 2021-10-30 12:02:00 +02:00
Anton Hvornum 7149b76f3b
Forgot some imports that didn't show up on a static run without going through a few of the menu's 2021-10-22 21:54:16 +02:00
SecondThundeR ffe38c879a general: remove all found white-spaces
Also this change adds new line at the end for some scripts
2021-09-19 15:49:44 +03:00
Anton Hvornum ed823be3ba Refactoring and cleaning up a bit
I'm making sure that the JSON structure of the user config can get a say in how the subvolumes should be used later on. As well as splitting up where the logic should be to make it easier to maintain.
2021-09-18 15:52:29 +02:00
Anton Hvornum 6a125d5bd2 Adding in options for BTRFS subvolumes 2021-09-18 11:22:18 +02:00
Anton Hvornum 9e67ce3f05 Making sure the drive paths are in the JSON structure, and not the class object, as it won't work seamlessly to access for instance storage['disk_layouts'][ClassInstance()] if it's not the identical mem copy of the object we're accessing, so strings are better for storage/comparisons. 2021-09-15 20:11:40 +02:00
Anton Hvornum 70af00f33d Tweaked the logic for parsing the --harddrives parameter. 2021-09-15 19:23:35 +02:00
Anton Hvornum e6549c1edb Fixing type issue with conversion to multiple disk logic. 2021-09-15 19:17:32 +02:00
Anton Hvornum 2cfbafc653 More error handling and fixed a spelling error. 2021-09-15 19:16:30 +02:00
Anton Hvornum 1a7056efc4 Might be redundant, but if the JSON file given to --config contains a list it will break the .split(), but if --harddrives is given as an argument, then we need to split. So adding a type-check 2021-09-15 19:09:57 +02:00
Anton Hvornum d6acfec799 Updating support for --disk_layouts. It now supports file paths as well as JSON in string format via --disk_layouts=<json> 2021-09-15 19:01:14 +02:00
Anton Hvornum 8dd097da05 Reverted last change, and improved it. By passing it through load_config and tweaking the read structure a bit, it worked out better if the accessed values are in archinstall.storage instead. 2021-09-15 17:36:54 +02:00
Anton Hvornum c09a36b7b1 Changed from internal storage to parameter-friendly arguments for disk_layouts, so we can support JSON for disk layouts on the new logic. 2021-09-15 13:33:34 +00:00
Anton Hvornum 995edaf316 Removed legacy need to add_bootloader
`add_bootloader` no longer needs to have a harddrive given as a argument. It will (and should) auto-detect what's mounted in the `self.target` (aka mountpoint) of the installation.
2021-09-12 15:42:13 +02:00
Anton Hvornum 51565314b4 Merged in master. 2021-09-06 14:40:05 +00:00
Anton Hvornum 40cd801184
Merge pull request #614 from laxect/patch-1
Fix wrong default in kernels (guide.py)
2021-09-06 15:48:49 +02:00
Anton Hvornum 025dc83194 Corrected some minor modifications mentioned in #595 as well as merged in latest changes from master. For future PR's do create a patch-branch for upstream patches to avoid changes to your local repo. 2021-09-06 12:22:57 +00:00
Yash Tripathi 78bbf26c1a
Update guided.py 2021-08-20 03:48:13 +05:30
Yash Tripathi 6d462ac1cc
added servers key 2021-08-20 03:34:50 +05:30
ギャラ 79f70cee21
Update guided.py
Fix wrong default in kernels.
2021-08-18 20:52:10 +09:00
Yash Tripathi b60e8dfd10 changed dry_run to dry-run 2021-07-18 21:45:24 +05:30
Yash Tripathi b2476313a7 added new key for desktop-environment 2021-07-18 21:40:44 +05:30
Yash Tripathi d55b1786c5 created load_config() to load configuration 2021-07-18 01:28:41 +05:30
Hamad Al Marri 51eb05691a Fix encryption + grub both in UEFI and BIOS systems.
We need to have two partitions in BIOS one for boot (grub)
and the other for root (/). The format of the boot partition
is ext2 (so it is added).

If disk is chosen to be encrypted, `then /etc/default/grub` is edited
as the followings: https://wiki.archlinux.org/title/Dm-crypt/Encrypting_an_entire_system#Configuring_GRUB_2

Issue: https://github.com/archlinux/archinstall/issues/586

This work is done while working on CachyOS which is Arch based and
it is using customized archinstaller.

To test these changes you can try CachyOS installer which supports
encrypted disk with grub (https://wiki.cachyos.org/).

Hamad
2021-07-07 18:38:55 +03:00
Anton Hvornum 51f2eca60e Saving partitioning layout in a layout file (JSON format) 2021-07-03 14:27:49 +02:00
Anton Hvornum d4f0d411f6 Synced master into partitioning branch 2021-06-14 09:26:03 +02:00
Anton Hvornum 8489137b87
Merge pull request #577 from chingnux/fix-silent
fix the case when there's --config but --silent is not set
2021-06-13 16:28:12 +02:00
Dylan M. Taylor 4e17355796
Implement is_desktop_profile helper function (#575)
* Implement is_desktop_profile helper function

* Make ask_for_audio_selection use generic_select

* Fix default value for audio selection

* Leverage list of supported desktops to perform is_desktop_profile check

* is_desktop_profile was missing a default return value

* Store return value for audio server
2021-06-13 14:32:38 +02:00
Anton Hvornum d76760b45f Removed old safety logics for partitions. Partitions will now always be formatted when .format() is called on them. The safety now lay in the code parsing the declerative partition layouts. Also added the encrypt/mount logic for encrypted partitions, which by default will be unencrypted unless a password is specified. 2021-06-13 14:25:07 +02:00
Iru Cai c4edf34764 fix the case when there's --config but --silent is not set 2021-06-13 16:51:57 +08:00
Anton Hvornum 9b6d7021a8 This fixes https://github.com/archlinux/archinstall/pull/426#discussion_r650372664 2021-06-13 10:37:30 +02:00
Anton Hvornum 24476ac1f6 Made it so that the .partitions property of Install() fetches from live data, rather than storing and caching partitions on initation. Since it now supports mounting a partition layout given by external usage. 2021-06-11 17:22:20 +02:00
Anton Hvornum 0a8c061ab4 Fixed format detection on commands, should be using exit codes instead? 2021-06-10 21:00:33 +02:00
Anton Hvornum adae29c205 vfat -> fat32, updated minimal 2021-06-10 20:40:28 +02:00
Anton Hvornum 4e9b1c1635 Renamed vfat -> fat32 for the purpose of consistency. Most actions are referring to fat32, it's only mkfs that has the notion vfat and then -F32 for format 32. And I think vfat confuses more people than it does good, so sticking with fat32 which works better with parted as well. Also added the partitioning logic, started on the mounting logic 2021-06-10 20:38:35 +02:00
Anton Hvornum 857b5c0c3e Skipping bootloader selection if --bootloader was given. 2021-06-10 15:30:58 +02:00
Anton Hvornum 0946b73095 Merging in latest changes from master. 2021-06-10 15:27:02 +02:00
Yash Tripathi fcd0acfef2
added --dry-run flag (#570)
* added --dry-run flag
2021-06-10 15:06:15 +02:00
Anton Hvornum e8d38ea1a7 Started working on partitioning logic from declarative layouts. 2021-06-10 13:39:50 +02:00
Anton Hvornum 5701ef9539 Started working on the load_layout function 2021-06-07 12:40:24 +02:00
Anton Hvornum 25e835ce3e Removed the bulk of disk-operations from guided, and will move the logic into the Filesystem() class instead. 2021-06-06 17:35:44 +02:00
Anton Hvornum 0552d040ac Added a json.dumps() helper that wraps JSON cls. Also tweaked the logic for the size creation so that they don't overlap 2021-06-06 17:13:42 +02:00
Anton Hvornum ce4b1fbcff Added sorting logic for BlockDevice. Also swapped sys_command() to SysCommand() and refined the logic around those calls. 2021-06-06 16:19:53 +02:00
Anton Hvornum 71b6efab69 Merge branch 'master' of github.com:archlinux/archinstall into torxed-rework-partitioning 2021-06-04 15:08:04 +02:00
Anton Hvornum 7d60287a3d Merged in changes from master 2021-06-04 15:07:42 +02:00
Dylan Taylor 3e505d4321 Clean up graphics driver output 2021-06-02 21:43:46 -04:00
Dylan Taylor 5f4a24d5cc Add graphics device listing 2021-06-02 21:23:56 -04:00
Dylan Taylor e90b17ca1c Add hardware logging to beginning of installation 2021-06-02 21:17:54 -04:00
Dylan M. Taylor 5729b0bb4d
Make this template usable to users of more platforms
In case someone is trying to edit this as a template, this will work for more people.
2021-05-28 13:52:01 -04:00
Anton Hvornum 595bd657c6
Merge pull request #526 from dylanmtaylor/export-configuration
Write user configuration JSON to a file in logs directory
2021-05-28 08:48:26 +02:00
Yash Tripathi 3aee3611c4
added support for setting profile to a dict or a string in config 2021-05-28 08:50:27 +05:30
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