This repository has been archived by the owner on Nov 7, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 317
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
110 changed files
with
3,405 additions
and
1,028 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
contact_links: | ||
- name: Ask a question or request support for using i3 | ||
url: https://github.com/i3/i3/discussions/new | ||
about: Ask a question or request support for using i3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
name: GitHub Actions | ||
|
||
on: | ||
push: | ||
branches: [ gaps-next, gaps, actions ] | ||
pull_request: | ||
branches: [ gaps-next ] | ||
|
||
jobs: | ||
build: | ||
name: build and test | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
compiler: [gcc, clang] | ||
env: | ||
CC: ${{ matrix.compiler }} | ||
DOCKER_PASS: ${{ secrets.DOCKER_PASS }} | ||
DOCKER_EMAIL: ${{ secrets.DOCKER_EMAIL }} | ||
DOCKER_USER: ${{ secrets.DOCKER_USER }} | ||
GH_TOKEN: ${{ secrets.GH_TOKEN }} | ||
BALTO_TOKEN: ${{ secrets.BALTO_TOKEN }} | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- run: git fetch --prune --unshallow | ||
- name: construct container name | ||
run: | | ||
echo "BASENAME=i3wm/travis-base:$(date +'%Y-%m')-$(./travis/ha.sh travis/travis-base.Dockerfile)" >> $GITHUB_ENV | ||
echo "BASENAME_386=i3wm/travis-base-386:$(date +'%Y-%m')-$(./travis/ha.sh travis/travis-base-386.Dockerfile)" >> $GITHUB_ENV | ||
echo "BASENAME_UBUNTU=i3wm/travis-base-ubuntu:$(date +'%Y-%m')-$(./travis/ha.sh travis/travis-base-ubuntu.Dockerfile)" >> $GITHUB_ENV | ||
echo "BASENAME_UBUNTU_386=i3wm/travis-base-ubuntu-386:$(date +'%Y-%m')-$(./travis/ha.sh travis/travis-base-ubuntu-386.Dockerfile)" >> $GITHUB_ENV | ||
- name: fetch or build Docker container | ||
run: | | ||
docker pull ${{ env.BASENAME }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME }} travis/travis-base.Dockerfile | ||
- name: fetch or build extra Docker containers | ||
run: | | ||
echo "::group::Ubuntu amd64" | ||
./travis/skip-pkg.sh || docker pull ${{ env.BASENAME_UBUNTU }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME_UBUNTU }} travis/travis-base-ubuntu.Dockerfile | ||
echo "::endgroup::" | ||
echo "::group::Debian i386" | ||
./travis/skip-pkg.sh || docker pull ${{ env.BASENAME_386 }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME_386 }} travis/travis-base-386.Dockerfile | ||
echo "::endgroup::" | ||
echo "::group::Ubuntu i386" | ||
./travis/skip-pkg.sh || docker pull ${{ env.BASENAME_UBUNTU_386 }} || ./travis/docker-build-and-push.sh ${{ env.BASENAME_UBUNTU_386 }} travis/travis-base-ubuntu-386.Dockerfile | ||
echo "::endgroup::" | ||
- name: verify safe wrapper functions are used | ||
run: | | ||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/check-safe-wrappers.sh | ||
- name: verify code formatting | ||
run: | | ||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/check-formatting.sh | ||
- name: build i3 | ||
run: | | ||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf build; mkdir -p build && cd build && CFLAGS="-Wformat -Wformat-security -Wextra -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Werror -fno-common" meson .. -Ddocs=true -Dmans=true -Db_sanitize=address && ninja -v' | ||
- name: check spelling | ||
run: | | ||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/check-spelling.pl | ||
- name: run i3 tests | ||
run: | | ||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} ./travis/run-tests.sh | ||
- name: Archive test logs | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: test-logs | ||
path: build/testsuite-* | ||
if: ${{ failure() }} | ||
- name: build dist tarball | ||
run: | | ||
docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 -e CC ${{ env.BASENAME }} /bin/sh -c 'rm -rf distbuild; mkdir distbuild && cd distbuild && meson .. -Ddocs=true -Dmans=true && ninja -v dist' | ||
- name: build Debian packages | ||
run: | | ||
echo "::group::Debian amd64" | ||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/debian-build.sh deb/debian-amd64/DIST | ||
echo "::endgroup::" | ||
echo "::group::Ubuntu amd64" | ||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME_UBUNTU }} ./travis/debian-build.sh deb/ubuntu-amd64/DIST | ||
echo "::endgroup::" | ||
echo "::group::Debian i386" | ||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME_386 }} linux32 ./travis/debian-build.sh deb/debian-i386/DIST | ||
echo "::endgroup::" | ||
echo "::group::Ubuntu i386" | ||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME_UBUNTU_386 }} linux32 ./travis/debian-build.sh deb/ubuntu-i386/DIST | ||
echo "::endgroup::" | ||
- name: push Debian packages to balto | ||
run: | | ||
./travis/skip-pkg.sh || travis/push-balto.sh | ||
- name: build docs | ||
run: | | ||
./travis/skip-pkg.sh || docker run -v $PWD:/usr/src/i3/ -w /usr/src/i3 ${{ env.BASENAME }} ./travis/docs.sh | ||
- name: push docs to GitHub pages | ||
run: | | ||
./travis/skip-pkg.sh || travis/deploy-github-pages.sh |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
|
||
┌──────────────────────────────┐ | ||
│ Release notes for i3 v4.20 │ | ||
└──────────────────────────────┘ | ||
|
||
This is i3 v4.20. This version is considered stable. All users of i3 are | ||
strongly encouraged to upgrade. | ||
|
||
Two long-awaited features have been added: | ||
|
||
1. You can now use an “include” directive in your i3 config: | ||
https://i3wm.org/docs/userguide.html#include | ||
|
||
2. You can now enable showing window icons in window titlebars: | ||
https://i3wm.org/docs/userguide.html#title_window_icon | ||
|
||
In case you notice any issues regarding your background/wallpaper, note: | ||
|
||
Some login managers (e.g. gdm) start the X11 server with the -background none | ||
flag. When this flag is set, a background needs to be explicitly set later in | ||
the X11 session, otherwise stale copies of closed windows remain visible on | ||
the X11 root window (symptom looks like “my terminal window is not closing”). | ||
|
||
i3 works around this situation by setting a screenshot as background when | ||
starting. Any background you set before starting i3 (e.g. in your Xsession) or | ||
after starting i3 (e.g. via exec statements in the i3 config) will be visible. | ||
|
||
A downside of this workaround is that if you have any windows already open in | ||
your X11 session, those will be part of the screenshot. | ||
|
||
To fix this issue, starting in v4.20, i3 detects whether the -background none | ||
option is enabled and only then sets a screenshot as background. | ||
|
||
┌────────────────────────────┐ | ||
│ Changes in i3 v4.20 │ | ||
└────────────────────────────┘ | ||
|
||
• default config: use dex for XDG autostart | ||
• docs/ipc: document scratchpad_state | ||
• ipc: the GET_CONFIG request now returns all included files and their details | ||
• i3-nagbar: position on focused monitor by default | ||
• i3-nagbar: add option to position on primary monitor | ||
• i3bar: use first bar config by default | ||
• i3-dmenu-desktop: ignore duplicate files and directories (fixes crash on NixOS) | ||
• i3-dump-log -f now uses UNIX sockets instead of pthreads. The UNIX socket approach | ||
should be more reliable and also more portable. | ||
• When clicking on a tab, focus its child (like when scrolling), or (if | ||
already focused), focus the tab container (alternatingly). | ||
• Implement the include config directive: | ||
https://i3wm.org/docs/userguide.html#include | ||
• Implement optionally showing window icons in titlebar: | ||
https://i3wm.org/docs/userguide.html#title_window_icon | ||
• Allow for_window to match against WM_CLIENT_MACHINE | ||
• Add %machine placeholder (WM_CLIENT_MACHINE) to title_format | ||
• 'move container|workspace to output': toggle a workspace (or container) | ||
between multiple outputs when multiple output names specified. | ||
• Add 'move container|workspace to output next' | ||
• Add 'all' window matching criterion | ||
• Acquire the WM_Sn selection when starting as required by ICCCM | ||
• Add --replace command line argument to replace an existing WM | ||
• Notify systemd when i3 is ready, allowing other services in a systemd user session | ||
to use i3 as a dependency | ||
|
||
┌────────────────────────────┐ | ||
│ Bugfixes │ | ||
└────────────────────────────┘ | ||
|
||
• i3bar: properly close file descriptors | ||
• i3bar: properly restart status command after config change | ||
• i3bar: exit with 1 when a wrong command line argument is used | ||
• ipc: return proper signed int for container positions: negative values were | ||
returned as large 32 bits integers | ||
• when initializing new outputs, avoid duplicating workspace numbers | ||
• fix workspaces not moving to assigned output after output becomes available | ||
• fix duplicate bindcode after i3-config-wizard | ||
• fix commented-out rofi call in default i3 config | ||
• clear pixmap before drawing to prevent visual garbage | ||
• fix crash with "layout default" | ||
• send an "output" event on XRandR 1.5 monitor configuration change | ||
|
||
┌────────────────────────────┐ | ||
│ Thanks! │ | ||
└────────────────────────────┘ | ||
|
||
Thanks for testing, bugfixes, discussions and everything I forgot go out to: | ||
|
||
ajakk, Albert Safin, Anaël Beutot, Antoine Martin, Dmitri Goutnik, ekarpp, | ||
Imran Virani, Ingo Bürk, Isaac Garzon, Ivan Milov, Jay Khandkar, j-jzk, Ken | ||
Gilmer, Kjetil Torgrim Homme, lbonn, Michael Stapelberg, Orestis Floros, Ralph | ||
Gutkowski, Romuald Brunet, tomty89, Tristan Giles, Tudor Brindus, Uli | ||
Schlachter, Vincent Bernat, Vladimir Panteleev | ||
|
||
-- Michael Stapelberg, 2021-10-19 |
Oops, something went wrong.