Skip to content

Alcor GNU/Linux ALPHA 3 PRE-RELEASED

Pre-release
Pre-release

Choose a tag to compare

@laplace-daemon14 laplace-daemon14 released this 19 Sep 16:10
319c006

Alcor GNU/Linux Alpha 3 Pre-release

Alcor Alpha 3 is an Arch-based installer focused on profile-driven deployment and an isolated Algol tool environment.

Alpha 3 is a testing release. Use a virtual machine or a disposable test system and keep backups of important data.

Alpha 3 Features

  • Calamares-based installation
  • PyQt6 profile-selection frontend
  • Host kernel selection
  • Host display-manager selection
  • Pentest, Daily, Carma, and Expert profiles
  • Expert package profiles: None, Pentest, Daily, and Carma
  • Individual package checkbox selection
  • Algol Distrobox environment on first boot
  • Automatic BlackArch repository setup inside Algol
  • Selected packages installed inside Algol
  • Installed-system initramfs generation
  • Alcor first-boot systemd service
  • Alcor deployment validation script

Installation Architecture

Alpha 3 uses three stages:

1. Live preparation
2. Calamares target installation
3. Installed-system first boot

Live preparation

The preparation script:

  • Enables BlackArch in the Live environment when required.
  • Installs python-pyqt6.
  • Installs Calamares if it is missing.
  • Disables Live os-prober.
  • Installs the Alcor frontend and backend.
  • Installs the Calamares backend module.
  • Installs the single supported desktop launcher.

Calamares target installation

The backend:

  • Installs the selected kernel into the target host.
  • Installs and enables the selected display manager.
  • Removes inherited ArchISO mkinitcpio files.
  • Generates a normal installed-system initramfs.
  • Copies the Alcor selection and Expert configuration.
  • Installs the first-boot service.

First boot

alcor-firstboot.service runs once and:

  1. Creates the algol Distrobox container.
  2. Adds the BlackArch repository inside Algol.
  3. Refreshes package databases.
  4. Installs selected packages inside Algol.
  5. Creates /var/lib/alcor/initialized.

The host kernel is shared with Algol. A kernel is never installed inside the container.

Profiles

AlcorPentest

Security package groups:

  • Reconnaissance
  • Web testing
  • Wireless and network analysis
  • Passwords and exploits
  • OSINT and traffic tools
  • Cloud and container security
  • Forensics and reverse engineering
  • Privacy and social testing

Default kernel: linux

AlcorDaily

Daily-use package groups:

  • Gaming
  • Workspace and media
  • Development
  • Communication and files
  • Terminal utilities
  • Virtualization
  • Monitoring and hardware

Default kernel: linux-zen

AlcorCarma

Combines the Pentest and Daily package groups.

Default kernel: linux-lts

AlcorExpert

Expert mode provides independent controls for:

  • Kernel
  • Container engine
  • Firewall
  • Desktop
  • Filesystem
  • Security profile
  • Bootloader
  • Network profile
  • Display manager

The Expert package profile controls the available package groups:

Package profile Result
None No Algol packages
Pentest Pentest groups
Daily Daily groups
Carma Pentest and Daily groups

Packages remain individually selectable after choosing a package profile.

Default kernel: linux-hardened

Display Manager

Every profile asks for a display manager:

Selection Recommended desktop
LightDM XFCE
SDDM KDE Plasma
GDM GNOME

The selected manager is installed and enabled on the host.

Live Setup

Copy the project:

sudo mkdir -p /home/alcor
sudo cp -a ./alcor-installer /home/alcor/alcor-installer
sudo chown -R alcor:alcor /home/alcor/alcor-installer

Make launchers executable:

chmod +x /home/alcor/alcor-installer/*.sh
chmod +x /home/alcor/alcor-installer/alcor-install

Install the desktop launcher:

mkdir -p /home/alcor/Desktop
cp /home/alcor/alcor-installer/alcor-install.desktop \
   /home/alcor/Desktop/alcor-install.desktop
chmod +x /home/alcor/Desktop/alcor-install.desktop

Run the preparation flow:

/home/alcor/alcor-installer/alcor-install

The launcher opens a terminal, runs install-alcor-calamares.sh, and starts the frontend after successful preparation.

To run the preparation script directly:

cd /home/alcor/alcor-installer
sudo bash install-alcor-calamares.sh

Algol Verification

Check the first-boot service:

systemctl status alcor-firstboot.service

Successful completion:

status=0/SUCCESS
Active: active (exited)

Check the completion marker:

test -f /var/lib/alcor/initialized && echo "Alcor firstboot completed"

Check the container:

distrobox list

Check BlackArch:

distrobox enter algol -- \
    grep -n -A3 -B1 blackarch /etc/pacman.conf

Check selected packages:

distrobox enter algol -- pacman -Q nikto
distrobox enter algol -- pacman -Q gobuster
distrobox enter algol -- pacman -Q vlc
distrobox enter algol -- pacman -Q firefox

Alpha 3 Test Requirements

For reliable testing:

  • Use an x86_64 Arch-based Live system.
  • Use UEFI when possible.
  • Provide at least 4 GB RAM.
  • Provide at least 30 GB of disk space.
  • Provide network access during preparation and first boot.
  • Use a clean VM snapshot for each installation test.

Large Carma and Expert installations can require additional disk space and download time.

Troubleshooting

Frontend does not start

sudo pacman -S --needed --noconfirm python-pyqt6
python3 /home/alcor/alcor-installer/alcor_frontend.py

First boot fails

sudo journalctl -u alcor-firstboot.service -b --no-pager
df -h
distrobox list

BlackArch is not visible

distrobox enter algol -- \
    grep -n -A3 -B1 blackarch /etc/pacman.conf

The package installation must not be considered successful unless the [blackarch] repository is present and the service exits with status 0.

Display manager is wrong

cat /etc/alcor/selection.txt
systemctl list-unit-files | grep -E 'lightdm|sddm|gdm'

Alpha 3 Limitations

  • Alpha 3 is not a production release.
  • Package availability depends on current Arch and BlackArch repositories.
  • First boot requires network access.
  • Large package profiles take time to download.
  • Expert infrastructure settings are stored for deployment configuration, but some settings may require additional desktop-specific integration.
  • The current workflow targets x86_64 Arch-based systems.