Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rocs: init at 18.12.0 #55584

Merged
merged 3 commits into from Sep 28, 2019
Merged

rocs: init at 18.12.0 #55584

merged 3 commits into from Sep 28, 2019

Conversation

KnairdA
Copy link
Contributor

@KnairdA KnairdA commented Feb 11, 2019

Motivation for this change

Derivation for Rocs was missing despite the source being referenced in pkgs/applications/kde/srcs.nix.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

Copy link
Member

@Ma27 Ma27 left a comment

Choose a reason for hiding this comment

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

The startup of rocs breaks in my rather minimalistic environment (without KDE) with the following error:

qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

[1]    10176 abort      ./result/bin/rocs

A common workaround for this is to wrap QT_PLUGIN_PATH in a postInstall hook using wrapProgram. The full issue is described in #44047.

@KnairdA
Copy link
Contributor Author

KnairdA commented Feb 12, 2019

Thank you for the explanation. I added the required plugin paths using wrapProgram and it now works even when PATH and QT_PLUGIN_PATH are undefined in the environment. I first tried testing this in a pure nix-shell but the GUI could not be initialized (setting DISPLAY was not enough to fix this).

Any suggestions on how to quickly obtain a more minimal environment? Weirdly my desktop environment doesn't explicitly use any part of KDE but the relevant paths seem to have leaked in via some other way.

@Ma27
Copy link
Member

Ma27 commented Feb 12, 2019

Any suggestions on how to quickly obtain a more minimal environment? Weirdly my desktop environment doesn't explicitly use any part of KDE but the relevant paths seem to have leaked in via some other way.

Admittedly I don't know. This seems to be somewhat KDE related, I tested avidemux (QT5 based), firefox and dolphin (at KDE application). The only breaking application was dolphin. But I assume that this can be fixed in #44047.

I'll test rocs to see if it works in my environment, but then I'd merge :)

@Ma27
Copy link
Member

Ma27 commented Feb 12, 2019

ok so to test I tried the following file: https://github.com/KDE/rocs/blob/master/Examples/BreadthFirstSearch/bfs.rocs (downloaded with View Raw).

I get the following messages on the console when I try to open it (and nothing else happens in the UI):


org.kde.kcoreaddons: KDirWatch: "/tmp/rocs-dxyQLx" is a directory. Use addDir!
Graph document index invalid, aborting change of current document.
org.kde.rocs.graphtheory.general: "qrc:/libgraphtheory/qml/Scene.qml:22 module \"QtQuick.Controls\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:24 module \"QtQuick.Dialogs\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:21 module \"QtQuick\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:23 module \"QtQuick.Layouts\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:25 module \"QtQml.StateMachine\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:22 module \"QtQuick.Controls\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:24 module \"QtQuick.Dialogs\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:21 module \"QtQuick\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:23 module \"QtQuick.Layouts\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:25 module \"QtQml.StateMachine\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:22 module \"QtQuick.Controls\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:24 module \"QtQuick.Dialogs\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:21 module \"QtQuick\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:23 module \"QtQuick.Layouts\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:25 module \"QtQml.StateMachine\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:22 module \"QtQuick.Controls\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:24 module \"QtQuick.Dialogs\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:21 module \"QtQuick\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:23 module \"QtQuick.Layouts\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:25 module \"QtQml.StateMachine\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:22 module \"QtQuick.Controls\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:24 module \"QtQuick.Dialogs\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:21 module \"QtQuick\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:23 module \"QtQuick.Layouts\" is not installed\nqrc:/libgraphtheory/qml/Scene.qml:25 module \"QtQml.StateMachine\" is not installed\n"

pkgs/applications/kde/rocs.nix Outdated Show resolved Hide resolved
pkgs/applications/kde/rocs.nix Show resolved Hide resolved
@aanderse
Copy link
Member

aanderse commented Aug 5, 2019

@KnairdA are you motivated to continue with this PR?

@ttuegel ttuegel merged commit 6c76258 into NixOS:master Sep 28, 2019
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.

None yet

7 participants