File: repo_stats.txt
Content: 2026-04-15 15:45:27 - Today: 0 hits from 0 IPs, Total: 1200818 hits from 14153 IPs, Packages: 663895
2026-04-15 15:53:50 - Today: 0 hits from 0 IPs, Total: 223862 hits from 1001 IPs, Packages: 880149
2026-04-15 15:56:21 - Today: 0 hits from 0 IPs, Total: 1200818 hits from 14153 IPs, Packages: 663895


File: pacman2.conf
Content: #
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives

#
# GENERAL OPTIONS
#
[options]
IgnorePkg = glibc glib2 archiso
#IgnorePkg = virt-install virt-manager qemu-desktop glibc glibc glib2 gnome baobab decibels epiphany evince gnome-backgrounds gnome-calculator gnome-calendar gnome-characters gnome-clocks gnome-connections gnome-console gnome-contacts gnome-control-center gnome-font-viewer gnome-keybindings gnome-logs gnome-maps gnome-mimeapps gnome-music gnome-online-accounts gnome-remote-desktop gnome-session gnome-settings-daemon gnome-shell gnome-software gnome-system-monitor gnome-terminal gnome-text-editor gnome-tour gnome-tweaks gnome-user-docs gnome-weather loupe nautilus orca simple-scan snapshot tecla yelp zenity gnome-shell gnome-online-accounts mutter libgoa adwaita-cursors adwaita-icon-theme at-spi2-core bluez bluez-libs bluez-obex bluez-utils cjs comgr cronie cuda cudnn dconf evolution-data-server gdk-pixbuf2 gdm gjs glibmm glycin gobject-introspection-runtime gsettings-desktop-schemas gsettings-system-schemas gst-devtools-libs gst-editing-services gst-libav gst-plugin-gtk gst-plugin-qml6 gst-plugins-bad gst-plugins-bad-libs gst-plugins-base gst-plugins-base-libs gst-plugins-good gst-plugins-ugly gst-python gstreamer gtk-update-icon-cache gtk4 gtkmm-4.0 gtksourceview5 gvfs gvfs-afc gvfs-dnssd gvfs-goa gvfs-google gvfs-gphoto2 gvfs-mtp gvfs-nfs gvfs-onedrive gvfs-smb gvfs-wsdd hip-runtime-amd imagemagick js140 kwin libadwaita libdisplay-info libedataserverui4 libgdm libgirepository libnautilus-extension libquotient libshumate libsysprof-capture libtool localsearch mdadm mpv ollama opencv openexr openmpi openucx pango python-atspi python-cryptography python-gobject python-pillow python-psutil rocm-core rocm-device-libs rocm-llvm rocminfo rygel sentry-native tinysparql vte-common vte3 vte4 webkit2gtk-4.1 webkitgtk-6.0 xdg-desktop-portal-gnome xfsprogs yelp-xsl glibmm
#IgnorePkg = virt-install virt-manager qemu-desktop glibc
#IgnorePkg = virt-install virt-manager qemu-desktop
#IgnorePkg = virt-install virt-manager
#IgnorePkg = virt-install
# 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 glib2 glib2-debug glib2-docs glib2-devel
#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   = glibc glib2 gnome baobab decibels epiphany evince gnome-backgrounds gnome-calculator gnome-calendar gnome-characters gnome-clocks gnome-connections gnome-console gnome-contacts gnome-control-center gnome-font-viewer gnome-keybindings gnome-logs gnome-maps gnome-mimeapps gnome-music gnome-online-accounts gnome-remote-desktop gnome-session gnome-settings-daemon gnome-shell gnome-software gnome-system-monitor gnome-terminal gnome-text-editor gnome-tour gnome-tweaks gnome-user-docs gnome-weather loupe nautilus orca simple-scan snapshot tecla yelp zenity gnome-shell gnome-online-accounts mutter libgoa adwaita-cursors adwaita-icon-theme at-spi2-core bluez bluez-libs bluez-obex bluez-utils cjs comgr cronie cuda cudnn dconf evolution-data-server gdk-pixbuf2 gdm gjs glibmm glycin gobject-introspection-runtime gsettings-desktop-schemas gsettings-system-schemas gst-devtools-libs gst-editing-services gst-libav gst-plugin-gtk gst-plugin-qml6 gst-plugins-bad gst-plugins-bad-libs gst-plugins-base gst-plugins-base-libs gst-plugins-good gst-plugins-ugly gst-python gstreamer gtk-update-icon-cache gtk4 gtkmm-4.0 gtksourceview5 gvfs gvfs-afc gvfs-dnssd gvfs-goa gvfs-google gvfs-gphoto2 gvfs-mtp gvfs-nfs gvfs-onedrive gvfs-smb gvfs-wsdd hip-runtime-amd imagemagick js140 kwin libadwaita libdisplay-info libedataserverui4 libgdm libgirepository libnautilus-extension libquotient libshumate libsysprof-capture libtool localsearch mdadm mpv ollama opencv openexr openmpi openucx pango python-atspi python-cryptography python-gobject python-pillow python-psutil rocm-core rocm-device-libs rocm-llvm rocminfo rygel sentry-native tinysparql vte-common vte3 vte4 webkit2gtk-4.1 webkitgtk-6.0 xdg-desktop-portal-gnome xfsprogs yelp-xsl glibmm
#IgnoreGroup =

#NoUpgrade   =
#NoExtract   =

# Misc options
#UseSyslog
#Color
#NoProgressBar
CheckSpace
#VerbosePkgLists
ParallelDownloads = 300
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

#AcreetionOS Repositories

#[acreetionOSREPO]
#SigLevel = Never
#Server = https://darrengames.ddns.net:1500/repo/$arch
#Include = /etc/pacman.d/mirrorlist

#[personal]
#SigLevel = Never
#Server = https://darrengames.ddns.net:1500/personal
#SigLevel = Optional TrustAll
#Include = /etc/pacman.d/mirrorlist

#[personal]
#SigLevel = Never
#Server = https://darrengames.ddns.net:1500/personal
#Include = /etc/pacman.d/mirrorlist

[chaotic-aur]
SigLevel = Never
Include = /etc/pacman.d/chaotic-mirrorlist


File: pacman.conf
Content: #
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives

#
# 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   = docker-compose alpm-buildinfo alpm-lint alpm-mtree alpm-pkginfo alpm-soname alpm-srcinfo discord ffmpeg gemini-cli gspell kquickimageeditor libgsf ollama ollama-cuda openbsd-netcat python-alpm virtualbox uv docker iptables-nft cerbot certbot-nginx cuda easyeffect ffmpeg4.4 certbot python-acme libvpx jellyfin-ffmpeg
#IgnoreGroup =

#NoUpgrade   =
#NoExtract   =

# Misc options
#UseSyslog
Color
#NoProgressBar
CheckSpace
#VerbosePkgLists
ParallelDownloads = 5
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

[xlibre]
SigLevel = Never
Server = https://x11libre.net/repo/arch_based/$arch/

# 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
#Include = /etc/pacman.d/acreetion-repo


File: setup_ssl.sh
Content: #!/bin/bash

# AcreetionOS Infrastructure Setup Script
# Target: US Mirror (Spokane)

set -e

echo "--- [1/4] Preparing Directories ---"
sudo mkdir -p /etc/ssl/acreetionos
sudo chmod 755 /etc/ssl/acreetionos

echo "--- [2/4] Cloudflare Origin Certificate ---"
echo "Go to Cloudflare Dashboard -> SSL/TLS -> Origin Server -> Create Certificate"
echo "Copy the 'Origin Certificate' text and paste it below. Press CTRL+D when finished:"
cat | sudo tee /etc/ssl/acreetionos/cert.pem > /dev/null

echo ""
echo "--- [3/4] Cloudflare Private Key ---"
echo "Now copy the 'Private Key' text and paste it below. Press CTRL+D when finished:"
cat | sudo tee /etc/ssl/acreetionos/key.pem > /dev/null
sudo chmod 600 /etc/ssl/acreetionos/key.pem

echo ""
echo "--- [4/4] Updating Nginx Config ---"

# This block overwrites the nginx.conf with the 15-year cert paths and mirror logic
sudo tee /etc/nginx/nginx.conf > /dev/null <<EOF
worker_processes auto;
events { worker_connections 1024; }

http {
    include       mime.types;
    default_type  application/octet-stream;

    # Sustainability Tuning
    types_hash_max_size 4096;
    types_hash_bucket_size 128;

    # Mirror Redirection Logic
    map \$http_accept_language \$mirror_node {
        default       "us.iso.acreetionos.org:8448";
        ~*^de|fr|es   "eu.iso.acreetionos.org:8448";
    }

    server {
        listen 80;
        listen 8448 ssl;
        server_name iso.acreetionos.org us.iso.acreetionos.org packages.acreetionos.org;

        # The 15-Year Cloudflare Certs
        ssl_certificate     /etc/ssl/acreetionos/cert.pem;
        ssl_certificate_key /etc/ssl/acreetionos/key.pem;

        # Port 8448 correction for browser access
        error_page 497 https://\$host:8448\$request_uri;

        root /drive1;

        location / {
            autoindex on;
            charset utf-8;
        }
    }
}
EOF

echo "Verifying Nginx Configuration..."
sudo nginx -t

echo "Restarting Nginx..."
sudo systemctl restart nginx

echo "--- DONE ---"
echo "Mirror is now live with 15-year SSL validity."