Conan vs LuaRocks
Conan
conan.ioLuaRocks
luarocks.orgSide by side
| Figure | Conan | LuaRocks |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| iOS | Yes | — |
| Android | Yes | — |
| API | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 2 | 1 |
| Spec score · Package Managers | 9.0 (#3) | 8.5 (#23) |
| Spec score · Package Registries | 9.0 (#2) | 8.7 (#7) |
| Dependency resolution | Yes | Yes |
| Free plan | Yes | Yes |
| Offline installation | Yes | Yes |
| Package formats | Conan recipes and binary packages | A rock is a zip file containing its rockspec and the files needed to install a module; rocks can be built for specific platforms. |
| Supported platforms | Linux,Windows,macOS,Android,iOS,embedded and bare-metal targets | Linux,macOS,Windows,Unix,FreeBSD,Cygwin |
Plans
In their own words
Conan
Conan is a free, open-source package manager for C and C++ projects. It manages dependencies and binary packages through Conan recipes, with dependency resolution, lockfiles, workspaces, private registry authentication and offline installation. Binary configurations can vary by architecture, compiler and version, runtime, and C++ standard library. If a matching binary is unavailable, Conan can build from source on demand. It supports Windows, Linux, macOS, Android, iOS, embedded and bare-metal targets, as well as desktop, server and mobile platforms. Build integrations include CMake, MSBuild, Makefiles, Meson and SCons; other integrations include Docker, MinGW, WSL and JFrog Artifactory. Teams can share and reuse native binaries. Artifactory Community Edition offers self-hosted private package hosting, with a WebUI, authentication and permissions. Conan is released under the MIT License. The listed plan describes the package manager as free and open source; no price is stated for either plan.
LuaRocks
LuaRocks is a package manager for Lua, with LuaRocks.org hosting rocks and rockspecs for Lua modules. Its command line uses manifests to find packages, choose a version and platform match, and install the corresponding files locally. Rocks carry version dependency information, which LuaRocks uses to install dependencies and load the appropriate module version. Package collections can be organized through the root manifest, per-user manifests, or custom manifests; development versions are kept in a separate manifest and are not installed by default. LuaRocks supports offline installation and platforms including Linux, macOS, Windows, Unix, FreeBSD, and Cygwin. Module authors can register and upload a rockspec, then publish rock files for a version; the current release supports the `luarocks upload` command. The application is described as pure Lua with no library dependencies, though its current release uses helper tools. LuaRocks is free, with a listed price of free.