GitXplorerGitXplorer
a

phosh

public
133 stars
3 forks
0 issues

Commits

List of commits on branch main.
Unverified
900b7005f960c4ed514ed766fc758c3d7f7c3a9d

Merge branch 'drop-osk-button' into 'main'

committed 13 hours ago
Unverified
d5da3b1aa04243636decc8d6ab9ee4eb9deda5d8

osk-button: Drop widget

aagx committed 2 days ago
Unverified
c5c4274febcf3d949510a1ecdaaf2fe33c7227a9

ci: Pull phoc from Debian unstable

aagx committed 2 days ago
Unverified
45d4839adcfa4f69887c90e547f3c5185806df11

Update Brazilian Portuguese translation

rrffontenelle committed 2 days ago
Unverified
0178d3e1dd1418695b6bad17a9eda011385b1e74

Merge branch 'mpris-cancel' into 'main'

committed 4 days ago
Unverified
d3fcbc3770e387e09eff1818755732d182ba69e6

media-player: Simplify flow

aagx committed 4 days ago

README

The README file for this repository.

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 devices

Typical 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

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

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:

meson setup _build
meson compile -C _build

Testing

To run the tests run

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:

_build/run

or (if you built phoc from source in ../phoc) in one command:

../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

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:

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:

cat <<EOF > /etc/systemd/system/phosh.service.d/override.conf
[Service]
User=<your_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 https://wiki.gnome.org/TranslationProject and https://l10n.gnome.org/module/phosh/.

Getting in Touch

Development Documentation

Development documentation including API docs and notes for application developers is at https://world.pages.gitlab.gnome.org/Phosh/phosh.