Skip to content

Conversation

raboof
Copy link
Member

@raboof raboof commented Apr 18, 2025

calamares is the only remaining dependency on qt5.qtwebengine in the graphical installer

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Apr 18, 2025
@raboof raboof requested review from manveru and vlinkz April 22, 2025 10:54
@raboof
Copy link
Member Author

raboof commented Apr 22, 2025

I tried building the ISO with nix-build nixos/release-combined.nix -A nixos.iso_graphical.x86_64-linux and then testing it with qemu-system-x86_64 -cdrom result/iso/nixos-graphical-25.05pre56789.gfedcba-x86_64-linux.iso -m 2048 -smp 4. The installer loads but cannot start because the module partition@partition cannot be loaded - presumably because my virtual machine has no disks.

@raboof raboof requested a review from ElvishJerricco May 7, 2025 06:56
@ofborg ofborg bot added the ofborg-internal-error Ofborg encountered an error label May 16, 2025
@ofborg ofborg bot removed the ofborg-internal-error Ofborg encountered an error label Jun 2, 2025
@raboof
Copy link
Member Author

raboof commented Jun 2, 2025

OK, the partition@partition was in fact a problem with the packaging, now fixed. Testing with:

$ qemu-img create /path/to/foo.qcow2 40G
$ nix-build nixos/release-combined.nix -A nixos.iso_graphical.x86_64-linux
$ qemu-system-x86_64 -cdrom result/iso/nixos-graphical-*.iso -m 4096 -smp 8 -drive file=/path/to/foo.qcow2
(select 'Plasma')

I see some smaller problems:

  • The warning/error icons for unsafe passwords look bad
  • I cannot switch to an earlier phase using the menu on the left, only with the previous/next buttons
  • The step where I select whether to include LibreOffice, not include LibreOffice or perform a minimal install is in the 'Unfree Software' category, which seems odd.
  • The 'overview' page at the end was too big for the size of the window, I had to manually maximize the window to be able to continue

I haven't checked if those problems were already there earlier, to me they don't feel like showstoppers for dropping qt5 tbh. This produced a system that I could boot into just fine with:

$ qemu-system-x86_64 -m 4096 -smp 8 -drive file=/path/to/foo.qcow2

@raboof raboof marked this pull request as ready for review June 2, 2025 13:41
@raboof raboof moved this to Graphical ISO runtime in Reproducible Builds Jun 9, 2025
Copy link
Contributor

@ElvishJerricco ElvishJerricco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I cannot switch to an earlier phase using the menu on the left, only with the previous/next buttons

This is normal for us.

The 'overview' page at the end was too big for the size of the window, I had to manually maximize the window to be able to continue

This is, believe it or not, also normal for us :P

image

The step where I select whether to include LibreOffice, not include LibreOffice or perform a minimal install is in the 'Unfree Software' category, which seems odd.

That screen doesn't exist at all prior to this change. So calamares is doing something weird that we need to account for. This is in fact a showstopper because the buttons in this UI will not do anything, and we lose the ability to allow unfree software.

@raboof
Copy link
Member Author

raboof commented Jun 18, 2025

Thank you very much for having a look!

OK, so it'd be good to zoom in on 0004-Adds-unfree-qml-to-packagechooserq.patch and see what might be going on there. To set expectations, I'm not sure if I'll find time to look into this soon.

@raboof
Copy link
Member Author

raboof commented Jun 19, 2025

This is in fact a showstopper because the buttons in this UI will not do anything

Ah, right, that doesn't make sense then

and we lose the ability to allow unfree software

(fwiw I'd personally be OK with that being a manual step after installation, but I suppose that's my bias showing 😄)

@vcunat vcunat added the 6.topic: closure size The final size of a derivation, including its dependencies label Jun 19, 2025
@emilazy
Copy link
Member

emilazy commented Jun 20, 2025

The QML in the calamares-nixos-extensions repo needs porting to Qt 6. There’s examples of a Qt 5 and Qt 6 extension page thingy in the Calamares repository that you could use for reference. I was working on this to reduce ISO closure size but I got bored. You might want to take a look at https://github.com/emilazy/nixpkgs/commits/push-zkkxlquwrylt, which contains additional changes compared to this PR; feel free to reuse my commits.

calamares is the only remaining dependency on qt5.qtwebengine
in the graphical installer
@raboof
Copy link
Member Author

raboof commented Jun 24, 2025

Fixed the 0004-Adds-unfree-qml-to-packagechooserq.patch so the 'Unfree Software' page works on qt6

@raboof
Copy link
Member Author

raboof commented Jun 24, 2025

The QML in the calamares-nixos-extensions repo needs porting to Qt 6.

Is there anything in particular that needs porting? I'm not very familiar with QML but I don't see anything particularly wrong?

@raboof raboof requested a review from ElvishJerricco June 24, 2025 21:39
@nixpkgs-ci nixpkgs-ci bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Aug 15, 2025
@raboof
Copy link
Member Author

raboof commented Aug 18, 2025

no longer needed since #430636 is in

@raboof raboof closed this Aug 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.status: merge conflict This PR has merge conflicts with the target branch 6.topic: closure size The final size of a derivation, including its dependencies 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.
Projects
Status: Graphical ISO runtime
Development

Successfully merging this pull request may close these issues.

4 participants