diff options
Diffstat (limited to '.github')
-rw-r--r-- | .github/CONTRIBUTING.md | 79 | ||||
-rw-r--r-- | .github/FUNDING.yml | 2 | ||||
-rw-r--r-- | .github/ISSUE_TEMPLATE.md | 22 | ||||
-rw-r--r-- | .github/README.md | 95 | ||||
-rw-r--r-- | .github/travis/before-install.sh | 24 | ||||
-rw-r--r-- | .github/travis/build-all.sh | 38 | ||||
-rw-r--r-- | .github/travis/build.sh | 25 | ||||
-rw-r--r-- | .github/workflows/lock.yml | 34 |
8 files changed, 319 insertions, 0 deletions
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 00000000..0c517a52 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,79 @@ +## What should I do before opening an issue? + +Before opening an issue, please ensure that: + +- Your problem is a specific problem or question or suggestion, not a general + complaint. + +- `$TERM` inside tmux is screen, screen-256color, tmux or tmux-256color. Check + by running `echo $TERM` inside tmux. + +- You can reproduce the problem with the latest tmux release, or a build from + Git master. + +- Your question or issue is not covered [in the + manual](https://man.openbsd.org/tmux.1) (run `man tmux`). + +- Your problem is not mentioned in [the CHANGES + file](https://raw.githubusercontent.com/tmux/tmux/master/CHANGES). + +- Nobody else has opened the same issue recently. + +## What should I include in an issue? + +Please include the output of: + +~~~bash +uname -sp && tmux -V && echo $TERM +~~~ + +Also include: + +- Your platform (Linux, macOS, or whatever). + +- A brief description of the problem with steps to reproduce. + +- A minimal tmux config, if you can't reproduce without a config. + +- Your terminal, and `$TERM` inside and outside of tmux. + +- Logs from tmux (see below). Please attach logs to the issue directly rather + than using a download site or pastebin. Put in a zip file if necessary. + +- At most one or two screenshots, if helpful. + +## How do I test without a .tmux.conf? + +Run a separate tmux server with `-f/dev/null` to skip loading `.tmux.conf`: + +~~~bash +tmux -Ltest kill-server +tmux -Ltest -f/dev/null new +~~~ + +## How do I get logs from tmux? + +Add `-vv` to tmux to create three log files in the current directory. If you can +reproduce without a configuration file: + +~~~bash +tmux -Ltest kill-server +tmux -vv -Ltest -f/dev/null new +~~~ + +Or if you need your configuration: + +~~~base +tmux kill-server +tmux -vv new +~~~ + +The log files are: + +- `tmux-server*.log`: server log file. + +- `tmux-client*.log`: client log file. + +- `tmux-out*.log`: output log file. + +Please attach the log files to your issue. diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..fe405298 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,2 @@ +github: nicm +liberapay: tmux diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 00000000..8bf1e66a --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,22 @@ +### Issue description + +Please read https://github.com/tmux/tmux/blob/master/.github/CONTRIBUTING.md +before opening an issue. + +If you have upgraded, make sure your issue is not covered in the CHANGES file +for your version: https://raw.githubusercontent.com/tmux/tmux/master/CHANGES + +Describe the problem and the steps to reproduce. Add a minimal tmux config if +necessary. Screenshots can be helpful, but no more than one or two. + +Do not report bugs (crashes, incorrect behaviour) without reproducing on a tmux +built from the latest code in Git. + +### Required information + +Please provide the following information: + +* tmux version (`tmux -V`). +* Platform (`uname -sp`). +* $TERM inside and outside of tmux (`echo $TERM`). +* Logs from tmux (`tmux kill-server; tmux -vv new`). diff --git a/.github/README.md b/.github/README.md new file mode 100644 index 00000000..353f10ec --- /dev/null +++ b/.github/README.md @@ -0,0 +1,95 @@ +# Welcome to tmux! + +tmux is a terminal multiplexer: it enables a number of terminals to be created, +accessed, and controlled from a single screen. tmux may be detached from a +screen and continue running in the background, then later reattached. + +This release runs on OpenBSD, FreeBSD, NetBSD, Linux, macOS and Solaris. + +## Dependencies + +tmux depends on [libevent](https://libevent.org) 2.x, available from [this +page](https://github.com/libevent/libevent/releases/latest). + +It also depends on [ncurses](https://www.gnu.org/software/ncurses/), available +from [this page](https://invisible-mirror.net/archives/ncurses/). + +To build tmux, a C compiler (for example gcc or clang), make, pkg-config and a +suitable yacc (yacc or bison) are needed. + +## Installation + +### Binary packages + +Some platforms provide binary packages for tmux, although these are sometimes +out of date. Examples are listed on +[this page](https://github.com/tmux/tmux/wiki/Installing). + +### From release tarball + +To build and install tmux from a release tarball, use: + +~~~bash +./configure && make +sudo make install +~~~ + +tmux can use the utempter library to update utmp(5), if it is installed - run +configure with `--enable-utempter` to enable this. + +For more detailed instructions on building and installing tmux, see +[this page](https://github.com/tmux/tmux/wiki/Installing). + +### From version control + +To get and build the latest from version control - note that this requires +`autoconf`, `automake` and `pkg-config`: + +~~~bash +git clone https://github.com/tmux/tmux.git +cd tmux +sh autogen.sh +./configure && make +~~~ + +## Contributing + +Bug reports, feature suggestions and especially code contributions are most +welcome. Please send by email to: + +tmux-users@googlegroups.com + +Or open a GitHub issue or pull request. **Please read [this +document](CONTRIBUTING.md) before opening an issue.** + +There is [a list of suggestions for contributions](https://github.com/tmux/tmux/wiki/Contributing). +Please feel free to ask on the mailing list if you're thinking of working on something or need +further information. + +## Documentation + +For documentation on using tmux, see the tmux.1 manpage. View it from the +source tree with: + +~~~bash +nroff -mdoc tmux.1|less +~~~ + +A small example configuration is in `example_tmux.conf`. + +And a bash(1) completion file at: + +https://github.com/imomaliev/tmux-bash-completion + +For debugging, run tmux with `-v` or `-vv` to generate server and client log +files in the current directory. + +## Support + +The tmux mailing list for general discussion and bug reports is: + +https://groups.google.com/forum/#!forum/tmux-users + +Subscribe by sending an email to: + +tmux-users+subscribe@googlegroups.com diff --git a/.github/travis/before-install.sh b/.github/travis/before-install.sh new file mode 100644 index 00000000..a589a743 --- /dev/null +++ b/.github/travis/before-install.sh @@ -0,0 +1,24 @@ +#!/bin/sh + +if [ "$TRAVIS_OS_NAME" = "linux" ]; then + sudo apt-get update -qq + sudo apt-get -y install bison \ + autotools-dev \ + libncurses5-dev \ + libevent-dev \ + pkg-config \ + libutempter-dev \ + build-essential + + if [ "$BUILD" = "musl" -o "$BUILD" = "musl-static" ]; then + sudo apt-get -y install musl-dev \ + musl-tools + fi +fi + +if [ "$TRAVIS_OS_NAME" = "freebsd" ]; then + sudo pkg install -y \ + automake \ + libevent \ + pkgconf +fi diff --git a/.github/travis/build-all.sh b/.github/travis/build-all.sh new file mode 100644 index 00000000..883868e8 --- /dev/null +++ b/.github/travis/build-all.sh @@ -0,0 +1,38 @@ +#!/bin/sh + +BUILD=$PWD/build + +LIBEVENT=https://github.com/libevent/libevent/releases/download/release-2.1.11-stable/libevent-2.1.11-stab\ +le.tar.gz +NCURSES=https://ftp.gnu.org/gnu/ncurses/ncurses-6.2.tar.gz + +wget -4q $LIBEVENT || exit 1 +tar -zxf libevent-*.tar.gz || exit 1 +(cd libevent-*/ && + ./configure --prefix=$BUILD \ + --enable-shared \ + --disable-libevent-regress \ + --disable-samples && + make && make install) || exit 1 + +wget -4q $NCURSES || exit 1 +tar -zxf ncurses-*.tar.gz || exit 1 +(cd ncurses-*/ && + CPPFLAGS=-P ./configure --prefix=$BUILD \ + --with-shared \ + --with-termlib \ + --without-ada \ + --without-cxx \ + --without-manpages \ + --without-progs \ + --without-tests \ + --without-tack \ + --disable-database \ + --enable-termcap \ + --enable-pc-files \ + --with-pkg-config-libdir=$BUILD/lib/pkgconfig && + make && make install) || exit 1 + +sh autogen.sh || exit 1 +PKG_CONFIG_PATH=$BUILD/lib/pkgconfig ./configure --prefix=$BUILD "$@" +make && make install || (cat config.log; exit 1) diff --git a/.github/travis/build.sh b/.github/travis/build.sh new file mode 100644 index 00000000..f863d8ad --- /dev/null +++ b/.github/travis/build.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +sh autogen.sh || exit 1 +case "$BUILD" in + static) + ./configure --enable-static || exit 1 + exec make + ;; + all) + sh $(dirname $0)/build-all.sh + exec make + ;; + musl) + CC=musl-gcc sh $(dirname $0)/build-all.sh + exec make + ;; + musl-static) + CC=musl-gcc sh $(dirname $0)/build-all.sh --enable-static + exec make + ;; + *) + ./configure || exit 1 + exec make + ;; +esac diff --git a/.github/workflows/lock.yml b/.github/workflows/lock.yml new file mode 100644 index 00000000..81b445bc --- /dev/null +++ b/.github/workflows/lock.yml @@ -0,0 +1,34 @@ +name: 'Lock Threads' + +on: + schedule: + - cron: '0 0 * * *' + workflow_dispatch: + +permissions: + issues: write + pull-requests: write + discussions: write + +concurrency: + group: lock-threads + +jobs: + action: + runs-on: ubuntu-latest + steps: + - uses: dessant/lock-threads@v5 + with: + github-token: ${{ github.token }} + issue-inactive-days: '30' + issue-comment: > + This issue has been automatically locked since there + has not been any recent activity after it was closed. + pr-inactive-days: '60' + pr-comment: > + This pull request has been automatically locked since there + has not been any recent activity after it was closed. + discussion-inactive-days: '60' + discussion-comment: > + This discussion has been automatically locked since there + has not been any recent activity after it was closed. |