Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions configs/kboot.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
timeout=100
default=archpower_install_xenon

archpower_install_xenon="dvd0:/arch/boot/ppc/vmlinuz-linux-xenon arch=ppc archisobasedir=arch archisolabel=ARCH_202606 initrd=dvd0:/arch/boot/ppc/initramfs-linux-xenon.img coherent_pool=16M read-only"

archpower_install_xenon_usb="uda1:/arch/boot/ppc/vmlinuz-linux-xenon arch=ppc archisobasedir=arch archisolabel=ARCH initrd=uda1:/arch/boot/ppc/initramfs-linux-xenon.img coherent_pool=16M read-only"
1 change: 1 addition & 0 deletions configs/releng-xenon/airootfs/etc/hostname
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
archiso
8 changes: 8 additions & 0 deletions configs/releng-xenon/airootfs/etc/initcpio/hooks/xenon
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
run_hook() {
mkdir -p /dev/disk/by-label
local label dev
for dev in /dev/sr0 /dev/sd*; do
label=$(blkid "$dev" -s LABEL -o value 2>/dev/null)
[ -n "$label" ] && ln -sf "../../${dev##*/}" "/dev/disk/by-label/$label"
done
}
5 changes: 5 additions & 0 deletions configs/releng-xenon/airootfs/etc/initcpio/install/xenon
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/bin/bash
build() {
add_runscript
add_binary blkid
}
1 change: 1 addition & 0 deletions configs/releng-xenon/airootfs/etc/locale.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
LANG=C.UTF-8
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
HOOKS=(base udev modconf xenon archiso archiso_loop_mnt block filesystems keyboard)
COMPRESSION="zstd"
COMPRESSION_OPTIONS=(-3 -T0)
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# mkinitcpio preset file for the 'linux' package on archiso

PRESETS=('archiso')

ALL_kver='/boot/vmlinuz-linux-xenon'
ALL_config='/etc/mkinitcpio.conf.d/archiso.conf'

archiso_image="/boot/initramfs-linux-xenon.img"
8 changes: 8 additions & 0 deletions configs/releng-xenon/airootfs/etc/mkinitcpio.d/linux.preset
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# mkinitcpio preset file for the 'linux' package on archiso

PRESETS=('archiso')

ALL_kver='/boot/vmlinuz-linux-ppc64'
ALL_config='/etc/mkinitcpio.conf.d/archiso.conf'

archiso_image="/boot/initramfs-linux-ppc64.img"
15 changes: 15 additions & 0 deletions configs/releng-xenon/airootfs/etc/motd
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
To install ArchPOWER follow the guides:
https://github.com/kth5/archpower/wiki

For anything architecture independent, the upstream Archlinux
Installation Guide is bliss:
https://wiki.archlinux.org/title/Installation_guide

For Wi-Fi, authenticate to the wireless network using the iwctl utility.
For mobile broadband (WWAN) modems, connect with the mmcli utility.
Ethernet, WLAN and WWAN interfaces using DHCP should work automatically.

After connecting to the internet, the installation guide can be accessed
via the convenience script Installation_guide.

                                          
Original file line number Diff line number Diff line change
@@ -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/)"
Empty file.
1 change: 1 addition & 0 deletions configs/releng-xenon/airootfs/etc/passwd
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
root:x:0:0:root:/root:/usr/bin/bash
1 change: 1 addition & 0 deletions configs/releng-xenon/airootfs/etc/shadow
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
root::14871::::::
116 changes: 116 additions & 0 deletions configs/releng-xenon/airootfs/etc/ssh/sshd_config
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# $OpenBSD: sshd_config,v 1.104 2021/07/02 05:11:21 dtucker Exp $

# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/local/sbin:/usr/local/bin:/usr/bin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options override the
# default value.

#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

# Ciphers and keying
#RekeyLimit default none

# Logging
#SyslogFacility AUTH
#LogLevel INFO

# Authentication:

#LoginGraceTime 2m
PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

#PubkeyAuthentication yes

# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile .ssh/authorized_keys

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
#PasswordAuthentication yes
#PermitEmptyPasswords no

# Change to no to disable s/key passwords
#KbdInteractiveAuthentication yes

# Kerberos options
#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no

# GSSAPI options
#GSSAPIAuthentication no
#GSSAPICleanupCredentials yes

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the KbdInteractiveAuthentication and
# PasswordAuthentication. Depending on your PAM configuration,
# PAM authentication via KbdInteractiveAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and KbdInteractiveAuthentication to 'no'.
UsePAM yes

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
#X11Forwarding no
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
PrintMotd no # pam does that
#PrintLastLog yes
#TCPKeepAlive yes
#PermitUserEnvironment no
#Compression delayed
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# override default of no subsystems
Subsystem sftp /usr/lib/ssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
# X11Forwarding no
# AllowTcpForwarding no
# PermitTTY no
# ForceCommand cvs server
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Journal]
Storage=volatile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[Login]
HandleSuspendKey=ignore
HandleHibernateKey=ignore
HandleLidSwitch=ignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
[Match]
Type=ether
# Exclude virtual Ethernet interfaces
Kind=!*

[Link]
RequiredForOnline=routable

[Network]
DHCP=yes
MulticastDNS=yes

# systemd-networkd does not set per-interface-type default route metrics
# https://github.com/systemd/systemd/issues/17698
# Explicitly set route metric, so that Ethernet is preferred over Wi-Fi and Wi-Fi is preferred over mobile broadband.
# Use values from NetworkManager. From nm_device_get_route_metric_default in
# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c
[DHCPv4]
RouteMetric=100

[IPv6AcceptRA]
RouteMetric=100
20 changes: 20 additions & 0 deletions configs/releng-xenon/airootfs/etc/systemd/network/20-wlan.network
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
[Match]
Type=wlan

[Link]
RequiredForOnline=routable

[Network]
DHCP=yes
MulticastDNS=yes

# systemd-networkd does not set per-interface-type default route metrics
# https://github.com/systemd/systemd/issues/17698
# Explicitly set route metric, so that Ethernet is preferred over Wi-Fi and Wi-Fi is preferred over mobile broadband.
# Use values from NetworkManager. From nm_device_get_route_metric_default in
# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c
[DHCPv4]
RouteMetric=600

[IPv6AcceptRA]
RouteMetric=600
19 changes: 19 additions & 0 deletions configs/releng-xenon/airootfs/etc/systemd/network/20-wwan.network
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
[Match]
Type=wwan

[Link]
RequiredForOnline=routable

[Network]
DHCP=yes

# systemd-networkd does not set per-interface-type default route metrics
# https://github.com/systemd/systemd/issues/17698
# Explicitly set route metric, so that Ethernet is preferred over Wi-Fi and Wi-Fi is preferred over mobile broadband.
# Use values from NetworkManager. From nm_device_get_route_metric_default in
# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/src/core/devices/nm-device.c
[DHCPv4]
RouteMetric=700

[IPv6AcceptRA]
RouteMetric=700
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[Network]
IPv6PrivacyExtensions=yes
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Default systemd-resolved configuration for archiso

[Resolve]
MulticastDNS=yes
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[Unit]
Description=Choose mirror from the kernel command line
ConditionKernelCommandLine=mirror

[Service]
Type=oneshot
ExecStart=/usr/local/bin/choose-mirror

[Install]
WantedBy=multi-user.target
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
[Unit]
Description=Temporary /etc/pacman.d/gnupg directory

[Mount]
What=tmpfs
Where=/etc/pacman.d/gnupg
Type=tmpfs
Options=mode=0755,noswap
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --autologin root - $TERM
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[Unit]
Description=Unmute All Sound Card Controls For Use With The Live Arch Environment
# This needs to run after the audio device becomes available.
Wants=systemd-udev-settle.service
After=systemd-udev-settle.service sound.target
ConditionKernelCommandLine=accessibility=on

[Service]
Type=oneshot
ExecStart=/usr/local/bin/livecd-sound -u

[Install]
WantedBy=sound.target
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
[Unit]
Description=Screen reader service
After=livecd-alsa-unmuter.service
Before=getty@tty1.service
ConditionKernelCommandLine=accessibility=on

[Service]
Type=oneshot
TTYPath=/dev/tty13
ExecStartPre=/usr/bin/chvt 13
ExecStart=/usr/local/bin/livecd-sound -p
ExecStartPost=/usr/bin/chvt 1
ExecStartPost=systemctl start espeakup.service
StandardInput=tty
TTYVHangup=yes
TTYVTDisallocate=yes
RemainAfterExit=true

[Install]
WantedBy=multi-user.target
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
[Unit]
Description=Initializes Pacman keyring
Requires=etc-pacman.d-gnupg.mount
After=etc-pacman.d-gnupg.mount time-sync.target
BindsTo=etc-pacman.d-gnupg.mount
Before=archlinux-keyring-wkd-sync.service

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/pacman-key --init
ExecStart=/usr/bin/pacman-key --populate

[Install]
WantedBy=multi-user.target
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Allow systemd-networkd-wait-online to succeed with one interface, otherwise, if multiple network interfaces exist,
# network-online.target gets needlessly delayed.
# See https://wiki.archlinux.org/title/systemd-networkd#systemd-networkd-wait-online
[Service]
ExecStart=
ExecStart=/usr/lib/systemd/systemd-networkd-wait-online --any
3 changes: 3 additions & 0 deletions configs/releng-xenon/airootfs/root/CONTRIBUTORS.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
== Patreon
* kouta-kun
* ReDave
9 changes: 9 additions & 0 deletions configs/releng-xenon/airootfs/root/customize_airootfs.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/usr/bin/env bash

set -e -u -x

# Warning: customize_airootfs.sh is deprecated! Support for it will be removed in a future archiso version.

# XXX Avoid error in step "Creating a list of installed packages on live-enviroment..."
pacman-key --init
pacman-key --populate archpower
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#!/bin/sh
#
# SPDX-License-Identifier: GPL-3.0-or-later

exec lynx 'https://wiki.archlinux.org/title/Installation_guide'
Loading