diff --git a/archiso/airootfs/etc/pacman.d/hooks/40-locale-gen.hook b/archiso/airootfs/etc/pacman.d/hooks/40-locale-gen.hook new file mode 100644 index 0000000..82dd199 --- /dev/null +++ b/archiso/airootfs/etc/pacman.d/hooks/40-locale-gen.hook @@ -0,0 +1,13 @@ +# remove from airootfs! +[Trigger] +Operation = Install +Type = Package +Target = glibc + +[Action] +Description = Uncommenting en_US.UTF-8 locale and running locale-gen... +When = PostTransaction +Depends = glibc +Depends = sed +Depends = sh +Exec = /bin/sh -c "sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen && locale-gen" diff --git a/archiso/airootfs/etc/pacman.d/hooks/uncomment-mirrors.hook b/archiso/airootfs/etc/pacman.d/hooks/uncomment-mirrors.hook new file mode 100644 index 0000000..342aa95 --- /dev/null +++ b/archiso/airootfs/etc/pacman.d/hooks/uncomment-mirrors.hook @@ -0,0 +1,13 @@ +# remove from airootfs! +[Trigger] +Operation = Install +Operation = Upgrade +Type = Package +Target = pacman-mirrorlist + +[Action] +Description = Uncommenting all mirrors in /etc/pacman.d/mirrorlist... +When = PostTransaction +Depends = pacman-mirrorlist +Depends = sed +Exec = /usr/bin/sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist diff --git a/archiso/airootfs/etc/pacman.d/hooks/zzzz99-remove-custom-hooks-from-airootfs.hook b/archiso/airootfs/etc/pacman.d/hooks/zzzz99-remove-custom-hooks-from-airootfs.hook new file mode 100644 index 0000000..8dfb943 --- /dev/null +++ b/archiso/airootfs/etc/pacman.d/hooks/zzzz99-remove-custom-hooks-from-airootfs.hook @@ -0,0 +1,18 @@ +# remove from airootfs! +# As a workaround for https://bugs.archlinux.org/task/49347 , remove pacman hooks specific to the ISO build process. +# If not, they would be used when pacstrap is run in the live environment. + +[Trigger] +Operation = Install +Operation = Upgrade +Operation = Remove +Type = Package +Target = * + +[Action] +Description = Work around FS#49347 by removing custom pacman hooks that are only required during ISO build... +When = PostTransaction +Depends = sh +Depends = coreutils +Depends = grep +Exec = /bin/sh -c "rm -- $(grep -Frl 'remove from airootfs' /etc/pacman.d/hooks/)" diff --git a/archiso/airootfs/etc/systemd/network/20-ethernet.network b/archiso/airootfs/etc/systemd/network/20-ethernet.network index efa309c..4fce10c 100644 --- a/archiso/airootfs/etc/systemd/network/20-ethernet.network +++ b/archiso/airootfs/etc/systemd/network/20-ethernet.network @@ -2,12 +2,14 @@ # SPDX-License-Identifier: GPL-3.0-or-later [Match] -Name=en* -Name=eth* +Type=ether [Network] DHCP=yes IPv6PrivacyExtensions=yes -[DHCP] +[DHCPv4] +RouteMetric=512 + +[DHCPv6] RouteMetric=512 diff --git a/archiso/airootfs/etc/systemd/network/20-wireless.network b/archiso/airootfs/etc/systemd/network/20-wlan.network similarity index 72% rename from archiso/airootfs/etc/systemd/network/20-wireless.network rename to archiso/airootfs/etc/systemd/network/20-wlan.network index bf9ab9d..73a6bbd 100644 --- a/archiso/airootfs/etc/systemd/network/20-wireless.network +++ b/archiso/airootfs/etc/systemd/network/20-wlan.network @@ -2,12 +2,14 @@ # SPDX-License-Identifier: GPL-3.0-or-later [Match] -Name=wlp* -Name=wlan* +Type=wlan [Network] DHCP=yes IPv6PrivacyExtensions=yes -[DHCP] +[DHCPv4] +RouteMetric=1024 + +[DHCPv6] RouteMetric=1024 diff --git a/archiso/airootfs/etc/systemd/network/20-wwan.network b/archiso/airootfs/etc/systemd/network/20-wwan.network new file mode 100644 index 0000000..cc946fe --- /dev/null +++ b/archiso/airootfs/etc/systemd/network/20-wwan.network @@ -0,0 +1,15 @@ +# +# SPDX-License-Identifier: GPL-3.0-or-later + +[Match] +Type=wwan + +[Network] +DHCP=yes +IPv6PrivacyExtensions=yes + +[DHCPv4] +RouteMetric=2048 + +[DHCPv6] +RouteMetric=2048 diff --git a/archiso/airootfs/etc/systemd/system/dbus-org.freedesktop.ModemManager1.service b/archiso/airootfs/etc/systemd/system/dbus-org.freedesktop.ModemManager1.service new file mode 120000 index 0000000..dcf7c8e --- /dev/null +++ b/archiso/airootfs/etc/systemd/system/dbus-org.freedesktop.ModemManager1.service @@ -0,0 +1 @@ +/usr/lib/systemd/system/ModemManager.service \ No newline at end of file diff --git a/archiso/airootfs/etc/systemd/system/multi-user.target.wants/ModemManager.service b/archiso/airootfs/etc/systemd/system/multi-user.target.wants/ModemManager.service new file mode 120000 index 0000000..dcf7c8e --- /dev/null +++ b/archiso/airootfs/etc/systemd/system/multi-user.target.wants/ModemManager.service @@ -0,0 +1 @@ +/usr/lib/systemd/system/ModemManager.service \ No newline at end of file diff --git a/archiso/airootfs/etc/systemd/system/pacman-init.service b/archiso/airootfs/etc/systemd/system/pacman-init.service index 70e0ca5..53a3632 100644 --- a/archiso/airootfs/etc/systemd/system/pacman-init.service +++ b/archiso/airootfs/etc/systemd/system/pacman-init.service @@ -3,8 +3,6 @@ [Unit] Description=Initializes Pacman keyring -Wants=haveged.service -After=haveged.service Requires=etc-pacman.d-gnupg.mount After=etc-pacman.d-gnupg.mount diff --git a/archiso/airootfs/etc/xdg/reflector/reflector.conf b/archiso/airootfs/etc/xdg/reflector/reflector.conf index 7b37d89..9a72b0d 100644 --- a/archiso/airootfs/etc/xdg/reflector/reflector.conf +++ b/archiso/airootfs/etc/xdg/reflector/reflector.conf @@ -2,5 +2,5 @@ --save /etc/pacman.d/mirrorlist --protocol https ---latest 70 +--latest 20 --sort rate diff --git a/archiso/packages.x86_64 b/archiso/packages.x86_64 index dd18132..00b5548 100644 --- a/archiso/packages.x86_64 +++ b/archiso/packages.x86_64 @@ -2,6 +2,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later alsa-utils amd-ucode +archinstall arch-install-scripts b43-fwcutter base @@ -33,7 +34,6 @@ gpart gpm gptfdisk grml-zsh-config -haveged hdparm intel-ucode ipw2100-fw @@ -58,6 +58,7 @@ memtest86+ mkinitcpio mkinitcpio-archiso mkinitcpio-nfs-utils +modemmanager mtools nano nbd @@ -83,6 +84,7 @@ rxvt-unicode-terminfo sdparm sg3_utils smartmontools +sof-firmware squashfs-tools sudo syslinux @@ -94,6 +96,7 @@ testdisk tmux udftools usb_modeswitch +usbmuxd usbutils vim vpnc diff --git a/archiso/profiledef.sh b/archiso/profiledef.sh index 487f3da..3bb23ee 100644 --- a/archiso/profiledef.sh +++ b/archiso/profiledef.sh @@ -3,16 +3,15 @@ iso_name="archlinux" iso_label="ARCH_$(date +%Y%m)" -iso_publisher="Arch Linux " +iso_publisher="Arch Linux " iso_application="Arch Linux Live/Rescue CD" iso_version="$(date +%Y.%m.%d)" install_dir="arch" bootmodes=('bios.syslinux.mbr' 'bios.syslinux.eltorito' 'uefi-x64.systemd-boot.esp' 'uefi-x64.systemd-boot.eltorito') arch="x86_64" pacman_conf="pacman.conf" -#airootfs_image_tool_options=('-comp' 'xz' '-Xbcj' 'x86' '-b' '1M' '-Xdict-size' '1M') -#airootfs_image_tool_options=('-comp' 'xz') -airootfs_image_tool_options=('-comp' 'zstd') +airootfs_image_type="squashfs" +airootfs_image_tool_options=('-comp' 'xz' '-Xbcj' 'x86' '-b' '1M' '-Xdict-size' '1M') file_permissions=( ["/etc/shadow"]="0:0:400" ["/root"]="0:0:750" diff --git a/installation-scripts/30-build-the-iso-the-first-time.sh b/installation-scripts/30-build-the-iso-the-first-time.sh index 113757e..6dedbb5 100755 --- a/installation-scripts/30-build-the-iso-the-first-time.sh +++ b/installation-scripts/30-build-the-iso-the-first-time.sh @@ -35,7 +35,7 @@ echo #isoLabel='arcolinux-next-'$arcolinuxVersion'-x86_64.iso' # setting of the general parameters - archisoRequiredVersion="archiso 51-1" + archisoRequiredVersion="archiso 52-1" buildFolder=$HOME"/alci-build" outFolder=$HOME"/Alci-Iso-Out" archisoVersion=$(sudo pacman -Q archiso) diff --git a/installation-scripts/40-build-the-iso-local-again.sh b/installation-scripts/40-build-the-iso-local-again.sh index 3c25eaf..13e1693 100755 --- a/installation-scripts/40-build-the-iso-local-again.sh +++ b/installation-scripts/40-build-the-iso-local-again.sh @@ -35,7 +35,7 @@ echo #isoLabel='arcolinux-next-'$arcolinuxVersion'-x86_64.iso' # setting of the general parameters - archisoRequiredVersion="archiso 51-1" + archisoRequiredVersion="archiso 52-1" buildFolder=$HOME"/alci-build" outFolder=$HOME"/Alci-Iso-Out" archisoVersion=$(sudo pacman -Q archiso)