Skip to content

Mark notifications with the source qube's colour - #19

Open
oshogbo wants to merge 2 commits into
QubesOS:mainfrom
oshogbo:qube-mark-on-notifications
Open

Mark notifications with the source qube's colour#19
oshogbo wants to merge 2 commits into
QubesOS:mainfrom
oshogbo:qube-mark-on-notifications

Conversation

@oshogbo

@oshogbo oshogbo commented Aug 18, 2026

Copy link
Copy Markdown

This is what I got:

image

Closes QubesOS/qubes-issues#9648

@oshogbo
oshogbo force-pushed the qube-mark-on-notifications branch from fafdb68 to ea60c06 Compare August 18, 2026 08:22
@marmarek

Copy link
Copy Markdown
Member

I like it, @marmarta what do you think?

@marmarek

Copy link
Copy Markdown
Member

PipelineRetry

@qubesos-bot

qubesos-bot commented Aug 19, 2026

Copy link
Copy Markdown

OpenQA test summary

Complete test suite and dependencies: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2026082719-devel&flavor=pull-requests

Test run included the following:

Upload failures

  • system_tests_extra

    • system_tests: wait_serial (unknown)
      # Command: testfunc qubes.tests.extra...

    • system_tests: Failed (test died + timed out)
      # Test died: command 'testfunc qubes.tests.extra' timed out at qube...

  • system_tests_backupdispvm

    • system_tests: Failed (test died)
      # Test died: command 'curl --form upload=@tests-qubes.tests.integ.b...

New failures, excluding unstable

Compared to: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2026050504-devel&flavor=update

  • system_tests_qrexec

  • system_tests_qwt_win10@hw13

    • windows_install: wait_serial (wait serial expected)
      # wait_serial expected: qr/install-complete-\d+-/...
  • system_tests_qwt_win11@hw13

    • windows_install: wait_serial (wait serial expected)
      # wait_serial expected: qr/install-complete-\d+-/...
  • system_tests_gpu_passthrough@hw13

    • gpu_passthrough: Failed (test died)
      # Test died: command 'ansible-playbook -i inventory -e pci_devices=...

Failed tests

10 failures
  • system_tests_qrexec

  • system_tests_dispvm

  • system_tests_qwt_win10@hw13

    • windows_install: wait_serial (wait serial expected)
      # wait_serial expected: qr/install-complete-\d+-/...

    • windows_install: Failed (test died + timed out)
      # Test died: Install timed out at qubesos/tests/windows_install.pm ...

  • system_tests_qwt_win11@hw13

    • windows_install: wait_serial (wait serial expected)
      # wait_serial expected: qr/install-complete-\d+-/...

    • windows_install: Failed (test died + timed out)
      # Test died: Install timed out at qubesos/tests/windows_install.pm ...

  • system_tests_whonix

    • [unstable] whonixcheck: fail (unknown)
      Whonixcheck for anon-whonix failed...

    • [unstable] whonixcheck: fail (unknown)
      Whonixcheck for sys-whonix failed...

    • [unstable] whonixcheck: Failed (test died)
      # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...

  • system_tests_gpu_passthrough@hw13

    • gpu_passthrough: Failed (test died)
      # Test died: command 'ansible-playbook -i inventory -e pci_devices=...

Fixed failures

Compared to: https://openqa.qubes-os.org/tests/176874#dependencies

37 fixed
  • system_tests_pvgrub_salt_storage

    • system_tests: Fail (unknown)
      Tests qubes.tests.integ.grub failed (exit code 1), details reported...

    • system_tests: Failed (test died)
      # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...

    • TC_41_HVMGrub_debian-13-xfce: test_000_standalone_vm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_41_HVMGrub_debian-13-xfce: test_001_standalone_vm_dracut (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_41_HVMGrub_debian-13-xfce: test_010_template_based_vm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_41_HVMGrub_debian-13-xfce: test_011_template_based_vm_dracut (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_41_HVMGrub_fedora-43-xfce: test_010_template_based_vm (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

  • system_tests_extra

    • system_tests: Fail (unknown)
      Tests qubes.tests.extra failed (exit code 1), details reported sepa...

    • TC_01_InputProxyExclude_debian-13-xfce: test_000_qemu_tablet (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_01_InputProxyExclude_fedora-43-xfce: test_000_qemu_tablet (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

    • TC_00_QVCTest_fedora-43-xfce: test_010_screenshare (failure + cleanup)
      ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 1179648 != 0

    • TC_00_QVCTest_whonix-gateway-18: test_010_screenshare (failure + cleanup)
      AssertionError: 2.3156185715769593 not less than 2.0

    • TC_00_PDFConverter_fedora-43-xfce: test_004_cancel_stops_conversion (failure)
      AssertionError: DispVM not cleaned up 10s after cancel: {<DispVM at...

  • system_tests_usbproxy

    • system_tests: Fail (unknown)
      Tests qubes.tests.extra failed (exit code 1), details reported sepa...

    • system_tests: Failed (test died)
      # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...

    • system_tests: wait_serial (wait serial expected)
      # wait_serial expected: qr/h3uXO-\d+-/...

    • TC_20_USBProxy_core3_fedora-43-xfce: test_090_attach_stubdom (error)
      qubes.exc.QubesVMError: Cannot connect to qrexec agent for 120 seco...

  • system_tests_network_ipv6

    • system_tests: Fail (unknown)
      Tests qubes.tests.integ.network_ipv6 failed (exit code 1), details ...

    • system_tests: Failed (test died)
      # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...

    • VmIPv6Networking_fedora-43-xfce: test_001_simple_networking_paused_from_none_to_existent (error)
      raise TimeoutError from exc_val... TimeoutError

  • system_tests_audio

  • system_tests_audio@hw1

    • system_tests: Fail (unknown)
      Tests qubes.tests.integ.audio failed (exit code 1), details reporte...

    • system_tests: Failed (test died)
      # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...

    • TC_20_AudioVM_Pulse_debian-13-xfce: test_222_audio_rec_unmuted_pulseaudio (failure)
      AssertionError: only silence detected, no useful audio data

  • system_tests_guivm_gpu_gui_interactive@hw13

    • shutdown: unnamed test (unknown)
    • shutdown: Failed (test died)
      # Test died: no candidate needle with tag(s) 'text-logged-in-root' ...
  • system_tests_whonix@hw1

    • whonixcheck: fail (unknown)
      Whonixcheck for sys-whonix failed...

    • whonixcheck: Failed (test died)
      # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...

  • system_tests_qwt_win10_seamless@hw13

    • windows_clipboard_and_filecopy: unnamed test (unknown)
    • windows_clipboard_and_filecopy: Failed (test died)
      # Test died: no candidate needle with tag(s) 'windows-Edge-address-...

Unstable tests

Details
  • system_tests_extra

    system_tests/Failed (1/5 times with errors)
    • job 192562 # Test died: command 'testfunc qubes.tests.extra' timed out at qube...
    system_tests/Failed (1/5 times with errors)
    • job 193751 # Test died: command 'curl --form upload=@nose2-junit.xml --form up...
    system_tests/wait_serial (1/5 times with errors)
    • job 192562 # Command: testfunc qubes.tests.extra...
  • system_tests_gui_interactive

    clipboard_and_web/ (1/5 times with errors)
    clipboard_and_web/Failed (1/5 times with errors)
    • job 193803 # Test died: no candidate needle with tag(s) 'clipboard-paste-notif...
    gui_keyboard_layout/Failed (1/5 times with errors)
    • job 193752 # Test died: command 'qvm-run -pu root work systemctl --wait is-sys...
  • system_tests_guivm_gui_interactive

    clipboard_and_web/ (1/5 times with errors)
    clipboard_and_web/Failed (1/5 times with errors)
    • job 193754 # Test died: no candidate needle with tag(s) 'clipboard-paste-notif...
  • system_tests_qrexec

    system_tests/Fail (1/5 times with errors)
    • job 193759 Tests qubes.tests.integ.qrexec failed (exit code 1), details report...
    system_tests/Failed (1/5 times with errors)
    • job 193759 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_00_Qrexec_whonix-workstation-18/test_050_qrexec_simple_eof (1/5 times with errors)
    • job 193759 AssertionError: Timeout, probably EOF wasn't transferred to the VM ...
  • system_tests_network_updates

    system_tests/Fail (1/5 times with errors)
    • job 193004 Tests qubes.tests.integ.dom0_update failed (exit code 1), details r...
    system_tests/Fail (1/5 times with errors)
    • job 193841 Tests qubes.tests.integ.dom0_update failed (exit code 1), details r...
    system_tests/Fail (1/5 times with errors)
    • job 193757 Tests qubes.tests.integ.vm_template_upgrade failed (exit code 1), d...
    system_tests/Fail (1/5 times with errors)
    • job 193841 Tests qubes.tests.integ.vm_template_upgrade failed (exit code 1), d...
    system_tests/Failed (1/5 times with errors)
    • job 193004 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    system_tests/Failed (1/5 times with errors)
    • job 193757 # Test died: command 'sudo python3 split_logs.py --junit-xml=nose2-...
    system_tests/Failed (1/5 times with errors)
    • job 193841 # Test died: command 'sudo python3 split_logs.py --junit-xml=nose2-...
    TC_00_Dom0Upgrade_whonix-gateway-18/test_000_update_qubes_vm_update (1/5 times with errors)
    • job 193841 ~~~~~~~~~^^^^^^^^^^^^^^^^^^... AssertionError: qubes-vm-update failed:
    TC_00_Dom0Upgrade_whonix-gateway-18/test_010_instal (1/5 times with errors)
    • job 193004 Error: Failed to download metadata for repo 'test': Cannot download...
    TC_11_QvmTemplateMgmtVM_fedora-44-xfce/test_010_template_install (1/5 times with errors)
    • job 193004 AssertionError: qvm-template failed: [Qrexec] ERROR: dnf command is...
    integ/vm_template_upgrade (2/5 times with errors)
    • job 193757 ModuleNotFoundError: No module named 'qubes.tests.integ.vm_template...
    • job 193841 ModuleNotFoundError: No module named 'qubes.tests.integ.vm_template...
  • system_tests_dispvm

    system_tests/Fail (1/5 times with errors)
    • job 193804 Tests qubes.tests.integ.dispvm failed (exit code 1), details report...
    system_tests/Fail (1/5 times with errors)
    • job 193750 Tests qubes.tests.integ.dispvm failed (exit code 1), details report...
    system_tests/Failed (1/5 times with errors)
    • job 193804 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    system_tests/Failed (1/5 times with errors)
    • job 193750 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_21_DispVM_Preload/test_012_preload_low_mem (2/5 times with errors)
    • job 193750 ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 1 != 0
    • job 193804 ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 1 != 0
    TC_21_DispVM_Preload/test_012_preload_low_mem_early_startup (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_20_DispVM_debian-13-xfce/test_013_preload_gui (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_20_DispVM_fedora-44-xfce/test_013_preload_gui (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_20_DispVM_whonix-workstation-18/test_013_preload_gui (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_21_DispVM_Preload/test_015_preload_race_more (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_21_DispVM_Preload/test_017_preload_autostart (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_21_DispVM_Preload/test_018_preload_global (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_21_DispVM_Preload/test_019_preload_discard_outdated_volumes (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_21_DispVM_Preload/test_020_preload_discard_outdated_volume_size (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
    TC_21_DispVM_Preload/test_021_preload_discard_outdated_setting (2/5 times with errors)
    • job 193750 AssertionError: last preloaded didn't complete in time
    • job 193804 AssertionError: last preloaded didn't complete in time
  • system_tests_kde_gui_interactive

    gui_keyboard_layout/Failed (1/5 times with errors)
    • job 193730 # Test died: command 'qvm-run -pu root work systemctl --wait is-sys...
  • system_tests_guivm_vnc_gui_interactive

    guivm_manager/ (1/5 times with errors)
    guivm_manager/Failed (1/5 times with errors)
    • job 193734 # Test died: no candidate needle with tag(s) 'menu-qubes-tools' mat...
  • system_tests_audio

    system_tests/Fail (1/5 times with errors)
    • job 192976 Tests qubes.tests.integ.audio failed (exit code 1), details reporte...
    system_tests/Failed (1/5 times with errors)
    • job 192976 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_220_audio_play_pulseaudio (1/5 times with errors)
    • job 192976 AssertionError: too short audio, expected 10s, got 9.49, saved to /...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_222_audio_rec_unmuted_pulseaudio (1/5 times with errors)
    • job 192976 AssertionError: too short audio, expected 10s, got 9.05251700680272...
    TC_20_AudioVM_PipeWire_whonix-workstation-18/test_226_audio_playback_pipewire (1/5 times with errors)
    • job 192976 AssertionError: too short audio, expected 10s, got 8.97385487528344...
  • system_tests_audio@hw1

    system_tests/Fail (1/5 times with errors)
    • job 192976 Tests qubes.tests.integ.audio failed (exit code 1), details reporte...
    system_tests/Failed (1/5 times with errors)
    • job 192976 # Test died: Some tests failed at qubesos/tests/system_tests.pm lin...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_220_audio_play_pulseaudio (1/5 times with errors)
    • job 192976 AssertionError: too short audio, expected 10s, got 9.49, saved to /...
    TC_20_AudioVM_Pulse_whonix-workstation-18/test_222_audio_rec_unmuted_pulseaudio (1/5 times with errors)
    • job 192976 AssertionError: too short audio, expected 10s, got 9.05251700680272...
    TC_20_AudioVM_PipeWire_whonix-workstation-18/test_226_audio_playback_pipewire (1/5 times with errors)
    • job 192976 AssertionError: too short audio, expected 10s, got 8.97385487528344...
  • system_tests_gui_interactive@hw7

    clipboard_and_web/ (1/5 times with errors)
    clipboard_and_web/Failed (1/5 times with errors)
    • job 193803 # Test died: no candidate needle with tag(s) 'clipboard-paste-notif...
    gui_keyboard_layout/Failed (1/5 times with errors)
    • job 193752 # Test died: command 'qvm-run -pu root work systemctl --wait is-sys...
  • system_tests_whonix@hw1

    whonixcheck/Failed (1/5 times with errors)
    • job 193726 # Test died: command 'qvm-run -ap whonix-gateway-18 'LC_ALL=C whon...
    whonixcheck/Failed (1/5 times with errors)
    • job 192973 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/fail (1/5 times with errors)
    • job 193726 Whonixcheck for anon-whonix failed...
    whonixcheck/fail (1/5 times with errors)
    whonixcheck/wait_serial (1/5 times with errors)
    • job 193726 # Command: qvm-run -ap whonix-gateway-18 'LC_ALL=C whonixcheck --v...
  • system_tests_whonix

    whonixcheck/Failed (1/5 times with errors)
    • job 193726 # Test died: command 'qvm-run -ap whonix-gateway-18 'LC_ALL=C whon...
    whonixcheck/Failed (1/5 times with errors)
    • job 192973 # Test died: systemcheck failed at qubesos/tests/whonixcheck.pm lin...
    whonixcheck/fail (1/5 times with errors)
    • job 193726 Whonixcheck for anon-whonix failed...
    whonixcheck/fail (1/5 times with errors)
    whonixcheck/wait_serial (1/5 times with errors)
    • job 193726 # Command: qvm-run -ap whonix-gateway-18 'LC_ALL=C whonixcheck --v...

Performance Tests

Performance degradation:

20 performance degradations
  • debian-13-xfce_exec: 8.92 🔻 ( previous job: 7.85, degradation: 113.56%)
  • debian-13-xfce_exec-data-duplex: 68.96 🔻 ( previous job: 62.45, degradation: 110.42%)
  • whonix-gateway-18_exec-root: 152.54 🔻 ( previous job: 126.14, degradation: 120.93%)
  • whonix-gateway-18_socket-root: 9.36 🔻 ( previous job: 8.37, degradation: 111.81%)
  • whonix-gateway-18_socket-data-duplex: 107.87 🔻 ( previous job: 90.03, degradation: 119.80%)
  • whonix-workstation-18_exec-root: 164.99 🔻 ( previous job: 144.02, degradation: 114.56%)
  • whonix-workstation-18_socket: 9.36 🔻 ( previous job: 7.66, degradation: 122.19%)
  • whonix-workstation-18_socket-root: 10.03 🔻 ( previous job: 8.87, degradation: 113.10%)
  • whonix-workstation-18_exec-data-duplex-root: 153.14 🔻 ( previous job: 130.67, degradation: 117.20%)
  • dom0_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 8002.00 🔻 ( previous job: 8963.00, degradation: 89.28%)
  • dom0_varlibqubes_seq1m_q1t1_write 3:write_bandwidth_kb: 168043.00 🔻 ( previous job: 201978.00, degradation: 83.20%)
  • dom0_varlibqubes_rnd4k_q32t1_write 3:write_bandwidth_kb: 8750.00 🔻 ( previous job: 10623.00, degradation: 82.37%)
  • debian-13-xfce_dom0-dispvm-preload-4-delay-minus-1d2-api (mean:2.709): 32.51 🔻 ( previous job: 28.74, degradation: 113.12%)
  • debian-13-xfce_dom0-dispvm-preload-4-gui-api (mean:4.109): 49.31 🔻 ( previous job: 44.40, degradation: 111.06%)
  • whonix-workstation-18_dom0-dispvm-api (mean:9.757): 117.08 🔻 ( previous job: 97.14, degradation: 120.54%)
  • whonix-workstation-18_dom0-dispvm-gui-api (mean:11.82): 141.84 🔻 ( previous job: 121.86, degradation: 116.40%)
  • whonix-workstation-18_dom0-dispvm-preload-2-api (mean:4.932): 59.18 🔻 ( previous job: 48.39, degradation: 122.30%)
  • whonix-workstation-18_dom0-dispvm-preload-2-delay-0-api (mean:4.513): 54.15 🔻 ( previous job: 48.26, degradation: 112.20%)
  • whonix-workstation-18_dom0-dispvm-preload-2-delay-minus-1d2-api (mean:5.46): 65.52 🔻 ( previous job: 59.22, degradation: 110.65%)
  • whonix-workstation-18_dom0-dispvm-preload-4-api (mean:3.666): 43.99 🔻 ( previous job: 38.29, degradation: 114.90%)

Remaining performance tests:

91 tests
  • debian-13-xfce_exec-root: 26.91 🔻 ( previous job: 26.74, degradation: 100.64%)
  • debian-13-xfce_socket: 9.11 🔻 ( previous job: 8.37, degradation: 108.82%)
  • debian-13-xfce_socket-root: 9.19 🔻 ( previous job: 9.13, degradation: 100.71%)
  • debian-13-xfce_exec-data-simplex: 63.51 🔻 ( previous job: 63.05, degradation: 100.72%)
  • debian-13-xfce_exec-data-duplex-root: 82.32 🔻 ( previous job: 78.04, degradation: 105.48%)
  • debian-13-xfce_socket-data-duplex: 87.73 🔻 ( previous job: 85.67, degradation: 102.42%)
  • fedora-44-xfce_exec: 9.20
  • fedora-44-xfce_exec-root: 71.08
  • fedora-44-xfce_socket: 9.57
  • fedora-44-xfce_socket-root: 8.69
  • fedora-44-xfce_exec-data-simplex: 68.46
  • fedora-44-xfce_exec-data-duplex: 70.90
  • fedora-44-xfce_exec-data-duplex-root: 110.05
  • fedora-44-xfce_socket-data-duplex: 83.95
  • whonix-gateway-18_exec: 7.33 🟢 ( previous job: 8.01, improvement: 91.57%)
  • whonix-gateway-18_socket: 8.69 🔻 ( previous job: 8.63, degradation: 100.66%)
  • whonix-gateway-18_exec-data-simplex: 66.70 🔻 ( previous job: 62.50, degradation: 106.72%)
  • whonix-gateway-18_exec-data-duplex: 65.77 🟢 ( previous job: 68.01, improvement: 96.70%)
  • whonix-gateway-18_exec-data-duplex-root: 146.64 🔻 ( previous job: 137.28, degradation: 106.81%)
  • whonix-workstation-18_exec: 8.00 🟢 ( previous job: 8.14, improvement: 98.36%)
  • whonix-workstation-18_exec-data-simplex: 71.05 🔻 ( previous job: 66.36, degradation: 107.07%)
  • whonix-workstation-18_exec-data-duplex: 68.82 🔻 ( previous job: 65.56, degradation: 104.98%)
  • whonix-workstation-18_socket-data-duplex: 81.85 🟢 ( previous job: 92.97, improvement: 88.04%)
  • dom0_root_seq1m_q8t1_read 3:read_bandwidth_kb: 452557.00 🟢 ( previous job: 388793.00, improvement: 116.40%)
  • dom0_root_seq1m_q8t1_write 3:write_bandwidth_kb: 138971.00 🟢 ( previous job: 119690.00, improvement: 116.11%)
  • dom0_root_seq1m_q1t1_read 3:read_bandwidth_kb: 354248.00 🟢 ( previous job: 245223.00, improvement: 144.46%)
  • dom0_root_seq1m_q1t1_write 3:write_bandwidth_kb: 183433.00 🔻 ( previous job: 199974.00, degradation: 91.73%)
  • dom0_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 100262.00 🟢 ( previous job: 13948.00, improvement: 718.83%)
  • dom0_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 9211.00 🟢 ( previous job: 6899.00, improvement: 133.51%)
  • dom0_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 5137.00 🟢 ( previous job: 5055.00, improvement: 101.62%)
  • dom0_varlibqubes_seq1m_q8t1_read 3:read_bandwidth_kb: 465826.00 🟢 ( previous job: 429040.00, improvement: 108.57%)
  • dom0_varlibqubes_seq1m_q8t1_write 3:write_bandwidth_kb: 275941.00 🟢 ( previous job: 257066.00, improvement: 107.34%)
  • dom0_varlibqubes_seq1m_q1t1_read 3:read_bandwidth_kb: 407372.00 🔻 ( previous job: 446202.00, degradation: 91.30%)
  • dom0_varlibqubes_rnd4k_q32t1_read 3:read_bandwidth_kb: 92548.00 🔻 ( previous job: 102155.00, degradation: 90.60%)
  • dom0_varlibqubes_rnd4k_q1t1_read 3:read_bandwidth_kb: 8313.00 🟢 ( previous job: 8179.00, improvement: 101.64%)
  • dom0_varlibqubes_rnd4k_q1t1_write 3:write_bandwidth_kb: 4758.00 🟢 ( previous job: 4404.00, improvement: 108.04%)
  • fedora-44-xfce_root_seq1m_q8t1_read 3:read_bandwidth_kb: 378820.00
  • fedora-44-xfce_root_seq1m_q8t1_write 3:write_bandwidth_kb: 159732.00
  • fedora-44-xfce_root_seq1m_q1t1_read 3:read_bandwidth_kb: 290625.00
  • fedora-44-xfce_root_seq1m_q1t1_write 3:write_bandwidth_kb: 175455.00
  • fedora-44-xfce_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 78517.00
  • fedora-44-xfce_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 3867.00
  • fedora-44-xfce_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 8527.00
  • fedora-44-xfce_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 1259.00
  • fedora-44-xfce_private_seq1m_q8t1_read 3:read_bandwidth_kb: 342448.00
  • fedora-44-xfce_private_seq1m_q8t1_write 3:write_bandwidth_kb: 221078.00
  • fedora-44-xfce_private_seq1m_q1t1_read 3:read_bandwidth_kb: 255314.00
  • fedora-44-xfce_private_seq1m_q1t1_write 3:write_bandwidth_kb: 47258.00
  • fedora-44-xfce_private_rnd4k_q32t1_read 3:read_bandwidth_kb: 84348.00
  • fedora-44-xfce_private_rnd4k_q32t1_write 3:write_bandwidth_kb: 1799.00
  • fedora-44-xfce_private_rnd4k_q1t1_read 3:read_bandwidth_kb: 8963.00
  • fedora-44-xfce_private_rnd4k_q1t1_write 3:write_bandwidth_kb: 691.00
  • fedora-44-xfce_volatile_seq1m_q8t1_read 3:read_bandwidth_kb: 355932.00
  • fedora-44-xfce_volatile_seq1m_q8t1_write 3:write_bandwidth_kb: 176320.00
  • fedora-44-xfce_volatile_seq1m_q1t1_read 3:read_bandwidth_kb: 307590.00
  • fedora-44-xfce_volatile_seq1m_q1t1_write 3:write_bandwidth_kb: 25840.00
  • fedora-44-xfce_volatile_rnd4k_q32t1_read 3:read_bandwidth_kb: 77572.00
  • fedora-44-xfce_volatile_rnd4k_q32t1_write 3:write_bandwidth_kb: 2476.00
  • fedora-44-xfce_volatile_rnd4k_q1t1_read 3:read_bandwidth_kb: 8934.00
  • fedora-44-xfce_volatile_rnd4k_q1t1_write 3:write_bandwidth_kb: 518.00
  • debian-13-xfce_dom0-dispvm-api (mean:6.439): 77.26 🔻 ( previous job: 74.50, degradation: 103.72%)
  • debian-13-xfce_dom0-dispvm-gui-api (mean:8.322): 99.86 🔻 ( previous job: 93.50, degradation: 106.81%)
  • debian-13-xfce_dom0-dispvm-preload-2-api (mean:3.402): 40.82 🔻 ( previous job: 37.79, degradation: 108.02%)
  • debian-13-xfce_dom0-dispvm-preload-2-delay-0-api (mean:3.016): 36.20 🔻 ( previous job: 34.29, degradation: 105.56%)
  • debian-13-xfce_dom0-dispvm-preload-2-delay-minus-1d2-api (mean:3.322): 39.86 🔻 ( previous job: 38.52, degradation: 103.48%)
  • debian-13-xfce_dom0-dispvm-preload-4-api (mean:2.476): 29.71 🟢 ( previous job: 30.73, improvement: 96.66%)
  • debian-13-xfce_dom0-dispvm-preload-4-delay-0-api (mean:2.572): 30.87 🔻 ( previous job: 29.50, degradation: 104.64%)
  • debian-13-xfce_dom0-dispvm-preload-2-gui-api (mean:4.802): 57.63 🔻 ( previous job: 53.65, degradation: 107.41%)
  • debian-13-xfce_dom0-dispvm-preload-6-gui-api (mean:3.308): 39.70 🟢 ( previous job: 41.47, improvement: 95.73%)
  • debian-13-xfce_dom0-vm-api (mean:0.034): 0.40 🟢 ( previous job: 0.62, improvement: 65.00%)
  • debian-13-xfce_dom0-vm-gui-api (mean:0.032): 0.39 🟢 ( previous job: 0.47, improvement: 83.44%)
  • fedora-44-xfce_dom0-dispvm-api (mean:8.122): 97.46
  • fedora-44-xfce_dom0-dispvm-gui-api (mean:10.282): 123.39
  • fedora-44-xfce_dom0-dispvm-preload-2-api (mean:4.206): 50.47
  • fedora-44-xfce_dom0-dispvm-preload-2-delay-0-api (mean:3.876): 46.51
  • fedora-44-xfce_dom0-dispvm-preload-2-delay-minus-1d2-api (mean:4.128): 49.53
  • fedora-44-xfce_dom0-dispvm-preload-4-api (mean:3.033): 36.39
  • fedora-44-xfce_dom0-dispvm-preload-4-delay-0-api (mean:2.799): 33.59
  • fedora-44-xfce_dom0-dispvm-preload-4-delay-minus-1d2-api (mean:2.91): 34.92
  • fedora-44-xfce_dom0-dispvm-preload-2-gui-api (mean:5.323): 63.88
  • fedora-44-xfce_dom0-dispvm-preload-4-gui-api (mean:4.286): 51.43
  • fedora-44-xfce_dom0-dispvm-preload-6-gui-api (mean:3.558): 42.70
  • fedora-44-xfce_dom0-vm-api (mean:0.033): 0.39
  • fedora-44-xfce_dom0-vm-gui-api (mean:0.03): 0.36
  • whonix-workstation-18_dom0-dispvm-preload-4-delay-0-api (mean:3.394): 40.73 🟢 ( previous job: 43.23, improvement: 94.22%)
  • whonix-workstation-18_dom0-dispvm-preload-4-delay-minus-1d2-api (mean:3.791): 45.49 🔻 ( previous job: 42.67, degradation: 106.62%)
  • whonix-workstation-18_dom0-dispvm-preload-2-gui-api (mean:6.383): 76.59 🔻 ( previous job: 72.05, degradation: 106.31%)
  • whonix-workstation-18_dom0-dispvm-preload-4-gui-api (mean:4.645): 55.74 🔻 ( previous job: 52.81, degradation: 105.54%)
  • whonix-workstation-18_dom0-dispvm-preload-6-gui-api (mean:4.245): 50.94 🔻 ( previous job: 50.72, degradation: 100.44%)
  • whonix-workstation-18_dom0-vm-api (mean:0.035): 0.42 🟢 ( previous job: 0.43, improvement: 96.30%)
  • whonix-workstation-18_dom0-vm-gui-api (mean:0.045): 0.54 🟢 ( previous job: 0.56, improvement: 97.66%)

@marmarta

Copy link
Copy Markdown
Member

I generally like it, but I have questions: how does it look when the icon has some transparency? I wonder if this remains readable with colorful icons - I don't see that many colorful icons in notifications in general, though.

@marmarek

Copy link
Copy Markdown
Member

It doesn't appear to work :(
First test: https://openqa.qubes-os.org/tests/192868#step/startup/9, but here nm-applet uses image-path, not image-data, so kinda expected.
For the second test, I opened firefox searched for notifications test and got cleverpush.com/en/test-notifications. dbus-monitor confirms this one sends image-data, but still got only qube icon. And a log entry on the server part: Ignoring unusablke image from guest: Width or height too large. It seems the icon is 256x256 here (BTW, that error could include that info...).

For the size, either the limit should be higher, or the client should scale it down to allowed size. The current limit seems to be 255, so almost... Maybe dbus notification spec includes suggested limits?

As for the image-path, if it's function is equivalent to image-data, maybe client could read the file and send as image-data?

@oshogbo

oshogbo commented Aug 20, 2026

Copy link
Copy Markdown
Author

I generally like it, but I have questions: how does it look when the icon has some transparency? I wonder if this remains readable with colorful icons - I don't see that many colorful icons in notifications in general, though.

It shouldn't have any problems with transparency. I tested it, for example, with this:
2026-08-19-163425_531x129_scrot

It doesn't appear to work :(

I haven't tested it with qubes, just directly on Debian. Let me try to address these problems.

@andrewdavidwong

Copy link
Copy Markdown
Member

Suggestion: If you intend for this pull request to resolve the associated issue and would like for it to be linked to the issue automatically, you can put Closes QubesOS/qubes-issues#XXXX in the PR message (where XXXX is the issue number). Closes is one of several special keywords that GitHub will recognize. If and when the PR is merged, GitHub will automatically close the associated issue.

Read and decode the named PNG inside the qube and forward it as
ordinary image-data, so only pixels ever cross the Qube boundary.
@oshogbo

oshogbo commented Aug 26, 2026

Copy link
Copy Markdown
Author

Suggestion: If you intend for this pull request to resolve the associated issue and would like for it to be linked to the issue automatically, you can put Closes QubesOS/qubes-issues#XXXX in the PR message (where XXXX is the issue number). Closes is one of several special keywords that GitHub will recognize. If and when the PR is merged, GitHub will automatically close the associated issue.

Thank you changed.

@marmarek

Copy link
Copy Markdown
Member

nm-applet now looks to work: https://openqa.qubes-os.org/tests/194312#step/startup/8 (click the image icon to see colors) :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve qube indication in the notifications proxy

5 participants