{"id":23802537,"url":"https://github.com/agx/phoc","last_synced_at":"2025-09-06T15:33:10.312Z","repository":{"id":150122637,"uuid":"236314687","full_name":"agx/phoc","owner":"agx","description":"Read-only mirror of https://gitlab.gnome.org/World/Phosh/phoc","archived":false,"fork":false,"pushed_at":"2025-08-27T07:48:47.000Z","size":3029,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-30T03:40:55.887Z","etag":null,"topics":["phosh","wayland","wlroots"],"latest_commit_sha":null,"homepage":"https://phosh.mobi","language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/agx.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS","contributing":null,"funding":null,"license":"LICENSES/GPL-3.0-or-later.txt","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,"zenodo":null}},"created_at":"2020-01-26T13:18:12.000Z","updated_at":"2025-08-27T07:48:51.000Z","dependencies_parsed_at":"2023-04-16T09:17:01.721Z","dependency_job_id":"982372a0-7045-4636-899c-5b139acd4567","html_url":"https://github.com/agx/phoc","commit_stats":{"total_commits":2238,"total_committers":33,"mean_commits":67.81818181818181,"dds":0.1787310098302055,"last_synced_commit":"4692f2ee624f56ed95edb8b78ce9c9cf6e0a7dad"},"previous_names":[],"tags_count":76,"template":false,"template_full_name":null,"purl":"pkg:github/agx/phoc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agx%2Fphoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agx%2Fphoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agx%2Fphoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agx%2Fphoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/agx","download_url":"https://codeload.github.com/agx/phoc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agx%2Fphoc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273925682,"owners_count":25192312,"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","status":"online","status_checked_at":"2025-09-06T02:00:13.247Z","response_time":2576,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["phosh","wayland","wlroots"],"created_at":"2025-01-01T22:27:00.937Z","updated_at":"2025-09-06T15:33:10.294Z","avatar_url":"https://github.com/agx.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Phone compositor\n\n[![Code coverage](https://gitlab.gnome.org/World/Phosh/phoc/badges/main/coverage.svg)](https://gitlab.gnome.org/World/Phosh/phoc/-/commits/main)\n\n[wlroots][1] based Phone compositor as used on the Librem5.\n\nPhoc is pronounced like the English word fog.\n\n## Building Phoc\n\n### Dependencies\n\nOn a Debian based system run:\n\n```sh\n    sudo apt-get -y install build-essential\n    sudo apt-get -y build-dep .\n```\n\nFor an explicit list of dependencies check the `Build-Depends` entry in the\n[debian/control][2] file.\n\n### Building\n\nWe use the meson (and thereby Ninja) build system for phoc. The quickest\nway to get going is to do the following:\n\n```sh\n    meson setup _build\n    meson compile -C _build\n    meson install -C _build --skip-subprojects\n```\n\nThis assumes you have wlroots installed on your system. If you don't have that\nand/or want to build from source run:\n\n```sh\n    meson -Dembed-wlroots=enabled --default-library=static _build\n    meson compile -C _build\n```\n\nThis will fetch a matching version of wlroots and build that as well.\n\n## Running\n\nTo run from the source tree use\n\n```sh\n    ./_build/run\n```\n\n### Test\n\nAfter making source changes run\n\n```sh\n    xvfb-run meson test -C _build\n```\n\nto see if anything broke.\n\n## Configuration\n\nphoc's behaviour can be configured via `GSettings`. For your convenience,\na set of scripts to manipulate config values is available in `helpers`\ndirectory.\n\n- `scale-to-fit` toggles automatic scaling of applications that don't fit\n  the screen. This setting is enabled per application using its reported\n  app-id. For instance, to enable scaling of GNOME Maps windows use:\n\n      ./tools/scale-to-fit org.gnome.Maps on\n\n- `auto-maximize` toggles automatic maximization of Wayland windows.\n  Disabling it allows windows to be resized and moved, which may be desired\n  when running phoc on desktop-like setups.\n\n      ./tools/auto-maximize off\n\nOutputs are configured via `phoc.ini` config file - see [`src/phoc.ini.example`][3]\nfor more information.\n\n## Debugging\n\nphoc uses glib so the `G_MESSAGES_DEBUG` environment variable can be\nused to enable more log messages and `G_DEBUG` to assert on warnings\nand criticals. The log domains all start with `phoc-` and are usually\n`phoc-\u003csourcefile\u003e`. All wlroots related messages are logged with\n`phoc-wlroots`.\nFor more details on these environment variables, read the [documentation for GLib][4].\n\nThere's also a `PHOC_DEBUG` environment variable to turn on some debugging\nfeatures. Use `PHOC_DEBUG=help phoc` to see supported flags.\n\n## API docs\n\nAPI documentation is available at \u003chttps://world.pages.gitlab.gnome.org/Phosh/phoc/\u003e\n\n## Getting in Touch\n\n- Issue tracker: \u003chttps://gitlab.gnome.org/World/Phosh/phoc/issues\u003e\n- Matrix: \u003chttps://matrix.to/#/#phosh:sigxcpu.org\u003e\n\n[1]: https://gitlab.freedesktop.org/wlroots/\n[2]: debian/control\n[3]: src/phoc.ini.example\n[4]: https://docs.gtk.org/glib/running.html#environment-variables\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagx%2Fphoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagx%2Fphoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagx%2Fphoc/lists"}