{"id":14987745,"url":"https://github.com/apache/guacamole-manual","last_synced_at":"2025-04-06T11:07:42.340Z","repository":{"id":44798425,"uuid":"54452626","full_name":"apache/guacamole-manual","owner":"apache","description":"Mirror of Apache Guacamole Manual","archived":false,"fork":false,"pushed_at":"2024-11-20T00:06:56.000Z","size":15773,"stargazers_count":41,"open_issues_count":7,"forks_count":46,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-03-30T03:21:56.851Z","etag":null,"topics":["c","guacamole","java","javascript","network-client","network-server"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-03-22T07:00:06.000Z","updated_at":"2025-03-26T16:00:55.000Z","dependencies_parsed_at":"2023-12-03T08:20:56.505Z","dependency_job_id":"5eb4180c-e5e1-4df3-841a-4741d5a49206","html_url":"https://github.com/apache/guacamole-manual","commit_stats":{"total_commits":745,"total_committers":28,"mean_commits":"26.607142857142858","dds":0.6697986577181207,"last_synced_commit":"826072f822911d888b888512a555dce750b43692"},"previous_names":[],"tags_count":48,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fguacamole-manual","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fguacamole-manual/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fguacamole-manual/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fguacamole-manual/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/guacamole-manual/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247471518,"owners_count":20944158,"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":["c","guacamole","java","javascript","network-client","network-server"],"created_at":"2024-09-24T14:15:19.491Z","updated_at":"2025-04-06T11:07:42.320Z","avatar_url":"https://github.com/apache.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"About this README\n=================\n\nThis README is intended to document the build process of the Apache Guacamole\nmanual for technical users who wish to contribute or who simply wish to build\nthe manual themselves.\n\nThe [latest version of the manual](http://guacamole.apache.org/doc/gug/) is\nprovided on the [Guacamole web site](http://guacamole.apache.org/), and\nsnapshot copies of each release are included in the [release\narchives](http://guacamole.apache.org/releases/).\n\n\nWhat is guacamole-manual?\n=========================\n\nThe guacamole-manual package is the base documentation for the entire Guacamole\nstack. It is largely written in [the \"MyST\" flavor of Markdown](https://myst-parser.readthedocs.io/en/latest/index.html),\nwith portions of the documentation written in reStructuredText where necessary\n(the Guacamole protocol reference).\n\nMyST was chosen as the primary format because:\n\n * As a variant of Markdown, it will be widely approachable and familiar.\n * It is supported by Sphinx.\n * It provides additional syntax for the features of reStructuredText that are\n   absent from standard Markdown (like admonitions).\n * It provides the features of Markdown that are absent from reStructuredText\n   (like nested inline formatting, including formatting within links or links\n   within formatted text).\n\nreStructuredText is occasionally necessary because:\n\n * [MyST does not support docstring field lists](https://github.com/executablebooks/MyST-Parser/issues/163#issuecomment-640008632),\n   a feature of reStructuredText required for documenting APIs. We use this\n   feature for documenting the Guacamole protocol.\n * The MyST solution to supporting docstrings is [embedding blocks of\n   reStructuredText](https://myst-parser.readthedocs.io/en/latest/using/howto.html#use-sphinx-ext-autodoc-in-markdown-files).\n\nThe build process involves running the Guacamole manual source through the\ntooling provided by the Sphinx project, in particular \"sphinx-build\".\n\n\nBuild requirements\n==================\n\nBuilding the Guacamole manual from source requires:\n\n * **Python 3.8 or later**\n * An implementation of \"make\", such as [GNU\n   Make](https://www.gnu.org/software/make/)\n * [Sphinx](https://pypi.org/project/Sphinx/)\n * [sphinx-rtd-theme](https://pypi.org/project/sphinx-rtd-theme/) (the\n   ReadTheDocs theme for Sphinx),\n * [sphinx-inline-tabs](https://pypi.org/project/sphinx-inline-tabs/)\n * [myst-parser](https://pypi.org/project/myst-parser/)\n\nThe required Python packages can be installed using the \"pip\" package manager:\n\n```console\n$ pip install sphinx sphinx-rtd-theme sphinx-inline-tabs myst-parser\n```\n\nOn some systems, the Python 3 version of \"pip\" may instead be named \"pip3\", to\nmaintain compatability with users and scripts that expect Python 2:\n\n```console\n$ pip3 install sphinx sphinx-rtd-theme sphinx-inline-tabs myst-parser\n```\n\nBuilding the manual\n===================\n\nIf all build requirements have beein installed, the manual can be build by\nsimply running \"make\":\n\n```console\n$ make\n```\n\nThe manual will then be built using Sphinx. Once complete, the entire HTML\nversion of the manual will be available within the `build/html/` directory in\nthe root directory of the source tree.\n\nBuilding and viewing the manual using Docker\n============================================\n\nThe guacamole-manual package includes a `Dockerfile` that can be used to build\nan Apache httpd Docker image that contains the Guacamole user manual.\n\nBy building and running the resulting container, a developer can work on the \nuser manual without the need to install Sphinx on their workstation. The\nresulting container can also be used to serve the  manual to Guacamole users on\na network.\n\n**Docker CE version 1.6 or later is required to build the image.**\n\nBuild the Guacamole manual container image by running the following command in\nthe directory that contains this Dockerfile:\n\n```console\n$ docker image build -t guacamole/manual .\n```\n\nRun the resulting container using the following command:\n\n```console\n$ docker container run -p 8080:80 guacamole/manual\n```\n\nYou'll see some startup messages from Apache httpd on your terminal when you \nstart up the container. Once the container is running you can then view the \nHTML version of the manual by accessing http://localhost:8080 using your web \nbrowser.\n\nIf another process on the host is already using port 8080, you will need to \nchange the corresponding argument in the command used to start the container.\n\nAs a developer working on the documentation, it will be necessary to stop the\ncontainer and run the build again each time you wish to see changes you've \nmade to the documentation source.\n\n\nReporting problems\n==================\n\nPlease report any bugs encountered by opening a new issue in the JIRA system\nhosted at:\n\n\u003chttps://issues.apache.org/jira/browse/GUACAMOLE\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fguacamole-manual","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fguacamole-manual","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fguacamole-manual/lists"}