Thank you for testing. After installing if loolwsd service not running, means no ARM support.
No, not yet.
I tried very everything that i can but its showing same message.
Itās great to have the option to avoid Docker if wanted. You also mention āno limitationā. What other limitations does this avoid, and are there any other benefits worth knowing about? Thanks.
Thanks a lot, I see the changes, the git repository is yours for lool. I tried compiling but I get the same error.
make: Entering directory /opt/online' make all-recursive make[1]: Entering directory
/opt/onlineā
Making all in .
make[2]: Entering directory /opt/online' CXX wsd/loolwsd_fuzzer-Admin.o CXX wsd/loolwsd_fuzzer-AdminModel.o In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/AdminModel.cpp:10: ./common/Protocol.hpp: In function āstd::string LOOLProtocol::getAbbreviatedMessage(const string&)ā: ./common/Protocol.hpp:268:93: error: no matching function for call to āmin(std::basic_string<char>::size_type, long unsigned int)ā const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ ./common/Protocol.hpp:268:93: note: candidates are: In file included from /usr/include/c++/4.9/memory:62:0, from wsd/AdminModel.hpp:13, from wsd/AdminModel.cpp:10: /usr/include/c++/4.9/bits/stl_algobase.h:194:5: note: template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&) min(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.9/bits/stl_algobase.h:194:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/AdminModel.cpp:10: ./common/Protocol.hpp:268:93: note: deduced conflicting types for parameter āconst _Tpā (āunsigned intā and ālong unsigned intā) const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ In file included from /usr/include/c++/4.9/memory:62:0, from wsd/AdminModel.hpp:13, from wsd/AdminModel.cpp:10: /usr/include/c++/4.9/bits/stl_algobase.h:240:5: note: template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare) min(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.9/bits/stl_algobase.h:240:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/AdminModel.cpp:10: ./common/Protocol.hpp:268:93: note: deduced conflicting types for parameter āconst _Tpā (āunsigned intā and ālong unsigned intā) const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ In file included from /usr/include/c++/4.9/algorithm:62:0, from /usr/local/include/Poco/Any.h:23, from /usr/local/include/Poco/Format.h:24, from /usr/local/include/Poco/Logger.h:26, from ./common/Log.hpp:20, from wsd/AdminModel.hpp:19, from wsd/AdminModel.cpp:10: /usr/include/c++/4.9/bits/stl_algo.h:3439:5: note: template<class _Tp> _Tp std::min(std::initializer_list<_Tp>) min(initializer_list<_Tp> __l) ^ /usr/include/c++/4.9/bits/stl_algo.h:3439:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/AdminModel.cpp:10: ./common/Protocol.hpp:268:93: note: mismatched types āstd::initializer_list<_Tp>ā and āunsigned intā const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ In file included from /usr/include/c++/4.9/algorithm:62:0, from /usr/local/include/Poco/Any.h:23, from /usr/local/include/Poco/Format.h:24, from /usr/local/include/Poco/Logger.h:26, from ./common/Log.hpp:20, from wsd/AdminModel.hpp:19, from wsd/AdminModel.cpp:10: /usr/include/c++/4.9/bits/stl_algo.h:3444:5: note: template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare) min(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.9/bits/stl_algo.h:3444:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/AdminModel.cpp:10: ./common/Protocol.hpp:268:93: note: mismatched types āstd::initializer_list<_Tp>ā and āunsigned intā const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/Admin.hpp:23, from wsd/Admin.cpp:28: ./common/Protocol.hpp: In function āstd::string LOOLProtocol::getAbbreviatedMessage(const string&)ā: ./common/Protocol.hpp:268:93: error: no matching function for call to āmin(std::basic_string<char>::size_type, long unsigned int)ā const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ ./common/Protocol.hpp:268:93: note: candidates are: In file included from /usr/include/c++/4.9/bits/char_traits.h:39:0, from /usr/include/c++/4.9/string:40, from /usr/include/c++/4.9/stdexcept:39, from /usr/include/c++/4.9/array:38, from /usr/include/c++/4.9/tuple:39, from /usr/include/c++/4.9/mutex:38, from wsd/Admin.cpp:13: /usr/include/c++/4.9/bits/stl_algobase.h:194:5: note: template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&) min(const _Tp& __a, const _Tp& __b) ^ /usr/include/c++/4.9/bits/stl_algobase.h:194:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/Admin.hpp:23, from wsd/Admin.cpp:28: ./common/Protocol.hpp:268:93: note: deduced conflicting types for parameter āconst _Tpā (āunsigned intā and ālong unsigned intā) const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ In file included from /usr/include/c++/4.9/bits/char_traits.h:39:0, from /usr/include/c++/4.9/string:40, from /usr/include/c++/4.9/stdexcept:39, from /usr/include/c++/4.9/array:38, from /usr/include/c++/4.9/tuple:39, from /usr/include/c++/4.9/mutex:38, from wsd/Admin.cpp:13: /usr/include/c++/4.9/bits/stl_algobase.h:240:5: note: template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare) min(const _Tp& __a, const _Tp& __b, _Compare __comp) ^ /usr/include/c++/4.9/bits/stl_algobase.h:240:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/Admin.hpp:23, from wsd/Admin.cpp:28: ./common/Protocol.hpp:268:93: note: deduced conflicting types for parameter āconst _Tpā (āunsigned intā and ālong unsigned intā) const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ In file included from /usr/include/c++/4.9/algorithm:62:0, from /usr/local/include/Poco/String.h:26, from /usr/local/include/Poco/Net/NameValueCollection.h:24, from /usr/local/include/Poco/Net/MessageHeader.h:24, from /usr/local/include/Poco/Net/HTTPMessage.h:24, from /usr/local/include/Poco/Net/HTTPRequest.h:24, from wsd/Admin.cpp:17: /usr/include/c++/4.9/bits/stl_algo.h:3439:5: note: template<class _Tp> _Tp std::min(std::initializer_list<_Tp>) min(initializer_list<_Tp> __l) ^ /usr/include/c++/4.9/bits/stl_algo.h:3439:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/Admin.hpp:23, from wsd/Admin.cpp:28: ./common/Protocol.hpp:268:93: note: mismatched types āstd::initializer_list<_Tp>ā and āunsigned intā const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ In file included from /usr/include/c++/4.9/algorithm:62:0, from /usr/local/include/Poco/String.h:26, from /usr/local/include/Poco/Net/NameValueCollection.h:24, from /usr/local/include/Poco/Net/MessageHeader.h:24, from /usr/local/include/Poco/Net/HTTPMessage.h:24, from /usr/local/include/Poco/Net/HTTPRequest.h:24, from wsd/Admin.cpp:17: /usr/include/c++/4.9/bits/stl_algo.h:3444:5: note: template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare) min(initializer_list<_Tp> __l, _Compare __comp) ^ /usr/include/c++/4.9/bits/stl_algo.h:3444:5: note: template argument deduction/substitution failed: In file included from ./wsd/LOOLWebSocket.hpp:22:0, from wsd/AdminModel.hpp:20, from wsd/Admin.hpp:23, from wsd/Admin.cpp:28: ./common/Protocol.hpp:268:93: note: mismatched types āstd::initializer_list<_Tp>ā and āunsigned intā const auto pos = getDelimiterPosition(message.data(), std::min(message.size(), 500UL), '\n'); ^ make[2]: *** [wsd/loolwsd_fuzzer-AdminModel.o] Error 1 make[2]: *** Waiting for unfinished jobs.... wsd/Admin.cpp: In member function āvirtual void MemoryStatsTask::run()ā: wsd/Admin.cpp:336:18: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] if (totalMem != _lastTotalMemory) ^ cc1plus: all warnings being treated as errors make[2]: *** [wsd/loolwsd_fuzzer-Admin.o] Error 1 make[2]: Leaving directory
/opt/onlineā
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/onlineā
make: *** [all] Error 2
I just tested it again and it works. Did you use the last script Version?
Try to delete /opt/libreo* online poco* and run the new script again.
Good luck
With Collabora Online you can not open more than 10 docs in parallel or more than 20 connections.
That is the reason why the script exists:
Thanks for your work on this.
I wish Iād known that CODE was essentially shareware for a paid product before I wasted time wrestling with bugs in the integration.
Should we look at creating a LibreOffice Online docker image, as an alternative to the restricted closed binary Collabora version?
Builds failed for me too so I forked the script and now it works for me. Hereās the script: https://github.com/methuselah-0/libreoffice-online-install.sh
Of course! But what is the advantage of Docker? I use Docker for our developer. But if I need resources and security then preferably root server. This is my opinion but anyway we can create a LibreOffice Online docker image.
Thanks. For the likes of me, the docker way is quite a (time) efficient way of managing things. It would also avoid the complications of compiling from source. With a good compose script, it makes a reliable and easily updated setup straightforward. Iām also not too keen on the advertised online editing features being essentially a gimped closed binary - it would be good to make a more libre solution more accessible to the community.
In terms of security, Iām inclined to keep Nextcloud behind a VPN anyway. Plenty of bugs around, and Iām not anywhere enough of an expert in web application security to have sufficient confidence that I wonāt make a serious mistake sooner or later.
There is already a libreoffice online docker image : docker pull libreoffice/online:master
But with the same limitation : no more than 10 differents documents open at the same time or no more than 20 connections to any documents at the same time.
Itās really important to compile by ourself to write the limitation we want for our server. If your server can scale 100docs at the same time itās good. If you have a slow server with low ram, you should try libreoffice docker because the limitation fit your scale.
But Docker is easy on a side and have a lot of bad things on the other side.
@husisusi : when compiling is done what are the folders and file we can copy to a pen drive or hdd drive to copy on another sever
I think of /opt/online /opt/poco create a user lool create loolwsd service.
But what about the /opt/libreoffice folder itās 10Go, do we need all this folder or just /opt/libreoffice/installdir ?
Yes, I saw the existing docker, but noted the same limits. Itās a horrible decision to make the limitation settings written in stone at compile time. TBH, I fear that this is due to the considerable influence of Collabora on the Libreoffice project.
I do think that a docker with a much higher hard limit compiled would be a benefit to many people. We can always add the caveat that server hardware must be taken into consideration for the number of users, and perhaps also develop some knowledge on the recommendations. The default limit is so restrictive as to make it unusable for any but the smallest group.
Are there any chances to reduce size to get it on pi as on pi it will take all space.
Quote
(There is already a libreoffice online docker image : docker pull libreoffice/online:master)
Does this work on arm device
If you can write this command :
apt install docker (or docker.io)
And if it comes to the end, you will have libreoffice online on your pi
Problem is docker canāt start container.Thatās why I am askingWill it work on arm device.Anyone here got office on arm device?
@earth i would focus on running the Hello World container first, if possible then the world is endless. If you donāt wanna waste time finding out manually, remember Google is your friend.
Docker canāt start hello-world but it can start armhf/hello-world.
Kiran
Then it only runs a very special kind of containers build for arm.
I think you have your answer right there.
I will check what we can delete and integrate it in the script.
thats why my first point was,
Is it possible to reduce size of integration?