Releases: archlinux/archinstall
Releases · archlinux/archinstall
v2.0.4rc7
New features
- Added network helpers in
archinstall.lib.networking
. Mainly adding helpers to detect physical interfaces and MAC-addresses. - Added a
unattended
example profile - Support for listing (and filtering) profiles based on MAC-address was added, the
filter_irrelevant_macs
will filter any MAC address profile that doesn't match the current machine. archinstall.Installer()
now has post-installation checks on__exit__
, so whenInstall()
is used in a context manager (with archinstall.Installer() as installation
), whenever the coder exits that block, the post-installation-steps will run and inform (but not raise) about any missing steps that haven't been completed in order to successfully boot the machine (checks if the base OS is installed, if root or a super user is created/setup and if a bootloader is installed).- Fixed the
guided
template to check ifroot_pw
is set, if it isn't, it will require an additional sudo-user to be created.
Minor Fixes
- The unattended test-profile reports upstream to inform which commit was installed without user interaction.
- Made
btrfs-progs
optional, won't be installed unlessbtrfs
is detected as a filesystem.
v2.0.4rc6
v2.0.4rc5
New features
- Added
list_profiles()
which lists all current local profiles. - Profiles now support descriptions by reading the top most comment in the
.py
files.
Fixes
- Removed
.json
support, as it's quite convoluted and redundant now that we have proper support for.py
profiles and applications. PKGBUILD
now exists for bothpython-archinstall
(pip install archinstall
equivilant) andarchinstall
(binary compiled version, no need for python to be installed)
v2.0.4rc4
New features
- Added
enable_service()
to enable services within the installation - Added a helper function called
activate_ntp()
that simply enables thentp.service
and installs thentp
package.
Fixes
set_locale()
now correctly takes the given locale and encoding and hopefully sets locale and encoding separately.
v2.0.4rc3
v2.0.4rc2
New features
Application()
profiles now support.py
scripts as wellApplication()
andProfile()
classes now correctly inserts thatarchinstall
library path intosys.path
from where it was installed. This has to be done in order to sub-executed scripts to get the correct version ofarchinstall
when doingimport archinstall
in profiles and applications. Otherwise the installed/other libraries might take precedence overgit clone
'd repositories/submodules in projects (very noticeable in archinstall_gui for instance)- Added the
add_AUR_support()
function to enable AUR packages in the mountpoint (by compilingyay
and installing it) - Added a
yay()
(andadd_AUR_packages()
pointer toyay()
) command for installing AUR packages inside the mountpoint - Added
enable_AUR()
function to - Added
run_command
which will run commands inside the installation viaarch-chroot {mountpoint}
- Added
arch_chroot
which just points torun_command()
. - Added a
set_timezone()
- Fixed
set_locale()
in theInstaller()
class. - Also added a
mirrors.py
helper to rudimentary set mirror data on the installer host awesome
now has a.py
profile instead of a.json
, even tho the.json
is still there.
Fixes
add_additional_packages()
now gives a return value frompacstrap
which it didn't before.install_profile()
now gives a return value fromprofile.install()
which it previously didn't.Profile()
andApplication()
now skips looking for the profile/application if absolute paths are given (hopefully that logic works)- Added a
__repr__
forApplication()
so it doesn't look like it's aProfile()
being installed when printing the object. - Fixed
desktop.py
which was broken due to string formatting being a bit off.
v2.0.4rc1
New features:
- Pre built ISO's are up again
- Examples are now packaged in both pypi and pre-built nuitka3 binary
- Added a
PKGBUILD
archinstall.BlockDevice
now contains a__dump__
meta function, which can be used with:def json_serial(obj): elif type(obj) is bytes: return obj.decode('UTF-8') elif getattr(obj, "__dump__", None): return obj.__dump__() else: return str(obj) json.dumps(block_device, default=json_serial)
- Added a
__init__.py
into the main github repo structure, so that cloned repo's can usefrom archinstall import *
for instance.
v2.0.3
Demo: https://youtu.be/w0T0ENAbXOU
New features:
.py
support for profiles, meaning.json
and.py
support for profiles such asdesktop
is now supported.- Correctly identifies btrfs and installs the tools and runs
mkinitcpio
to package a working bootloader - Added some new
Installer()
helper functions:set_locale
,set_hostname
,genfstab
-add_bootloader
no longer takes a partition either, as it has to be given earlier in the stages for mounting to make reason.
Minor changes/fixes:
- cache directory is no longer
~/archinstall
, it's now~/.cache/archinstall
to not confuse the importer of Python. - Cleaned up the
guided.py
example, to first ask for user input, then proceed to installation. Also added a little warning before wiping. - Corrected some confusion in
PARTUUID
vsUUID
- Fixed
sys_command
sincewhich
stopped working, now usesos.environ['PATH']
to find binaries. - Added symlinks to
./examples
and./profiles
to trick/get setuptools to import the data correctly, since this issue is a huge pain in the ass. - Fixed the correct order of mounting
/boot
vs callingbootctl --path=/boot install
, we were installing bootloader before the/boot
mount was there.
Pre-built binary
archinstall-v2.0.3-1-x86_64.tar.gz
is built using nuitka3 --standalone archinstall
and simply contain the .dist
folder from that result as well as the ./examples
. Can be executed as is - or packaged with PKGBUILD
to produce archinstall-v2.0.3-1-x86_64.pkg.tar.xz
which is also included here. Steps to reproduce can also be done by running make.sh.
v2.0.3.rc1
New features:
.py
support for profiles, meaning.json
and.py
support for profiles such asdesktop
is now supported.
Minor changes/fixes:
- cache directory is no longer
~/archinstall
, it's now~/.cache/archinstall
to not confuse the importer of Python.