{"id":19989641,"url":"https://github.com/wavesoft/libcernvm","last_synced_at":"2025-05-04T09:33:18.705Z","repository":{"id":15438262,"uuid":"18170986","full_name":"wavesoft/libcernvm","owner":"wavesoft","description":"A cross-platform library for starting, controlling and interfacing with Virtual Machines, mainly targeting desktop computers.","archived":false,"fork":false,"pushed_at":"2016-06-14T08:26:48.000Z","size":943,"stargazers_count":1,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-03-13T20:41:03.521Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wavesoft.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-03-27T09:43:50.000Z","updated_at":"2015-05-07T15:56:22.000Z","dependencies_parsed_at":"2022-08-22T22:40:59.834Z","dependency_job_id":null,"html_url":"https://github.com/wavesoft/libcernvm","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Flibcernvm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Flibcernvm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Flibcernvm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Flibcernvm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wavesoft","download_url":"https://codeload.github.com/wavesoft/libcernvm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224391393,"owners_count":17303609,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T04:48:48.396Z","updated_at":"2024-11-13T04:48:49.389Z","avatar_url":"https://github.com/wavesoft.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"libCernVM\n=========\n\nA cross-platform library for starting, controlling and interfacing with Virtual Machines, mainly targeting desktop computers. It started as a browser plugin, using the NPAPI interface, but since it's getting deprecated, the logic was forked into an individual project, so it can be interfaced with newer implementations.\n\n__libCernVM__ takes care of three major interactions:\n\n * *Ensuring* that a hypervisor is installed in the host's computer and is in functional state.\n * *Abstracting* the interface with the hypervisor, ensuring integrity and security on the operations.\n * *Interfacing* with the running VM instance.\n\nFor more documentation, check on the Wiki Pages.\n\nBuilding\n========\n\nThe library can be built with CMake. There is an extensive CMake configuration that allows all the dependant libraries to be built along. To include libcernvm in your project you will have to do the following:\n\n```CMake\n\n# CernVM Library requries CMake 2.8\ncmake_minimum_required (VERSION 2.8)\n\n...\n\n# Include CernVM Library project\nset( CERNVM_LIBSRC \"/path/to/libcernvm\" )\n\n# Include the CernVM Sub-Project\nadd_subdirectory( ${CERNVM_LIBSRC} libcernvm )\ninclude_directories( ${CERNVM_INCLUDE_DIRS} )\n\n...\n\n# Link CernVM libraries to your project\ntarget_link_libraries ( ${PROJECT_NAME} ${CERNVM_LIBRARIES} )\n\n```\n\nBuild Parameters\n----------------\n\nThe CernVM library supports the following CMake options:\n\nCrash reporting and debug logging:\n\n * **-DLOGGING=ON** : Enable verbose logging of each action taken in the project.\n * **-DCRASH_REPORTING** : Enable sending crash reports for debugging when an unhandled exception occurs.\n\nLinking and building options:\n\n * **-DSYSTEM_ZLIB=ON** : Use shared, system-provided z-lib library instead of linking it statically.\n * **-DSYSTEM_JSONCPP=ON** : Use shared, system-provided JsonCPP library instead of linking it statically.\n * **-DSYSTEM_OPENSSL=ON** : Use shared, system-provided OpenSSL library instead of linking it statically.\n * **-DSYSTEM_CURL=ON** : Use shared, system-provided CURL library instead of linking it statically.\n * **-DSYSTEM_BOOST=ON** : Use shared, system-provided BOOST library instead of linking it statically.\n * **-DUSE_SYSTEM_LIBS=ON** : Use all libraries provided from system\n\nCopyright\n=========\n\nCVMWebAPI is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.\n\nCVMWebAPI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License along with CVMWebAPI. If not, see http://www.gnu.org/licenses/.\n\nDeveloped by Ioannis Charalampidis, 2013-2014\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwavesoft%2Flibcernvm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwavesoft%2Flibcernvm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwavesoft%2Flibcernvm/lists"}