aboutsummaryrefslogtreecommitdiff
path: root/configs/baseline
Commit message (Collapse)AuthorAgeFilesLines
* configs/*/grub/grub.cfg: replace /dev/disk/by-uuid/ with UUID=nl67202023-02-241-1/+1
| | | | | | | | | Use the shorter and more nicer looking `UUID=` *tags* instead of the `/dev/disk/by-uuid/` paths. This requires mkinitcpio-archiso v68. Related to #202
* Move the .uuid file to /boot/grub/YYYY-mm-dd-HH-MM-SS-00.uuidnl67202023-02-241-1/+1
| | | | | | | | | | | | | | To prevent the file from being accidentally missed when someone copies the ISO's contents, let's not place it in a directory that starts with a dot. Since all GRUB related files are in /boot/grub/, put it there too. Instead of using a more unique UUID for the file name, use `YYYY-mm-dd-HH-MM-SS-00.uuid` which matches the ISO's modification date in UTC,i.e. its "UUID". If multiple ISOs would be generated in the exact same second, the ISO 9660 modification date (i.e. its "UUID") would be the same, so there would be not way to distinguish between the volumes anyway. This also makes the file look less suspicious to the casual glance.
* configs/*/grub/grub.cfg: reuse ARCHISO_HINT and ARCHISO_UUID passed from the ↵nl67202023-02-221-3/+7
| | | | | | | | embedded grub.cfg The `grub.cfg` embedded in the GRUB binaries already sets `ARCHISO_HINT` and `ARCHISO_UUID` in most cases. To avoid performing the same searches multiple times, use the existing variables.
* configs/*/profiledef.sh: honor SOURCE_DATE_EPOCHnl67202023-02-221-2/+2
| | | | Ensure the **correct** date is used in `iso_label` and `iso_version`.
* configs/*/airootfs/etc/ssh/sshd_config: update to match 9.2p1-1nl67202023-02-071-3/+3
| | | | | | | | Update /etc/ssh/sshd_config to match changes made in https://github.com/archlinux/svntogit-packages/commit/42aa04744e96c5805b7aa3904636f8cbd781f682 and https://github.com/archlinux/svntogit-packages/commit/7166713c55002dac3c2b306fdc63e89a412083a6 The only modification remains `PermitRootLogin yes`.
* Preload GRUB's NTFS, exFAT and UDF modulesnl67202023-02-021-0/+4
| | | | | | | | There are claims that some UEFI allegedly natively support NTFS. Preload the required GRUB modules to support booting from NTFS on such systems. Additionally preload the exFAT and UEF modules, because, why not?
* configs/*/grub/grub.cfg: search for a .uuid file in /.disk/ and use the ↵nl67202023-02-021-2/+6
| | | | | | | | | | | | | | | | | volume it's on Search for `/.disk/%UUID_SEARCH_FILENAME%.uuid` and pass the UUID of the volume it's on as `archisodevice`. mkarchiso will replace `%UUID_SEARCH_FILENAME%` with a hardcoded value generated using `SOURCE_DATE_EPOCH` durring ISO build. This allows to prepare an UEFI bootable installation medium by simply copying the directory structure without having to touch `grub.cfg`. Relying on the volume UUID instead of its LABEL also avoids collisions of multiple ISOs created in the same month. Fixes #202
* configs/baseline/profiledef.sh: use LZMA compression for the EROFS imagenl67202022-12-171-1/+1
| | | | | | | | | Now that xz 5.4 is out and erofs-utils is built with LZMA support, it is possible to compress the EROFS image with LZMA for higher compression. `mkfs.erofs` trows a few warnings about using experimental features, but they should not be an issue. Nothing changes for the releng profile, for now at least.
* configs/: remove "Copy to RAM" boot entries since it is automatic nownl67202022-10-223-17/+0
| | | | | | | | The default is now copytoram=auto which enables copying to RAM when the rootfs image size is less than 4 GiB and free RAM exceeds the rootfs image size + 2 GiB. See https://gitlab.archlinux.org/mkinitcpio/mkinitcpio-archiso/-/issues/13 and https://gitlab.archlinux.org/mkinitcpio/mkinitcpio-archiso/-/merge_requests/26. Implements #177.
* configs/: Do not explicitly enable qemu-guest-agent.servicenl67202022-10-061-1/+0
| | | | | | qemu-guest-agent.service will be started by the /usr/lib/udev/rules.d/99-qemu-guest-agent.rules udev rule. Fixes #199
* configs/*/grub/grub.cfg: enable serial input and outputnl67202022-06-261-2/+12
| | | | | | | | Try to initialize a serial device and use it for input and output. Add more comments to grub.cfg to explain what is done. Related to #75
* configs/*/grub/grub.cfg: auto-boot after 15 secondsnl67202022-06-231-2/+6
| | | | | | | * Set the default boot entry and its timeout. * Add classes to menu entries to allow theming them. Fixes #179
* configs/baseline/profiledef.sh: add `-E ztailpacking` to ↵nl67202022-06-181-1/+1
| | | | | | airootfs_image_tool_options for mkfs.erofs As the man page says, it saves more space, although the feature is experimental.
* Use grub for uefi x64 boot modes in profiledef.shplainlinen2022-06-091-2/+2
|
* Add useful grub menu entries to grub.cfgplainlinen2022-06-091-1/+1
|
* configs/: use the C.UTF-8 localenl67202022-06-091-0/+1
| | | | | | | The glibc 2.35-6 package ships with the C.UTF-8 locale included. This means there is now a UTF-8 locale available by default and en_US.UTF-8, which requires editing /etc/locale.gen and running locale-gen, is not needed anymore. Implements #175.
* Update baseline and releng profiledef.sh to support ia32 uefi mode.Pellegrino Prevete2022-05-251-1/+3
|
* Add GRUB configuration files to baseline and releng profiles.Pellegrino Prevete2022-05-251-0/+29
|
* configs/*: add VMware and Hyper-V guest packages and enable their servicesnl67202022-04-306-0/+7
| | | | | | | * open-vm-tools package, vmtoolsd.service and vmware-vmblock-fuse.service for VMware. * hyperv package, hv_fcopy_daemon.service, hv_kvp_daemon.service and hv_vss_daemon.service for Hyper-V. Related to #118.
* configs/{baseline,releng}/: disable systemd-gpt-auto-generatornl67202022-03-251-0/+1
| | | | | | | | | | | | | | | When booting the ISO, you can observe a message that systemd-gpt-auto-generator has failed: systemd-gpt-auto-generator[197]: Reading EFI variable /sys/firmware/efi/efivars/LoaderDevicePartUUID-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f. systemd-gpt-auto-generator[197]: open("/sys/firmware/efi/efivars/LoaderDevicePartUUID-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f") failed: No such file or directory systemd-gpt-auto-generator[197]: EFI loader partition unknown, exiting. systemd-gpt-auto-generator[197]: (The boot loader did not set EFI variable LoaderDevicePartUUID.) systemd-gpt-auto-generator[197]: Failed to open device: No such device Seeing as it started to appear relatively recently, it may be a systemd bug. Since we do not want any GPT partition automounting in the live environment anyway, systemd-gpt-auto-generator can simply be disabled. Fixes #164.
* configs/*/airootfs/etc/systemd/network/20-ethernet.network: add a comment to ↵nl67202022-01-221-0/+3
| | | | | | | | document why an interface name glob is used This documents the changes made in !177 inside the .network files themselves. Related to #142.
* configs/*/airootfs/etc/ssh/sshd_config: update to openssh 8.7p1-1nl67202021-08-251-5/+5
| | | | | Update /etc/ssh/sshd_config to match upstream changes. The only modification remains "PermitRootLogin yes".
* Remove SPDX license identifier from releng configsDavid Runge2021-07-2911-31/+0
| | | | | | configs/baseline/*: Remove the SPDX license identifier comment from the configuration files in the profile, as they are not eligible for copyright.
* configs/*/airootfs/etc/systemd/system/systemd-networkd-wait-online.service.d ↵nl67202021-07-271-0/+4
| | | | | | | | /wait-for-only-one-interface.conf: document why the drop-in file exists Related to #142. Add missing `ExecStart=` to baseline's /etc/systemd/system/systemd-networkd-wait-online.service.d/wait-for-only-one-interface.conf.
* configs/releng/airootfs/etc/systemd/network/: move RouteMetric= from ↵nl67202021-07-271-3/+0
| | | | | | | | | | | | [DHCPv6] to [IPv6AcceptRA] systemd moved the option. See https://github.com/systemd/systemd/commit/8ebafba9f987c21aa5787c8767f2e390b4ec0bc5 . Implements #123. Document in comments why the route metrics need to be set (because of https://github.com/systemd/systemd/issues/17698 ) and use the same metric values as NetworkManager. https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c Additionally remove RouteMetric from configs/baseline/airootfs/etc/systemd/network/20-ethernet.network. There is only one networkd configuration file in baseline, meaning, there are no other routes.
* baseline/pacman.conf: Enable parallel downloadsGiancarlo Razzolini2021-06-291-1/+1
| | | | | Now that pacman 6 is around, enable parallel downloads to speed up the installation process. Added to the baseline configuration to also improve the pipeline.
* configs/*/pacman.conf: update configuration file for pacman 6nl67202021-06-051-1/+2
| | | | | | Based on https://github.com/archlinux/svntogit-packages/blob/accc1d210133a933f2b26e0aad842c27d00c8b0c/trunk/pacman.conf Implements #136
* configs/baseline: use EROFS based imagenl67202021-05-291-2/+2
| | | | Showcase #59.
* Apply copytoram Boot Option Menu Entries also to relengSimon Wilper2021-05-141-0/+0
|
* Reorder UEFI boot menu entriesSimon Wilper2021-05-143-1/+1
|
* add optional pv toolSimon Wilper2021-05-143-0/+14
| | | | | use pv to give feedback on copying the airootfs to RAM when copytoram kernel parameter is given
* configs/*: add VM guest packages and enable their servicesnl67202021-05-113-0/+4
| | | | | | | * virtualbox-guest-utils-nox package and vboxservice.service for VirtualBox. * qemu-guest-agent package and qemu-guest-agent.service for QEMU & libvirt. Implements #118.
* baseline: Add bootstrap packages fileDavid Runge2021-05-091-0/+2
| | | | | configs/baseline/bootstrap_packages.x86_64: Add a packages file for bootstrap images using the baseline profile and add arch-install-scripts and base to it.
* baseline: Add buildmodes to profiledef.shDavid Runge2021-05-091-0/+1
| | | | | configs/baseline/profiledef.sh: Add `buildmodes` array with default entry for the 'iso' buildmode.
* configs/releng/syslinux/: increase serial baud rate to 115200nl67202021-04-301-0/+1
| | | | | | Additionally enable serial in baseline profile. Related to #75.
* Support EROFSnl67202021-03-091-0/+1
| | | | | | | | | EROFS, like Squashfs, is a read-only file system. It can be used to store airootfs in an image file. Its advantage is the support for POSIX ACLs. EROFS downside is that currently it only supports LZ4 compression (LZMA support is not yet fully implemented). A difference from Squashfs is that, EROFS stores change time (ctime) not modification time (mtime). The reverse is true for Squashfs. Implements https://gitlab.archlinux.org/archlinux/archiso/-/issues/59
* add cloud-init to baselineMichael Vorburger2021-01-275-0/+5
|
* make baseline have working ethernet networking, like relengMichael Vorburger2021-01-276-0/+22
|
* add SSH server to baselineMichael Vorburger2021-01-273-0/+118
| | | | inspired by https://wiki.archlinux.org/index.php/Archiso#Prepare_an_ISO_for_an_installation_via_SSH
* use same airootfs_image_tool_options in baseline as in relengMichael Vorburger2021-01-271-0/+1
|
* profiledef.sh: Remove www. from archlinux.orgnl67202020-12-261-1/+1
| | | | See https://lists.archlinux.org/pipermail/arch-devops/2020-December/000474.html .
* Keep all SYSLINUX files in /syslinuxnl67202020-11-303-13/+4
| | | | | | This gets rid of the duplicate ldlinux.c32 and the useless isolinux.cfg which only points to syslinux.cfg. Implements https://gitlab.archlinux.org/archlinux/archiso/-/issues/46 .
* Allow specifying ownership and mode of custom airootfs files and directoriesnl67202020-11-301-0/+3
| | | | | | | | | | | | | profiledef.sh can now contain an associative array called file_permissions which can be used to set custom ownership and mode of custom airootfs files. The array's keys contain the path and the value is a colon separated list of owner UID, owner GID and access mode. For example: file_permissions=( ["/etc/shadow"]="0:0:400" ) This means that mkarchiso now copies airootfs files (and directores) without permissions and anything that should be owned by a user other than root and/or if the mode should be something other than 644 for files and 755 for directories must to be listed in ${file_permission[@]} in profiledef.sh. Fixes https://gitlab.archlinux.org/archlinux/archiso/-/issues/61 .
* Add modconf to HOOKS array in mkinitcpio.confnl67202020-10-291-1/+2
| | | | The default mkinitcpio.conf includes modconf in HOOKS.
* Remove build.sh support from profiles and mkarchisoDavid Runge2020-10-291-7/+0
| | | | | | | | | | | | | | | | | configs/{baseline,releng}/build.sh: Remove `build.sh` scripts. They were deprecated with v47. archiso/mkarchiso: Remove all `build.sh` related functionality (i.e. `command_pkglist()`, `command_iso()`, `command_prepare()`, `command_install()`, `command_init()`, `command_run()`). Rename `command_build_profile()` to `_build_profile()` to be more in line with the style of the other function naming. Change `_show_config()` to only print info about the profile and make no more use of parameters. Remove all help output related to legacy `build.sh` commands. Fixes #51
* configs/baseline: support UEFInl67202020-10-244-2/+14
|
* Split SYSLINUX configuration into per-kernel configuration filesnl67202020-09-272-5/+9
| | | | | Slightly simplifies adding boot loader configuration for more kernels. Unfortunately the INCLUDE statement doesn't support wildcards, so each new file must be manually included in the main syslinux configuration file (syslinux.cfg for baseline and archiso_sys.cfg for releng).
* Do not rename the initramfs imagenl67202020-09-272-2/+2
| | | | | | | This is a breaking change. archweb, archiso-manager and various documentation must be updated. * https://github.com/archlinux/archweb/blob/master/templates/releng/archlinux.ipxe * https://github.com/pierres/archiso-manager/blob/master/Makefile
* Pass profile directory as parameter to mkarchisoDavid Runge2020-08-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **archiso/mkarchiso**: Change all override option parameters (i.e. `-A`, `-C`, `-D`, `-L`, `-P` and `-g`) to not directly override the global variable they are tied to, but instead using an `override_` prefixed variable. Add `_set_overrides()` to use `override_` prefixed variables (if set) to override those without a prefix. Remove `-B` (a profile directory) from the list of parameters. The profile directory is now provided as separate non-option parameter. Add a call to `_read_profile()`, `_set_overrides()` and `command_build_profile()` to the fallthrough option of the switch-case checking `command_name` - a non-option parameter to mkarchiso. This effectively provides the possibility to set the profile directory using a non-option parameter, while still maintaining compatibility to legacy named arguments used in the configs' `build.sh` scripts. Extend the warning in regards to legacy `build.sh` based commands to mkarchiso by providing an EOL with archiso v49. Change the help output to reflect the changes and further elaborate on the legacy commands used by `build.sh` scripts. Change help output to be ordered alphabetically. Add help output for `-r` and `-g` options. Call `_set_overrides()` for legacy commands that accept one or more of the overriden options (i.e. `command_init`, `command_install`, `command_prepare` and `command_iso`). Various style fixes. **configs/{baseline,releng}/build.sh**: Change call to mkarchiso to use the profile's directory as a named argument instead of an option-argument. **README.rst**: Fix documentation on how to call mkarchiso with a profile directory. Fix wording and ordering of option arguments for run_archiso documentation. Fixes #52
* Deprecate build.sh scripts and old mkarchiso commandsnl67202020-08-171-110/+3
| | | | | | Replace build.sh scripts with calls to mkarchiso -B "profiledir" build_profile. Fixes https://gitlab.archlinux.org/archlinux/archiso/-/issues/37 .