mirror of
https://github.com/arthur-pbty/arch-custom-iso.git
synced 2026-08-01 20:28:05 +02:00
remove not useful feature & add script install.sh
This commit is contained in:
@@ -1 +1 @@
|
|||||||
archiso
|
archcustomiso
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
/usr/lib/systemd/system/cloud-config.service
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/usr/lib/systemd/system/cloud-final.service
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/usr/lib/systemd/system/cloud-init-local.service
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/usr/lib/systemd/system/cloud-init-main.service
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/usr/lib/systemd/system/cloud-init-network.service
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
[Unit]
|
|
||||||
Description=Auto Arch Installer
|
|
||||||
After=multi-user.target
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
Type=simple
|
|
||||||
ExecStart=/root/install.sh
|
|
||||||
TTYPath=/dev/tty1
|
|
||||||
StandardInput=tty
|
|
||||||
StandardOutput=tty
|
|
||||||
Restart=no
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
[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
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
[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
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
/etc/systemd/system/install.service
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
../livecd-alsa-unmuter.service
|
|
||||||
Executable
+144
@@ -0,0 +1,144 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo "========================"
|
||||||
|
echo " Arch Custom Installer"
|
||||||
|
echo "========================"
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 1. KEYBOARD
|
||||||
|
# =========================
|
||||||
|
echo "Clavier (fr / us / uk / de / es) :"
|
||||||
|
read -r KEYMAP
|
||||||
|
loadkeys "$KEYMAP"
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 2. NETWORK (AUTO + WIFI MANUEL)
|
||||||
|
# =========================
|
||||||
|
if ! ping -c 1 archlinux.org &>/dev/null; then
|
||||||
|
echo "Pas d'internet détecté."
|
||||||
|
|
||||||
|
iwctl device list
|
||||||
|
echo "Device Wi-Fi (ex: wlan0) :"
|
||||||
|
read -r DEVICE
|
||||||
|
|
||||||
|
iwctl station "$DEVICE" scan
|
||||||
|
sleep 3
|
||||||
|
|
||||||
|
iwctl station "$DEVICE" get-networks
|
||||||
|
|
||||||
|
echo "SSID :"
|
||||||
|
read -r SSID
|
||||||
|
|
||||||
|
echo "Password Wi-Fi :"
|
||||||
|
read -rs PASS
|
||||||
|
echo
|
||||||
|
|
||||||
|
iwctl station "$DEVICE" connect "$SSID" --passphrase "$PASS"
|
||||||
|
|
||||||
|
sleep 5
|
||||||
|
fi
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 3. TIMEZONE
|
||||||
|
# =========================
|
||||||
|
echo "Fuseau horaire (ex: Europe/Paris) :"
|
||||||
|
read -r TIMEZONE
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 4. LOCALE
|
||||||
|
# =========================
|
||||||
|
echo "Langue système (fr_FR.UTF-8 / en_US.UTF-8 / etc) :"
|
||||||
|
read -r LOCALE
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 5. USER
|
||||||
|
# =========================
|
||||||
|
DEFAULT_USER="user"
|
||||||
|
echo "Nom utilisateur [$DEFAULT_USER] :"
|
||||||
|
read -r USERNAME
|
||||||
|
USERNAME=${USERNAME:-$DEFAULT_USER}
|
||||||
|
|
||||||
|
echo "Mot de passe utilisateur :"
|
||||||
|
read -rs USERPASS
|
||||||
|
echo
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 6. HOSTNAME
|
||||||
|
# =========================
|
||||||
|
DEFAULT_HOST="archbox"
|
||||||
|
echo "Hostname [$DEFAULT_HOST] :"
|
||||||
|
read -r HOSTNAME
|
||||||
|
HOSTNAME=${HOSTNAME:-$DEFAULT_HOST}
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 7. DISK
|
||||||
|
# =========================
|
||||||
|
lsblk -dpno NAME,SIZE,MODEL
|
||||||
|
|
||||||
|
echo "Disque (ex: /dev/sda ou /dev/nvme0n1) :"
|
||||||
|
read -r DISK
|
||||||
|
|
||||||
|
echo "⚠️ TOUT SERA EFFACÉ SUR $DISK"
|
||||||
|
echo "Taper YES pour confirmer :"
|
||||||
|
read -r CONFIRM
|
||||||
|
[[ "$CONFIRM" != "YES" ]] && exit 1
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 8. PARTITIONING
|
||||||
|
# =========================
|
||||||
|
sgdisk --zap-all "$DISK"
|
||||||
|
|
||||||
|
sgdisk -n 1:0:+512M -t 1:ef00 -c 1:"EFI" "$DISK"
|
||||||
|
sgdisk -n 2:0:0 -t 2:8300 -c 2:"ROOT" "$DISK"
|
||||||
|
|
||||||
|
EFI="${DISK}1"
|
||||||
|
ROOT="${DISK}2"
|
||||||
|
|
||||||
|
mkfs.fat -F32 "$EFI"
|
||||||
|
mkfs.ext4 -F "$ROOT"
|
||||||
|
|
||||||
|
mount "$ROOT" /mnt
|
||||||
|
mount --mkdir "$EFI" /mnt/boot
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 9. BASE INSTALL
|
||||||
|
# =========================
|
||||||
|
pacstrap -K /mnt \
|
||||||
|
base linux linux-firmware \
|
||||||
|
sudo networkmanager iwd
|
||||||
|
|
||||||
|
genfstab -U /mnt >> /mnt/etc/fstab
|
||||||
|
|
||||||
|
# =========================
|
||||||
|
# 10. CHROOT
|
||||||
|
# =========================
|
||||||
|
arch-chroot /mnt /bin/bash <<EOF
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
ln -sf "/usr/share/zoneinfo/$TIMEZONE" /etc/localtime
|
||||||
|
hwclock --systohc
|
||||||
|
|
||||||
|
echo "KEYMAP=$KEYMAP" > /etc/vconsole.conf
|
||||||
|
|
||||||
|
echo "$LOCALE UTF-8" >> /etc/locale.gen
|
||||||
|
locale-gen
|
||||||
|
echo "LANG=$LOCALE" > /etc/locale.conf
|
||||||
|
|
||||||
|
echo "$HOSTNAME" > /etc/hostname
|
||||||
|
|
||||||
|
useradd -m -G wheel -s /bin/bash "$USERNAME"
|
||||||
|
echo "$USERNAME:$USERPASS" | chpasswd
|
||||||
|
|
||||||
|
echo "%wheel ALL=(ALL:ALL) ALL" > /etc/sudoers.d/wheel
|
||||||
|
|
||||||
|
systemctl enable NetworkManager
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo " Installation terminée"
|
||||||
|
echo "========================"
|
||||||
|
reboot
|
||||||
@@ -4,3 +4,4 @@ if grep -Fqa 'accessibility=' /proc/cmdline &> /dev/null; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
~/.automated_script.sh
|
~/.automated_script.sh
|
||||||
|
~/.install.sh
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
clear
|
|
||||||
|
|
||||||
echo "=============================="
|
|
||||||
echo " Arch Custom Installer"
|
|
||||||
echo "=============================="
|
|
||||||
|
|
||||||
# 1. Nom utilisateur
|
|
||||||
read -p "Nom utilisateur: " USERNAME
|
|
||||||
|
|
||||||
# 2. Hostname
|
|
||||||
read -p "Nom machine (hostname): " HOSTNAME
|
|
||||||
|
|
||||||
# 3. Disque
|
|
||||||
lsblk
|
|
||||||
read -p "Disque à installer (ex: /dev/sda): " DISK
|
|
||||||
|
|
||||||
echo "WARNING: Tout sera effacé sur $DISK"
|
|
||||||
read -p "Continuer ? (yes/no): " CONFIRM
|
|
||||||
|
|
||||||
if [ "$CONFIRM" != "yes" ]; then
|
|
||||||
echo "Installation annulée"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 4. Partitionnement simple
|
|
||||||
parted $DISK --script mklabel gpt
|
|
||||||
parted $DISK --script mkpart primary fat32 1MiB 512MiB
|
|
||||||
parted $DISK --script set 1 esp on
|
|
||||||
parted $DISK --script mkpart primary ext4 512MiB 100%
|
|
||||||
|
|
||||||
mkfs.fat -F32 ${DISK}1
|
|
||||||
mkfs.ext4 ${DISK}2
|
|
||||||
|
|
||||||
mount ${DISK}2 /mnt
|
|
||||||
mkdir -p /mnt/boot
|
|
||||||
mount ${DISK}1 /mnt/boot
|
|
||||||
|
|
||||||
# 5. Base system
|
|
||||||
pacstrap /mnt base linux linux-firmware sudo networkmanager
|
|
||||||
|
|
||||||
genfstab -U /mnt >> /mnt/etc/fstab
|
|
||||||
|
|
||||||
# 6. Config système
|
|
||||||
arch-chroot /mnt bash -c "
|
|
||||||
useradd -m -G wheel $USERNAME
|
|
||||||
echo '$HOSTNAME' > /etc/hostname
|
|
||||||
systemctl enable NetworkManager
|
|
||||||
"
|
|
||||||
|
|
||||||
echo "Installation terminée"
|
|
||||||
echo "Reboot..."
|
|
||||||
reboot
|
|
||||||
+2
-1
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
|
|
||||||
iso_name="archlinux"
|
iso_name="archcustom"
|
||||||
iso_label="ARCH_$(date --date="@${SOURCE_DATE_EPOCH:-$(date +%s)}" +%Y%m)"
|
iso_label="ARCH_$(date --date="@${SOURCE_DATE_EPOCH:-$(date +%s)}" +%Y%m)"
|
||||||
iso_publisher="Arch Linux <https://archlinux.org>"
|
iso_publisher="Arch Linux <https://archlinux.org>"
|
||||||
iso_application="Arch Linux Live/Rescue DVD"
|
iso_application="Arch Linux Live/Rescue DVD"
|
||||||
@@ -18,6 +18,7 @@ file_permissions=(
|
|||||||
["/etc/shadow"]="0:0:400"
|
["/etc/shadow"]="0:0:400"
|
||||||
["/root"]="0:0:750"
|
["/root"]="0:0:750"
|
||||||
["/root/.automated_script.sh"]="0:0:755"
|
["/root/.automated_script.sh"]="0:0:755"
|
||||||
|
["/root/.install.sh"]="0:0:0755"
|
||||||
["/root/.gnupg"]="0:0:700"
|
["/root/.gnupg"]="0:0:700"
|
||||||
["/usr/local/bin/choose-mirror"]="0:0:755"
|
["/usr/local/bin/choose-mirror"]="0:0:755"
|
||||||
["/usr/local/bin/Installation_guide"]="0:0:755"
|
["/usr/local/bin/Installation_guide"]="0:0:755"
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
SERIAL 0 115200
|
|
||||||
UI vesamenu.c32
|
|
||||||
MENU TITLE Arch Linux
|
|
||||||
MENU BACKGROUND splash.png
|
|
||||||
|
|
||||||
MENU WIDTH 78
|
|
||||||
MENU MARGIN 4
|
|
||||||
MENU ROWS 7
|
|
||||||
MENU VSHIFT 10
|
|
||||||
MENU TABMSGROW 14
|
|
||||||
MENU CMDLINEROW 14
|
|
||||||
MENU HELPMSGROW 16
|
|
||||||
MENU HELPMSGENDROW 29
|
|
||||||
|
|
||||||
# Refer to https://wiki.syslinux.org/wiki/index.php/Comboot/menu.c32
|
|
||||||
|
|
||||||
MENU COLOR border 30;44 #40ffffff #a0000000 std
|
|
||||||
MENU COLOR title 1;36;44 #9033ccff #a0000000 std
|
|
||||||
MENU COLOR sel 7;37;40 #e0ffffff #20ffffff all
|
|
||||||
MENU COLOR unsel 37;44 #50ffffff #a0000000 std
|
|
||||||
MENU COLOR help 37;40 #c0ffffff #a0000000 std
|
|
||||||
MENU COLOR timeout_msg 37;40 #80ffffff #00000000 std
|
|
||||||
MENU COLOR timeout 1;37;40 #c0ffffff #00000000 std
|
|
||||||
MENU COLOR msg07 37;40 #90ffffff #a0000000 std
|
|
||||||
MENU COLOR tabmsg 31;40 #30ffffff #00000000 std
|
|
||||||
|
|
||||||
MENU CLEAR
|
|
||||||
MENU IMMEDIATE
|
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
LABEL arch_nbd
|
|
||||||
TEXT HELP
|
|
||||||
Boot the Arch Linux install medium using NBD.
|
|
||||||
It allows you to install Arch Linux or perform system maintenance.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Arch Linux install medium (%ARCH%, NBD)
|
|
||||||
LINUX ::/%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
|
|
||||||
INITRD ::/%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
|
||||||
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% archiso_nbd_srv=${pxeserver} cms_verify=y
|
|
||||||
SYSAPPEND 3
|
|
||||||
|
|
||||||
LABEL arch_nfs
|
|
||||||
TEXT HELP
|
|
||||||
Boot the Arch Linux live medium using NFS.
|
|
||||||
It allows you to install Arch Linux or perform system maintenance.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Arch Linux install medium (%ARCH%, NFS)
|
|
||||||
LINUX ::/%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
|
|
||||||
INITRD ::/%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
|
||||||
APPEND archisobasedir=%INSTALL_DIR% archiso_nfs_srv=${pxeserver}:/run/archiso/bootmnt cms_verify=y
|
|
||||||
SYSAPPEND 3
|
|
||||||
|
|
||||||
LABEL arch_http
|
|
||||||
TEXT HELP
|
|
||||||
Boot the Arch Linux live medium using HTTP.
|
|
||||||
It allows you to install Arch Linux or perform system maintenance.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Arch Linux install medium (%ARCH%, HTTP)
|
|
||||||
LINUX ::/%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
|
|
||||||
INITRD ::/%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
|
||||||
APPEND archisobasedir=%INSTALL_DIR% archiso_http_srv=http://${pxeserver}/ cms_verify=y
|
|
||||||
SYSAPPEND 3
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
INCLUDE archiso_head.cfg
|
|
||||||
|
|
||||||
INCLUDE archiso_pxe-linux.cfg
|
|
||||||
|
|
||||||
INCLUDE archiso_tail.cfg
|
|
||||||
@@ -1,20 +1,4 @@
|
|||||||
LABEL arch
|
LABEL arch
|
||||||
TEXT HELP
|
|
||||||
Boot the Arch Linux install medium on BIOS.
|
|
||||||
It allows you to install Arch Linux or perform system maintenance.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Arch Linux install medium (%ARCH%, BIOS)
|
|
||||||
LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
|
LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
|
||||||
INITRD /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
INITRD /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
||||||
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID%
|
||||||
|
|
||||||
# Accessibility boot option
|
|
||||||
LABEL archspeech
|
|
||||||
TEXT HELP
|
|
||||||
Boot the Arch Linux install medium on BIOS with speakup screen reader.
|
|
||||||
It allows you to install Arch Linux or perform system maintenance with speech feedback.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Arch Linux install medium (%ARCH%, BIOS) with ^speech
|
|
||||||
LINUX /%INSTALL_DIR%/boot/%ARCH%/vmlinuz-linux
|
|
||||||
INITRD /%INSTALL_DIR%/boot/%ARCH%/initramfs-linux.img
|
|
||||||
APPEND archisobasedir=%INSTALL_DIR% archisosearchuuid=%ARCHISO_UUID% accessibility=on
|
|
||||||
|
|||||||
@@ -1,8 +1,4 @@
|
|||||||
INCLUDE archiso_head.cfg
|
|
||||||
|
|
||||||
DEFAULT arch
|
DEFAULT arch
|
||||||
TIMEOUT 150
|
TIMEOUT 0
|
||||||
|
|
||||||
INCLUDE archiso_sys-linux.cfg
|
INCLUDE archiso_sys-linux.cfg
|
||||||
|
|
||||||
INCLUDE archiso_tail.cfg
|
|
||||||
|
|||||||
@@ -1,35 +0,0 @@
|
|||||||
LABEL existing
|
|
||||||
TEXT HELP
|
|
||||||
Boot an existing operating system.
|
|
||||||
Press TAB to edit the disk and partition number to boot.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Boot existing OS
|
|
||||||
COM32 chain.c32
|
|
||||||
APPEND hd0 0
|
|
||||||
|
|
||||||
# https://www.memtest.org/
|
|
||||||
LABEL memtest
|
|
||||||
MENU LABEL Run Memtest86+ (RAM test)
|
|
||||||
LINUX /boot/memtest86+/memtest
|
|
||||||
|
|
||||||
# https://wiki.syslinux.org/wiki/index.php/Hdt_(Hardware_Detection_Tool)
|
|
||||||
LABEL hdt
|
|
||||||
MENU LABEL Hardware Information (HDT)
|
|
||||||
COM32 hdt.c32
|
|
||||||
APPEND modules_alias=hdt/modalias.gz pciids=hdt/pciids.gz
|
|
||||||
|
|
||||||
LABEL reboot
|
|
||||||
TEXT HELP
|
|
||||||
Reboot computer.
|
|
||||||
The computer's firmware must support APM.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Reboot
|
|
||||||
COM32 reboot.c32
|
|
||||||
|
|
||||||
LABEL poweroff
|
|
||||||
TEXT HELP
|
|
||||||
Power off computer.
|
|
||||||
The computer's firmware must support APM.
|
|
||||||
ENDTEXT
|
|
||||||
MENU LABEL Power Off
|
|
||||||
COM32 poweroff.c32
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 44 KiB |
Reference in New Issue
Block a user