mirror of
https://invent.kde.org/marcoa/shift-shell.git
synced 2026-06-11 00:47:22 +00:00
Clarify Shift product framing in docs
Rewrite the main project docs to present SHIFT as the product and Plasma Mobile as the upstream base. Keep compatibility-sensitive runtime identifiers such as org.kde.plasma.mobileshell and ~/.config/plasma-mobile explicit in the hacking guide instead of treating them as product identity.
This commit is contained in:
parent
f00a29bd21
commit
af190a813e
3 changed files with 23 additions and 17 deletions
12
HACKING.md
12
HACKING.md
|
|
@ -1,6 +1,6 @@
|
||||||
# Hacking on Shift
|
# Hacking on Shift
|
||||||
|
|
||||||
Shift is a convergent Plasma Mobile shell. This guide covers
|
Shift is a convergent shell built on Plasma Mobile components. This guide covers
|
||||||
building and testing it locally without polluting your host system.
|
building and testing it locally without polluting your host system.
|
||||||
|
|
||||||
The approach: keep every build dependency inside a **distrobox** container
|
The approach: keep every build dependency inside a **distrobox** container
|
||||||
|
|
@ -89,8 +89,8 @@ sudo zypper install --no-confirm \
|
||||||
|
|
||||||
### Runtime dependencies (needed for preview, not for compilation)
|
### Runtime dependencies (needed for preview, not for compilation)
|
||||||
|
|
||||||
The nested preview runs the system `plasmashell` binary. It needs a
|
The nested preview runs the system `plasmashell` binary. It needs the
|
||||||
complete Plasma Mobile runtime so all QML imports resolve:
|
complete runtime from the Plasma Mobile stack so all QML imports resolve:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo zypper install --no-confirm \
|
sudo zypper install --no-confirm \
|
||||||
|
|
@ -204,6 +204,7 @@ export EGL_PLATFORM=wayland
|
||||||
export QT_QUICK_CONTROLS_STYLE=org.kde.breeze
|
export QT_QUICK_CONTROLS_STYLE=org.kde.breeze
|
||||||
export QT_QUICK_CONTROLS_MOBILE=true
|
export QT_QUICK_CONTROLS_MOBILE=true
|
||||||
export PLASMA_PLATFORM=phone:handset
|
export PLASMA_PLATFORM=phone:handset
|
||||||
|
# Compatibility note: the runtime shell package id intentionally remains upstream.
|
||||||
export PLASMA_DEFAULT_SHELL=org.kde.plasma.mobileshell
|
export PLASMA_DEFAULT_SHELL=org.kde.plasma.mobileshell
|
||||||
export QT_FORCE_STDERR_LOGGING=1
|
export QT_FORCE_STDERR_LOGGING=1
|
||||||
exec plasmashell --replace -p org.kde.plasma.mobileshell
|
exec plasmashell --replace -p org.kde.plasma.mobileshell
|
||||||
|
|
@ -212,7 +213,8 @@ ENDSCRIPT
|
||||||
|
|
||||||
# Expose the project prefix to the host kwin_wayland so it can find
|
# Expose the project prefix to the host kwin_wayland so it can find
|
||||||
# KWin scripts (convergentwindows) and their QML dependencies.
|
# KWin scripts (convergentwindows) and their QML dependencies.
|
||||||
# Also overlay ~/.config/plasma-mobile so KWin reads the mobile kwinrc
|
# Also overlay ~/.config/plasma-mobile so KWin reads the mobile kwinrc.
|
||||||
|
# That path is intentionally preserved for compatibility with existing config handling.
|
||||||
# (envmanager writes convergentwindowsEnabled, Placement, etc. there).
|
# (envmanager writes convergentwindowsEnabled, Placement, etc. there).
|
||||||
export XDG_DATA_DIRS="$PREFIX/share:${XDG_DATA_DIRS:-/usr/local/share:/usr/share}"
|
export XDG_DATA_DIRS="$PREFIX/share:${XDG_DATA_DIRS:-/usr/local/share:/usr/share}"
|
||||||
export XDG_CONFIG_DIRS="$HOME/.config/plasma-mobile:${XDG_CONFIG_DIRS:-/etc/xdg}"
|
export XDG_CONFIG_DIRS="$HOME/.config/plasma-mobile:${XDG_CONFIG_DIRS:-/etc/xdg}"
|
||||||
|
|
@ -235,7 +237,7 @@ Make it executable: `chmod +x preview.sh`.
|
||||||
compositor doesn't clash with your running desktop.
|
compositor doesn't clash with your running desktop.
|
||||||
2. Four environment exports give the **host** `kwin_wayland` access to
|
2. Four environment exports give the **host** `kwin_wayland` access to
|
||||||
the project's `.prefix` (KWin scripts, QML plugins) and to
|
the project's `.prefix` (KWin scripts, QML plugins) and to
|
||||||
`~/.config/plasma-mobile` (where envmanager writes convergence
|
`~/.config/plasma-mobile` (the preserved compatibility path where envmanager writes convergence
|
||||||
settings like `convergentwindowsEnabled`, `Placement`, etc.).
|
settings like `convergentwindowsEnabled`, `Placement`, etc.).
|
||||||
3. `kwin_wayland` opens a window on your current desktop and creates a
|
3. `kwin_wayland` opens a window on your current desktop and creates a
|
||||||
Wayland socket named `shift-kwin`. Because of the exports it can
|
Wayland socket named `shift-kwin`. Because of the exports it can
|
||||||
|
|
|
||||||
13
OVERVIEW.md
13
OVERVIEW.md
|
|
@ -1,11 +1,8 @@
|
||||||
# Shift
|
# Shift
|
||||||
|
|
||||||
A fork of KDE Plasma Mobile that adds a desktop-class convergence mode.
|
Shift is a fork of KDE Plasma Mobile focused on convergence.
|
||||||
|
When you connect a monitor, keyboard, or mouse, the same shell should still
|
||||||
Plasma Mobile is a phone shell. It doesn't try to be anything else.
|
work as a desktop-style environment. No second OS, no separate session.
|
||||||
Shift picks up where it leaves off: when you connect a monitor, keyboard,
|
|
||||||
or mouse, the same device should feel like a desktop. No second OS, no
|
|
||||||
separate session — one shell that adapts.
|
|
||||||
|
|
||||||
## What's different from upstream
|
## What's different from upstream
|
||||||
|
|
||||||
|
|
@ -15,6 +12,10 @@ that still works. Shift adds a **convergence mode** layer on top — toggled
|
||||||
via `plasmamobilerc` — that swaps in desktop-oriented behaviour without
|
via `plasmamobilerc` — that swaps in desktop-oriented behaviour without
|
||||||
replacing the phone UI underneath.
|
replacing the phone UI underneath.
|
||||||
|
|
||||||
|
Compatibility-sensitive runtime identifiers such as
|
||||||
|
`org.kde.plasma.mobileshell` remain upstream-looking for now. The product is
|
||||||
|
SHIFT; the preserved identifiers are part of the current compatibility layer.
|
||||||
|
|
||||||
Key changes so far:
|
Key changes so far:
|
||||||
|
|
||||||
- **Unified dock** replacing the navigation panel in convergence mode,
|
- **Unified dock** replacing the navigation panel in convergence mode,
|
||||||
|
|
|
||||||
11
README.md
11
README.md
|
|
@ -1,6 +1,6 @@
|
||||||
# Shift
|
# Shift
|
||||||
|
|
||||||
SHIFT is an open source shell built on KDE Plasma Mobile, designed to adapt fluidly to your computing needs across devices
|
SHIFT is an independent shell fork focused on convergence. It builds on KDE Plasma Mobile, keeps the upstream phone UI available, and layers desktop-oriented behaviour on top of the same session.
|
||||||
|
|
||||||
### Desktop demos
|
### Desktop demos
|
||||||
|
|
||||||
|
|
@ -8,8 +8,8 @@
|
||||||

|

|
||||||

|

|
||||||
|
|
||||||
Shift is a fork of [plasma-mobile](https://invent.kde.org/plasma/plasma-mobile).
|
SHIFT tracks [plasma-mobile](https://invent.kde.org/plasma/plasma-mobile) as its upstream base.
|
||||||
The upstream phone UI is untouched; convergence adds a layer on top.
|
The upstream phone UI remains intact; convergence-specific behaviour is added on top.
|
||||||
|
|
||||||
### What convergence mode changes
|
### What convergence mode changes
|
||||||
|
|
||||||
|
|
@ -43,6 +43,10 @@ cmake --build build
|
||||||
cmake --install build
|
cmake --install build
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Compatibility-sensitive identifiers such as `org.kde.plasma.mobileshell`
|
||||||
|
are intentionally preserved in the runtime and build instructions. They are
|
||||||
|
part of the current compatibility boundary, not the public product name.
|
||||||
|
|
||||||
### Disclaimer
|
### Disclaimer
|
||||||
|
|
||||||
SHIFT is an independent project based on KDE Plasma Mobile.
|
SHIFT is an independent project based on KDE Plasma Mobile.
|
||||||
|
|
@ -61,7 +65,6 @@ SHIFT is not intended as a direct contribution to KDE Plasma Mobile.
|
||||||
|
|
||||||
However, if parts of this project are considered useful, contributions or ideas may be proposed upstream in a collaborative manner.
|
However, if parts of this project are considered useful, contributions or ideas may be proposed upstream in a collaborative manner.
|
||||||
|
|
||||||
|
|
||||||
See [pm_README.md](pm_README.md) for the original Plasma Mobile README.
|
See [pm_README.md](pm_README.md) for the original Plasma Mobile README.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue