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

lms: 3.62.1 -> 3.64.0 #392230

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

lms: 3.62.1 -> 3.64.0 #392230

wants to merge 1 commit into from

Conversation

hotburger
Copy link
Contributor

Removed wrappers as they are no longer needed. (lms uses static linking as of v3.63.0)
cc @mksafavi

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.rebuild-linux: 1-10 labels Mar 23, 2025
@nix-owners nix-owners bot requested a review from mksafavi March 23, 2025 00:01
@mksafavi
Copy link
Contributor

Hi.
Thanks for the PR.
I tried v3.64 and it works fine. It looks good to me. 👍

btw, does version 3.62.1 compiles for you? I can't build it

3.62.1 build log:
In file included from /build/source/src/libs/core/impl/ChildProcessManager.hpp:26,
                 from /build/source/src/libs/core/impl/ChildProcessManager.cpp:20:
/build/source/src/libs/core/include/core/IChildProcessManager.hpp:24:10: fatal error: boost/asio/io_service.hpp: No such file or directory
   24 | #include <boost/asio/io_service.hpp>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [src/libs/core/CMakeFiles/lmscore.dir/build.make:135: src/libs/core/CMakeFiles/lmscore.dir/impl/ChildProcessManager.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /build/source/src/libs/core/impl/IOContextRunner.cpp:20:
/build/source/src/libs/core/include/core/IOContextRunner.hpp:42:48: error: 'work' is not a member of 'boost::asio::io_context'
   42 |         std::optional<boost::asio::io_context::work> _work;
      |                                                ^~~~
/build/source/src/libs/core/include/core/IOContextRunner.hpp:42:52: error: template argument 1 is invalid
   42 |         std::optional<boost::asio::io_context::work> _work;
      |                                                    ^
/build/source/src/libs/core/include/core/IOContextRunner.hpp:42:14: error: '<expression error>' in namespace 'std' does not name a type
   42 |         std::optional<boost::asio::io_context::work> _work;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/source/src/libs/core/impl/IOContextRunner.cpp: In constructor 'lms::core::IOContextRunner::IOContextRunner(boost::asio::io_context&, std::size_t, std::string_view)':
/build/source/src/libs/core/impl/IOContextRunner.cpp:31:11: error: class 'lms::core::IOContextRunner' does not have any field named '_work'
   31 |         , _work{ ioContext }
      |           ^~~~~
/build/source/src/libs/core/impl/IOContextRunner.cpp: In member function 'void lms::core::IOContextRunner::stop()':
/build/source/src/libs/core/impl/IOContextRunner.cpp:67:9: error: '_work' was not declared in this scope; did you mean '_Fork'?
   67 |         _work.reset();
      |         ^~~~~
      |         _Fork
make[2]: *** [src/libs/core/CMakeFiles/lmscore.dir/build.make:177: src/libs/core/CMakeFiles/lmscore.dir/impl/IOContextRunner.cpp.o] Error 1
/build/source/src/libs/core/impl/http/SendQueue.cpp: In lambda function:
/build/source/src/libs/core/impl/http/SendQueue.cpp:67:29: error: no matching function for call to 'boost::asio::io_context::strand::dispatch(lms::core::http::SendQueue::SendQueue(boost::asio::io_context&, std::string_view)::<lambda(Wt::AsioWrapper::error_code, const Wt::Http::Message&)>::<lambda()>)'
   67 |             _strand.dispatch([this, ec, msg = std::move(msg)] {
      |             ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   68 |                 onClientDone(ec, msg);
      |                 ~~~~~~~~~~~~~~~~~~~~~~
   69 |             });
      |             ~~               
In file included from /build/source/src/libs/core/impl/http/SendQueue.hpp:28,
                 from /build/source/src/libs/core/impl/http/SendQueue.cpp:20:
include/boost/asio/io_context_strand.hpp:168:8: note: candidate: 'template<class Function, class Allocator> void boost::asio::io_context::strand::dispatch(Function&&, const Allocator&) const'
include/boost/asio/io_context_strand.hpp:168:8: note:   candidate expects 2 arguments, 1 provided
make[2]: *** [src/libs/core/CMakeFiles/lmscore.dir/build.make:93: src/libs/core/CMakeFiles/lmscore.dir/impl/http/SendQueue.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:605: src/libs/core/CMakeFiles/lmscore.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
error: builder for '/nix/store/pvdk7n5zzw5z4chgdd6vi4w73rkzm3nw-lms-3.62.1.drv' failed with exit code 2;
       last 25 log lines:
       > /build/source/src/libs/core/impl/IOContextRunner.cpp: In constructor 'lms::core::IOContextRunner::IOContextRunner(boost::asio::io_context&, std::size_t, std::string_view)':
       > /build/source/src/libs/core/impl/IOContextRunner.cpp:31:11: error: class 'lms::core::IOContextRunner' does not have any field named '_work'
       >    31 |         , _work{ ioContext }
       >       |           ^~~~~
       > /build/source/src/libs/core/impl/IOContextRunner.cpp: In member function 'void lms::core::IOContextRunner::stop()':
       > /build/source/src/libs/core/impl/IOContextRunner.cpp:67:9: error: '_work' was not declared in this scope; did you mean '_Fork'?
       >    67 |         _work.reset();
       >       |         ^~~~~
       >       |         _Fork
       > make[2]: *** [src/libs/core/CMakeFiles/lmscore.dir/build.make:177: src/libs/core/CMakeFiles/lmscore.dir/impl/IOContextRunner.cpp.o] Error 1
       > /build/source/src/libs/core/impl/http/SendQueue.cpp: In lambda function:
       > /build/source/src/libs/core/impl/http/SendQueue.cpp:67:29: error: no matching function for call to 'boost::asio::io_context::strand::dispatch(lms::core::http::SendQueue::SendQueue(boost::asio::io_context&, std::string_view)::<lambda(Wt::AsioWrapper::error_code, const Wt::Http::Message&)>::<lambda()>)'
       >    67 |             _strand.dispatch([this, ec, msg = std::move(msg)] {
       >       |             ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       >    68 |                 onClientDone(ec, msg);
       >       |                 ~~~~~~~~~~~~~~~~~~~~~~
       >    69 |             });
       >       |             ~~
       > In file included from /build/source/src/libs/core/impl/http/SendQueue.hpp:28,
       >                  from /build/source/src/libs/core/impl/http/SendQueue.cpp:20:
       > include/boost/asio/io_context_strand.hpp:168:8: note: candidate: 'template<class Function, class Allocator> void boost::asio::io_context::strand::dispatch(Function&&, const Allocator&) const'
       > include/boost/asio/io_context_strand.hpp:168:8: note:   candidate expects 2 arguments, 1 provided
       > make[2]: *** [src/libs/core/CMakeFiles/lmscore.dir/build.make:93: src/libs/core/CMakeFiles/lmscore.dir/impl/http/SendQueue.cpp.o] Error 1
       > make[1]: *** [CMakeFiles/Makefile2:605: src/libs/core/CMakeFiles/lmscore.dir/all] Error 2
       > make: *** [Makefile:136: all] Error 2
       For full logs, run:
         nix log /nix/store/pvdk7n5zzw5z4chgdd6vi4w73rkzm3nw-lms-3.62.1.drv

@@ -58,38 +56,14 @@ stdenv.mkDerivation rec {
'';

postInstall = ''
substituteInPlace $out/share/lms/lms.conf --replace-fail "/usr/bin/ffmpeg" "${ffmpeg}/bin/ffmpeg"
substituteInPlace $out/share/lms/lms.conf --replace-fail "/usr/bin/ffmpeg" "${lib.getExe ffmpeg}"
Copy link
Contributor

Choose a reason for hiding this comment

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

I haven't used lib.getExe before. How does it work?
Specially with packages that have multiple binary files (like ffmpeg,ffplay,...)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

lib.getExe returns the path to the binary specified in the package's meta.mainProgram.

https://noogle.dev/f/lib/getExe

@hotburger
Copy link
Contributor Author

Hi. Thanks for the PR. I tried v3.64 and it works fine. It looks good to me. 👍

btw, does version 3.62.1 compiles for you? I can't build it

It is not compiling because of breaking changes in wt.

@wegank wegank added 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package 12.approvals: 1 This PR was reviewed and approved by one reputable person labels Mar 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 1-10 10.rebuild-linux: 1 12.approvals: 1 This PR was reviewed and approved by one reputable person 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in the package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants