Skip to content

Commit b7b3bf0

Browse files
committed
Merge branch 'next'
2 parents 037c72f + 3390494 commit b7b3bf0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+4179
-1770
lines changed

.github/workflows/codeql-analysis.yml

+5-14
Original file line numberDiff line numberDiff line change
@@ -18,30 +18,21 @@ jobs:
1818

1919
steps:
2020
- name: Checkout repository
21-
uses: actions/checkout@v2
22-
with:
23-
# We must fetch at least the immediate parents so that if this is
24-
# a pull request then we can checkout the head.
25-
fetch-depth: 2
26-
27-
# If this run was triggered by a pull request event, then checkout
28-
# the head of the pull request instead of the merge commit.
29-
- run: git checkout HEAD^2
30-
if: ${{ github.event_name == 'pull_request' }}
21+
uses: actions/checkout@v3
3122

3223
# Initializes the CodeQL tools for scanning.
3324
- name: Initialize CodeQL
34-
uses: github/codeql-action/init@v1
25+
uses: github/codeql-action/init@v2
3526
with:
3627
languages: ${{ matrix.language }}
3728

3829
# Install dependencies
39-
- run: sudo apt update && sudo apt install libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-xinerama0-dev libxcb-glx0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl1-mesa-dev libpcre2-dev libevdev-dev uthash-dev libev-dev libx11-xcb-dev meson ninja-build
30+
- run: sudo apt update && sudo apt install libconfig-dev libdbus-1-dev libegl-dev libev-dev libgl-dev libpcre2-dev libpixman-1-dev libx11-xcb-dev libxcb1-dev libxcb-composite0-dev libxcb-damage0-dev libxcb-dpms0-dev libxcb-glx0-dev libxcb-image0-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-shape0-dev libxcb-util-dev libxcb-xfixes0-dev libxext-dev meson ninja-build uthash-dev
4031
if: ${{ matrix.language == 'cpp' }}
4132

4233
# Autobuild
4334
- name: Autobuild
44-
uses: github/codeql-action/autobuild@v1
35+
uses: github/codeql-action/autobuild@v2
4536

4637
- name: Perform CodeQL Analysis
47-
uses: github/codeql-action/analyze@v1
38+
uses: github/codeql-action/analyze@v2

.github/workflows/coding-style-pr.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ jobs:
66
runs-on: ubuntu-latest
77

88
steps:
9-
- uses: actions/checkout@v2
9+
- uses: actions/checkout@v3
1010
- run: git fetch --depth=1 origin ${{ github.event.pull_request.base.sha }}
11-
- uses: yshui/git-clang-format-lint@v1.13
11+
- uses: yshui/git-clang-format-lint@v1.14
1212
with:
1313
base: ${{ github.event.pull_request.base.sha }}

.github/workflows/coding-style.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ jobs:
66
runs-on: ubuntu-latest
77

88
steps:
9-
- uses: actions/checkout@v2
9+
- uses: actions/checkout@v3
1010
with:
1111
fetch-depth: 2
12-
- uses: yshui/git-clang-format-lint@v1.13
12+
- uses: yshui/git-clang-format-lint@v1.14
1313
with:
1414
base: ${{ github.event.ref }}~1

.gitmodules

Whitespace-only changes.

CONTRIBUTORS

+87-77
Original file line numberDiff line numberDiff line change
@@ -1,85 +1,95 @@
1-
Sorted in alphabetical order
2-
Open an issue or pull request if you don't want your name listed here.
1+
Sorted in alphabetical order. Feel free to open an issue or create a
2+
pull request if you want to change or remove your mention.
33

4-
Adam Jackson <ajax@nwnk.net>
5-
adelin-b <berard.adelin@gmail.com>
6-
Alexander Kapshuna <kapsh@kap.sh>
7-
Antonin Décimo <antonin.decimo@gmail.com>
8-
Antonio Vivace <dev@avivace.com>
9-
Avi-D-coder <avi.the.coder@gmail.com>
10-
Ben Friesen <bfriesen95@gmail.com>
11-
Bernd Busse <bernd@busse-net.de>
12-
Bert Gijsbers <gijsbers@science.uva.nl>
13-
bhagwan <bhagwan@disroot.org>
14-
Bodhi <craig.langman@gmail.com>
15-
Brottweiler <tibell.christoffer@gmail.com>
16-
Carl Worth <cworth@cworth.org>
17-
Christopher Jeffrey <chjjeffrey@gmail.com>
18-
Corax26 <cor.ax26@gmail.com>
19-
Dan Elkouby <streetwalkermc@gmail.com>
20-
Dana Jansens <danakj@orodu.net>
21-
Daniel Kwan <daniel.w.t.kwan@outlook.com>
22-
Dave Airlie <airlied@linux.ie>
4+
Adam Jackson <ajax at nwnk.net>
5+
adelin-b <berard.adelin at gmail.com>
6+
Alexander Kapshuna <kapsh at kap.sh>
7+
Antonin Décimo <antonin.decimo at gmail.com>
8+
Antonio Vivace <dev at avivace.com>
9+
Avi ד <avi.the.coder at gmail.com>
10+
Ben Friesen <bfriesen95 at gmail.com>
11+
Bernd Busse <bernd at busse-net.de>
12+
Bert Gijsbers <gijsbers at science.uva.nl>
13+
bhagwan <bhagwan at disroot.org>
14+
Bodhi <craig.langman at gmail.com>
15+
Brottweiler <tibell.christoffer at gmail.com>
16+
Carl Worth <cworth at cworth.org>
17+
Christopher Jeffrey <chjjeffrey at gmail.com>
18+
Corax26 <cor.ax26 at gmail.com>
19+
Dan Elkouby <streetwalkermc at gmail.com>
20+
Dana Jansens <danakj at orodu.net>
21+
Daniel Kwan <daniel.w.t.kwan at outlook.com>
22+
Dave Airlie <airlied at linux.ie>
2323
David Schlachter
2424
dolio
25-
Duncan <duncan.britton@outlook.com>
26-
Dylan Araps <dylan.araps@gmail.com>
27-
Einar Lielmanis <einars@gmail.com>
28-
Eric Anholt <anholt@freebsd.org> <eric@anholt.net>
25+
Duncan <duncan.britton at outlook.com>
26+
Dylan Araps <dylan.araps at gmail.com>
27+
Einar Lielmanis <einars at gmail.com>
28+
Eric Anholt <anholt at freebsd.org> <eric at anholt.net>
29+
Evgeniy Baskov <j-basevgser at yandex.ru>
2930
Greg Flynn
30-
Harish Rajagopal <harish.rajagopals@gmail.com>
31-
hasufell <julian.ospald@googlemail.com>
32-
Ignacio Taranto <ignacio.taranto@eclypsium.com>
31+
h7x4 <h7x4 at nani.wtf>
32+
Harish Rajagopal <harish.rajagopals at gmail.com>
33+
hasufell <julian.ospald at googlemail.com>
34+
i-c-u-p
35+
Ignacio Taranto <ignacio.taranto at eclypsium.com>
3336
Istvan Petres
34-
James Cloos <cloos@jhcloos.com>
35-
Jamey Sharp <jamey@minilop.net>
36-
Jan Beich <jbeich@FreeBSD.org>
37-
Jarrad <jarrad.whitaker@gmail.com>
38-
Javeed Shaikh <syscrash2k@gmail.com>
39-
Jerónimo Navarro <jnavarro@ancasrl.com.ar>
40-
jialeens <jialeadmin@163.com>
41-
Johnny Pribyl <pribylsnbits@gmail.com>
42-
Keith Packard <keithp@keithp.com>
43-
Kevin Kelley <kelleyk@kelleyk.net>
44-
ktprograms <ktprograms@gmail.com>
45-
Lukas Schmelzeisen <l.schmelzeisen@gmx.de>
46-
mæp <m.aep@live.com>
47-
Mark Tiefenbruck <mark@fluxbox.org>
48-
Matthew Allum <breakfast@10.am>
49-
Maxim Solovyov <visleaf@protonmail.com>
50-
Michael Reed <supertron421@gmail.com>
51-
Michele Lambertucci <michele.lambertucci@mail.polimi.it>
52-
Namkhai Bourquin <namkhai.n3@protonmail.com>
53-
Nate Hart <nejthan@gmail.com>
54-
nia <nia@netbsd.org>
55-
notfoss <static.vortex@gmx.com>
56-
Omar Polo <op@omarpolo.com>
57-
orbea <orbea@riseup.net>
58-
@Paradigm0001
37+
Jake <jakeroggenbuck2 at gmail.com>
38+
James Cloos <cloos at jhcloos.com>
39+
Jamey Sharp <jamey at minilop.net>
40+
Jan Beich <jbeich at freebsd.org>
41+
Jarrad <jarrad.whitaker at gmail.com>
42+
Javeed Shaikh <syscrash2k at gmail.com>
43+
Jerónimo Navarro <jnavarro at ancasrl.com.ar>
44+
jialeens <jialeadmin at 163.com>
45+
Johnny Pribyl <pribylsnbits at gmail.com>
46+
Keith Packard <keithp at keithp.com>
47+
Kevin Kelley <kelleyk at kelleyk.net>
48+
ktprograms <ktprograms at gmail.com>
49+
Kurenshe Nurdaulet
50+
Lukas Schmelzeisen <l.schmelzeisen at gmx.de>
51+
Mark Tiefenbruck <mark at fluxbox.org>
52+
Matthew Allum <breakfast at 10.am>
53+
Maxim Solovyov <msolovyov at protonmail.com>
54+
Michael Reed <supertron421 at gmail.com>
55+
Michele Lambertucci <michele.lambertucci at mail.polimi.it>
56+
mæp <m.aep at live.com>
57+
Namkhai Bourquin <namkhai.n3 at protonmail.com>
58+
Nate Hart <nejthan at gmail.com>
59+
nia <nia at netbsd.org>
60+
Nikolay Borodin <monsterovich at gmail.com>
61+
notfoss <static.vortex at gmx.com>
62+
Omar Polo <op at omarpolo.com>
63+
oofsauce <alanpanayotov at gmail.com>
64+
orbea <orbea at riseup.net>
65+
Paradigm0001
5966
Patrick Collins
60-
Peter Mattern <matternp@arcor.de>
61-
Phil Blundell <pb@reciva.com>
62-
Que Quotion <quequotion@bugmenot.com> <the_q123@hotmail.com>
63-
Rafael Kitover <rkitover@gmail.com>
64-
Richard Grenville <pyxlcy@gmail.com>
65-
Rytis Karpuska <rytis.karpuska@gmail.com>
66-
Samuel Hand <samuel.d.hand@gmail.com>
67-
Scott Leggett <scott@sl.id.au>
68-
scrouthtv <lennivh24@gmail.com>
69-
Sebastien Waegeneire <sebastien@waegeneire.com>
70-
Subhaditya Nath <sn03.general@gmail.com>
71-
Tasos Sahanidis <tasos@tasossah.com>
72-
Thiago Kenji Okada <thiagokokada@gmail.com>
73-
Tilman Sauerbeck <tilman@code-monkey.de>
74-
Tim van Dalen <Tim@timvdalen.nl>
75-
Tomas Janousek <tomi@nomi.cz>
76-
Tom Dörr <tomdoerr96@gmail.com>
67+
Peter Mattern <matternp at arcor.de>
68+
Phil Blundell <pb at reciva.com>
69+
Que Quotion <quequotion at bugmenot.com>
70+
Rafael Kitover <rkitover at gmail.com>
71+
Richard Grenville <pyxlcy at gmail.com>
72+
Rytis Karpuska <rytis.karpuska at gmail.com>
73+
Samuel Hand <samuel.d.hand at gmail.com>
74+
Scott Leggett <scott at sl.id.au>
75+
scrouthtv <lennivh24 at gmail.com>
76+
Sebastien Waegeneire <sebastien at waegeneire.com>
77+
Stefan Radziuk <stefan.radziuk19 at imperial.ac.uk>
78+
Subhaditya Nath <sn03.general at gmail.com>
79+
Tasos Sahanidis <tasos at tasossah.com>
80+
Thiago Kenji Okada <thiagokokada at gmail.com>
81+
Tilman Sauerbeck <tilman at code-monkey.de>
82+
Tim Siegel <siegeltr at gmail.com>
83+
Tim van Dalen <tim at timvdalen.nl>
84+
tokyoneon78 <mockcoder at protonmail.ch>
85+
Tom Dörr <tomdoerr96 at gmail.com>
86+
Tomas Janousek <tomi at nomi.cz>
7787
Toni Jarjour
78-
Tuomas Kinnunen <tuomas.kinnunen@aalto.fi>
79-
Uli Schlachter <psychon@znc.in>
80-
Walter Lapchynski <wxl@ubuntu.com>
81-
Will Dietz <w@wdtz.org>
82-
XeCycle <XeCycle@Gmail.com>
83-
Yuxuan Shui <yshuiv7@gmail.com>
88+
Tuomas Kinnunen <tuomas.kinnunen at aalto.fi>
89+
Uli Schlachter <psychon at znc.in>
90+
Walter Lapchynski <wxl at ubuntu.com>
91+
Will Dietz <w at wdtz.org>
92+
XeCycle <xecycle at gmail.com>
93+
Yuxuan Shui <yshuiv7 at gmail.com>
8494
zilrich
85-
ಠ_ಠ <easteregg@verfriemelt.org>
95+
ಠ_ಠ <easteregg at verfriemelt.org>

README.md

+24-15
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
picom
22
=====
33

4+
[![circleci](https://circleci.com/gh/yshui/picom.svg?style=shield)](https://circleci.com/gh/yshui/picom)
5+
[![codecov](https://codecov.io/gh/yshui/picom/branch/next/graph/badge.svg?token=NRSegi0Gze)](https://codecov.io/gh/yshui/picom)
6+
[![chat on discord](https://img.shields.io/discord/1106224720833159198?logo=discord)](https://discord.gg/SY5JJzPgME)
7+
48
__picom__ is a compositor for X, and a [fork of Compton](History.md).
59

6-
You can leave your feedback or thoughts in the [discussion tab](https://github.com/yshui/picom/discussions).
10+
You can leave your feedback or thoughts in the [discussion tab](https://github.com/yshui/picom/discussions), or chat with other users on [discord](https://discord.gg/SY5JJzPgME)!
711

812
## Change Log
913

@@ -20,7 +24,9 @@ Assuming you already have all the usual building tools installed (e.g. gcc, pyth
2024
* libXext
2125
* xproto
2226
* xcb
27+
* xcb-util
2328
* xcb-damage
29+
* xcb-dpms
2430
* xcb-xfixes
2531
* xcb-shape
2632
* xcb-renderutil
@@ -29,35 +35,33 @@ Assuming you already have all the usual building tools installed (e.g. gcc, pyth
2935
* xcb-composite
3036
* xcb-image
3137
* xcb-present
32-
* xcb-xinerama
3338
* xcb-glx
3439
* pixman
3540
* libdbus (optional, disable with the `-Ddbus=false` meson configure flag)
3641
* libconfig (optional, disable with the `-Dconfig_file=false` meson configure flag)
3742
* libGL, libEGL (optional, disable with the `-Dopengl=false` meson configure flag)
38-
* libpcre (optional, disable with the `-Dregex=false` meson configure flag)
43+
* libpcre2 (optional, disable with the `-Dregex=false` meson configure flag)
3944
* libev
4045
* uthash
4146

4247
On Debian based distributions (e.g. Ubuntu), the needed packages are
4348

4449
```
45-
libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-xinerama0-dev libxcb-glx0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl-dev libegl-dev libpcre2-dev libpcre3-dev libevdev-dev uthash-dev libev-dev libx11-xcb-dev meson
50+
libconfig-dev libdbus-1-dev libegl-dev libev-dev libgl-dev libpcre2-dev libpixman-1-dev libx11-xcb-dev libxcb1-dev libxcb-composite0-dev libxcb-damage0-dev libxcb-dpms0-dev libxcb-glx0-dev libxcb-image0-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-shape0-dev libxcb-util-dev libxcb-xfixes0-dev libxext-dev meson ninja-build uthash-dev
4651
```
4752

4853
On Fedora, the needed packages are
4954

5055
```
51-
dbus-devel gcc git libconfig-devel libdrm-devel libev-devel libX11-devel libX11-xcb libXext-devel libxcb-devel libGL-devel libEGL-devel meson pcre-devel pixman-devel uthash-devel xcb-util-image-devel xcb-util-renderutil-devel xorg-x11-proto-devel
56+
dbus-devel gcc git libconfig-devel libdrm-devel libev-devel libX11-devel libX11-xcb libXext-devel libxcb-devel libGL-devel libEGL-devel meson pcre2-devel pixman-devel uthash-devel xcb-util-image-devel xcb-util-renderutil-devel xorg-x11-proto-devel
5257
```
5358

5459
To build the documents, you need `asciidoc`
5560

5661
### To build
5762

5863
```bash
59-
$ git submodule update --init --recursive
60-
$ meson --buildtype=release . build
64+
$ meson setup --buildtype=release build
6165
$ ninja -C build
6266
```
6367

@@ -68,13 +72,12 @@ If you have libraries and/or headers installed at non-default location (e.g. und
6872
You can do that by setting the `CPPFLAGS` and `LDFLAGS` environment variables when running `meson`. Like this:
6973

7074
```bash
71-
$ LDFLAGS="-L/path/to/libraries" CPPFLAGS="-I/path/to/headers" meson --buildtype=release . build
72-
75+
$ LDFLAGS="-L/path/to/libraries" CPPFLAGS="-I/path/to/headers" meson setup --buildtype=release build
7376
```
7477

7578
As an example, on FreeBSD, you might have to run meson with:
7679
```bash
77-
$ LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include" meson --buildtype=release . build
80+
$ LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include" meson setup --buildtype=release build
7881
$ ninja -C build
7982
```
8083

@@ -88,15 +91,21 @@ Default install prefix is `/usr/local`, you can change it with `meson configure
8891

8992
## How to Contribute
9093

91-
### Code
94+
All contributions are welcome!
95+
96+
New features you think should be included in picom, a fix for a bug you found - please open a PR!
97+
98+
You can take a look at the [Issues](https://github.com/yshui/picom/issues).
99+
100+
Contributions to the documents and wiki are also appreciated.
92101

93-
You can look at the [Projects](https://github.com/yshui/picom/projects) page, and see if there is anything that interests you. Or you can take a look at the [Issues](https://github.com/yshui/picom/issues).
102+
Even if you don't want to add anything to picom, you are still helping by compiling and running this branch, and report any issue you can find.
94103

95-
### Non-code
104+
### Become a Collaborator
96105

97-
Even if you don't want to contribute code, you can still contribute by compiling and running this branch, and report any issue you can find.
106+
Becoming a collaborator of picom requires significant time commitment. You are expected to reply to issue reports, reviewing PRs, and sometimes fix bugs or implement new feature. You won't be able to push to the main branch directly, and all you code still has to go through code review.
98107

99-
Contributions to the documents and wiki will also be appreciated.
108+
If this sounds good to you, feel free to contact me.
100109

101110
## Contributors
102111

0 commit comments

Comments
 (0)