68 Commits

Author SHA1 Message Date
Aaron Rainbolt
ac31dfe838
Much fix, very fix, wow 2025-04-16 18:26:31 -05:00
694b57d395 [pkgselectprocess] Ensure we have the correct apt sources when doing no network (LP: #2107287).
When doing installations without network, we need to ensure that we don't try
to perform apt operations that require internet. To do this in Plucky, we need
to temporarily copy the ubuntu.sources file to an ubuntu.sources.bak file. To
bring all of the previous commits in this upload together, we use the
bind-mounted /media/cdrom not only to install the correct GRUB packages, but
to ensure that we can still install them and any other packages on ship-live.

There has to be a better, more native way to do this. It works for now, but in
the Questing cycle, we're probably going to move some of these command-line
apt calls to be a consumer of the libapt C library (LP: #2107287).
2025-04-15 22:35:18 -05:00
3288d57e56 [pkgselectprocess] When running apt remove, use CPBE just in case. 2025-04-15 22:29:07 -05:00
6cb7d4dc52 [pkgselectprocess] Ensure hasInternet is available as a local variable, so we can use it. 2025-04-15 22:27:26 -05:00
f26f191a17 [checkpackage-backend] Pass through packages starting with "^" or containing "*"
Simply pass through packages starting with "^" or containing "*". For this
cycle we can trust our distributors won't do anything unusual, but next cycle,
we need to perform explicit validation on these items.

If you are a downstream, please be careful!
2025-04-15 22:24:59 -05:00
c93e956a5e [pkgselectprocess] Ensure apt-cdrom command outputs have their own prefix. 2025-04-15 22:22:47 -05:00
3282b74627 [pkgselectprocess] Explicitly log all apt commands in the debug logs. 2025-04-15 22:21:38 -05:00
6b2555c998 [bootloader] Simply bootloader logic to ensure we can use /cdrom elsewhere
Instead of utilizing a contextualprocess to only bind-mount /cdrom to
/media/cdrom when it's a specific type of system, simply add it to the mounts
for all flavors, and move the specific copy of the vmlinuz file to a dedicated
shellprocess module. This will be re-factored next cycle, ideally being worked
directly into a dedicated C++ module instead of several, miscellaneous shell
scripts wrapped in YAML.
2025-04-15 22:19:46 -05:00
de24f68f2b [pkgselectprocess] Compliment the previous commit by aligning installation of Calamares
To complement the last fix, ensure that Calamares ends up on the removal list
for non-stacked squashfses if and only if OEM is disabled, and Calamares shows
up on the install list only for stacked squashfses which have OEM enabled.
This nuanced approach ensures all potential combinations have the intended
functionality.
2025-04-12 21:51:18 -05:00
5a1835af47 [pkgselect] Temporarily add Calamares and KDialog to the final install list for Lubuntu
As a temporary measure until OEM is refactored in the 25.10 cycle, we need to
ensure that Calamares and its necessary dependencies are installed on the
target, iff this is a stacked squashfs *and* it is an OEM install. We're doing
this in pkgselect instead of pkgselectprocess because pkgselect already knows
about stacked squashfses, it's what provides the final "additional install
list" to be considered by checkpackage-backend, and this is a temporary fix
anyway (LP: #2104343).
2025-04-12 21:34:04 -05:00
197d24e295 [pkgselectprocess] Do not include uninstallable virtual packages in the CPBE output
When we are creating the final list of packages to feed to "apt install,"
virtual packages which do not have a valid candidate are included in this
list, causing the installation to fail. When creating this list, use FindGrp
instead of FindPkg, and only add it to the list if there is a valid candidate.
Additionally, add these items to an unordered set, to eliminate deduplication
(LP: #2106773).

A reliable testcase for this is the libreoffice-help-is package, at least in
Plucky.
2025-04-12 21:02:06 -05:00
d6ff965abb [pkgselectprocess] Disable the dpkg trigger inhibition logic this cycle. The original goal here was to de-duplicate some of the trigger processing work, but it's obvious this needs more work. It's too premature to ship right now, unfortunately. 2025-04-09 06:44:48 -05:00
68b993050c [pkgselectprocess] Fix usage of checkpackage-backend
If checkpackage-backend does not exist in the target system, likely due to the
use of stacked squashfses, ensure it temporarily exists so it can be used in
the install process. This fixes installation of the Virtual Machine Manager
when selected on the Customize menu (LP: #2104243).
2025-04-09 01:56:22 -05:00
0fea5bd853 Fix installation of apt packages more consistently (LP: #2089494). 2025-02-24 04:02:12 -06:00
95b9217d82 [basicwallpaper] Bump minimum CMake version, remove .user file. 2025-02-21 13:10:36 -06:00
e24341cb0e [pkgselectprocess] Add a more robust check for apt packages when installing them (LP: #2089494). 2024-11-24 20:50:58 -06:00
9284c1f21b [pkgselectprocess] Add dpkg diversions for dracut, update-initramfs, and locale-gen. These will be called later in the process. 2024-11-24 20:24:41 -06:00
0fc038aea9 Fix apt install functionality in pkgselectprocess. 2024-11-21 22:27:58 -06:00
d3c20f92d0 Add new global storage value for stacked squashfses and adjust config. 2024-11-20 23:59:03 -06:00
e687608175 Rewrite the pkgselect module and its processing. 2024-10-29 19:23:46 -05:00
f415963f24 Port to Qt 6. 2024-10-15 23:28:32 -05:00
Aaron Rainbolt
dcd969079c Fix pkgselect UI centering bug 2024-08-08 14:25:46 -05:00
Aaron Rainbolt
664da199e4 Fix an issue where the user made during post-OEM user setup would be given UID 1001. 2024-06-12 23:41:45 -05:00
4f1f85ef9c Fix timeouts. 2024-04-19 18:50:41 -05:00
5674431193 Don't show Thunderbird on Kubuntu. 2024-04-19 18:37:11 -05:00
b2766f78bc Remove timeouts re: networking/update-initramfs 2024-04-19 21:51:53 +00:00
0d65dd0d20 Get rid of the third-party drivers checkbox. 2024-04-17 23:19:09 -05:00
cb54b1e186 Adjust spacers accordingly on no network. 2024-04-09 03:14:56 -05:00
1299a42d37 Allow fixconkeys-part2 a 5 minute window to run, which should be enough to run update-initramfs (LP: #2060429). 2024-04-09 03:08:13 -05:00
1cebfe1fd8 no network 2024-03-28 23:26:46 -05:00
be86ca1ec0 snap-seed-glue 2024-03-28 22:53:26 -05:00
7bad26586e Enhance design with suggestions from Michael, make changelog more accurate 2024-03-22 01:07:13 -05:00
a6ece69a5a Ensure the items show up in globalStorage, but fail at actually using them 2024-03-21 22:44:13 -05:00
45d0d7bb62 can haz UI instead of QML pls kthxbai 2024-03-21 21:29:58 -05:00
991af8f043 Enable pkgselect for everyone. 2024-03-21 18:41:13 -05:00
ffc955d58e Fix LUKS passphrase prompt for non-US keyboard layouts, undo an accidental change to Kubuntu 2024-03-21 16:26:13 -05:00
4629bba99c Massive OEM mode overhaul for Lubuntu, tweaks and fixes for Kubuntu OEM mode 2024-02-14 18:09:10 -06:00
c2fa148bc5 Be compliant with the current state of the deb822 Ubuntu implementation specification. 2024-01-18 16:27:33 -06:00
f8bf449335 Add some testing code to the QML file to make it do what we'd like. 2023-11-22 18:30:35 -06:00
e54b912e24 Add a full installation radio button, and disable the bottom checkboxes if minimal install is selected. 2023-11-22 16:51:02 -06:00
dfe54b454d Even if modules fail, try to perform the unmount. 2023-11-22 15:35:12 -06:00
dc16d97796 pkgselect CMakeLists.txt fixes 2023-11-15 20:14:27 -06:00
1de2940b52 Some more polish around text and Ubuntu Restricted Extras etc. 2023-10-20 13:34:24 -05:00
9f6b8f8e8a Migrate to deb822 sources, removing the sources.list file pre-populated by livecd-rootfs. Main and Universe deb sources are enabled by default, Restricted and Multiverse are opt-in via the installer checkbox. 2023-10-16 09:38:37 -05:00
9b0d4c4394 Completely finish the backend for pkgselect 2023-10-15 17:12:58 -05:00
b52736fc07 Finish the prototype for pkgselect, which stores the values in GlobalStorage for later usage by a contextualprocess 2023-10-15 17:12:58 -05:00
448d50f929 Start more of the backend implementation. 2023-10-15 17:12:58 -05:00
26e2cbac91 In another step forward on this ongoing project, connect the view step to a Job, which runs during the installation. 2023-10-15 17:12:58 -05:00
4b847dae69 Add the UI for Package Select, allowing for fine-tuned customization of the installed system. 2023-10-15 17:12:58 -05:00
2be42e5594 Use geoip.ubuntu.com by default. 2023-10-08 12:19:55 -05:00