Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/agx/phosh
A pure Wayland shell for GNOME on mobile devices. Mirror of https://gitlab.gnome.org/World/Phosh/phosh
https://github.com/agx/phosh
gnome gtk phosh wayland
Last synced: 6 days ago
JSON representation
A pure Wayland shell for GNOME on mobile devices. Mirror of https://gitlab.gnome.org/World/Phosh/phosh
- Host: GitHub
- URL: https://github.com/agx/phosh
- Owner: agx
- License: gpl-3.0
- Created: 2018-09-30T18:10:07.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2025-01-28T13:17:28.000Z (8 days ago)
- Last Synced: 2025-01-28T23:57:28.398Z (7 days ago)
- Topics: gnome, gtk, phosh, wayland
- Language: C
- Homepage: https://phosh.mobi
- Size: 6.21 MB
- Stars: 134
- Watchers: 10
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: NEWS
- License: COPYING
Awesome Lists containing this project
README
# Phosh
A pure Wayland shell for mobile devices like smart phones or small
tablets which* use touch input
* are running battery powered most of the time
* have limited screen space
* have a limited number of buttons
* might be docked to a keyboard, screen and other input devicesTypical devices are the Librem 5 and PinePhone or devices formerly
running proprietary operating systems like the OnePlus 6/6T.The companion Wayland compositor is [phoc][].
## License
phosh is licensed under the GPL-3.0-or-later licence.
## Getting the source
```sh
git clone https://gitlab.gnome.org/World/Phosh/phosh
cd phosh
```The [main][] branch has the current development version.
## Dependencies
On a Debian based system run
```sh
sudo apt-get -y install build-essential
sudo apt-get -y build-dep .
```For an explicit list of dependencies check the `Build-Depends` entry in the
[debian/control][] file.## Building
We use the meson (and thereby Ninja) build system for phosh. The quickest
way to get going is to do the following:```sh
meson setup _build
meson compile -C _build
```## Testing
To run the tests run
```sh
xvfb-run meson test --no-suite screenshots -C _build
```For details see the [.gitlab-ci.yml][] file.
## Running
### Running from the source tree
When running from the source tree start the compositor *[phoc][]*.
Then start *phosh* using:```sh
_build/run
```or (if you built *phoc* from source in *../phoc*) in one command:
```sh
../phoc/_build/run -C ./data/phoc.ini -E _build/run
```This will make sure the needed gsettings schema is found. Note that there's no
need to install any files outside the source tree.The result should look something like this:
![phosh](screenshots/phosh-overview.png)
### Running from the Debian packages
If you're running a display manager like GDM or LightDM you can select the
`Phosh` session from the display managers menu. If you want run without a
display manager but nevertheless start phosh at system boot there's a systemd
unit file in */lib/systemd/system/phosh* which is disabled by default:```sh
systemctl enable phosh
systemctl start phosh
```This runs *phosh* as the user with user id 1000 (which needs to exist). If you
don't have that user and don't want to create one you can make systemd
run *phosh* as any user by using an override file:```sh
cat < /etc/systemd/system/phosh.service.d/override.conf
[Service]
User=
EOF
```All of the above use the `/usr/bin/phosh-session` script to start compositor
and shell under the hood so if you just want to start phosh from the system
console once invoke that script directly.## Translations
This is handled via GNOMEs infra, see
and
.## Getting in Touch
* Issue tracker:
* Matrix:## Development Documentation
Development documentation including API docs and notes for application
developers is at .[main]: https://gitlab.gnome.org/World/Phosh/phosh/-/tree/main
[.gitlab-ci.yml]: https://gitlab.gnome.org/World/Phosh/phosh/-/blob/main/.gitlab-ci.yml
[debian/control]: https://gitlab.gnome.org/World/Phosh/phosh/-/blob/main/debian/control
[phoc]: https://gitlab.gnome.org/World/Phosh/phoc