Skip to content

blender: implement multi version, redux#305727

Open
the-furry-hubofeverything wants to merge 2 commits intoNixOS:masterfrom
the-furry-hubofeverything:blender-multiVersion
Open

blender: implement multi version, redux#305727
the-furry-hubofeverything wants to merge 2 commits intoNixOS:masterfrom
the-furry-hubofeverything:blender-multiVersion

Conversation

@the-furry-hubofeverything
Copy link
Contributor

@the-furry-hubofeverything the-furry-hubofeverything commented Apr 21, 2024

Description of changes

Continuation of #257780, resolves #256845.

I rewrote it, hopefully its easier to understand this time.

An update script is not included, that will probably be in a future PR.

Sidenote regarding blender 3.3:

I'm not porting blender 3.3 to current nixpkgs. All the libraries are too new to compile 3.3 with, and it only supports until September so I don't think it's worth the effort. if anyone still wants it, I had to -

  1. use "-DLIBDIR=/does-not-exist" to ignore the included lib files, or else it would complain about LLVM_VERSION being missing.
  2. Reimplement embree 3.x (3.13.5 is the last nixpkgs version), as Blender 4.x takes embree 4.x instead of embree 3.x
  3. Add an backport patch for ocio in intern/opencolorio/ocio_impl_glsl.cc to add dimensions to getTexture, since it is now mandatory in ocio 2.3.0.

Current hitch is that openusd doesn't have usd_mesh.Primvar any more. Unfortunately, with my current skills, it's not trivial to either have two versions of openusd or to patch out the problematic part.

attempted build log


/build/blender-3.3.18/source/blender/io/usd/intern/usd_writer_mesh.cc: In member function 'void blender::io::usd::USDGenericMeshWriter::write_uv_maps(const Mesh*, pxrInternal_v0_24__pxrReserved__::UsdGeomMesh)':  
/build/blender-3.3.18/source/blender/io/usd/intern/usd_writer_mesh.cc:121:54: error: 'class pxrInternal_v0_24__pxrReserved__::UsdGeomMesh' has no member named 'CreatePrimvar'  
121 | pxr::UsdGeomPrimvar uv_coords_primvar = usd_mesh.CreatePrimvar(  
| ^~~~~~~~~~~~~  
[ 50%] Building CXX object source/blender/blenlib/CMakeFiles/bf_blenlib.dir/intern/task_pool.cc.o  
[ 50%] Building C object source/blender/python/gpu/CMakeFiles/bf_python_gpu.dir/gpu_py_vertex_buffer.c.o  
make[2]: *** [source/blender/io/usd/CMakeFiles/bf_usd.dir/build.make:202: source/blender/io/usd/CMakeFiles/bf_usd.dir/intern/usd_writer_mesh.cc.o] Error 1  
make[2]: *** Waiting for unfinished jobs....  
lines 3725-3739/4378 86%

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/)
  • 24.05 Release Notes (or backporting 23.05 and 23.11 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.

seperate commit to track the rename
resolves NixOS#256845

blender_3_6: init 3.6.11
blender_4_0: init 4.1.1

added hubble to maintainers
@the-furry-hubofeverything the-furry-hubofeverything changed the title Blender multi version blender: implement muliti version, redux Apr 21, 2024
@ofborg ofborg bot added the 8.has: package (new) This PR adds a new package label Apr 21, 2024
@ofborg ofborg bot requested review from cillianderoiste and veprbl April 21, 2024 12:54
@ofborg ofborg bot added 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Apr 21, 2024
@the-furry-hubofeverything the-furry-hubofeverything changed the title blender: implement muliti version, redux blender: implement multi version, redux May 7, 2024
@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label May 22, 2024
@ryan4yin
Copy link
Member

Any updates here?

@the-furry-hubofeverything
Copy link
Contributor Author

Any updates here?

Unfortunately it couldn't get much attention and I'm very burnt out. If anyone is willing, they have full permission to use my changes to start their own PR. I'll leave this open until such PR exists.

@wegank wegank added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jan 2, 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 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Having Blender stable and LTS versions

3 participants