By using this site, you agree to have cookies stored on your device, strictly for functional purposes, such as storing your session and preferences.

Dismiss

 README.md

View raw Download
text/plain • 2.56 kiB
ASCII text

Panorama panel

The Panorama panel provides a configurable and traditional desktop panel (taskbar) for traditional environments, especially the upcoming "Panorama DE". It only runs correctly in Wayland compositors with layer-shell support, and is designed specifically for Wayfire.

One can set up this program to display one or multiple panels on the screen, each panel is set to display on a particular edge of a particular monitor, it has a configurable size, can hide itself unless the mouse is over it and holds applets in the left, centre or right areas.

Every widget you see on the panels is an applet provided by a dynamically loaded Python module.

Dependencies

For Debian and Ubuntu, this can be executed in the command:

sudo apt install libgtk-4-dev libgtk4-layer-shell-dev libwayland-dev python3 python3-gi python3-ruamel.yaml

Alternatively you can use venv. You also need a Wayland compositor that supports the wlr-layer-shell protocol, which is supported by most reasonably popular compositors except GNOME, Weston and Cage.

To use the included wf-window-list applet you need a Wayland compositor that supports wlr-foreign-toplevel-management, that is, one based on wlroots, Hyprland, Louvre or Mir.

Usage

Unless you're installing from a hypothetical package which would create a system-wide directory for applets, it is recommended to store them in the user-specific location. These are ~/.local/share/panorama-panel/applets for applets and ~/.config/panorama-panel/config.yaml for config. For development purposes, it is recommended that you make them symbolic links to the corresponding location in the repository.

After creating these directories, simply run the code and the panels should appear on your screen.

Writing applets

See implementing-applets.md.

Configuration

The configuration is in ~/.config/panorama-panel/config.yaml. See configuration.md for information.

A configuration GUI is supported by right-clicking an empty area of the panel and choosing "Open manager". Not all settings can be currently changed there. The panel you're currently editing will flash when it is selected. The toggle "Panel editing mode" makes applets draggable for you to reorder them.

                
                    
1
Panorama panel
2
==============
3
4
The Panorama panel provides a configurable and traditional desktop panel
5
(taskbar) for traditional environments, especially the upcoming "Panorama DE".
6
It only runs correctly in Wayland compositors with layer-shell support, and is
7
designed specifically for Wayfire.
8
9
One can set up this program to display one or multiple panels on the screen,
10
each panel is set to display on a particular edge of a particular monitor, it
11
has a configurable size, can hide itself unless the mouse is over it and holds
12
applets in the left, centre or right areas.
13
14
Every widget you see on the panels is an applet provided by a dynamically loaded
15
Python module.
16
17
Dependencies
18
------------
19
20
* GTK 4.6 or newer
21
* [GTK4 Layer Shell](https://github.com/wmww/gtk4-layer-shell)
22
* libwayland
23
* Python 3.10 or newer
24
* [pywayland](https://pypi.org/project/pywayland/)
25
* [PyGObject](https://pygobject.gnome.org/)
26
* [ruamel.yaml](https://yaml.dev/doc/ruamel.yaml/)
27
28
For Debian and Ubuntu, this can be executed in the command:
29
30
~~~
31
sudo apt install libgtk-4-dev libgtk4-layer-shell-dev libwayland-dev python3 python3-gi python3-ruamel.yaml
32
~~~
33
34
Alternatively you can use venv. You also need a Wayland compositor that supports
35
the wlr-layer-shell protocol, which is supported by most reasonably popular
36
compositors except GNOME, Weston and Cage.
37
38
To use the included `wf-window-list` applet you need a Wayland compositor that
39
supports wlr-foreign-toplevel-management, that is, one based on wlroots,
40
Hyprland, Louvre or Mir.
41
42
Usage
43
-----
44
45
Unless you're installing from a hypothetical package which would create a
46
system-wide directory for applets, it is recommended to store them
47
in the user-specific location. These are
48
`~/.local/share/panorama-panel/applets` for applets and
49
`~/.config/panorama-panel/config.yaml` for config. For development purposes, it
50
is recommended that you make them symbolic links to the corresponding location
51
in the repository.
52
53
After creating these directories, simply run the code and the panels should
54
appear on your screen.
55
56
Writing applets
57
---------------
58
59
See [implementing-applets.md](docs/applet-api/implementing-applets.md).
60
61
Configuration
62
-------------
63
64
The configuration is in `~/.config/panorama-panel/config.yaml`. See
65
[configuration.md](docs/configuration.md) for information.
66
67
A configuration GUI is supported by right-clicking an empty area of the panel
68
and choosing "Open manager". Not all settings can be currently changed there.
69
The panel you're currently editing will flash when it is selected. The toggle
70
"Panel editing mode" makes applets draggable for you to reorder them.
71