first commit

This commit is contained in:
airmancooma 2025-03-19 22:24:02 +01:00
commit f3002f5898
930 changed files with 272825 additions and 0 deletions

1
README.md Normal file
View file

@ -0,0 +1 @@
RaveOS Base iso build file-ok.

67
arch-iso-builder.sh Executable file
View file

@ -0,0 +1,67 @@
#!/bin/bash
# Exit on error
set -e
##################################################################################################################
# Custom Arch ISO Builder Script
##################################################################################################################
# Get absolute path of script directory
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# Check if running on btrfs
if lsblk -f | grep btrfs > /dev/null 2>&1; then
echo "Warning: Building on BTRFS filesystem. Make backups before continuing."
read -p "Press Enter to continue... CTRL + C to stop"
fi
# Setting general parameters
buildFolder="$SCRIPT_DIR/build"
outFolder="$SCRIPT_DIR/out"
echo "################################################################"
echo "Build folder: $buildFolder"
echo "Out folder : $outFolder"
echo "################################################################"
# Check if archiso is installed
if ! pacman -Qi archiso &> /dev/null; then
echo "Installing archiso..."
sudo pacman -S --noconfirm archiso
fi
# Make mkarchiso verbose
sudo sed -i 's/quiet="y"/quiet="n"/g' /usr/bin/mkarchiso
echo "Cleaning build environment..."
[ -d "$buildFolder" ] && sudo rm -rf "$buildFolder"
mkdir -p "$buildFolder"
echo "Copying releng folder to build directory..."
cp -r "$SCRIPT_DIR/releng" "$buildFolder/"
#echo "Cleaning pacman cache..."
#yes | sudo pacman -Scc
echo "Creating output directory..."
mkdir -p "$outFolder"
echo "Building ISO..."
cd "$buildFolder/releng"
sudo mkarchiso -v -w "$buildFolder" -o "$outFolder" "$PWD"
# Save package list
echo "Saving package list..."
rename=$(date +%Y-%m-%d)
cp "$buildFolder/iso/arch/pkglist.x86_64.txt" "$outFolder/archlinux-$rename-pkglist.txt"
echo "Cleaning build environment..."
[ -d "$buildFolder" ] && sudo rm -rf "$buildFolder"
sudo chown -R $USER:$GROUP "$outFolder"
echo "################################################################"
echo "DONE"
echo "Check your out folder: $outFolder"
echo "################################################################"

Binary file not shown.

1
pkgs/custom.db Symbolic link
View file

@ -0,0 +1 @@
custom.db.tar.gz

BIN
pkgs/custom.db.tar.gz Normal file

Binary file not shown.

1
pkgs/custom.files Symbolic link
View file

@ -0,0 +1 @@
custom.files.tar.gz

BIN
pkgs/custom.files.tar.gz Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,3 @@
#/usr/bin/env bash
complete -W "install install-local remove purge search update upgrade full-upgrade autoclean clean autoremove list-installed show install-flatpak update-flatpak remove-flatpak search-flatpak init" rave

View file

@ -0,0 +1,54 @@
# GRUB boot loader configuration
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="RaveOS"
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"
GRUB_CMDLINE_LINUX=""
# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"
# Uncomment to enable booting from LUKS encrypted devices
GRUB_ENABLE_CRYPTODISK=y
# Set to 'countdown' or 'hidden' to change timeout behavior,
# press ESC key to display menu.
GRUB_TIMEOUT_STYLE=menu
# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console
# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=auto
# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep
# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true
# Uncomment and set to the desired menu colors. Used by normal and wallpaper
# modes only. Entries specified as foreground/background.
#GRUB_COLOR_NORMAL="light-blue/black"
#GRUB_COLOR_HIGHLIGHT="light-cyan/blue"
# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/path/to/wallpaper"
#GRUB_THEME="/path/to/gfxtheme"
# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"
# Uncomment to make GRUB remember the last selection. This requires
# setting 'GRUB_DEFAULT=saved' above.
#GRUB_SAVEDEFAULT="true"

17
releng/airootfs/etc/group Normal file
View file

@ -0,0 +1,17 @@
root:x:0:root
sys:x:3:bin,liveuser
network:x:90:liveuser
power:x:98:liveuser
adm:x:999:liveuser
wheel:x:998:liveuser
uucp:x:987:liveuser
optical:x:990:liveuser
rfkill:x:983:liveuser
video:x:986:liveuser
storage:x:988:liveuser
audio:x:995:liveuser
users:x:985:liveuser
nopasswdlogin:x:966:liveuser
autologin:x:967:liveuser
plugdev:x:46:liveuser
liveuser:x:1000:

View file

@ -0,0 +1,16 @@
root:::root
sys:!!::liveuser
network:!!::liveuser
power:!!::liveuser
adm:!!::liveuser
wheel:!!::liveuser
uucp:!!::liveuser
optical:!!::liveuser
rfkill:!!::liveuser
video:!!::liveuser
storage:!!::liveuser
audio:!!::liveuser
users:!!::liveuser
nopasswdlogin:!::liveuser
autologin:!::liveuser
liveuser:!::

View file

@ -0,0 +1 @@
raveos-machine

View file

@ -0,0 +1 @@
LANG=C.UTF-8

View file

@ -0,0 +1 @@
/usr/share/zoneinfo/UTC

View file

@ -0,0 +1,67 @@
# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run. Advanced users may wish to specify all system modules
# in this array. For instance:
# MODULES=(piix ide_disk reiserfs)
MODULES=()
# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image. This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()
# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way. This is useful for config files.
FILES=()
# HOOKS
# This is the most important setting in this file. The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added. Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
## This setup specifies all modules in the MODULES setting above.
## No raid, lvm2, or encrypted root is needed.
# HOOKS=(base)
#
## This setup will autodetect all modules for your system and should
## work as a sane default
# HOOKS=(base udev autodetect block filesystems)
#
## This setup will generate a 'full' image which supports most systems.
## No autodetection is done.
# HOOKS=(base udev block filesystems)
#
## This setup assembles a pata mdadm array with an encrypted root FS.
## Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
# HOOKS=(base udev block mdadm encrypt filesystems)
#
## This setup loads an lvm2 volume group on a usb device.
# HOOKS=(base udev block lvm2 filesystems)
#
## NOTE: If you have /usr on a separate partition, you MUST include the
# usr, fsck and shutdown hooks.
HOOKS=(base udev modconf kms memdisk archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs block filesystems keyboard)
# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"
COMPRESSION="zstd"
# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()

View file

@ -0,0 +1,3 @@
HOOKS=(base udev microcode modconf kms memdisk archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs block filesystems keyboard)
COMPRESSION="xz"
COMPRESSION_OPTIONS=(-9e)

View file

@ -0,0 +1,8 @@
# mkinitcpio preset file for the 'linux' package on archiso
PRESETS=('archiso')
ALL_kver='/boot/vmlinuz-linux-zen'
ALL_config='/etc/mkinitcpio.conf'
archiso_image="/boot/initramfs-linux-zen.img"

View file

@ -0,0 +1,7 @@
# The broadcom-wl package requires some modules to be disabled in order to use
# wl. Since the ISO image needs to cover many hardware cases, this file
# overrides the default blacklist in /usr/lib/modprobe.d/
#
# If you need to use wl, you may need to delete this file, then `rmmod` any
# already-loaded modules that are now blacklisted before proceeding to modprobe
# wl itself.

View file

@ -0,0 +1,12 @@
NAME="RaveOS XXX 1.0"
PRETTY_NAME="RaveOS XXX 1.0"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;255;0;255"
HOME_URL="https://rp1.hu/"
DOCUMENTATION_URL="https://git.rp1.hu/explore/repos"
SUPPORT_URL="https://git.rp1.hu/explore/repos"
BUG_REPORT_URL="https://git.rp1.hu/explore/repos"
LOGO=raveos-logo
VERSION="1.0"
VERSION_ID="1.0"

View file

@ -0,0 +1,101 @@
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# SPDX-License-Identifier: GPL-3.0-or-later
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
#Color
#NoProgressBar
#CheckSpace
#VerbosePkgLists
ParallelDownloads = 8
#DownloadUser = alpm
#DisableSandbox
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with `pacman-key --populate archlinux`.
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
#[core-testing]
#Include = /etc/pacman.d/mirrorlist
[core]
Include = /etc/pacman.d/mirrorlist
#[extra-testing]
#Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
# If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist
[multilib]
Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs

View file

@ -0,0 +1,13 @@
no-greeting
no-permission-warning
lock-never
keyserver-options timeout=10
keyserver-options import-clean
keyserver-options no-self-sigs-only
keyserver hkp://keyserver.ubuntu.com:80
#keyserver hkp://pool.sks-keyservers.net:80
#keyserver hkps://hkps.pool.sks-keyservers.net:443
#keyserver hkp://ipv4.pool.sks-keyservers.net:11371

View file

@ -0,0 +1,9 @@
[Trigger]
Operation = Install
Type = Package
Target = bash
[Action]
Description = Installing Calamares...
When = PostTransaction
Exec = /root/install-calamares.sh

View file

@ -0,0 +1,9 @@
[Trigger]
Operation = Install
Type = Package
Target = bash
[Action]
Description = Installing RaveOS Settings...
When = PostTransaction
Exec = /root/ros-settings.sh

View file

@ -0,0 +1,9 @@
[Trigger]
Type = Package
Operation = Install
Target = bash
[Action]
Description = Configuring GTK themes for live user...
When = PostTransaction
Exec = /root/configure-theme.sh

View file

@ -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

View file

@ -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/)"

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,2 @@
root:x:0:0:root:/root:/usr/bin/zsh
liveuser:x:1000:1000::/home/liveuser:/bin/bash

View file

@ -0,0 +1,9 @@
/* Allow members of the wheel group to execute any actions
* without password authentication, similar to "sudo NOPASSWD:"
*/
polkit.addRule(function(action, subject) {
if (subject.isInGroup("wheel")) {
return polkit.Result.YES;
}
});

View file

@ -0,0 +1,4 @@
# A DNS szerverek (Google DNS és Cloudflare)
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 1.1.1.1

View file

@ -0,0 +1,2 @@
root::14871::::::
liveuser::14871::::::

View file

@ -0,0 +1,9 @@
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
PS1='[\u@\h \W]\$ '

View file

@ -0,0 +1,5 @@
gtk-theme-name="Yaru-purple-blue"
gtk-icon-theme-name="Yaru-purple-blue"
gtk-cursor-theme-name="Yaru"
gtk-sound-theme-name="Yaru"

View file

@ -0,0 +1,3 @@
# Allow root login using password authentication
PasswordAuthentication yes
PermitRootLogin yes

View file

@ -0,0 +1 @@
%wheel ALL=(ALL:ALL) NOPASSWD: ALL

View file

@ -0,0 +1,2 @@
[Journal]
Storage=volatile

View file

@ -0,0 +1,4 @@
[Login]
HandleSuspendKey=ignore
HandleHibernateKey=ignore
HandleLidSwitch=ignore

View file

@ -0,0 +1,2 @@
[Network]
IPv6PrivacyExtensions=yes

View file

@ -0,0 +1,24 @@
[Match]
# Matching with "Type=ether" causes issues with containers because it also matches virtual Ethernet interfaces (veth*).
# See https://bugs.archlinux.org/task/70892
# Instead match by globbing the network interface name.
Name=en*
Name=eth*
[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

View file

@ -0,0 +1,20 @@
[Match]
Name=wl*
[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

View file

@ -0,0 +1,19 @@
[Match]
Name=ww*
[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

View file

@ -0,0 +1,4 @@
# Default systemd-resolved configuration for archiso
[Resolve]
MulticastDNS=yes

View file

@ -0,0 +1 @@
/dev/null

View file

@ -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

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/cloud-config.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/cloud-final.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/cloud-init-local.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/cloud-init-main.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/cloud-init-network.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/ModemManager.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/NetworkManager-dispatcher.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-resolved.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-timesyncd.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/graphical.target

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/gdm.service

View file

@ -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

View file

@ -0,0 +1,3 @@
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f -- \\u' --noclear --autologin root - $TERM

View file

@ -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

View file

@ -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

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/ModemManager.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/NetworkManager.service

View file

@ -0,0 +1 @@
../choose-mirror.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/hv_fcopy_daemon.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/hv_kvp_daemon.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/hv_vss_daemon.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/iwd.service

View file

@ -0,0 +1 @@
/etc/systemd/system/livecd-talk.service

View file

@ -0,0 +1 @@
../pacman-init.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/reflector.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/sshd.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-resolved.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/vboxservice.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/vmtoolsd.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/vmware-vmblock-fuse.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/NetworkManager-wait-online.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd-wait-online.service

View file

@ -0,0 +1,16 @@
[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
ExecStart=/usr/bin/pacman -Sy
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1,6 @@
[Unit]
ConditionKernelCommandLine=!mirror
[Service]
Restart=on-failure
RestartSec=10

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/pcscd.socket

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-networkd.socket

View file

@ -0,0 +1 @@
../livecd-alsa-unmuter.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-time-wait-sync.service

View file

@ -0,0 +1 @@
/usr/lib/systemd/system/systemd-timesyncd.service

View file

@ -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

View file

@ -0,0 +1,10 @@
[Desktop Entry]
Type=Application
Name=Install RaveOS
GenericName=System Installer
Comment=Install the operating system to disk
Exec=sudo calamares
Icon=/etc/calamares/branding/default/raveos-icon.png
Terminal=false
StartupNotify=true
Categories=System;

View file

@ -0,0 +1,8 @@
# Reflector configuration file for the systemd service.
--save /etc/pacman.d/mirrorlist
--ipv4
--ipv6
--protocol https
--latest 20
--sort rate

View file

@ -0,0 +1,44 @@
#!/usr/bin/env bash
script_cmdline() {
local param
for param in $(</proc/cmdline); do
case "${param}" in
script=*)
echo "${param#*=}"
return 0
;;
esac
done
}
automated_script() {
local script rt
script="$(script_cmdline)"
if [[ -n "${script}" && ! -x /tmp/startup_script ]]; then
if [[ "${script}" =~ ^((http|https|ftp|tftp)://) ]]; then
# there's no synchronization for network availability before executing this script
printf '%s: waiting for network-online.target\n' "$0"
until systemctl --quiet is-active network-online.target; do
sleep 1
done
printf '%s: downloading %s\n' "$0" "${script}"
curl "${script}" --location --retry-connrefused --retry 10 --fail -s -o /tmp/startup_script
rt=$?
else
cp "${script}" /tmp/startup_script
rt=$?
fi
if [[ ${rt} -eq 0 ]]; then
chmod +x /tmp/startup_script
printf '%s: executing automated script\n' "$0"
# note that script is executed when other services (like pacman-init) may be still in progress, please
# synchronize to "systemctl is-system-running --wait" when your script depends on other services
/tmp/startup_script
fi
fi
}
if [[ $(tty) == "/dev/tty1" ]]; then
automated_script
fi

View file

@ -0,0 +1,4 @@
disable-ccid
disable-pinpad
pcsc-driver /usr/lib/libpcsclite.so
pcsc-shared

View file

@ -0,0 +1,6 @@
# fix for screen readers
if grep -Fqa 'accessibility=' /proc/cmdline &> /dev/null; then
setopt SINGLE_LINE_ZLE
fi
~/.automated_script.sh

Binary file not shown.

After

Width:  |  Height:  |  Size: 252 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 562 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 602 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 729 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Some files were not shown because too many files have changed in this diff Show more