patches and low-level development discussion
 help / color / mirror / code / Atom feed
From: "Johannes Süllner" <johannes.suellner@mailbox.org>
To: devel@spectrum-os.org
Cc: "Johannes Süllner" <johannes.suellner@mailbox.org>
Subject: [PATCH 3/4] release: drop combined and installer image
Date: Sun,  4 Jan 2026 15:00:22 +0100	[thread overview]
Message-ID: <20260104140102.106960-7-johannes.suellner@mailbox.org> (raw)
In-Reply-To: <20260104140102.106960-5-johannes.suellner@mailbox.org>

Installer is now part of the live system.

Signed-off-by: Johannes Süllner <johannes.suellner@mailbox.org>
---
 Documentation/development/uuid-reference.adoc |  22 ----
 release/checks/default.nix                    |   2 -
 release/checks/installer.nix                  |  16 ---
 release/combined/default.nix                  | 123 ------------------
 release/combined/eosimages.nix                |  21 ---
 release/combined/grub.cfg.in                  |  22 ----
 release/combined/run-vm.nix                   |  31 -----
 ...ble-gpt-partition-attribute-55-check.patch |  37 ------
 ...pt-disable-partition-table-CRC-check.patch |  36 -----
 .../0003-install-remove-Endless-OS-ad.patch   |  99 --------------
 ...4-finished-don-t-run-eos-diagnostics.patch |  44 -------
 ...omote-spectrum-not-the-Endless-forum.patch |  32 -----
 release/installer/app/default.nix             |  26 ----
 .../installer/app/vendor-customer-support.ini |   5 -
 release/installer/configuration.nix           |  69 ----------
 release/installer/default.nix                 |  22 ----
 release/installer/run-vm.nix                  |  47 -------
 release/installer/seat.rules                  |   9 --
 18 files changed, 663 deletions(-)
 delete mode 100644 release/checks/installer.nix
 delete mode 100644 release/combined/default.nix
 delete mode 100644 release/combined/eosimages.nix
 delete mode 100644 release/combined/grub.cfg.in
 delete mode 100644 release/combined/run-vm.nix
 delete mode 100644 release/installer/app/0001-gpt-disable-gpt-partition-attribute-55-check.patch
 delete mode 100644 release/installer/app/0002-gpt-disable-partition-table-CRC-check.patch
 delete mode 100644 release/installer/app/0003-install-remove-Endless-OS-ad.patch
 delete mode 100644 release/installer/app/0004-finished-don-t-run-eos-diagnostics.patch
 delete mode 100644 release/installer/app/0005-finished-promote-spectrum-not-the-Endless-forum.patch
 delete mode 100644 release/installer/app/default.nix
 delete mode 100644 release/installer/app/vendor-customer-support.ini
 delete mode 100644 release/installer/configuration.nix
 delete mode 100644 release/installer/default.nix
 delete mode 100644 release/installer/run-vm.nix
 delete mode 100644 release/installer/seat.rules

diff --git a/Documentation/development/uuid-reference.adoc b/Documentation/development/uuid-reference.adoc
index 16279c8..7e3641a 100644
--- a/Documentation/development/uuid-reference.adoc
+++ b/Documentation/development/uuid-reference.adoc
@@ -45,28 +45,6 @@ Specification].
 https://uapi-group.org/specifications/specs/discoverable_partitions_specification/[Discoverable Partitions
 Specification].
 
-=== `56a3bbc3-aefa-43d9-a64d-7b3fd59bbc4e`
-
-https://github.com/endlessm/eos-installer["eosimages"] partition on the
-Spectrum combined live system / installer image.
-
-== Combined Image Partition IDs
-
-These UUIDs are used as the unique partition identifiers for the
-Spectrum combined live system / installer image.
-
-=== `6e23b026-9f1e-479d-8a58-a0cda382e1ce`
-
-The Spectrum installer system.
-
-=== `18f2ccff-92f1-4bb1-a80e-24f76ecda90c`
-
-The not-yet-used B verity partition.
-
-=== `ec0c5ff3-f6b1-4adf-82b4-61336c4d135f`
-
-The not-yet-used B root filesystem partition.
-
 '''
 
 == Finding Undocumented UUIDs
diff --git a/release/checks/default.nix b/release/checks/default.nix
index 9d618dd..ac47cb3 100644
--- a/release/checks/default.nix
+++ b/release/checks/default.nix
@@ -14,8 +14,6 @@ import ../../lib/call-package.nix ({ callSpectrumPackage }:
 
   doc-anchors = callSpectrumPackage ./doc-anchors.nix {};
 
-  installer = callSpectrumPackage ./installer.nix {};
-
   integration = callSpectrumPackage ./integration {};
 
   pkg-tests = callSpectrumPackage ./pkg-tests.nix {};
diff --git a/release/checks/installer.nix b/release/checks/installer.nix
deleted file mode 100644
index d28a41b..0000000
--- a/release/checks/installer.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2025 Alyssa Ross <hi@alyssa.is>
-
-import ../../lib/call-package.nix ({ testers }: testers.nixosTest ({ ... }: {
-  name = "spectrum-test-installer";
-  enableOCR = true;
-
-  nodes = {
-    machine = ../installer/configuration.nix;
-  };
-
-  testScript = ''
-    start_all()
-    machine.wait_for_text("Spectrum")
-  '';
-})) (_: {})
diff --git a/release/combined/default.nix b/release/combined/default.nix
deleted file mode 100644
index 3be32d4..0000000
--- a/release/combined/default.nix
+++ /dev/null
@@ -1,123 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2021-2023 Alyssa Ross <hi@alyssa.is>
-# SPDX-FileCopyrightText: 2021 Yureka <yuka@yuka.dev>
-# SPDX-FileCopyrightText: 2022 Unikie
-
-import ../../lib/call-package.nix (
-{ callSpectrumPackage
-, lib, runCommand, stdenv, replaceVars, writeClosure
-, dosfstools, grub2_efi, jq, libfaketime, mtools, squashfs-tools-ng
-, systemdMinimal, util-linux
-}:
-
-let
-  inherit (builtins) storeDir;
-  inherit (lib) removePrefix toUpper;
-
-  eosimages = callSpectrumPackage ./eosimages.nix {};
-
-  installerPartUuid = "6e23b026-9f1e-479d-8a58-a0cda382e1ce";
-  installer = callSpectrumPackage ../installer {
-    extraConfig = {
-      boot.initrd.availableKernelModules = [ "squashfs" ];
-
-      fileSystems.${storeDir} = {
-        device = "/dev/disk/by-partuuid/${installerPartUuid}";
-      };
-    };
-  };
-
-  rootfs = runCommand "installer.img" {
-    nativeBuildInputs = [ squashfs-tools-ng ];
-    __structuredAttrs = true;
-    unsafeDiscardReferences = { out = true; };
-    dontFixup = true;
-  } ''
-    sed 's,^${storeDir}/,,' ${writeClosure [ installer.store ]} |
-        tar -C ${storeDir} -c --verbatim-files-from -T - \
-            --owner 0 --group 0 | tar2sqfs $out
-  '';
-
-  efiArch = stdenv.hostPlatform.efiArch;
-
-  grub = grub2_efi;
-
-  grubCfg = replaceVars ./grub.cfg.in {
-    linux = removePrefix storeDir installer.kernel;
-    initrd = removePrefix storeDir installer.initramfs;
-    inherit (installer) kernelParams;
-  };
-
-  esp = runCommand "esp.img" {
-    nativeBuildInputs = [ grub libfaketime dosfstools mtools ];
-
-    env = {
-      grubTargetDir = "${grub}/lib/grub/${grub.grubTarget}";
-      # Definition copied from util/grub-install-common.c.
-      # Last checked: GRUB 2.06
-      pkglib_DATA = lib.escapeShellArgs [
-        "efiemu32.o" "efiemu64.o" "moddep.lst" "command.lst" "fs.lst"
-        "partmap.lst" "parttool.lst" "video.lst" "crypto.lst" "terminal.lst"
-        "modinfo.sh"
-      ];
-    };
-
-    __structuredAttrs = true;
-    unsafeDiscardReferences = { out = true; };
-    dontFixup = true;
-
-    passthru = { inherit grubCfg; };
-  } ''
-    truncate -s 15M $out
-    faketime "1970-01-01 00:00:00" mkfs.vfat -i 0x2178694e -n EFI $out
-    mmd -i $out ::/EFI ::/EFI/BOOT \
-        ::/grub ::/grub/${grub.grubTarget} ::/grub/fonts
-
-    mcopy -i $out ${grubCfg} ::/grub/grub.cfg
-    mcopy -i $out $grubTargetDir/*.mod ::/grub/${grub.grubTarget}
-    for file in $pkglib_DATA; do
-        path="$grubTargetDir/$file"
-        ! [ -e "$path" ] || mcopy -i $out "$path" ::/grub/${grub.grubTarget}
-    done
-    mcopy -i $out ${grub}/share/grub/unicode.pf2 ::/grub/fonts
-
-    grub-mkimage -o grub${efiArch}.efi -p "(hd0,gpt1)/grub" -O ${grub.grubTarget} part_gpt fat
-    mcopy -i $out grub${efiArch}.efi ::/EFI/BOOT/BOOT${toUpper efiArch}.EFI
-
-    fsck.vfat -n $out
-  '';
-in
-
-runCommand "spectrum-installer" {
-  nativeBuildInputs = [ grub jq util-linux systemdMinimal ];
-  __structuredAttrs = true;
-  unsafeDiscardReferences = { out = true; };
-  dontFixup = true;
-  passthru = { inherit eosimages esp installer rootfs; };
-} ''
-  blockSize() {
-      wc -c "$1" | awk '{printf "%d\n", ($1 + 511) / 512}'
-  }
-
-  fillPartition() {
-      read start size < <(sfdisk -J "$1" | jq -r --argjson index "$2" \
-          '.partitiontable.partitions[$index] | "\(.start) \(.size)"')
-      dd if="$3" of="$1" seek="$start" count="$size" conv=notrunc
-  }
-
-  espSize="$(blockSize ${esp})"
-  installerSize="$(blockSize ${rootfs})"
-  eosimagesSize="$(blockSize ${eosimages})"
-
-  truncate -s $(((3 * 2048 + $espSize + $installerSize + $eosimagesSize) * 512)) $out
-  sfdisk --no-reread --no-tell-kernel $out <<EOF
-  label: gpt
-  size=$espSize, type=U
-  size=$installerSize, type=L, uuid=${installerPartUuid}
-  size=$eosimagesSize, type=56a3bbc3-aefa-43d9-a64d-7b3fd59bbc4e
-  EOF
-
-  fillPartition $out 0 ${esp}
-  fillPartition $out 1 ${rootfs}
-  fillPartition $out 2 ${eosimages}
-'') (_: {})
diff --git a/release/combined/eosimages.nix b/release/combined/eosimages.nix
deleted file mode 100644
index 2f24a8f..0000000
--- a/release/combined/eosimages.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2021-2023 Alyssa Ross <hi@alyssa.is>
-
-import ../../lib/call-package.nix (
-{ callSpectrumPackage, runCommand, e2fsprogs, tar2ext4 }:
-
-runCommand "eosimages.img" {
-  nativeBuildInputs = [ e2fsprogs tar2ext4 ];
-  imageName = "Spectrum-0.0-x86_64-generic.0.Live.img";
-  image = callSpectrumPackage ../live {};
-  __structuredAttrs = true;
-  unsafeDiscardReferences = { out = true; };
-  dontFixup = true;
-} ''
-  mkdir dir
-  cd dir
-  gzip -1 < $image > $imageName.gz
-  sha256sum -- $imageName.gz > $imageName.gz.sha256
-  tar -ch -- $imageName.gz $imageName.gz.sha256 | tar2ext4 -o $out
-  e2label $out eosimages
-'') (_: {})
diff --git a/release/combined/grub.cfg.in b/release/combined/grub.cfg.in
deleted file mode 100644
index a22f5fc..0000000
--- a/release/combined/grub.cfg.in
+++ /dev/null
@@ -1,22 +0,0 @@
-# SPDX-License-Identifier: EUPL-1.2+
-# SPDX-FileCopyrightText: 2021-2022, 2024 Alyssa Ross <hi@alyssa.is>
-
-insmod efi_gop
-
-if [ "${grub_cpu}" == "x86_64" ]; then
-  insmod efi_uga
-fi
-
-insmod font
-loadfont /grub/fonts/unicode.pf2
-
-insmod gfxterm
-set gfxpayload=keep
-terminal_output gfxterm
-terminal_output console
-
-menuentry "Install Spectrum" {
-  set root=(hd0,gpt2)
-  linux @linux@ @kernelParams@
-  initrd @initrd@
-}
diff --git a/release/combined/run-vm.nix b/release/combined/run-vm.nix
deleted file mode 100644
index 16e00cd..0000000
--- a/release/combined/run-vm.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2021, 2023-2024 Alyssa Ross <hi@alyssa.is>
-
-import ../../lib/call-package.nix (
-{ callSpectrumPackage, lib, writeShellScript, coreutils, qemu_kvm, stdenv }:
-
-let
-  image = callSpectrumPackage ./. {};
-in
-
-writeShellScript "run-spectrum-installer-vm.sh" ''
-  export PATH=${lib.makeBinPath [ coreutils qemu_kvm ]}
-  img="$(mktemp spectrum-installer-target.XXXXXXXXXX.img)"
-  truncate -s 20G "$img"
-  exec 3<>"$img"
-  rm -f "$img"
-  # usb-kbd is used here as edk2 does not support virtio-keyboard:
-  # https://github.com/tianocore/edk2/pull/6444
-  exec ${../../scripts/run-qemu.sh} -cpu max -m 4G \
-    -machine virtualization=on \
-    -device virtio-mouse \
-    -device virtio-gpu \
-    -parallel none \
-    -vga none \
-    -device qemu-xhci \
-    -device usb-kbd \
-    -device usb-storage,drive=drive1,removable=true \
-    -drive file=${qemu_kvm}/share/qemu/edk2-${stdenv.hostPlatform.qemuArch}-code.fd,format=raw,if=pflash,readonly=true \
-    -drive file=${image},id=drive1,format=raw,if=none,readonly=true \
-    -drive file=/proc/self/fd/3,format=raw,if=virtio
-'') (_: {})
diff --git a/release/installer/app/0001-gpt-disable-gpt-partition-attribute-55-check.patch b/release/installer/app/0001-gpt-disable-gpt-partition-attribute-55-check.patch
deleted file mode 100644
index 78bbc24..0000000
--- a/release/installer/app/0001-gpt-disable-gpt-partition-attribute-55-check.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 058050ee5ba6a8d8dae2ba7fa7334ee19f98dbf8 Mon Sep 17 00:00:00 2001
-SPDX-License-Identifier: GPL-2.0-or-later
-SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-From: Alyssa Ross <hi@alyssa.is>
-Date: Thu, 9 Dec 2021 21:10:11 +0000
-Subject: [PATCH 1/5] gpt: disable gpt partition attribute 55 check
-
-Endless OS uses flag 55 to mean a partition should be auto-grown, and
-to identify Endless OS partitions.  Both of these meanings of flag 55
-are specific to Endless OS though, so it doesn't make sense for
-installing other operating systems.
----
- gnome-image-installer/util/gpt.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/gnome-image-installer/util/gpt.c b/gnome-image-installer/util/gpt.c
-index 02926a5e..1261d9a0 100644
---- a/gnome-image-installer/util/gpt.c
-+++ b/gnome-image-installer/util/gpt.c
-@@ -253,12 +253,14 @@ int is_eos_gpt_valid(struct ptable *pt, uint64_t *size)
-           || memcmp(&pt->partitions[i].type_guid, GPT_GUID_LINUX_ROOTFS_AARCH64, 16)==0
-           || memcmp(&pt->partitions[i].type_guid, GPT_GUID_LINUX_ROOTFS_RISCV_32, 16)==0
-           || memcmp(&pt->partitions[i].type_guid, GPT_GUID_LINUX_ROOTFS_RISCV_64, 16)==0) {
-+#if 0
-         uint64_t flags = 0;
-         memcpy(&flags, pt->partitions[i].attributes, 8);
-         if(!is_nth_flag_set(flags, 55)) {
-           //  55th flag must be 1 for EOS images
-           continue ;
-         }
-+#endif
-         has_root=1;
-         break ;
-       }
--- 
-2.37.1
-
diff --git a/release/installer/app/0002-gpt-disable-partition-table-CRC-check.patch b/release/installer/app/0002-gpt-disable-partition-table-CRC-check.patch
deleted file mode 100644
index 1628355..0000000
--- a/release/installer/app/0002-gpt-disable-partition-table-CRC-check.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 56dff17022a2ca631ac2ea529a84cb424c913500 Mon Sep 17 00:00:00 2001
-SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-SPDX-License-Identifier: GPL-2.0-or-later
-From: Alyssa Ross <hi@alyssa.is>
-Date: Thu, 9 Dec 2021 21:09:33 +0000
-Subject: [PATCH 2/5] gpt: disable partition table CRC check
-
-This is faulty, I think because eos-installer only looks at the first
-three entries in the partition table.
----
- gnome-image-installer/util/gpt.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/gnome-image-installer/util/gpt.c b/gnome-image-installer/util/gpt.c
-index 1261d9a0..fb8bab17 100644
---- a/gnome-image-installer/util/gpt.c
-+++ b/gnome-image-installer/util/gpt.c
-@@ -223,6 +223,7 @@ int is_eos_gpt_valid(struct ptable *pt, uint64_t *size)
-         g_warning("invalid header crc");
-         return 0;
-     }
-+#if 0
-     //  crc32 of partition table
-     int n = pt->header.ptable_count * pt->header.ptable_partition_size;
-     uint8_t *buffer = (uint8_t*)malloc(n);
-@@ -236,6 +237,7 @@ int is_eos_gpt_valid(struct ptable *pt, uint64_t *size)
-         return 0;
-     }
-     free(buffer);
-+#endif
- 
-     // The first partition must be an EFI System Partition
-     if(memcmp(&pt->partitions[0].type_guid, GPT_GUID_EFI, 16)!=0) {
--- 
-2.37.1
-
diff --git a/release/installer/app/0003-install-remove-Endless-OS-ad.patch b/release/installer/app/0003-install-remove-Endless-OS-ad.patch
deleted file mode 100644
index 8881b00..0000000
--- a/release/installer/app/0003-install-remove-Endless-OS-ad.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 1061a8c3cfb31dcc2519841360c6d14612898b2c Mon Sep 17 00:00:00 2001
-SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-SPDX-License-Identifier: GPL-2.0-or-later
-From: Alyssa Ross <hi@alyssa.is>
-Date: Thu, 9 Dec 2021 21:06:16 +0000
-Subject: [PATCH 3/5] install: remove Endless OS ad
-
----
- .../pages/install/gis-install-page.ui         | 74 -------------------
- 1 file changed, 74 deletions(-)
-
-diff --git a/gnome-image-installer/pages/install/gis-install-page.ui b/gnome-image-installer/pages/install/gis-install-page.ui
-index d3b7769c..2fcc31b9 100644
---- a/gnome-image-installer/pages/install/gis-install-page.ui
-+++ b/gnome-image-installer/pages/install/gis-install-page.ui
-@@ -45,80 +45,6 @@
-                 <property name="position">1</property>
-               </packing>
-             </child>
--            <child>
--              <object class="GtkOverlay" id="graphics_overlay">
--                <property name="visible">True</property>
--                <property name="can_focus">False</property>
--                <child>
--                  <object class="GtkImage" id="infographics">
--                    <property name="visible">True</property>
--                    <property name="can_focus">False</property>
--                    <property name="xpad">12</property>
--                    <property name="ypad">12</property>
--                    <property name="resource">/org/gnome/initial-setup/software_screens.png</property>
--                  </object>
--                  <packing>
--                    <property name="index">-1</property>
--                  </packing>
--                </child>
--                <child type="overlay">
--                  <object class="GtkBox" id="infolabels">
--                    <property name="visible">True</property>
--                    <property name="can_focus">False</property>
--                    <property name="halign">start</property>
--                    <property name="margin_left">48</property>
--                    <property name="margin_top">48</property>
--                    <property name="orientation">vertical</property>
--                    <child>
--                      <object class="GtkLabel" id="label1">
--                        <property name="visible">True</property>
--                        <property name="can_focus">False</property>
--                        <property name="halign">start</property>
--                        <property name="label" translatable="yes">Endless OS</property>
--                        <property name="xalign">0</property>
--                        <attributes>
--                          <attribute name="weight" value="bold"/>
--                          <attribute name="scale" value="2"/>
--                          <attribute name="foreground" value="#ffffffffffff"/>
--                        </attributes>
--                      </object>
--                      <packing>
--                        <property name="expand">False</property>
--                        <property name="fill">True</property>
--                        <property name="position">0</property>
--                      </packing>
--                    </child>
--                    <child>
--                      <object class="GtkLabel" id="label2">
--                        <property name="visible">True</property>
--                        <property name="can_focus">False</property>
--                        <property name="halign">start</property>
--                        <property name="margin_top">16</property>
--                        <property name="label" translatable="yes">Fast, easy to use and powerful – with or without internet.
--
--Endless OS is preloaded with over 100 apps, making it useful from the moment you turn it on.</property>
--                        <property name="wrap">True</property>
--                        <property name="max_width_chars">26</property>
--                        <property name="xalign">0</property>
--                        <attributes>
--                          <attribute name="foreground" value="#ffffffffffff"/>
--                        </attributes>
--                      </object>
--                      <packing>
--                        <property name="expand">False</property>
--                        <property name="fill">True</property>
--                        <property name="position">1</property>
--                      </packing>
--                    </child>
--                  </object>
--                </child>
--              </object>
--              <packing>
--                <property name="expand">False</property>
--                <property name="fill">True</property>
--                <property name="position">2</property>
--              </packing>
--            </child>
-           </object>
-           <packing>
-             <property name="expand">True</property>
--- 
-2.37.1
-
diff --git a/release/installer/app/0004-finished-don-t-run-eos-diagnostics.patch b/release/installer/app/0004-finished-don-t-run-eos-diagnostics.patch
deleted file mode 100644
index cf1b4ce..0000000
--- a/release/installer/app/0004-finished-don-t-run-eos-diagnostics.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From aefbf6a50097486616a7d0d3bc09e4efb0ed953b Mon Sep 17 00:00:00 2001
-SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-SPDX-License-Identifier: GPL-2.0-or-later
-From: Alyssa Ross <hi@alyssa.is>
-Date: Thu, 9 Dec 2021 21:06:36 +0000
-Subject: [PATCH 4/5] finished: don't run eos-diagnostics
-
-This has to be installed separately from eos-installer, and we don't
-currently do that for the Spectrum installer.  If there was an error,
-eos-installer would try to run it, and then display an additional
-error message about not being able to find it on the error screen.
----
- .../pages/finished/gis-finished-page.c            | 15 ---------------
- 1 file changed, 15 deletions(-)
-
-diff --git a/gnome-image-installer/pages/finished/gis-finished-page.c b/gnome-image-installer/pages/finished/gis-finished-page.c
-index 6cd26ff2..47b60adb 100644
---- a/gnome-image-installer/pages/finished/gis-finished-page.c
-+++ b/gnome-image-installer/pages/finished/gis-finished-page.c
-@@ -285,21 +285,6 @@ gis_finished_page_shown (GisPage *page)
-       gtk_widget_hide (priv->success_box);
-       gis_assistant_locale_changed (assistant);
- 
--      if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
--        {
--          /* Running eos-diagnostics can be slow enough that we can't do it
--           * synchronously on the UI thread.
--           */
--          GFile *image_dir = G_FILE (gis_store_get_object (GIS_STORE_IMAGE_DIR));
--          /* See implementation of gis_write_diagnostics_async for rationale. */
--          const gchar *home_dir = priv->gedit != NULL ? g_get_home_dir () : NULL;
--
--          g_application_hold (G_APPLICATION (page->driver));
--          gis_write_diagnostics_async (NULL, image_dir, home_dir,
--                                       NULL, write_diagnostics_cb,
--                                       g_object_ref (self));
--        }
--
-       /* If running within a live session, hide the "Turn off" button on error,
-        * since we have a perfectly good [X] button on the titlebar and we want
-        * to encourage the user to notice the link to the diagnostics file.
--- 
-2.37.1
-
diff --git a/release/installer/app/0005-finished-promote-spectrum-not-the-Endless-forum.patch b/release/installer/app/0005-finished-promote-spectrum-not-the-Endless-forum.patch
deleted file mode 100644
index fc8c27d..0000000
--- a/release/installer/app/0005-finished-promote-spectrum-not-the-Endless-forum.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 786b48e3659db0a184600c5c7047d883b74c82cf Mon Sep 17 00:00:00 2001
-SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-SPDX-License-Identifier: GPL-2.0-or-later
-From: Alyssa Ross <hi@alyssa.is>
-Date: Thu, 9 Dec 2021 21:07:38 +0000
-Subject: [PATCH 5/5] finished: promote #spectrum, not the Endless forum
-
----
- gnome-image-installer/pages/finished/gis-finished-page.c | 6 ++----
- 1 file changed, 2 insertions(+), 4 deletions(-)
-
-diff --git a/gnome-image-installer/pages/finished/gis-finished-page.c b/gnome-image-installer/pages/finished/gis-finished-page.c
-index 47b60adb..2fc1ccf3 100644
---- a/gnome-image-installer/pages/finished/gis-finished-page.c
-+++ b/gnome-image-installer/pages/finished/gis-finished-page.c
-@@ -461,11 +461,9 @@ gis_finished_page_locale_changed (GisPage *page)
-     }
- 
-   support_email = get_customer_support_email ();
--  support_email_markup = g_strdup_printf ("<a href=\"mailto:%1$s\">%1$s</a>",
--                                          support_email);
-   /* Translators: the %s is the customer support email address */
--  support_markup = g_strdup_printf (_("Please contact %s or join the <a href=\"https://community.endlessos.com/\">Endless Community</a> to troubleshoot."),
--                                    support_email_markup);
-+  support_markup = g_strdup_printf (_("Please contact %s or join #spectrum on irc.libera.chat to troubleshoot."),
-+                                    support_email);
-   gtk_label_set_markup (priv->support_label, support_markup);
- }
- 
--- 
-2.37.1
-
diff --git a/release/installer/app/default.nix b/release/installer/app/default.nix
deleted file mode 100644
index f0d739e..0000000
--- a/release/installer/app/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-
-{ eos-installer, fetchurl }:
-
-let
-  logo = fetchurl {
-    url = "https://spectrum-os.org/git/www/plain/logo/logo140.png?id=5ac2d787b12e05a9ea91e94ca9373ced55d7371a";
-    sha256 = "008dkzapyrkbva3ziyb2fa1annjwfk28q9kwj1bgblgrq6sxllxk";
-  };
-in
-
-eos-installer.overrideAttrs ({ patches ? [], postPatch ? "", ... }: {
-  patches = patches ++ [
-    ./0001-gpt-disable-gpt-partition-attribute-55-check.patch
-    ./0002-gpt-disable-partition-table-CRC-check.patch
-    ./0003-install-remove-Endless-OS-ad.patch
-    ./0004-finished-don-t-run-eos-diagnostics.patch
-    ./0005-finished-promote-spectrum-not-the-Endless-forum.patch
-  ];
-
-  postPatch = postPatch + ''
-    find . -type f -print0 | xargs -0 sed -i 's/Endless OS/Spectrum/g'
-    cp ${logo} gnome-image-installer/pages/finished/endless_logo.png
-  '';
-})
diff --git a/release/installer/app/vendor-customer-support.ini b/release/installer/app/vendor-customer-support.ini
deleted file mode 100644
index 4c4e650..0000000
--- a/release/installer/app/vendor-customer-support.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-# SPDX-License-Identifier: CC0-1.0
-# SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-
-[Customer Support]
-Email = discuss@spectrum-os.org
diff --git a/release/installer/configuration.nix b/release/installer/configuration.nix
deleted file mode 100644
index 3f9ef24..0000000
--- a/release/installer/configuration.nix
+++ /dev/null
@@ -1,69 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2021-2023, 2025 Alyssa Ross <hi@alyssa.is>
-
-{ lib, modulesPath, pkgs, ... }:
-
-let
-  inherit (builtins) readFile;
-in
-
-{
-  imports = [ (modulesPath + "/profiles/all-hardware.nix") ];
-
-  boot.consoleLogLevel = lib.mkDefault 2;
-  boot.kernelParams = [ "udev.log_priority=5" ];
-  boot.initrd.verbose = false;
-
-  boot.kernelPackages = pkgs.linuxPackages_latest;
-
-  boot.plymouth.enable = true;
-  boot.plymouth.logo = pkgs.callPackage (
-    { runCommand, fetchurl, inkscape }:
-    runCommand "spectrum-logo.png" {
-      nativeBuildInputs = [ inkscape ];
-      svg = fetchurl {
-        url = "https://spectrum-os.org/git/www/plain/logo/logo_mesh.svg?id=5ac2d787b12e05a9ea91e94ca9373ced55d7371a";
-        sha256 = "1k5025nc5mxdls7bw7wk1734inadvibqxvg8b8yg6arr3y9yy46k";
-      };
-    } ''
-      inkscape -w 48 -h 48 -o "$out" "$svg"
-    ''
-  ) {};
-
-  fileSystems."/" = { fsType = "tmpfs"; };
-
-  services.cage.enable = true;
-  services.cage.program = lib.getExe (pkgs.callPackage ./app {});
-
-  services.udev.extraRules = ''
-    KERNEL=="card0", TAG+="systemd"
-  '';
-
-  systemd.services.cage-tty1.after = [ "dev-dri-card0.device" ];
-  systemd.services.cage-tty1.wants = [ "dev-dri-card0.device" ];
-
-  # Force eos-installer to stop artificially constraining its size.
-  systemd.services.cage-tty1.environment.GIS_SMALL_SCREEN = "1";
-
-  users.users.demo = { group = "demo"; isNormalUser = true; };
-  users.groups.demo = {};
-  security.polkit.extraConfig = readFile ./seat.rules;
-
-  services.udisks2.enable = true;
-
-  documentation.enable = false;
-  networking.firewall.enable = false;
-  networking.resolvconf.enable = false;
-  nix.enable = false;
-  services.timesyncd.enable = false;
-
-  boot.loader.systemd-boot.enable = true;
-
-  environment.systemPackages = with pkgs; [ adwaita-icon-theme ];
-
-  systemd.tmpfiles.rules = [
-    "L+ /var/lib/eos-image-defaults/vendor-customer-support.ini - - - - ${app/vendor-customer-support.ini}"
-  ];
-
-  system.stateVersion = lib.trivial.release;
-}
diff --git a/release/installer/default.nix b/release/installer/default.nix
deleted file mode 100644
index 845eb24..0000000
--- a/release/installer/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2021-2022 Alyssa Ross <hi@alyssa.is>
-
-import ../../lib/call-package.nix ({ extraConfig, nixos, writeClosure }:
-
-let
-  inherit (nixos {
-    imports = [ ./configuration.nix extraConfig ];
-  }) config;
-in
-
-{
-  kernel = "${config.boot.kernelPackages.kernel}/${config.system.boot.loader.kernelFile}";
-
-  initramfs = "${config.system.build.initialRamdisk}/${config.system.boot.loader.initrdFile}";
-
-  kernelParams = toString ([
-    "init=${config.system.build.toplevel}/init"
-  ] ++ config.boot.kernelParams);
-
-  store = writeClosure [ config.system.build.toplevel ];
-}) (_: { extraConfig = {}; })
diff --git a/release/installer/run-vm.nix b/release/installer/run-vm.nix
deleted file mode 100644
index b9907f7..0000000
--- a/release/installer/run-vm.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-# SPDX-License-Identifier: MIT
-# SPDX-FileCopyrightText: 2021-2025 Alyssa Ross <hi@alyssa.is>
-
-import ../../lib/call-package.nix (
-{ callSpectrumPackage, lib, coreutils, qemu_kvm, stdenv, writeShellScript }:
-
-let
-  inherit (builtins) storeDir;
-  inherit (lib) makeBinPath escapeShellArg;
-
-  eosimages = callSpectrumPackage ../combined/eosimages.nix {};
-
-  installer = callSpectrumPackage ./. {
-    extraConfig = {
-      boot.initrd.availableKernelModules = [ "9p" "9pnet_virtio" ];
-
-      fileSystems.${storeDir} = {
-        fsType = "9p";
-        device = "store";
-      };
-    };
-  };
-in
-
-writeShellScript "run-spectrum-installer-vm.sh" ''
-  export PATH=${makeBinPath [ coreutils qemu_kvm ]}
-  img="$(mktemp spectrum-installer-target.XXXXXXXXXX.img)"
-  truncate -s 40G "$img"
-  exec 3<>"$img"
-  rm -f "$img"
-  exec ${../../scripts/run-qemu.sh} -cpu max -m 4G \
-    -device virtio-keyboard \
-    -device virtio-mouse \
-    -device virtio-gpu \
-    -parallel none \
-    -vga none \
-    -virtfs local,mount_tag=store,path=/nix/store,security_model=none,readonly=true \
-    -drive file=${qemu_kvm}/share/qemu/edk2-${stdenv.hostPlatform.qemuArch}-code.fd,format=raw,if=pflash,readonly=true \
-    -drive file=${eosimages},format=raw,if=virtio,readonly=true \
-    -drive file=/proc/self/fd/3,format=raw,if=virtio \
-    -kernel ${installer.kernel} \
-    -initrd ${installer.initramfs} \
-    -append ${escapeShellArg (toString [
-      installer.kernelParams
-      "systemd.journald.forward_to_console"
-    ])}
-'') (_: {})
diff --git a/release/installer/seat.rules b/release/installer/seat.rules
deleted file mode 100644
index 79ff400..0000000
--- a/release/installer/seat.rules
+++ /dev/null
@@ -1,9 +0,0 @@
-// SPDX-License-Identifier: EUPL-1.2+
-// SPDX-FileCopyrightText: 2021 Alyssa Ross <hi@alyssa.is>
-
-polkit.addRule(function (action, subject) {
-    // The user of the graphical session should be able to do anything.
-    if (subject.seat) {
-        return polkit.Result.YES;
-    }
-});

  parent reply	other threads:[~2026-01-04 14:02 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-04 14:00 [PATCH 1/4] tools: add spectrum-installer Johannes Süllner
2026-01-04 14:00 ` [PATCH 2/4] host/rootfs: integrate spectrum-installer Johannes Süllner
2026-01-04 14:00 ` Johannes Süllner [this message]
2026-01-04 14:00 ` [PATCH 4/4] release/live: remove B slot from live image and reduce A slot size Johannes Süllner
2026-01-04 21:16   ` Demi Marie Obenour
2026-01-04 21:13 ` [PATCH 1/4] tools: add spectrum-installer Demi Marie Obenour
2026-01-11 18:30   ` Johannes Süllner
2026-01-10 21:04 ` Alyssa Ross
2026-01-18  8:54   ` Johannes Süllner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260104140102.106960-7-johannes.suellner@mailbox.org \
    --to=johannes.suellner@mailbox.org \
    --cc=devel@spectrum-os.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://spectrum-os.org/git/crosvm
	https://spectrum-os.org/git/doc
	https://spectrum-os.org/git/mktuntap
	https://spectrum-os.org/git/nixpkgs
	https://spectrum-os.org/git/spectrum
	https://spectrum-os.org/git/ucspi-vsock
	https://spectrum-os.org/git/www

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).