Age | Commit message (Collapse) | Author |
|
LICENSE:
Add GPL-3.0 license.
{{archiso,configs}/*,.editorconfig,.gitlab-ci.yml}:
Add SPDX license identifier.
Makefile:
Add SPDX license identifier.
Install the `run_archiso.sh` script as global executable `run_archiso`.
Use -D and -t flags to install to install files more generically (without a previous call to install the directory).
README.rst:
Add README outlining the project's scope, how to build images from the profiles and how to test.
AUTHORS.rst:
Add list of all direct contributors to the repository.
CONTRIBUTING.rst:
Add basic contribution guidelines, explaining the linter and the license in use.
Closes #7
Closes #3
|
|
configs/*:
Copy all files that do not need a rename generically (not specifying a destination file name).
Do not rename vmlinuz-linux to vmlinuz or vmlinuz.efi (as this serves no purpose and makes the scripts more
complicated).
Do not rename microcode (i.e. {amd,intel}-ucode.img) when copying them and change all boot loader configuration files
that assume a renamed microcode image.
Add note and link to Arch Linux wiki to state why memtest.bin is renamed to memtest.
Copy license files for {amd,intel}-ucode and memtest more generically by placing them into subdirectories with the same
name as the package (to circumenvent overwriting one other).
Closes #33
|
|
Additionally copy the files to all custom user homes, not just root's.
|
|
|
|
Show a deprecation notice if airootfs/root/customize_airootfs.sh is found.
|
|
configs/{baseline,releng}/build.sh:
Copy custom files to airootfs before installing packages.
Instead of calling `mkarchiso init`, list all required packages in packages.x86_64 and install them all at once with `mkarchiso install`. The mkdir command which `mkarchiso init` performs is now done by make_custom_airootfs.
configs/releng/build.sh:
Don't copy configs/releng/pacman.conf to airootfs, it is only meant to provide a unmodified pacman.conf durring pacstrap. In airootfs, an unmodified /etc/pacman.conf will be installed with the pacman package.
|
|
Correct shadow file permissions from build.sh.
|
|
When one calls the `build.sh` scripts with bash instead of the shebang
`$script_path` contains the filepath, not the parent dir:
```
% cd /path
% grep -A2 script_path= build.sh
script_path=$(readlink -f "${0%/*}")
echo "$script_path"
exit 0
% ./build.sh
/path
% bash build.sh
/path/build.sh
```
This commit fixes that:
```
% grep -A2 script_path= build.sh
script_path="$( cd -P "$( dirname "$(readlink -f "$0")" )" && pwd )"
echo "$script_path"
exit 0
% ./build.sh
/path
% bash build.sh
/path
```
|
|
linux only gets pulled in because of broadcom-wl and mkinitcpio (usually) gets pulled in by linux.
|
|
Move all required packages to packages.x86_64.
Test file availability before copying them.
|
|
/usr/local/bin/Installation_guide:
Add a convenience script which opens the installation guide in lynx.
/etc/motd:
Provide a message with minimal instructions for connecting to internet and inform about the Installation_guide convenience script.
|
|
dialog was only added because it was needed for netctl's wifi-menu.
Now that netctl is removed, nothing requires dialog.
|
|
|
|
configs/releng/airootfs/etc/systemd/system/reflector.service:
Remove references to a nonexistent file.
|
|
The filesystem package installs /root as 750 not 700.
Move chmod from customize_airootfs.sh to build.sh.
|
|
|
|
Additionally update names of renamed packages:
https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/bind&id=1b097b9bcaddd65c7af4f92efef175f959395a7e
https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/vim&id=807b49bf022a6d523ca6215d5b34cd1e37457bd5
|
|
configs/releng/syslinux/archiso_tail.cfg:
APM is old and some motherboard firmwares have removed support for it.
reboot.c32 and poweroff.c32 will not work on such firmwares.
Add a help text to "Reboot" and "Power Off" boot menu entries that warns about requiring APM.
|
|
When built with CONFIG_FONT_TER16x32, the Linux kernel includes a TER16x32 font based on ter-i32b from terminus-font. The kernel will automatically choose this font on screen resolutions larger than 1920×1080.
The terminus-font package includes fonts for other character sets, which may be useful during installation.
|
|
|
|
Timeout is 3 seconds to match systemd-boot's configuration.
|
|
It is enough if one network interface is online, there is no need to wait for all of them.
Without this, when connecting with Wi-Fi and leaving Ethernet disconnected, the network-online.target will get unnecessarily delayed.
|
|
archiso/mkarchiso:
Calls to _pacman() need to be done with multiple parameters (e.g. array) instead of one string, as string splitting is
not done in that function anymore.
Turning _iso_efi_boot_args from string into an array to have an easier time of passing it to xorriso.
Calling xorriso within the if statements instead of providing -quiet via variable.
Fixing command_install() to provide packages separately to _pacman()
configs/releng/build.sh:
Replacing all newlines when retrieving the packages from packages.x86_64 with spaces so they will be properly provided
to "mkarchiso install".
|
|
/etc/systemd/scripts/ is not a standard directory.
Run shellchek on the choose-mirror script.
|
|
Pacman's mirrolist will be updated by reflector.service in the live system.
|
|
reflector.service will update pacman's mirrorlist after a network connection is established in the live system.
Fixes https://gitlab.archlinux.org/archlinux/archiso/-/issues/26 .
|
|
{configs/releng/efiboot/loader/entries/archiso-x86_64-{cd,usb}.conf,configs/releng/syslinux/archiso_{pxe,sys}.cfg}:
Standardizing the boot loader entry format by switching all entries to the form:
"Arch Linux install medium (<CARCH>[, <PROPERTY>])".
This removes the distinction between "CD" and "USB" when booting in UEFI "el-torito" (as the information is not useful).
Changing some of the syslinux help text as well to reflect this change. This also drops the specific <CARCH> from the
syslinux help text as it is duplicated information.
Closes #24
|
|
It was previously pulled in as a dependency of refind. Now that refind is removed, add efibootmgr explicitly.
|
|
It cannot be fully replaced by lsblk.
|
|
Reduce the time where boot loader artifacts linger on screen after the boot loader has done its job.
|
|
|
|
|
|
|
|
archiso/mkarchiso:
Quoting all variables.
Changing pkg_list to be an array instead of a string for easier
handling. Using read to properly populate pkg_list from OPTARG with
stripped whitespaces.
Not exporting iso_label anymore as there seems to be no reason to do so.
Introducing line breaks.
.editorconfig:
Setting max_line_length to 120.
Adding a section for YAML files (e.g. .gitlab-ci.yml).
configs/releng/build.sh
Quting nearly all variables.
Introducing line breaks.
configs/baseline/build.sh:
Quoting all variables.
Introducing line breaks.
.gitlab-ci.yml:
Adding gitlab CI for shelleck linting of the config build scripts, mkarchiso and startup scripts in releng.
Closes #19
|
|
configs/releng/airootfs/etc/systemd/network/20-{ethernet,wirless}.network:
Making sure that systemd-networkd enables DHCP capabilities also for
IPv6 ('DHCP=yes' and unsetting IPv6AcceptRA - see `man 5
systemd.network` for further information).
Closes #23
|
|
configs/releng/packages.x86_64:
Due to dropping netctl from the image, no packgae currently directly
pulls in a resolvconf provider.
The systemd-resolvconf package is compatible with systemd-resolved which
is in use on the image now and the preferred choice.
Closes #22
|
|
configs/releng/airootfs/etc/systemd/system/multi-user.target.wants/iwd.service:
Adding a symlink to /usr/lib/systemd/system/iwd.service to enable iwd in
airootfs (and thus on the image).
Closes #18
|
|
configs/releng/packages.x86_64:
Removing packages:
* grub :rescue/ installation actions for grub should be run from within
a chroot
* lsscsi: lsblk provides the same functionality
* netctl: we have systemd-networkd enabled by default
* ntp: we have systemd-timesyncd
* refind: rescue/ installation actions for refind should be run from
within a chroot
* vi: we have vim
Closes #15
|
|
configs/releng/build.sh:
Fixing wrong ownership of files when copying overlay modifications from
the config's airootfs directory to the working directory in
make_customize_airootfs() by using the cp flag
'--no-preserve=ownership'.
Thanks to Marcos Mello and Francois Dupoux of sysresccd
(https://gitlab.com/fdupoux/sysresccd-src) for making this fix
available.
Closes #11
|
|
configs/releng/packages.x86_64:
Adding nvme-cli to the list of packages for working with NVME drives in
a live environment (as discussed in FS#63769).
Closes #20
|
|
configs/releng/airootfs/root/.automated_script.sh:
Replacing wget with curl for the use-case of downloading a
pre-specified remote startup script (changing flags where needed).
configs/releng/packages.x86_64:
Removing wget from the list of installed packages, as
.automated_script.sh was the only reason for it being installed.
Closes #16
|
|
Adding a numerical prefix ('20-') to the ethernet.network and
wireless.network configuration files for systemd-networkd.
This way overriding them can become more predictable e.g. by providing
files with a '30-' prefix.
Closes #13
|
|
configs/releng/build.sh:
Copying the edk2-shell based Shell_Full.efi to the root of the iso/ efi
image as 'shellx64.efi' is automatically picked up by certain hardware
and by systemd-boot.
This makes all custom UEFI shell configuration obsolete.
configs/releng/efiboot/loader/entries/uefi-shell-*.conf:
Removing obsolete custom UEFI shell boot loader configuration.
Closes #14
|
|
configs/releng/build.sh:
Removing the efitools based PreLoader.efi and HashTool.efi, as they are
dead weight due to not allowing secure boot (FS#59487).
Future secure boot functionality (most probably based on shim) is being
discussed in FS#53864.
Closes #17
|
|
configs/releng/airootfs/etc/udev/rules.d/81-dhcpcd.rules:
Removing the udev rule for starting dhcpcd@.service on interfaces of the
form eth* and en*.
configs/releng/airootfs/etc/systemd/network/{ethernet,wireless}.network:
Adding default DHCP configurations for en*, eth*, wlp* and wlan*
interfaces.
configs/releng/airootfs/etc/resolv.conf:
Adding a symlink from /run/systemd/resolve/stub-resolv.conf to
/etc/resolv.conf (in airootfs).
configs/releng/airootfs/root/customize_airootfs.sh:
Adding systemd-networkd and systemd-resolved to the list of services
that are being enabled during airootfs customization.
|
|
Due to changes in the filesystem package [1] the current /etc/passwd
does not allow login without an empty root password anymore.
This becomes apparent, when switching to another TTY than the one
autologin is activated for.
By running passwd -d root we unset the password.
In the future this should go to a custom /etc/passwd file.
[1] https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/filesystem&id=0320c909f3867d47576083e853543bab1705185b
|
|
configs/releng/efiboot/loader/loader.conf:
The 'default' bootloader selection of systemd-boot is based on a glob
pattern. The previous pattern was not sufficient to select anything,
which is why it is now made explicit (pointing to archiso-x86_64.conf).
|
|
configs/releng/airootfs/root/.automated_script.sh:
Using only one regex to match http://, https:// or ftp:// endpoints.
|
|
configs/releng/build.sh:
Instead of downloading UDK2018 based edk2 UEFI shell, use the Shell
binaries from the edk2-shell package.
This effectively makes the use of EFI shell v1 obsolete.
configs/releng/efiboot/loader/entries/uefi-shell-v*:
Renaming UEFI shell entries to match the packaged edk2-shell based UEFI
shell binaries.
configs/releng/build.sh:
Renaming the systemd-boot bootloader entries for UEFI shell (normal and
full version) to reflect their file names, which are derived from the
binary names in the edk2-shell package.
Copying the edk2-shell based UEFI shell binaries for normal efiboot and
.iso based "el-torito" efiboot mode.
docs/README.build:
Adding edk2-shell to the requirements in the documentation, as the
package is now used to provide UEFI shell.
|
|
configs/releng/packages.x86_64:
As the refind-efi package has been renamed to refind, the package
required for the releng image needs to be renamed as well.
|