Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md39
1 files changed, 20 insertions, 19 deletions
diff --git a/README.md b/README.md
index fa784506..96de9585 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,8 @@
# <img src="logo.png" alt="drawing" width="200"/>
-Just another guided/automated [Arch Linux](https://wiki.archlinux.org/index.php/Arch_Linux) installer.
+Just another guided/automated [Arch Linux](https://wiki.archlinux.org/index.php/Arch_Linux) installer with a twist.
+The installer also doubles as a python library to access each individual installation step for customized installs.
-Pre-built ISO's can be found here which autostarts this script *(in guided mode)*: https://hvornum.se/archiso/
+Pre-built ISO's can be found here which autostarts archinstall *(in a safe guided mode)*: https://hvornum.se/archiso/
* archinstall [discord](https://discord.gg/cqXU88y) server
* archinstall guided install ISO's: https://hvornum.se/archiso/
@@ -32,38 +33,38 @@ This will start a guided install with the same safety checks as previous.<br>
Again, a guided install starts with safety checks.<br>
This assumes tho that Python and Pip is present (not always the case on the default Arch Linux ISO), see above for pre-built ISO's containing Python+pip
-## Scripting a installation
+## Scripting an installation
-So, assuming you're building your own ISO and want to create an automated install.<br>
-This is probably what you'll need, a minimal example of how to install using the library.
+Assuming you're building your own ISO and want to create an automated install process.<br>
+This is probably what you'll need, a minimal example of how to install using archinstall as a Python library.
```python
import archinstall, getpass
-selected_hdd = archinstall.select_disk(archinstall.all_disks())
+hdd = archinstall.select_disk(archinstall.all_disks())
disk_password = getpass.getpass(prompt='Disk password (won\'t echo): ')
-with archinstall.Filesystem(selected_hdd, archinstall.GPT) as fs:
+with archinstall.Filesystem(hdd, archinstall.GPT) as fs:
fs.use_entire_disk('luks2')
- with archinstall.luks2(fs) as crypt:
- if selected_hdd.partition[1]['size'] == '512M':
+ with archinstall.Luks2(fs) as crypt:
+ if hdd.partition[1]['size'] == '512M':
raise OSError('Trying to encrypt the boot partition for petes sake..')
- key_file = crypt.encrypt(selected_hdd.partition[1], password=disk_password, key_size=512, hash_type='sha512', iter_time=10000, key_file='./pwfile')
- crypt.mount(selected_hdd.partition[1], 'luksloop', key_file)
+ key_file = crypt.encrypt(hdd.partition[1], password=disk_password, key_size=512, hash_type='sha512', iter_time=10000, key_file='./pwfile')
+ unlocked_crypt_vol = crypt.mount(hdd.partition[1], 'luksloop', key_file)
- with archinstall.installer(root_partition, hostname='testmachine') as installation:
- if installation.minimal_installation():
- installation.add_bootloader()
+ with archinstall.Installer(unlocked_crypt_vol, hostname='testmachine') as installation:
+ if installation.minimal_installation():
+ installation.add_bootloader()
- installation.add_additional_packages(['nano', 'wget', 'git'])
- installation.install_profile('desktop')
+ installation.add_additional_packages(['nano', 'wget', 'git'])
+ installation.install_profile('desktop')
- installation.user_create('anton', 'test')
- installation.user_set_pw('root', 'toor')
+ installation.user_create('anton', 'test')
+ installation.user_set_pw('root', 'toor')
- installation.add_AUR_support()
+ installation.add_AUR_support()
```
This installer will perform the following: