summaryrefslogtreecommitdiff
path: root/configs/profile-openrc/airootfs
diff options
context:
space:
mode:
Diffstat (limited to 'configs/profile-openrc/airootfs')
-rw-r--r--configs/profile-openrc/airootfs/etc/conf.d/agetty.tty13
-rw-r--r--configs/profile-openrc/airootfs/etc/conf.d/hostname1
-rw-r--r--configs/profile-openrc/airootfs/etc/fstab0
-rwxr-xr-xconfigs/profile-openrc/airootfs/etc/init.d/pacman-init30
-rw-r--r--configs/profile-openrc/airootfs/etc/locale.conf1
-rw-r--r--configs/profile-openrc/airootfs/etc/motd17
-rw-r--r--configs/profile-openrc/airootfs/etc/pam.d/su6
-rw-r--r--configs/profile-openrc/airootfs/etc/sudoers.d/g_wheel1
-rwxr-xr-xconfigs/profile-openrc/airootfs/root/.automated_script.sh34
-rw-r--r--configs/profile-openrc/airootfs/root/.zlogin1
-rwxr-xr-xconfigs/profile-openrc/airootfs/root/customize_airootfs.sh41
-rw-r--r--configs/profile-openrc/airootfs/root/install.txt2
12 files changed, 137 insertions, 0 deletions
diff --git a/configs/profile-openrc/airootfs/etc/conf.d/agetty.tty1 b/configs/profile-openrc/airootfs/etc/conf.d/agetty.tty1
new file mode 100644
index 0000000..997909c
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/conf.d/agetty.tty1
@@ -0,0 +1,3 @@
+baud="38400"
+term_type="linux"
+agetty_options="--autologin root --noclear"
diff --git a/configs/profile-openrc/airootfs/etc/conf.d/hostname b/configs/profile-openrc/airootfs/etc/conf.d/hostname
new file mode 100644
index 0000000..5a912cd
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/conf.d/hostname
@@ -0,0 +1 @@
+hostname="parabolaiso"
diff --git a/configs/profile-openrc/airootfs/etc/fstab b/configs/profile-openrc/airootfs/etc/fstab
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/fstab
diff --git a/configs/profile-openrc/airootfs/etc/init.d/pacman-init b/configs/profile-openrc/airootfs/etc/init.d/pacman-init
new file mode 100755
index 0000000..b646e52
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/init.d/pacman-init
@@ -0,0 +1,30 @@
+#!/usr/bin/openrc-run
+# Copyright (C) 2018 Parabola Project
+# Copyright (C) Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Initializes Pacman keyring"
+
+depend() {
+ use haveged
+ after haveged
+}
+
+start() {
+ # Check that there's no keyring, if there isn't, create one
+ if [ ! -d /etc/pacman.d/gnupg ]; then
+ ebegin "Initializing Pacman keyring"
+ pacman-key --init &> /dev/null &&
+ pacman-key --populate ${KEYS} &> /dev/null
+ else
+ ebegin "Pacman keyring already started"
+ fi
+}
+
+stop() {
+ # If there's a keyring, delete it
+ if [ -d /etc/pacman.d/gnupg ]; then
+ ebegin "Stoping Pacman keyring"
+ rm -rf /etc/pacman.d/gnupg
+ fi
+}
diff --git a/configs/profile-openrc/airootfs/etc/locale.conf b/configs/profile-openrc/airootfs/etc/locale.conf
new file mode 100644
index 0000000..01ec548
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/locale.conf
@@ -0,0 +1 @@
+LANG=en_US.UTF-8
diff --git a/configs/profile-openrc/airootfs/etc/motd b/configs/profile-openrc/airootfs/etc/motd
new file mode 100644
index 0000000..6742f6f
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/motd
@@ -0,0 +1,17 @@
+
+===============================================================================
+
+ Parabola GNU/Linux-libre live media _DATE_
+
+ To install Parabola, the system must be connected to the internet.
+ For instructions, enter this command:
+ less install.txt
+
+ Press the function keys while holding Alt to switch virtual terminals.
+ This allows entering commands without closing less.
+
+ For installation itself, enter this command:
+ ./install.sh
+
+===============================================================================
+
diff --git a/configs/profile-openrc/airootfs/etc/pam.d/su b/configs/profile-openrc/airootfs/etc/pam.d/su
new file mode 100644
index 0000000..a291042
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/pam.d/su
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth sufficient pam_rootok.so
+auth sufficient pam_wheel.so trust use_uid
+auth required pam_unix.so
+account required pam_unix.so
+session required pam_unix.so
diff --git a/configs/profile-openrc/airootfs/etc/sudoers.d/g_wheel b/configs/profile-openrc/airootfs/etc/sudoers.d/g_wheel
new file mode 100644
index 0000000..8c45359
--- /dev/null
+++ b/configs/profile-openrc/airootfs/etc/sudoers.d/g_wheel
@@ -0,0 +1 @@
+%wheel ALL=(ALL) NOPASSWD: ALL
diff --git a/configs/profile-openrc/airootfs/root/.automated_script.sh b/configs/profile-openrc/airootfs/root/.automated_script.sh
new file mode 100755
index 0000000..fb106da
--- /dev/null
+++ b/configs/profile-openrc/airootfs/root/.automated_script.sh
@@ -0,0 +1,34 @@
+#!/bin/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:// || "${script}" =~ ^ftp:// ]]; then
+ wget "${script}" --retry-connrefused -q -O /tmp/startup_script >/dev/null
+ rt=$?
+ else
+ cp "${script}" /tmp/startup_script
+ rt=$?
+ fi
+ if [[ ${rt} -eq 0 ]]; then
+ chmod +x /tmp/startup_script
+ /tmp/startup_script
+ fi
+ fi
+}
+
+if [[ $(tty) == "/dev/tty1" ]]; then
+ automated_script
+fi
diff --git a/configs/profile-openrc/airootfs/root/.zlogin b/configs/profile-openrc/airootfs/root/.zlogin
new file mode 100644
index 0000000..f598e43
--- /dev/null
+++ b/configs/profile-openrc/airootfs/root/.zlogin
@@ -0,0 +1 @@
+~/.automated_script.sh
diff --git a/configs/profile-openrc/airootfs/root/customize_airootfs.sh b/configs/profile-openrc/airootfs/root/customize_airootfs.sh
new file mode 100755
index 0000000..f52ac11
--- /dev/null
+++ b/configs/profile-openrc/airootfs/root/customize_airootfs.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+set -e -u
+
+sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen
+locale-gen
+
+ln -sf /usr/share/zoneinfo/UTC /etc/localtime
+
+usermod -s /usr/bin/zsh root
+cp -aT /etc/skel/ /root/
+chmod 700 /root
+
+sed -i 's/#\(PermitRootLogin \).\+/\1yes/' /etc/ssh/sshd_config
+sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist
+
+sed -i 's/#\(HandleSuspendKey=\)suspend/\1ignore/' /etc/elogind/logind.conf
+sed -i 's/#\(HandleHibernateKey=\)hibernate/\1ignore/' /etc/elogind/logind.conf
+sed -i 's/#\(HandleLidSwitch=\)suspend/\1ignore/' /etc/elogind/logind.conf
+
+case $(uname -m) in
+ x86_64) echo 'KEYS="archlinux parabola"' > /etc/conf.d/pacman-init
+ ;;
+ i686) echo 'KEYS="archlinux archlinux32 parabola"' > /etc/conf.d/pacman-init
+ ;;
+esac
+
+useradd -m -p "" -g users -G "adm,audio,floppy,log,network,scanner,storage,optical,power,wheel,disk,sys" -s /usr/bin/zsh parabola
+
+services=(NetworkManager
+ elogind
+ alsasound
+ dbus
+ haveged
+ pacman-init)
+
+for s in ${services[@]}; do
+ rc-update add $s default
+done
+
+sed -i "s/_DATE_/$(date +%Y.%m.%d)/" /etc/motd
diff --git a/configs/profile-openrc/airootfs/root/install.txt b/configs/profile-openrc/airootfs/root/install.txt
new file mode 100644
index 0000000..a594b97
--- /dev/null
+++ b/configs/profile-openrc/airootfs/root/install.txt
@@ -0,0 +1,2 @@
+View this installation guide online at
+https://wiki.parabola.nu/Installation_Guide