(Bash script by Adam Wyatt – Ay1tsMe, 2025)
eos2arch converts an existing EndeavourOS installation into a stock Arch Linux system in place.
It removes all EndeavourOS-specific packages and branding, switches you to the official Arch repositories and keyrings, rebuilds the bootloader and initramfs, and finally renames the filesystem label so your machine now identifies as Arch Linux everywhere.
- Back up absolutely EVERYTHING. The script asks twice-but you are responsible for your data.
- You must run it as root (
sudo ./eos2arch.sh). - The migration is one-way. Rolling back requires restoring from your backup.
- I recommend Timeshift for your backups.
- Do a dry-run first before running the actual script.
- An internet connection.
- EFI system with GRUB bootloader.
- No custom kernals or multiple kernals. (I tried this with zen kernal and it broke
dracut. Probably a workaround to this.) - Script uses
dracutinstead ofmkinitcpio. If you usemkinitcpio, do not run.
# Make it executable
chmod +x eos2arch.sh
# Help command
./eos2arch.sh -h
# Do a dry-run first
sudo ./eos2arch.sh --dry-run
# Run as root
sudo ./eos2arch.sh
- Updates the system
- Uninstalls all EndeavourOS packages
- Removes EndeavourOS repo from
/etc/pacman.conf - Rewrites pacmans mirrorlist with
reflector - De-brands all system files and changes them to Arch. e.g.
/etc/os-release,/etc/issue - Deletes old EndeavourOS boot entry and replaces it with Arch boot entry
- Rebuild initramfs with
dracut - Regenerate GRUB
- Rename root filesystem label
This project is licensed under the MIT License. See the LICENSE file for more information.