From a5ffd15ec52ed9acbaaae3dd855aa9228e2099e7 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sat, 4 Oct 2025 13:17:11 -0400 Subject: [PATCH 01/46] Add builder and assume less defaults --- builder/Dockerfile | 29 +++++++++++++++++++++++++++++ builder/build-trios.sh | 2 ++ config/binary | 16 ++++++++-------- config/bootstrap | 4 ++-- config/common | 6 +++--- 5 files changed, 44 insertions(+), 13 deletions(-) create mode 100644 builder/Dockerfile create mode 100644 builder/build-trios.sh diff --git a/builder/Dockerfile b/builder/Dockerfile new file mode 100644 index 0000000..52ff9bd --- /dev/null +++ b/builder/Dockerfile @@ -0,0 +1,29 @@ +FROM debian:stable + +# Avoid interactive prompts +ENV DEBIAN_FRONTEND=noninteractive + +# Install required build tools +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + live-build \ + git \ + debian-archive-keyring \ + ca-certificates \ + gnupg \ + xz-utils \ + make \ + sudo \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +# Set working directory +WORKDIR /root + +# Clone TriOS repository +RUN git clone https://github.com/TriangularDev/TriOs.git /root/TriOs + +# Set build working directory +WORKDIR /root/TriOs + +# Default command to configure and build the ISO +CMD ["bash", "-c", "lb config --architecture amd64 --archive-areas 'main contrib non-free non-free-firmware' && lb build"] diff --git a/builder/build-trios.sh b/builder/build-trios.sh new file mode 100644 index 0000000..deb3354 --- /dev/null +++ b/builder/build-trios.sh @@ -0,0 +1,2 @@ +docker build -t trios-builder-root . +docker run -it --rm --privileged -v ~/TriOS_Output:/root/TriOs trios-builder-root diff --git a/config/binary b/config/binary index 50b16b4..33e9bb1 100644 --- a/config/binary +++ b/config/binary @@ -46,8 +46,8 @@ LB_ZSYNC="true" LB_BUILD_WITH_CHROOT="true" # $LB_DEBIAN_INSTALLER: set debian-installer -# (Default: live) -LB_DEBIAN_INSTALLER="live" +# (Default: false) +LB_DEBIAN_INSTALLER="false" # $LB_DEBIAN_INSTALLER_DISTRIBUTION: set debian-installer suite # (Default: empty) @@ -78,16 +78,16 @@ LB_HDD_SIZE="10000" LB_ISO_APPLICATION="Debian Live" # $LB_ISO_PREPARER: set iso preparer -# (Default: live-build 3.0~a57-1; http://packages.qa.debian.org/live-build) -LB_ISO_PREPARER="live-build 3.0~a57-1; http://packages.qa.debian.org/live-build" +# (Default: live-build $VERSION; http://packages.qa.debian.org/live-build) +LB_ISO_PREPARER="live-build $VERSION; http://packages.qa.debian.org/live-build" # $LB_ISO_PUBLISHER: set iso publisher # (Default: Debian Live project; http://live.debian.net/; debian-live@lists.debian.org) LB_ISO_PUBLISHER="Debian Live project; http://live.debian.net/; debian-live@lists.debian.org" # $LB_ISO_VOLUME: set iso volume (max 32 chars) -# (Default: Debian trixie 20251004-12:24) -LB_ISO_VOLUME="Debian trixie 20251004-12:24" +# (Default: Debian trixie $(date +%Y%m%d-%H:%M)) +LB_ISO_VOLUME="Debian trixie $(date +%Y%m%d-%H:%M)" # $LB_EXT_BLOCKSIZE: set EXT block size # (Default: unset) @@ -110,8 +110,8 @@ LB_JFFS2_ERASEBLOCK="" LB_MEMTEST="memtest86+" # $LB_WIN32_LOADER: set win32-loader -# (Default: true) -LB_WIN32_LOADER="true" +# (Default: false) +LB_WIN32_LOADER="false" # $LB_NET_ROOT_FILESYSTEM: set netboot filesystem # (Default: nfs) diff --git a/config/bootstrap b/config/bootstrap index 59034cc..ce0ec43 100644 --- a/config/bootstrap +++ b/config/bootstrap @@ -117,8 +117,8 @@ LB_MIRROR_DEBIAN_INSTALLER="http://ftp.debian.org/debian/" LB_ARCHIVES="" # $LB_ARCHIVE_AREAS: select archive areas to use -# (Default: main contrib non-free non-free-firmware) -LB_ARCHIVE_AREAS="main contrib non-free non-free-firmware" +# (Default: main) +LB_ARCHIVE_AREAS="main" # $LB_PARENT_ARCHIVE_AREAS: select archive areas to use # (Default: main) diff --git a/config/common b/config/common index cdba0ec..6f2fd9b 100644 --- a/config/common +++ b/config/common @@ -64,8 +64,8 @@ LB_DEBCONF_NOWARNINGS="yes" LB_DEBCONF_PRIORITY="critical" # $LB_INITRAMFS: set initramfs hook -# (Default: live-boot) -LB_INITRAMFS="live-boot" +# (Default: auto) +LB_INITRAMFS="auto" # $LB_INITRAMFS_COMPRESSION: set initramfs compression # (Default: ) @@ -136,6 +136,6 @@ _QUIET="false" # Internal stuff (FIXME) APT_OPTIONS="--yes" APTITUDE_OPTIONS="--assume-yes" -GZIP_OPTIONS="-6 --rsyncable" +GZIP_OPTIONS="-6 --rsyncable" ISOHYBRID_OPTIONS="" GENISOIMAGE_OPTIONS_EXTRA="" From bf70ae416dddd979419acf7b0071ba0472ac086c Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 13:07:27 -0400 Subject: [PATCH 02/46] Add essential tools --- config/package-lists/core.list.chroot | 7 ++++ config/package-lists/desktop.list.chroot | 4 +++ config/package-lists/drivers.list.chroot | 36 ++++++++++++++++++++ config/package-lists/gaming.list.chroot | 10 ++++++ config/package-lists/programming.list.chroot | 11 ++++++ config/package-lists/qol.list.chroot | 3 ++ 6 files changed, 71 insertions(+) create mode 100644 config/package-lists/core.list.chroot create mode 100644 config/package-lists/desktop.list.chroot create mode 100644 config/package-lists/drivers.list.chroot create mode 100644 config/package-lists/gaming.list.chroot create mode 100644 config/package-lists/programming.list.chroot create mode 100644 config/package-lists/qol.list.chroot diff --git a/config/package-lists/core.list.chroot b/config/package-lists/core.list.chroot new file mode 100644 index 0000000..130a693 --- /dev/null +++ b/config/package-lists/core.list.chroot @@ -0,0 +1,7 @@ +gparted +htop +neofetch +curl +wget +git +appimagelauncher diff --git a/config/package-lists/desktop.list.chroot b/config/package-lists/desktop.list.chroot new file mode 100644 index 0000000..46ad3cb --- /dev/null +++ b/config/package-lists/desktop.list.chroot @@ -0,0 +1,4 @@ +kde-plasma-desktop +plasma-nm +konsole +dolphin diff --git a/config/package-lists/drivers.list.chroot b/config/package-lists/drivers.list.chroot new file mode 100644 index 0000000..0696032 --- /dev/null +++ b/config/package-lists/drivers.list.chroot @@ -0,0 +1,36 @@ +firmware-linux +firmware-linux-nonfree +firmware-realtek +firmware-iwlwifi +firmware-b43-installer + +# Nvidia +nvidia-driver +nvidia-settings +nvidia-smi +nvidia-opencl-icd +nvidia-vulkan-icd + +# Amd +mesa-vulkan-drivers +mesa-utils +mesa-utils-extra +firmware-amd-graphics +libdrm-amdgpu1 +xserver-xorg-video-amdgpu + +# Intel +mesa-vulkan-drivers +intel-media-va-driver-non-free +i965-va-driver +intel-vulkan-icd +firmware-misc-nonfree +xserver-xorg-video-intel + +# Misc tools (I hate Vulkan :[) +vulkan-tools +libvulkan1 +gamemode +mangohud +glxinfo +vulkaninfo diff --git a/config/package-lists/gaming.list.chroot b/config/package-lists/gaming.list.chroot new file mode 100644 index 0000000..92f3fd2 --- /dev/null +++ b/config/package-lists/gaming.list.chroot @@ -0,0 +1,10 @@ +steam +lutris +heroic +wine +winetricks +gamemode +mangohud +corectrl +obs-studio +discord diff --git a/config/package-lists/programming.list.chroot b/config/package-lists/programming.list.chroot new file mode 100644 index 0000000..55451cc --- /dev/null +++ b/config/package-lists/programming.list.chroot @@ -0,0 +1,11 @@ +code +geany +nodejs +npm +python3 +python3-pip +build-essential +cmake +openjdk-17-jdk +mono-complete +dotnet-sdk-8.0 diff --git a/config/package-lists/qol.list.chroot b/config/package-lists/qol.list.chroot new file mode 100644 index 0000000..2e9f2ac --- /dev/null +++ b/config/package-lists/qol.list.chroot @@ -0,0 +1,3 @@ +timeshift +plank +redshift From caeed07c9480d23b174ff65c29adbb9caad78f39 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 13:56:00 -0400 Subject: [PATCH 03/46] Add initramfs --- builder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 52ff9bd..f7eea2a 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -26,4 +26,4 @@ RUN git clone https://github.com/TriangularDev/TriOs.git /root/TriOs WORKDIR /root/TriOs # Default command to configure and build the ISO -CMD ["bash", "-c", "lb config --architecture amd64 --archive-areas 'main contrib non-free non-free-firmware' && lb build"] +CMD ["bash", "-c", "lb config --architecture amd64 --archive-areas 'main contrib non-free non-free-firmware --initramfs live-boot' && lb build"] From d1c288e77a02f6dbfb06c5b4864df8742cd10770 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:01:34 -0400 Subject: [PATCH 04/46] Update dockerfile (clone on runtime) --- builder/Dockerfile | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 52ff9bd..1ad7bad 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -19,11 +19,16 @@ RUN apt-get update && \ # Set working directory WORKDIR /root -# Clone TriOS repository -RUN git clone https://github.com/TriangularDev/TriOs.git /root/TriOs - -# Set build working directory -WORKDIR /root/TriOs - -# Default command to configure and build the ISO -CMD ["bash", "-c", "lb config --architecture amd64 --archive-areas 'main contrib non-free non-free-firmware' && lb build"] +# Clone dev branch and build at runtime +CMD bash -c "\ + if [ ! -d /root/TriOs ]; then \ + echo 'Cloning TriOS (dev branch)...'; \ + git clone --branch dev https://github.com/TriangularDev/TriOs.git /root/TriOs; \ + fi && \ + cd /root/TriOs && \ + lb config \ + --architecture amd64 \ + --archive-areas 'main contrib non-free non-free-firmware' \ + --initramfs live-boot \ + --debian-installer none && \ + lb build" From 93958a7674569b8ed49cbb1c5d664a78bf3cf482 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:03:47 -0400 Subject: [PATCH 05/46] Remove stupid residual data --- builder/Dockerfile | 3 --- 1 file changed, 3 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index bfd9d7d..9bb0261 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -19,7 +19,6 @@ RUN apt-get update && \ # Set working directory WORKDIR /root -<<<<<<< HEAD # Clone dev branch and build at runtime CMD bash -c "\ if [ ! -d /root/TriOs ]; then \ @@ -33,7 +32,6 @@ CMD bash -c "\ --initramfs live-boot \ --debian-installer none && \ lb build" -======= # Clone TriOS repository RUN git clone https://github.com/TriangularDev/TriOs.git /root/TriOs @@ -42,4 +40,3 @@ WORKDIR /root/TriOs # Default command to configure and build the ISO CMD ["bash", "-c", "lb config --architecture amd64 --archive-areas 'main contrib non-free non-free-firmware --initramfs live-boot' && lb build"] ->>>>>>> caeed07c9480d23b174ff65c29adbb9caad78f39 From 2b8daab3f7168552e7151eb91e41d31719779e08 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:19:07 -0400 Subject: [PATCH 06/46] FUCK IT JUST HAVE AI REDO MY SHITTY CODE --- builder/Dockerfile | 70 ++++++++++++++++++++++------------------------ 1 file changed, 33 insertions(+), 37 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 9bb0261..699cf08 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -1,42 +1,38 @@ +# Start from a base Debian image FROM debian:stable -# Avoid interactive prompts +# Set noninteractive mode for apt to avoid user prompts ENV DEBIAN_FRONTEND=noninteractive -# Install required build tools +# Install required build tools and dependencies RUN apt-get update && \ - apt-get install -y --no-install-recommends \ - live-build \ - git \ - debian-archive-keyring \ - ca-certificates \ - gnupg \ - xz-utils \ - make \ - sudo \ - && apt-get clean && rm -rf /var/lib/apt/lists/* - -# Set working directory -WORKDIR /root - -# Clone dev branch and build at runtime -CMD bash -c "\ - if [ ! -d /root/TriOs ]; then \ - echo 'Cloning TriOS (dev branch)...'; \ - git clone --branch dev https://github.com/TriangularDev/TriOs.git /root/TriOs; \ - fi && \ - cd /root/TriOs && \ - lb config \ - --architecture amd64 \ - --archive-areas 'main contrib non-free non-free-firmware' \ - --initramfs live-boot \ - --debian-installer none && \ - lb build" -# Clone TriOS repository -RUN git clone https://github.com/TriangularDev/TriOs.git /root/TriOs - -# Set build working directory -WORKDIR /root/TriOs - -# Default command to configure and build the ISO -CMD ["bash", "-c", "lb config --architecture amd64 --archive-areas 'main contrib non-free non-free-firmware --initramfs live-boot' && lb build"] + apt-get install -y \ + live-build \ + git \ + debian-archive-keyring \ + sudo \ + ca-certificates \ + gnupg && \ + rm -rf /var/lib/apt/lists/* + +# Create a working directory +WORKDIR /build + +# Clone the TriOS repository +RUN git clone https://github.com/TriangularDev/TriOs.git + +# Set working directory inside the cloned repo +WORKDIR /build/TriOs + +# Configure build parameters (can be adjusted if needed) +RUN lb config --architecture amd64 \ + && lb config --archive-areas "main contrib non-free non-free-firmware" + +# Build the ISO image +# Note: Using `sudo` here is not needed because we're already root in Docker. +RUN lb build + +# Optional: Set default working directory back to repo root +WORKDIR /build/TriOs + +# The resulting ISO file will typically be in /build/TriOs/live-image-amd64.hybrid.iso From ee42e0006ba02e8b35c07df85e25396ec7aecba4 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:23:41 -0400 Subject: [PATCH 07/46] And also add the initramfs (cuz systems kinda need that) --- README.md | 1 + builder/Dockerfile | 1 + 2 files changed, 2 insertions(+) diff --git a/README.md b/README.md index d4a75ad..fd8aabf 100644 --- a/README.md +++ b/README.md @@ -68,6 +68,7 @@ cd TriOs ``` lb config --architecture amd64 # or i386/arm64 lb config --archive-areas "main contrib non-free non-free-firmware" +lb config --initramfs live-boot ``` ### Build the ISO diff --git a/builder/Dockerfile b/builder/Dockerfile index 699cf08..a584f41 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -27,6 +27,7 @@ WORKDIR /build/TriOs # Configure build parameters (can be adjusted if needed) RUN lb config --architecture amd64 \ && lb config --archive-areas "main contrib non-free non-free-firmware" + && lb config --initramfs live-boot # Build the ISO image # Note: Using `sudo` here is not needed because we're already root in Docker. From ece803a57af728c0d1347e34caab33a20c35f460 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:28:30 -0400 Subject: [PATCH 08/46] Disable cache :) --- builder/build-trios.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builder/build-trios.sh b/builder/build-trios.sh index deb3354..6a03ef1 100644 --- a/builder/build-trios.sh +++ b/builder/build-trios.sh @@ -1,2 +1,2 @@ -docker build -t trios-builder-root . +docker build --no-cache -t trios-builder-root . docker run -it --rm --privileged -v ~/TriOS_Output:/root/TriOs trios-builder-root From 903e7a4ba3eeab359dcb47c94c25ad0f78830537 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:29:51 -0400 Subject: [PATCH 09/46] Fix docker --- builder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index a584f41..0c45470 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -26,7 +26,7 @@ WORKDIR /build/TriOs # Configure build parameters (can be adjusted if needed) RUN lb config --architecture amd64 \ - && lb config --archive-areas "main contrib non-free non-free-firmware" + && lb config --archive-areas "main contrib non-free non-free-firmware" \ && lb config --initramfs live-boot # Build the ISO image From 91554cf9c6a100a8a3d40ea7c0e51e53ffea778e Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:33:22 -0400 Subject: [PATCH 10/46] Go go gadget cache clearer --- builder/build-trios.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/builder/build-trios.sh b/builder/build-trios.sh index 6a03ef1..7ec26d5 100644 --- a/builder/build-trios.sh +++ b/builder/build-trios.sh @@ -1,2 +1,3 @@ docker build --no-cache -t trios-builder-root . docker run -it --rm --privileged -v ~/TriOS_Output:/root/TriOs trios-builder-root +docker rmi trios-builder-root From 72e164c212890cb7c0860b0fd9572bd638a77b67 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:34:54 -0400 Subject: [PATCH 11/46] Make initramfs come first??? --- builder/Dockerfile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 0c45470..f249337 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -25,9 +25,10 @@ RUN git clone https://github.com/TriangularDev/TriOs.git WORKDIR /build/TriOs # Configure build parameters (can be adjusted if needed) -RUN lb config --architecture amd64 \ - && lb config --archive-areas "main contrib non-free non-free-firmware" \ - && lb config --initramfs live-boot +RUN lb config --initramfs live-boot \ + && lb config --architecture amd64 \ + && lb config --archive-areas "main contrib non-free non-free-firmware" + # Build the ISO image # Note: Using `sudo` here is not needed because we're already root in Docker. From 72c976c9a6278fce9a3f33c54b08bf22af744d04 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:40:45 -0400 Subject: [PATCH 12/46] Make the build OUTSIDE the container --- builder/Dockerfile | 17 +++++++++++------ builder/build-trios.sh | 2 +- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index f249337..eebb72b 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -27,14 +27,19 @@ WORKDIR /build/TriOs # Configure build parameters (can be adjusted if needed) RUN lb config --initramfs live-boot \ && lb config --architecture amd64 \ - && lb config --archive-areas "main contrib non-free non-free-firmware" - + && lb config --archive-areas "main contrib non-free non-free-firmware" # Build the ISO image -# Note: Using `sudo` here is not needed because we're already root in Docker. RUN lb build -# Optional: Set default working directory back to repo root -WORKDIR /build/TriOs +# Create an output directory inside container for the host mount +RUN mkdir -p /output + +# Copy the resulting ISO to the output directory +RUN mv /build/TriOs/live-image-amd64.hybrid.iso /output/TriOS.iso + +# Declare /output as a volume so it can be mounted +VOLUME ["/output"] -# The resulting ISO file will typically be in /build/TriOs/live-image-amd64.hybrid.iso +# Set default workdir +WORKDIR /output diff --git a/builder/build-trios.sh b/builder/build-trios.sh index 7ec26d5..30f6c19 100644 --- a/builder/build-trios.sh +++ b/builder/build-trios.sh @@ -1,3 +1,3 @@ docker build --no-cache -t trios-builder-root . -docker run -it --rm --privileged -v ~/TriOS_Output:/root/TriOs trios-builder-root +docker run -it --rm --privileged -v ~/TriOS_Output:/output trios-builder-root docker rmi trios-builder-root From 0dcfc04f1a1ffe89352aca5885e9d32ffb50e38d Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:47:13 -0400 Subject: [PATCH 13/46] Actually make the runner in the run phase --- builder/Dockerfile | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index eebb72b..14ffe6d 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -1,10 +1,8 @@ # Start from a base Debian image FROM debian:stable -# Set noninteractive mode for apt to avoid user prompts ENV DEBIAN_FRONTEND=noninteractive -# Install required build tools and dependencies RUN apt-get update && \ apt-get install -y \ live-build \ @@ -15,31 +13,21 @@ RUN apt-get update && \ gnupg && \ rm -rf /var/lib/apt/lists/* -# Create a working directory WORKDIR /build -# Clone the TriOS repository +# Clone TriOS RUN git clone https://github.com/TriangularDev/TriOs.git -# Set working directory inside the cloned repo WORKDIR /build/TriOs -# Configure build parameters (can be adjusted if needed) +# Pre-configure build parameters RUN lb config --initramfs live-boot \ && lb config --architecture amd64 \ && lb config --archive-areas "main contrib non-free non-free-firmware" -# Build the ISO image -RUN lb build - -# Create an output directory inside container for the host mount +# Prepare output mount point RUN mkdir -p /output - -# Copy the resulting ISO to the output directory -RUN mv /build/TriOs/live-image-amd64.hybrid.iso /output/TriOS.iso - -# Declare /output as a volume so it can be mounted VOLUME ["/output"] -# Set default workdir -WORKDIR /output +# Default command: build ISO and copy it to /output +CMD lb build && cp live-image-amd64.hybrid.iso /output/TriOS.iso From f7e6c08b9f90adfccf0f7a932799977ab8c4f767 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 14:48:35 -0400 Subject: [PATCH 14/46] ooo preventitive measures ooo --- builder/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 14ffe6d..376043b 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -30,4 +30,4 @@ RUN mkdir -p /output VOLUME ["/output"] # Default command: build ISO and copy it to /output -CMD lb build && cp live-image-amd64.hybrid.iso /output/TriOS.iso +CMD git pull && lb build && cp live-image-amd64.hybrid.iso /output/TriOS.iso From e4ffa01edcc013dccc1ead00c2f010f2aa5a77b4 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 15:00:07 -0400 Subject: [PATCH 15/46] Add full debian repo list to docker --- builder/Dockerfile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 376043b..d4ccd1c 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -3,6 +3,13 @@ FROM debian:stable ENV DEBIAN_FRONTEND=noninteractive +# --- Add full Debian repositories --- +RUN echo "deb http://deb.debian.org/debian stable main contrib non-free non-free-firmware" > /etc/apt/sources.list && \ + echo "deb http://deb.debian.org/debian stable-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ + echo "deb http://deb.debian.org/debian-security stable-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ + echo "deb http://deb.debian.org/debian stable-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list + +# --- Install required packages --- RUN apt-get update && \ apt-get install -y \ live-build \ @@ -10,7 +17,8 @@ RUN apt-get update && \ debian-archive-keyring \ sudo \ ca-certificates \ - gnupg && \ + gnupg \ + apt-transport-https && \ rm -rf /var/lib/apt/lists/* WORKDIR /build From 4a3daf3922b653f7590428ba4159c383cb7880d0 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 15:07:55 -0400 Subject: [PATCH 16/46] God I hate docker --- builder/Dockerfile | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index d4ccd1c..872c74d 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -1,13 +1,13 @@ -# Start from a base Debian image -FROM debian:stable +# Start from Debian Trixie explicitly +FROM debian:trixie ENV DEBIAN_FRONTEND=noninteractive -# --- Add full Debian repositories --- -RUN echo "deb http://deb.debian.org/debian stable main contrib non-free non-free-firmware" > /etc/apt/sources.list && \ - echo "deb http://deb.debian.org/debian stable-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ - echo "deb http://deb.debian.org/debian-security stable-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ - echo "deb http://deb.debian.org/debian stable-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list +# --- Add full Debian repositories for Trixie --- +RUN echo "deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware" > /etc/apt/sources.list && \ + echo "deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ + echo "deb http://deb.debian.org/debian-security trixie-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ + echo "deb http://deb.debian.org/debian trixie-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list # --- Install required packages --- RUN apt-get update && \ @@ -18,8 +18,7 @@ RUN apt-get update && \ sudo \ ca-certificates \ gnupg \ - apt-transport-https && \ - rm -rf /var/lib/apt/lists/* + apt-transport-https WORKDIR /build @@ -28,10 +27,11 @@ RUN git clone https://github.com/TriangularDev/TriOs.git WORKDIR /build/TriOs -# Pre-configure build parameters -RUN lb config --initramfs live-boot \ - && lb config --architecture amd64 \ - && lb config --archive-areas "main contrib non-free non-free-firmware" +# Pre-configure build parameters for trixie +RUN lb config --distribution trixie \ + --initramfs live-boot \ + --architecture amd64 \ + --archive-areas "main contrib non-free non-free-firmware" # Prepare output mount point RUN mkdir -p /output From 612839f81ce5f60a2d6e596620c2dce9f9cc762d Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 15:17:15 -0400 Subject: [PATCH 17/46] docker fix? --- builder/Dockerfile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index 872c74d..bc83bb1 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -9,6 +9,13 @@ RUN echo "deb http://deb.debian.org/debian trixie main contrib non-free non-free echo "deb http://deb.debian.org/debian-security trixie-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ echo "deb http://deb.debian.org/debian trixie-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list +# Ensure the chroot has correct apt sources +RUN mkdir -p config/archives && \ + echo "deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware" > config/archives/trixie.list.chroot && \ + echo "deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware" >> config/archives/trixie.list.chroot && \ + echo "deb http://deb.debian.org/debian-security trixie-security main contrib non-free non-free-firmware" >> config/archives/trixie.list.chroot && \ + echo "deb http://deb.debian.org/debian trixie-backports main contrib non-free non-free-firmware" >> config/archives/trixie.list.chroot + # --- Install required packages --- RUN apt-get update && \ apt-get install -y \ @@ -31,7 +38,8 @@ WORKDIR /build/TriOs RUN lb config --distribution trixie \ --initramfs live-boot \ --architecture amd64 \ - --archive-areas "main contrib non-free non-free-firmware" + --archive-areas "main contrib non-free non-free-firmware" \ + --apt-recommends true # Prepare output mount point RUN mkdir -p /output From b99b2d7aef1e6f64b4b4f97a1fc3ca87ddf1be58 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 15:23:13 -0400 Subject: [PATCH 18/46] Update Dockerfile --- builder/Dockerfile | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index bc83bb1..958f1bc 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -8,14 +8,7 @@ RUN echo "deb http://deb.debian.org/debian trixie main contrib non-free non-free echo "deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ echo "deb http://deb.debian.org/debian-security trixie-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ echo "deb http://deb.debian.org/debian trixie-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list - -# Ensure the chroot has correct apt sources -RUN mkdir -p config/archives && \ - echo "deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware" > config/archives/trixie.list.chroot && \ - echo "deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware" >> config/archives/trixie.list.chroot && \ - echo "deb http://deb.debian.org/debian-security trixie-security main contrib non-free non-free-firmware" >> config/archives/trixie.list.chroot && \ - echo "deb http://deb.debian.org/debian trixie-backports main contrib non-free non-free-firmware" >> config/archives/trixie.list.chroot - + # --- Install required packages --- RUN apt-get update && \ apt-get install -y \ From b363166ecb6c44b793c017a1d7c8d401845de0fe Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 15:28:28 -0400 Subject: [PATCH 19/46] Add 32-bit support --- config/hooks/normal/001-multiarch.chroot | 4 ++++ 1 file changed, 4 insertions(+) create mode 100755 config/hooks/normal/001-multiarch.chroot diff --git a/config/hooks/normal/001-multiarch.chroot b/config/hooks/normal/001-multiarch.chroot new file mode 100755 index 0000000..670acf2 --- /dev/null +++ b/config/hooks/normal/001-multiarch.chroot @@ -0,0 +1,4 @@ +#!/bin/sh +set -e +dpkg --add-architecture i386 +apt-get update From 73447aec98f5eb4ca386ae06cb90ff1feb0d98da Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Wed, 8 Oct 2025 15:36:43 -0400 Subject: [PATCH 20/46] Add backports --- config/binary | 8 ++++---- config/chroot | 4 ++-- config/common | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/config/binary b/config/binary index 33e9bb1..9ada3e6 100644 --- a/config/binary +++ b/config/binary @@ -78,16 +78,16 @@ LB_HDD_SIZE="10000" LB_ISO_APPLICATION="Debian Live" # $LB_ISO_PREPARER: set iso preparer -# (Default: live-build $VERSION; http://packages.qa.debian.org/live-build) -LB_ISO_PREPARER="live-build $VERSION; http://packages.qa.debian.org/live-build" +# (Default: live-build 3.0~a57-1; http://packages.qa.debian.org/live-build) +LB_ISO_PREPARER="live-build 3.0~a57-1; http://packages.qa.debian.org/live-build" # $LB_ISO_PUBLISHER: set iso publisher # (Default: Debian Live project; http://live.debian.net/; debian-live@lists.debian.org) LB_ISO_PUBLISHER="Debian Live project; http://live.debian.net/; debian-live@lists.debian.org" # $LB_ISO_VOLUME: set iso volume (max 32 chars) -# (Default: Debian trixie $(date +%Y%m%d-%H:%M)) -LB_ISO_VOLUME="Debian trixie $(date +%Y%m%d-%H:%M)" +# (Default: Debian trixie 20251008-15:36) +LB_ISO_VOLUME="Debian trixie 20251008-15:36" # $LB_EXT_BLOCKSIZE: set EXT block size # (Default: unset) diff --git a/config/chroot b/config/chroot index c26d43a..130d190 100644 --- a/config/chroot +++ b/config/chroot @@ -41,5 +41,5 @@ LB_SECURITY="true" LB_VOLATILE="true" # $LB_BACKPORTS: enable backports updates -# (Default: false) -LB_BACKPORTS="false" +# (Default: true) +LB_BACKPORTS="true" diff --git a/config/common b/config/common index 6f2fd9b..cdba0ec 100644 --- a/config/common +++ b/config/common @@ -64,8 +64,8 @@ LB_DEBCONF_NOWARNINGS="yes" LB_DEBCONF_PRIORITY="critical" # $LB_INITRAMFS: set initramfs hook -# (Default: auto) -LB_INITRAMFS="auto" +# (Default: live-boot) +LB_INITRAMFS="live-boot" # $LB_INITRAMFS_COMPRESSION: set initramfs compression # (Default: ) @@ -136,6 +136,6 @@ _QUIET="false" # Internal stuff (FIXME) APT_OPTIONS="--yes" APTITUDE_OPTIONS="--assume-yes" -GZIP_OPTIONS="-6 --rsyncable" +GZIP_OPTIONS="-6 --rsyncable" ISOHYBRID_OPTIONS="" GENISOIMAGE_OPTIONS_EXTRA="" From 6159a97636eb84cf4a6f26132f28ae2856ba63a3 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:11:46 -0400 Subject: [PATCH 21/46] Scratch that - I have an idea (Scary) --- LICENSE | 0 README.md | 6 +- {.build => Trixie/.build}/config | 0 {config => Trixie/config}/binary | 8 +-- {config => Trixie/config}/bootstrap | 0 {config => Trixie/config}/chroot | 4 +- {config => Trixie/config}/common | 6 +- .../config/package-lists/python.list.chroot | 1 + {config => Trixie/config}/source | 0 builder/Dockerfile | 63 ++++++++----------- builder/build-trios.sh | 8 ++- config/hooks/normal/001-multiarch.chroot | 4 -- config/package-lists/core.list.chroot | 7 --- config/package-lists/desktop.list.chroot | 4 -- config/package-lists/drivers.list.chroot | 36 ----------- config/package-lists/gaming.list.chroot | 10 --- config/package-lists/programming.list.chroot | 11 ---- config/package-lists/qol.list.chroot | 3 - 18 files changed, 46 insertions(+), 125 deletions(-) mode change 100644 => 100755 LICENSE mode change 100644 => 100755 README.md rename {.build => Trixie/.build}/config (100%) rename {config => Trixie/config}/binary (94%) mode change 100644 => 100755 rename {config => Trixie/config}/bootstrap (100%) mode change 100644 => 100755 rename {config => Trixie/config}/chroot (96%) mode change 100644 => 100755 rename {config => Trixie/config}/common (97%) mode change 100644 => 100755 create mode 100644 Trixie/config/package-lists/python.list.chroot rename {config => Trixie/config}/source (100%) mode change 100644 => 100755 mode change 100644 => 100755 builder/Dockerfile mode change 100644 => 100755 builder/build-trios.sh delete mode 100755 config/hooks/normal/001-multiarch.chroot delete mode 100644 config/package-lists/core.list.chroot delete mode 100644 config/package-lists/desktop.list.chroot delete mode 100644 config/package-lists/drivers.list.chroot delete mode 100644 config/package-lists/gaming.list.chroot delete mode 100644 config/package-lists/programming.list.chroot delete mode 100644 config/package-lists/qol.list.chroot diff --git a/LICENSE b/LICENSE old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 index fd8aabf..7a0bb60 --- a/README.md +++ b/README.md @@ -36,6 +36,8 @@ Please note: ## Downloads TriOs was made for amd64. Future builds may also be available for i386 (32 bit) and arm64. TriOs hasn't been tested on arm64 or i386, but if you wish to try it anyway, you can build it yourself. +You MUST have a working internet connection when installing TriOs. + Recommended builds: - [Latest Release (V.1.0)](add-url-here-later-kthxbai) @@ -60,7 +62,7 @@ sudo apt install live-build git debian-archive-keyring ``` git clone https://github.com/TriangularDev/TriOs/ -cd TriOs +cd TriOs/Trixie ``` ### Configure parameters @@ -69,6 +71,8 @@ cd TriOs lb config --architecture amd64 # or i386/arm64 lb config --archive-areas "main contrib non-free non-free-firmware" lb config --initramfs live-boot +lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" +lb config --packages-lists xfce ``` ### Build the ISO diff --git a/.build/config b/Trixie/.build/config similarity index 100% rename from .build/config rename to Trixie/.build/config diff --git a/config/binary b/Trixie/config/binary old mode 100644 new mode 100755 similarity index 94% rename from config/binary rename to Trixie/config/binary index 9ada3e6..33e9bb1 --- a/config/binary +++ b/Trixie/config/binary @@ -78,16 +78,16 @@ LB_HDD_SIZE="10000" LB_ISO_APPLICATION="Debian Live" # $LB_ISO_PREPARER: set iso preparer -# (Default: live-build 3.0~a57-1; http://packages.qa.debian.org/live-build) -LB_ISO_PREPARER="live-build 3.0~a57-1; http://packages.qa.debian.org/live-build" +# (Default: live-build $VERSION; http://packages.qa.debian.org/live-build) +LB_ISO_PREPARER="live-build $VERSION; http://packages.qa.debian.org/live-build" # $LB_ISO_PUBLISHER: set iso publisher # (Default: Debian Live project; http://live.debian.net/; debian-live@lists.debian.org) LB_ISO_PUBLISHER="Debian Live project; http://live.debian.net/; debian-live@lists.debian.org" # $LB_ISO_VOLUME: set iso volume (max 32 chars) -# (Default: Debian trixie 20251008-15:36) -LB_ISO_VOLUME="Debian trixie 20251008-15:36" +# (Default: Debian trixie $(date +%Y%m%d-%H:%M)) +LB_ISO_VOLUME="Debian trixie $(date +%Y%m%d-%H:%M)" # $LB_EXT_BLOCKSIZE: set EXT block size # (Default: unset) diff --git a/config/bootstrap b/Trixie/config/bootstrap old mode 100644 new mode 100755 similarity index 100% rename from config/bootstrap rename to Trixie/config/bootstrap diff --git a/config/chroot b/Trixie/config/chroot old mode 100644 new mode 100755 similarity index 96% rename from config/chroot rename to Trixie/config/chroot index 130d190..c26d43a --- a/config/chroot +++ b/Trixie/config/chroot @@ -41,5 +41,5 @@ LB_SECURITY="true" LB_VOLATILE="true" # $LB_BACKPORTS: enable backports updates -# (Default: true) -LB_BACKPORTS="true" +# (Default: false) +LB_BACKPORTS="false" diff --git a/config/common b/Trixie/config/common old mode 100644 new mode 100755 similarity index 97% rename from config/common rename to Trixie/config/common index cdba0ec..6f2fd9b --- a/config/common +++ b/Trixie/config/common @@ -64,8 +64,8 @@ LB_DEBCONF_NOWARNINGS="yes" LB_DEBCONF_PRIORITY="critical" # $LB_INITRAMFS: set initramfs hook -# (Default: live-boot) -LB_INITRAMFS="live-boot" +# (Default: auto) +LB_INITRAMFS="auto" # $LB_INITRAMFS_COMPRESSION: set initramfs compression # (Default: ) @@ -136,6 +136,6 @@ _QUIET="false" # Internal stuff (FIXME) APT_OPTIONS="--yes" APTITUDE_OPTIONS="--assume-yes" -GZIP_OPTIONS="-6 --rsyncable" +GZIP_OPTIONS="-6 --rsyncable" ISOHYBRID_OPTIONS="" GENISOIMAGE_OPTIONS_EXTRA="" diff --git a/Trixie/config/package-lists/python.list.chroot b/Trixie/config/package-lists/python.list.chroot new file mode 100644 index 0000000..b6f3090 --- /dev/null +++ b/Trixie/config/package-lists/python.list.chroot @@ -0,0 +1 @@ +python3-full diff --git a/config/source b/Trixie/config/source old mode 100644 new mode 100755 similarity index 100% rename from config/source rename to Trixie/config/source diff --git a/builder/Dockerfile b/builder/Dockerfile old mode 100644 new mode 100755 index 958f1bc..fc5af50 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -1,42 +1,31 @@ -# Start from Debian Trixie explicitly +# Use Debian Trixie as the base image FROM debian:trixie -ENV DEBIAN_FRONTEND=noninteractive - -# --- Add full Debian repositories for Trixie --- -RUN echo "deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware" > /etc/apt/sources.list && \ - echo "deb http://deb.debian.org/debian trixie-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ - echo "deb http://deb.debian.org/debian-security trixie-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \ - echo "deb http://deb.debian.org/debian trixie-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list - -# --- Install required packages --- -RUN apt-get update && \ - apt-get install -y \ - live-build \ - git \ - debian-archive-keyring \ - sudo \ - ca-certificates \ - gnupg \ - apt-transport-https - -WORKDIR /build +# Run as root +USER root -# Clone TriOS -RUN git clone https://github.com/TriangularDev/TriOs.git - -WORKDIR /build/TriOs - -# Pre-configure build parameters for trixie -RUN lb config --distribution trixie \ - --initramfs live-boot \ - --architecture amd64 \ - --archive-areas "main contrib non-free non-free-firmware" \ - --apt-recommends true +# Prevent interactive prompts +ENV DEBIAN_FRONTEND=noninteractive -# Prepare output mount point -RUN mkdir -p /output -VOLUME ["/output"] +# Update system and install dependencies +RUN apt update && apt install -y \ + live-build \ + git \ + debian-archive-keyring \ + sudo \ + && rm -rf /var/lib/apt/lists/* + +# Set working directory +WORKDIR /TriOs + +# Default command: configure and build TriOS ISO, then copy to output +CMD lb config --architecture amd64 && \ + lb config --archive-areas "main contrib non-free non-free-firmware" && \ + lb config --initramfs live-boot && \ + lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" && \ + lb config --packages-lists xfce && \ + lb build && \ + mkdir -p /TriOs_Output && \ + cp -r ./live-image* /TriOs_Output/ && \ + echo "✅ TriOS ISO build complete. Files copied to /TriOs_Output." -# Default command: build ISO and copy it to /output -CMD git pull && lb build && cp live-image-amd64.hybrid.iso /output/TriOS.iso diff --git a/builder/build-trios.sh b/builder/build-trios.sh old mode 100644 new mode 100755 index 30f6c19..4833682 --- a/builder/build-trios.sh +++ b/builder/build-trios.sh @@ -1,3 +1,5 @@ -docker build --no-cache -t trios-builder-root . -docker run -it --rm --privileged -v ~/TriOS_Output:/output trios-builder-root -docker rmi trios-builder-root +docker build --no-cache -t trios-builder . +docker run -it \ + -v ~/TriOs/Trixie:/TriOs \ + -v ~/TriOs_Output:/TriOs_Output \ + trios-builder diff --git a/config/hooks/normal/001-multiarch.chroot b/config/hooks/normal/001-multiarch.chroot deleted file mode 100755 index 670acf2..0000000 --- a/config/hooks/normal/001-multiarch.chroot +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -set -e -dpkg --add-architecture i386 -apt-get update diff --git a/config/package-lists/core.list.chroot b/config/package-lists/core.list.chroot deleted file mode 100644 index 130a693..0000000 --- a/config/package-lists/core.list.chroot +++ /dev/null @@ -1,7 +0,0 @@ -gparted -htop -neofetch -curl -wget -git -appimagelauncher diff --git a/config/package-lists/desktop.list.chroot b/config/package-lists/desktop.list.chroot deleted file mode 100644 index 46ad3cb..0000000 --- a/config/package-lists/desktop.list.chroot +++ /dev/null @@ -1,4 +0,0 @@ -kde-plasma-desktop -plasma-nm -konsole -dolphin diff --git a/config/package-lists/drivers.list.chroot b/config/package-lists/drivers.list.chroot deleted file mode 100644 index 0696032..0000000 --- a/config/package-lists/drivers.list.chroot +++ /dev/null @@ -1,36 +0,0 @@ -firmware-linux -firmware-linux-nonfree -firmware-realtek -firmware-iwlwifi -firmware-b43-installer - -# Nvidia -nvidia-driver -nvidia-settings -nvidia-smi -nvidia-opencl-icd -nvidia-vulkan-icd - -# Amd -mesa-vulkan-drivers -mesa-utils -mesa-utils-extra -firmware-amd-graphics -libdrm-amdgpu1 -xserver-xorg-video-amdgpu - -# Intel -mesa-vulkan-drivers -intel-media-va-driver-non-free -i965-va-driver -intel-vulkan-icd -firmware-misc-nonfree -xserver-xorg-video-intel - -# Misc tools (I hate Vulkan :[) -vulkan-tools -libvulkan1 -gamemode -mangohud -glxinfo -vulkaninfo diff --git a/config/package-lists/gaming.list.chroot b/config/package-lists/gaming.list.chroot deleted file mode 100644 index 92f3fd2..0000000 --- a/config/package-lists/gaming.list.chroot +++ /dev/null @@ -1,10 +0,0 @@ -steam -lutris -heroic -wine -winetricks -gamemode -mangohud -corectrl -obs-studio -discord diff --git a/config/package-lists/programming.list.chroot b/config/package-lists/programming.list.chroot deleted file mode 100644 index 55451cc..0000000 --- a/config/package-lists/programming.list.chroot +++ /dev/null @@ -1,11 +0,0 @@ -code -geany -nodejs -npm -python3 -python3-pip -build-essential -cmake -openjdk-17-jdk -mono-complete -dotnet-sdk-8.0 diff --git a/config/package-lists/qol.list.chroot b/config/package-lists/qol.list.chroot deleted file mode 100644 index 2e9f2ac..0000000 --- a/config/package-lists/qol.list.chroot +++ /dev/null @@ -1,3 +0,0 @@ -timeshift -plank -redshift From 3d8de3b574d65c42a4ee9601add88952553d1301 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:21:09 -0400 Subject: [PATCH 22/46] Change order since lb is stupid --- README.md | 4 ++-- builder/Dockerfile | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7a0bb60..e23c05a 100755 --- a/README.md +++ b/README.md @@ -68,10 +68,10 @@ cd TriOs/Trixie ### Configure parameters ``` -lb config --architecture amd64 # or i386/arm64 -lb config --archive-areas "main contrib non-free non-free-firmware" lb config --initramfs live-boot +lb config --archive-areas "main contrib non-free non-free-firmware" lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" +lb config --architecture amd64 # or i386/arm64 lb config --packages-lists xfce ``` diff --git a/builder/Dockerfile b/builder/Dockerfile index fc5af50..3f63727 100755 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -19,11 +19,11 @@ RUN apt update && apt install -y \ WORKDIR /TriOs # Default command: configure and build TriOS ISO, then copy to output -CMD lb config --architecture amd64 && \ +CMD lb config --initramfs live-boot && \ lb config --archive-areas "main contrib non-free non-free-firmware" && \ - lb config --initramfs live-boot && \ lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" && \ lb config --packages-lists xfce && \ + lb config --architecture amd64 && \ lb build && \ mkdir -p /TriOs_Output && \ cp -r ./live-image* /TriOs_Output/ && \ From 81d606f0f1e8e0948c8bc97f9ecac276fe2188e5 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:26:45 -0400 Subject: [PATCH 23/46] Add xfce --- Trixie/config/package-lists/xfce.list.chroot | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 Trixie/config/package-lists/xfce.list.chroot diff --git a/Trixie/config/package-lists/xfce.list.chroot b/Trixie/config/package-lists/xfce.list.chroot new file mode 100644 index 0000000..ded6644 --- /dev/null +++ b/Trixie/config/package-lists/xfce.list.chroot @@ -0,0 +1,5 @@ +task-xfce-desktop +xfce4-terminal +lightdm +network-manager +network-manager-gnome From 4b409dfe70626c9585fa5df6d933bb22c89cc4de Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:28:26 -0400 Subject: [PATCH 24/46] Dead internet theory --- README.md | 1 - builder/Dockerfile | 1 - 2 files changed, 2 deletions(-) diff --git a/README.md b/README.md index e23c05a..b3ea1bb 100755 --- a/README.md +++ b/README.md @@ -72,7 +72,6 @@ lb config --initramfs live-boot lb config --archive-areas "main contrib non-free non-free-firmware" lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" lb config --architecture amd64 # or i386/arm64 -lb config --packages-lists xfce ``` ### Build the ISO diff --git a/builder/Dockerfile b/builder/Dockerfile index 3f63727..8f4a6f4 100755 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -22,7 +22,6 @@ WORKDIR /TriOs CMD lb config --initramfs live-boot && \ lb config --archive-areas "main contrib non-free non-free-firmware" && \ lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" && \ - lb config --packages-lists xfce && \ lb config --architecture amd64 && \ lb build && \ mkdir -p /TriOs_Output && \ From 3bd9bed1fed9b845a31f348a8320860a29df78e6 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:33:03 -0400 Subject: [PATCH 25/46] privilege update --- builder/build-trios.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/builder/build-trios.sh b/builder/build-trios.sh index 4833682..c15d60b 100755 --- a/builder/build-trios.sh +++ b/builder/build-trios.sh @@ -1,5 +1,5 @@ -docker build --no-cache -t trios-builder . -docker run -it \ +docker build -t trios-builder . +docker run --privileged -it \ -v ~/TriOs/Trixie:/TriOs \ -v ~/TriOs_Output:/TriOs_Output \ trios-builder From 7f3f0772d441e8e8ff9a63c13084c27ac76aebe8 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 14:41:11 -0400 Subject: [PATCH 26/46] Set systemd as the default initsystem --- Trixie/config/binary | 8 ++++---- Trixie/config/common | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Trixie/config/binary b/Trixie/config/binary index 33e9bb1..14c4c57 100755 --- a/Trixie/config/binary +++ b/Trixie/config/binary @@ -78,16 +78,16 @@ LB_HDD_SIZE="10000" LB_ISO_APPLICATION="Debian Live" # $LB_ISO_PREPARER: set iso preparer -# (Default: live-build $VERSION; http://packages.qa.debian.org/live-build) -LB_ISO_PREPARER="live-build $VERSION; http://packages.qa.debian.org/live-build" +# (Default: live-build 3.0~a57-1; http://packages.qa.debian.org/live-build) +LB_ISO_PREPARER="live-build 3.0~a57-1; http://packages.qa.debian.org/live-build" # $LB_ISO_PUBLISHER: set iso publisher # (Default: Debian Live project; http://live.debian.net/; debian-live@lists.debian.org) LB_ISO_PUBLISHER="Debian Live project; http://live.debian.net/; debian-live@lists.debian.org" # $LB_ISO_VOLUME: set iso volume (max 32 chars) -# (Default: Debian trixie $(date +%Y%m%d-%H:%M)) -LB_ISO_VOLUME="Debian trixie $(date +%Y%m%d-%H:%M)" +# (Default: Debian trixie 20251012-14:40) +LB_ISO_VOLUME="Debian trixie 20251012-14:40" # $LB_EXT_BLOCKSIZE: set EXT block size # (Default: unset) diff --git a/Trixie/config/common b/Trixie/config/common index 6f2fd9b..952a919 100755 --- a/Trixie/config/common +++ b/Trixie/config/common @@ -64,16 +64,16 @@ LB_DEBCONF_NOWARNINGS="yes" LB_DEBCONF_PRIORITY="critical" # $LB_INITRAMFS: set initramfs hook -# (Default: auto) -LB_INITRAMFS="auto" +# (Default: live-boot) +LB_INITRAMFS="live-boot" # $LB_INITRAMFS_COMPRESSION: set initramfs compression # (Default: ) LB_INITRAMFS_COMPRESSION="" # $LB_INITSYSTEM: set init system -# (Default: sysvinit) -LB_INITSYSTEM="sysvinit" +# (Default: systemd) +LB_INITSYSTEM="systemd" # $LB_FDISK: set fdisk program # (Default: autodetected) @@ -136,6 +136,6 @@ _QUIET="false" # Internal stuff (FIXME) APT_OPTIONS="--yes" APTITUDE_OPTIONS="--assume-yes" -GZIP_OPTIONS="-6 --rsyncable" +GZIP_OPTIONS="-6 --rsyncable" ISOHYBRID_OPTIONS="" GENISOIMAGE_OPTIONS_EXTRA="" From fe7e603ba969c65325fd7d0ee393a34989747b34 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 15:06:20 -0400 Subject: [PATCH 27/46] Add installer user --- Trixie/config/hooks/0100-installer-user.chroot | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 Trixie/config/hooks/0100-installer-user.chroot diff --git a/Trixie/config/hooks/0100-installer-user.chroot b/Trixie/config/hooks/0100-installer-user.chroot new file mode 100644 index 0000000..314cc09 --- /dev/null +++ b/Trixie/config/hooks/0100-installer-user.chroot @@ -0,0 +1,11 @@ +#!/bin/bash +set -e + +# Make temp installer user +adduser --disabled-password --gecos "" installer + +# Set the password +echo "installer:installer" | chpasswd + +# Giv sudo permns +usermod -aG sudo installer From 6f0b26b9d48cf4b8835c8b253993e286513e0c9b Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 15:10:22 -0400 Subject: [PATCH 28/46] Make the freaking script executable --- Trixie/config/hooks/0100-installer-user.chroot | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 Trixie/config/hooks/0100-installer-user.chroot diff --git a/Trixie/config/hooks/0100-installer-user.chroot b/Trixie/config/hooks/0100-installer-user.chroot old mode 100644 new mode 100755 From 16089a199438a835d4a612f0aea82cf11f3097c8 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 15:21:46 -0400 Subject: [PATCH 29/46] Enable autologin --- README.md | 2 +- Trixie/config/hooks/0100-installer-user.chroot | 11 ----------- builder/Dockerfile | 2 +- 3 files changed, 2 insertions(+), 13 deletions(-) delete mode 100755 Trixie/config/hooks/0100-installer-user.chroot diff --git a/README.md b/README.md index b3ea1bb..008a363 100755 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ cd TriOs/Trixie ``` lb config --initramfs live-boot lb config --archive-areas "main contrib non-free non-free-firmware" -lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" +lb config --bootappend-live "boot=live components union=overlay nopersistence" lb config --architecture amd64 # or i386/arm64 ``` diff --git a/Trixie/config/hooks/0100-installer-user.chroot b/Trixie/config/hooks/0100-installer-user.chroot deleted file mode 100755 index 314cc09..0000000 --- a/Trixie/config/hooks/0100-installer-user.chroot +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -set -e - -# Make temp installer user -adduser --disabled-password --gecos "" installer - -# Set the password -echo "installer:installer" | chpasswd - -# Giv sudo permns -usermod -aG sudo installer diff --git a/builder/Dockerfile b/builder/Dockerfile index 8f4a6f4..058b8de 100755 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -21,7 +21,7 @@ WORKDIR /TriOs # Default command: configure and build TriOS ISO, then copy to output CMD lb config --initramfs live-boot && \ lb config --archive-areas "main contrib non-free non-free-firmware" && \ - lb config --bootappend-live "boot=live components union=overlay noautologin nopersistence" && \ + lb config --bootappend-live "boot=live components union=overlay nopersistence" && \ lb config --architecture amd64 && \ lb build && \ mkdir -p /TriOs_Output && \ From 9ecc1308f5f8695fab3debd37edc8e19be570dc5 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 15:23:47 -0400 Subject: [PATCH 30/46] Migrate to kde --- Trixie/config/package-lists/kde.list.chroot | 5 +++++ Trixie/config/package-lists/xfce.list.chroot | 5 ----- 2 files changed, 5 insertions(+), 5 deletions(-) create mode 100644 Trixie/config/package-lists/kde.list.chroot delete mode 100644 Trixie/config/package-lists/xfce.list.chroot diff --git a/Trixie/config/package-lists/kde.list.chroot b/Trixie/config/package-lists/kde.list.chroot new file mode 100644 index 0000000..2a3ec96 --- /dev/null +++ b/Trixie/config/package-lists/kde.list.chroot @@ -0,0 +1,5 @@ +task-kde-desktop +konsole +sddm +network-manager +network-manager-gnome diff --git a/Trixie/config/package-lists/xfce.list.chroot b/Trixie/config/package-lists/xfce.list.chroot deleted file mode 100644 index ded6644..0000000 --- a/Trixie/config/package-lists/xfce.list.chroot +++ /dev/null @@ -1,5 +0,0 @@ -task-xfce-desktop -xfce4-terminal -lightdm -network-manager -network-manager-gnome From fa5e6d5e69432dc9fc6155421471f86b6c215cb9 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 15:30:42 -0400 Subject: [PATCH 31/46] Add kde --- Trixie/config/package-lists/kde.list.chroot | 0 Trixie/config/package-lists/python.list.chroot | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 Trixie/config/package-lists/kde.list.chroot mode change 100644 => 100755 Trixie/config/package-lists/python.list.chroot diff --git a/Trixie/config/package-lists/kde.list.chroot b/Trixie/config/package-lists/kde.list.chroot old mode 100644 new mode 100755 diff --git a/Trixie/config/package-lists/python.list.chroot b/Trixie/config/package-lists/python.list.chroot old mode 100644 new mode 100755 From dc6733f8fe07e359aacb09e701bd4f3e2c212f14 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 16:15:58 -0400 Subject: [PATCH 32/46] Add repos by default --- README.md | 1 - Trixie/config/bootstrap | 4 ++-- builder/Dockerfile | 1 - 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 008a363..20a6452 100755 --- a/README.md +++ b/README.md @@ -69,7 +69,6 @@ cd TriOs/Trixie ``` lb config --initramfs live-boot -lb config --archive-areas "main contrib non-free non-free-firmware" lb config --bootappend-live "boot=live components union=overlay nopersistence" lb config --architecture amd64 # or i386/arm64 ``` diff --git a/Trixie/config/bootstrap b/Trixie/config/bootstrap index ce0ec43..59034cc 100755 --- a/Trixie/config/bootstrap +++ b/Trixie/config/bootstrap @@ -117,8 +117,8 @@ LB_MIRROR_DEBIAN_INSTALLER="http://ftp.debian.org/debian/" LB_ARCHIVES="" # $LB_ARCHIVE_AREAS: select archive areas to use -# (Default: main) -LB_ARCHIVE_AREAS="main" +# (Default: main contrib non-free non-free-firmware) +LB_ARCHIVE_AREAS="main contrib non-free non-free-firmware" # $LB_PARENT_ARCHIVE_AREAS: select archive areas to use # (Default: main) diff --git a/builder/Dockerfile b/builder/Dockerfile index 058b8de..6138802 100755 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -20,7 +20,6 @@ WORKDIR /TriOs # Default command: configure and build TriOS ISO, then copy to output CMD lb config --initramfs live-boot && \ - lb config --archive-areas "main contrib non-free non-free-firmware" && \ lb config --bootappend-live "boot=live components union=overlay nopersistence" && \ lb config --architecture amd64 && \ lb build && \ From dba3e95fb6108039e1c4f4ca6a246e9eb67a0081 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 16:56:51 -0400 Subject: [PATCH 33/46] Add TriOs logo --- Trixie/config/includes.chroot/usr/share/pixmaps/debian.svg | 1 + 1 file changed, 1 insertion(+) create mode 100644 Trixie/config/includes.chroot/usr/share/pixmaps/debian.svg diff --git a/Trixie/config/includes.chroot/usr/share/pixmaps/debian.svg b/Trixie/config/includes.chroot/usr/share/pixmaps/debian.svg new file mode 100644 index 0000000..667af2e --- /dev/null +++ b/Trixie/config/includes.chroot/usr/share/pixmaps/debian.svg @@ -0,0 +1 @@ + \ No newline at end of file From d3a792d003835b53dddb47045b5fb132ad3fe212 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 21:44:56 -0400 Subject: [PATCH 34/46] Remove emoji and add os-release file --- Trixie/config/includes.chroot/etc/os-release | 10 ++++++++++ builder/Dockerfile | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 Trixie/config/includes.chroot/etc/os-release diff --git a/Trixie/config/includes.chroot/etc/os-release b/Trixie/config/includes.chroot/etc/os-release new file mode 100644 index 0000000..dc054ee --- /dev/null +++ b/Trixie/config/includes.chroot/etc/os-release @@ -0,0 +1,10 @@ +PRETTY_NAME="TriOs 13 (Bepis)" +NAME="TriOs" +VERSION_ID="13" +VERSION="13 (trixie)" +VERSION_CODENAME=trixie +DEBIAN_VERSION_FULL=13.1 +ID=debian +HOME_URL="https://github.com/TriangularDev/TriOs/" +SUPPORT_URL="https://github.com/TriangularDev/TriOs/issues" +BUG_REPORT_URL="https://github.com/TriangularDev/TriOs/issues" diff --git a/builder/Dockerfile b/builder/Dockerfile index 6138802..7b27a02 100755 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -25,5 +25,5 @@ CMD lb config --initramfs live-boot && \ lb build && \ mkdir -p /TriOs_Output && \ cp -r ./live-image* /TriOs_Output/ && \ - echo "✅ TriOS ISO build complete. Files copied to /TriOs_Output." + echo "TriOS ISO build complete. Files copied to /TriOs_Output." From 9f54ebf261ce7e5566164c164edaf98c81735e7e Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 22:00:44 -0400 Subject: [PATCH 35/46] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 20a6452..f12e689 100755 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ You MUST have a working internet connection when installing TriOs. Recommended builds: -- [Latest Release (V.1.0)](add-url-here-later-kthxbai) +- [Latest Release (13 Bepis)](add-url-here-later-kthxbai) Unstable builds: From 48d712a2a7c23d8cf6f38675c3bd9d2b6275e7e1 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 22:25:39 -0400 Subject: [PATCH 36/46] Create build-trios.yml --- .github/workflows/build-trios.yml | 44 +++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 .github/workflows/build-trios.yml diff --git a/.github/workflows/build-trios.yml b/.github/workflows/build-trios.yml new file mode 100644 index 0000000..f5dcf59 --- /dev/null +++ b/.github/workflows/build-trios.yml @@ -0,0 +1,44 @@ +name: Build TriOS ISO + +on: + push: + branches: [ main ] + workflow_dispatch: + +jobs: + build-trios: + name: Build and Package ISO + runs-on: self-hosted + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Set up variables + id: vars + run: | + echo "commit_hash=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT + mkdir -p ~/TriOs_Output + + - name: Build Docker Image + working-directory: ./builder + run: | + docker build -t trios-builder . + + - name: Run Docker Container (Privileged) + run: | + docker run --rm -it \ + --privileged \ + -v "${{ github.workspace }}:/TriOs" \ + -v "$HOME/TriOs_Output:/TriOs_Output" \ + trios-builder + + - name: Verify ISO Output + run: | + ls -lh ~/TriOs_Output || true + + - name: Upload ISO Artifact + uses: actions/upload-artifact@v4 + with: + name: trios-${{ steps.vars.outputs.commit_hash }}.iso + path: ~/TriOs_Output/live-image-amd64.hybrid.iso From c66e9959124ea34e1210fe0fadca7436712c903b Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 22:26:09 -0400 Subject: [PATCH 37/46] test commit --- test | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 test diff --git a/test b/test new file mode 100644 index 0000000..e69de29 From 38398a2e88746a5f376574a351241f05cc77bdbd Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 22:27:27 -0400 Subject: [PATCH 38/46] Proly should have specified --- .github/workflows/{build-trios.yml => build-trios-dev.yml} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename .github/workflows/{build-trios.yml => build-trios-dev.yml} (94%) diff --git a/.github/workflows/build-trios.yml b/.github/workflows/build-trios-dev.yml similarity index 94% rename from .github/workflows/build-trios.yml rename to .github/workflows/build-trios-dev.yml index f5dcf59..194a0ed 100644 --- a/.github/workflows/build-trios.yml +++ b/.github/workflows/build-trios-dev.yml @@ -1,8 +1,8 @@ -name: Build TriOS ISO +name: Build TriOS ISO (Dev branch) on: push: - branches: [ main ] + branches: [ dev ] workflow_dispatch: jobs: From 7cbdbc056850b8df4ab57012d4f8a6cf10355219 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 22:33:09 -0400 Subject: [PATCH 39/46] Delete test --- test | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 test diff --git a/test b/test deleted file mode 100644 index e69de29..0000000 From 562a13f5fa3e2fd3ad3dfd80938d61b1311023f7 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 22:34:56 -0400 Subject: [PATCH 40/46] Damn it aint a tty --- .github/workflows/build-trios-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-trios-dev.yml b/.github/workflows/build-trios-dev.yml index 194a0ed..429ea91 100644 --- a/.github/workflows/build-trios-dev.yml +++ b/.github/workflows/build-trios-dev.yml @@ -27,7 +27,7 @@ jobs: - name: Run Docker Container (Privileged) run: | - docker run --rm -it \ + docker run --rm -i \ --privileged \ -v "${{ github.workspace }}:/TriOs" \ -v "$HOME/TriOs_Output:/TriOs_Output" \ From 55ffcee094556c5ab7f23e82d6278c076fa0c11b Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 22:42:48 -0400 Subject: [PATCH 41/46] All that way for no trixie --- .github/workflows/build-trios-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-trios-dev.yml b/.github/workflows/build-trios-dev.yml index 429ea91..16d9549 100644 --- a/.github/workflows/build-trios-dev.yml +++ b/.github/workflows/build-trios-dev.yml @@ -29,7 +29,7 @@ jobs: run: | docker run --rm -i \ --privileged \ - -v "${{ github.workspace }}:/TriOs" \ + -v "${{ github.workspace }}:/TriOs/Trixie" \ -v "$HOME/TriOs_Output:/TriOs_Output" \ trios-builder From 0ea554862418cc7f80751dd02737f4a678c184c4 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 23:17:06 -0400 Subject: [PATCH 42/46] Test workflow update 1 --- .github/workflows/build-trios-dev.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build-trios-dev.yml b/.github/workflows/build-trios-dev.yml index 16d9549..bb70226 100644 --- a/.github/workflows/build-trios-dev.yml +++ b/.github/workflows/build-trios-dev.yml @@ -3,7 +3,6 @@ name: Build TriOS ISO (Dev branch) on: push: branches: [ dev ] - workflow_dispatch: jobs: build-trios: @@ -29,7 +28,7 @@ jobs: run: | docker run --rm -i \ --privileged \ - -v "${{ github.workspace }}:/TriOs/Trixie" \ + -v "./Trixie:/" \ -v "$HOME/TriOs_Output:/TriOs_Output" \ trios-builder From 04e080ee67c540c461b7cdd84f03ba08a5f04944 Mon Sep 17 00:00:00 2001 From: TriangularDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 23:18:21 -0400 Subject: [PATCH 43/46] Test workflow update 2 --- .github/workflows/build-trios-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-trios-dev.yml b/.github/workflows/build-trios-dev.yml index bb70226..82643c6 100644 --- a/.github/workflows/build-trios-dev.yml +++ b/.github/workflows/build-trios-dev.yml @@ -28,7 +28,7 @@ jobs: run: | docker run --rm -i \ --privileged \ - -v "./Trixie:/" \ + -v "./Trixie:/TriOs" \ -v "$HOME/TriOs_Output:/TriOs_Output" \ trios-builder From ebcd50b9452ad43aa1eb5364fca1d311f2231ce9 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 23:48:23 -0400 Subject: [PATCH 44/46] TriOs, the sustainability update --- ...ios-dev.yml => build-trios-trixie-dev.yml} | 10 +++- .../workflows/build-trios-trixie-nighly.yml | 52 +++++++++++++++++++ .github/workflows/build-trios-trixie-prod.yml | 49 +++++++++++++++++ README.md | 6 +-- Trixie/release_name | 1 + 5 files changed, 113 insertions(+), 5 deletions(-) rename .github/workflows/{build-trios-dev.yml => build-trios-trixie-dev.yml} (74%) create mode 100644 .github/workflows/build-trios-trixie-nighly.yml create mode 100644 .github/workflows/build-trios-trixie-prod.yml create mode 100644 Trixie/release_name diff --git a/.github/workflows/build-trios-dev.yml b/.github/workflows/build-trios-trixie-dev.yml similarity index 74% rename from .github/workflows/build-trios-dev.yml rename to .github/workflows/build-trios-trixie-dev.yml index 82643c6..1f40a01 100644 --- a/.github/workflows/build-trios-dev.yml +++ b/.github/workflows/build-trios-trixie-dev.yml @@ -15,10 +15,15 @@ jobs: - name: Set up variables id: vars + shell: bash run: | - echo "commit_hash=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT + _commit_hash=$(git rev-parse --short HEAD) + echo "commit_hash=${_commit_hash}" >> "$GITHUB_OUTPUT" mkdir -p ~/TriOs_Output + - name: Debug commit hash + run: echo "Commit hash is: ${{ steps.vars.outputs.commit_hash }}" + - name: Build Docker Image working-directory: ./builder run: | @@ -39,5 +44,6 @@ jobs: - name: Upload ISO Artifact uses: actions/upload-artifact@v4 with: - name: trios-${{ steps.vars.outputs.commit_hash }}.iso + name: trios-dev-${{ steps.vars.outputs.commit_hash }}.iso path: ~/TriOs_Output/live-image-amd64.hybrid.iso + diff --git a/.github/workflows/build-trios-trixie-nighly.yml b/.github/workflows/build-trios-trixie-nighly.yml new file mode 100644 index 0000000..3218935 --- /dev/null +++ b/.github/workflows/build-trios-trixie-nighly.yml @@ -0,0 +1,52 @@ +name: Build TriOS ISO (Nightly) + +on: + push: + branches: [ dev ] + schedule: + # Runs every day at midnight UTC + - cron: "0 0 * * *" + +jobs: + build-trios: + name: Build and Package ISO + runs-on: self-hosted + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Set up variables + id: vars + shell: bash + run: | + _timestamp=$(date -u +"%Y-%m-%dT%H-%M-%SZ") + echo "timestamp=${_timestamp}" >> "$GITHUB_OUTPUT" + mkdir -p ~/TriOs_Output + + - name: Debug timestamp + run: echo "Timestamp is: ${{ steps.vars.outputs.timestamp }}" + + - name: Build Docker Image + working-directory: ./builder + run: | + docker build -t trios-builder . + + - name: Run Docker Container (Privileged) + run: | + docker run --rm -i \ + --privileged \ + -v "./Trixie:/TriOs" \ + -v "$HOME/TriOs_Output:/TriOs_Output" \ + trios-builder + + - name: Verify ISO Output + run: | + ls -lh ~/TriOs_Output || true + + - name: Upload ISO Artifact + uses: actions/upload-artifact@v4 + with: + name: trios-nightly-${{ steps.vars.outputs.timestamp }}.iso + path: ~/TriOs_Output/live-image-amd64.hybrid.iso + diff --git a/.github/workflows/build-trios-trixie-prod.yml b/.github/workflows/build-trios-trixie-prod.yml new file mode 100644 index 0000000..dc3ae3e --- /dev/null +++ b/.github/workflows/build-trios-trixie-prod.yml @@ -0,0 +1,49 @@ +name: Build TriOS ISO (Prod branch) + +on: + push: + branches: [ prod ] + +jobs: + build-trios: + name: Build and Package ISO + runs-on: self-hosted + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Set up variables + id: vars + shell: bash + run: | + _version=$(cat ./Trixie/release_name | tr -d '\n\r') + echo "version=${_version}" >> "$GITHUB_OUTPUT" + mkdir -p ~/TriOs_Output + + - name: Debug version + run: echo "Version is: ${{ steps.vars.outputs.version }}" + + - name: Build Docker Image + working-directory: ./builder + run: | + docker build -t trios-builder . + + - name: Run Docker Container (Privileged) + run: | + docker run --rm -i \ + --privileged \ + -v "./Trixie:/TriOs" \ + -v "$HOME/TriOs_Output:/TriOs_Output" \ + trios-builder + + - name: Verify ISO Output + run: | + ls -lh ~/TriOs_Output || true + + - name: Upload ISO Artifact + uses: actions/upload-artifact@v4 + with: + name: trios-prod-${{ steps.vars.outputs.version }}.iso + path: ~/TriOs_Output/live-image-amd64.hybrid.iso + diff --git a/README.md b/README.md index f12e689..5f1cef0 100755 --- a/README.md +++ b/README.md @@ -40,12 +40,12 @@ You MUST have a working internet connection when installing TriOs. Recommended builds: -- [Latest Release (13 Bepis)](add-url-here-later-kthxbai) +- [Latest Release (13 Bepis)](https://nightly.link/TriangularDev/TriOs/workflows/build-trios-trixie-prod/prod) Unstable builds: -- [Nightly Build](add-url-here-later-kthxbai) -- [Latest Commit](add-url-here-later-kthxbai) +- [Nightly Build](https://nightly.link/TriangularDev/TriOs/workflows/build-trios-trixie-nightly/dev) +- [Latest Commit](https://nightly.link/TriangularDev/TriOs/workflows/build-trios-trixie-dev/dev) ## Building the ISO from source diff --git a/Trixie/release_name b/Trixie/release_name new file mode 100644 index 0000000..b26bfaf --- /dev/null +++ b/Trixie/release_name @@ -0,0 +1 @@ +13-Bepis From cfeac6855e58af2f1b3185e38bbfa279a44734d5 Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 23:52:08 -0400 Subject: [PATCH 45/46] TriOs: The make everything work update --- .github/workflows/build-trios-trixie-dev.yml | 3 ++- .github/workflows/build-trios-trixie-nighly.yml | 3 ++- .github/workflows/build-trios-trixie-prod.yml | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-trios-trixie-dev.yml b/.github/workflows/build-trios-trixie-dev.yml index 1f40a01..3f240f4 100644 --- a/.github/workflows/build-trios-trixie-dev.yml +++ b/.github/workflows/build-trios-trixie-dev.yml @@ -22,7 +22,8 @@ jobs: mkdir -p ~/TriOs_Output - name: Debug commit hash - run: echo "Commit hash is: ${{ steps.vars.outputs.commit_hash }}" + run: | + echo "Commit hash is: ${{ steps.vars.outputs.commit_hash }}" - name: Build Docker Image working-directory: ./builder diff --git a/.github/workflows/build-trios-trixie-nighly.yml b/.github/workflows/build-trios-trixie-nighly.yml index 3218935..d36d018 100644 --- a/.github/workflows/build-trios-trixie-nighly.yml +++ b/.github/workflows/build-trios-trixie-nighly.yml @@ -25,7 +25,8 @@ jobs: mkdir -p ~/TriOs_Output - name: Debug timestamp - run: echo "Timestamp is: ${{ steps.vars.outputs.timestamp }}" + run: | + echo "Timestamp is: ${{ steps.vars.outputs.timestamp }}" - name: Build Docker Image working-directory: ./builder diff --git a/.github/workflows/build-trios-trixie-prod.yml b/.github/workflows/build-trios-trixie-prod.yml index dc3ae3e..55bb917 100644 --- a/.github/workflows/build-trios-trixie-prod.yml +++ b/.github/workflows/build-trios-trixie-prod.yml @@ -22,7 +22,8 @@ jobs: mkdir -p ~/TriOs_Output - name: Debug version - run: echo "Version is: ${{ steps.vars.outputs.version }}" + run: | + echo "Version is: ${{ steps.vars.outputs.version }}" - name: Build Docker Image working-directory: ./builder From 7db1db883eda2db47772fb5c92181b9548fcff3e Mon Sep 17 00:00:00 2001 From: TriangleDev <72287094+TriangularDev@users.noreply.github.com> Date: Sun, 12 Oct 2025 23:55:58 -0400 Subject: [PATCH 46/46] TriOs: The trust issues update --- .github/workflows/build-trios-trixie-nighly.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/build-trios-trixie-nighly.yml b/.github/workflows/build-trios-trixie-nighly.yml index d36d018..3e560c9 100644 --- a/.github/workflows/build-trios-trixie-nighly.yml +++ b/.github/workflows/build-trios-trixie-nighly.yml @@ -1,8 +1,6 @@ name: Build TriOS ISO (Nightly) on: - push: - branches: [ dev ] schedule: # Runs every day at midnight UTC - cron: "0 0 * * *"