Conversation
f4cc0c5 to
392675b
Compare
811ea5a to
16eed3c
Compare
16eed3c to
20b3ee5
Compare
|
Also to note as of a week ago, |
ba2ca76 to
38dc759
Compare
22fb041 to
db617ac
Compare
4b2f034 to
341ce22
Compare
84639e1 to
ea26bc7
Compare
Co-authored-by: Julian Groß <julian.g@posteo.de>
Co-authored-by: Julian Groß <julian.g@posteo.de>
ea26bc7 to
328792a
Compare
|
Overte appears to build successfully, but it doesn't start on my machine: juliangro@x299-workstation ~> export NIXPKGS_ALLOW_INSECURE=1
juliangro@x299-workstation ~> nix --extra-experimental-features flakes --extra-experimental-features nix-command build --impure github:RTUnreal/overte?ref=nixos_support
juliangro@x299-workstation ~> nix --extra-experimental-features flakes --extra-experimental-features nix-command run --impure github:RTUnreal/overte?ref=nixos_support
[12/30 14:18:26] [DEBUG] [hifi.shared] Settings file: "/home/juliangro/.config/Overte - Dev/Interface.json"
[12/30 14:18:26] [DEBUG] [settings.manager] Initializing settings write thread
[12/30 14:18:26] [WARNING] [default] QEventLoop: Cannot be used without QApplication
Gtk-Message: 14:18:26.743: Failed to load module "xapp-gtk3-module"
[12/30 14:18:26] [WARNING] [qt.glx] qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::NoProfile)
[Previous message was repeated 1 times]
[12/30 14:18:26] [FATAL] [default] Could not initialize GLX
fish: Job 1, 'nix --extra-experimental-featur…' terminated by signal SIGABRT (Abbruch)
juliangro@x299-workstation ~ [SIGABRT]>I would presume nix --extra-experimental-features flakes --extra-experimental-features nix-command log --impure github:RTUnreal/overte?ref=nixos_support >> nix.log |
|
After looking through opengl docs for NixOS, I remembered, you are not able to just run GL/VK apps from nix on non-nix systems, you would need to either install NixOS and run it there or use a solution like nix-system-graphics1 to run it. (This requires global changes to your system). There is also the nixGL tool2, which wraps the app to use non-nix GL. I recommend in this order:
I will also look into more ergonomic ways to test nix stuff on non-nix systems |
JulianGro
left a comment
There was a problem hiding this comment.
The STEAMWORKS/STEAMCLIENT stuff is the only thing that really needs fixing. Everything else, I don't care too much about, unless we start officially supporting Nix.
| glad | ||
| etc2comp | ||
| cgltf | ||
| polyvox | ||
| gif_creator | ||
| artery-font-format | ||
| openssl | ||
| libGL | ||
| glm | ||
| nlohmann_json | ||
| tbb_2022 | ||
| webrtc-audio-processing | ||
| nvidia-texture-tools | ||
| openexr | ||
| draco | ||
| bullet | ||
| discord-rpc | ||
| openvr | ||
| openxr-loader | ||
| SDL2 | ||
| libopus | ||
| libv8 |
There was a problem hiding this comment.
Why are these defined here, when they were already defined in the unnamed curly braces at the top?
There was a problem hiding this comment.
The top is just the function head inside the nix language. When we call pkgs.callPackage from flake.nix, we ask the function to automatically fill in the dependencies as variables for us to use. buildClient for example is just a variable, that can be changed inside of the curly braces in that function call. One can also set specific versions for specific dependencies, like for libv8.
Here we define how the dependencies should be consumed and in which relation, they stand to the overte package, I.e. qt will be required at deployment (buildInputs), but cmake is only only at build time (nativeBuildInputs).
the weird naming is because of legacy code
Co-authored-by: Julian Groß <julian.g@posteo.de>
Co-authored-by: Julian Groß <julian.g@posteo.de>
Co-authored-by: Julian Groß <julian.g@posteo.de>
Co-authored-by: Julian Groß <julian.g@posteo.de>
JulianGro
left a comment
There was a problem hiding this comment.
I don't like the "-DOVERTE_BUILD_TYPE=NIGHLTY", but this PR is good to merge from my point of view.
I will add a second PR, which detects, when a build is not in a clean build, so it build it in DEV |
This PR adds a nix package build via flake.nix.
Due to overte's dependency on node18, this PR is currently blocked until that is updated.DoneThis is due to node18, at least in nixpkgs, requires icu75, but everything else needs icu76.
Dependencies/before this PR:
Upgrade to Qt6 #1848 (TODO)This will be pushed onto the qt6 branch, when mergedsoft: updated glmcan be changed latersoft: update draco #1808can be changed later