commit cf27841bf25318a06fd7d2956750189e9215413c Author: MSVSphere Packaging Team Date: Tue Nov 26 19:31:23 2024 +0300 import tmux-3.3a-10.20230918gitb202a2f.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0bf8cde --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/tmux-b202a2f1b517a3de7141fc35fbd9e39ed5ac5284.tar.gz diff --git a/.tmux.metadata b/.tmux.metadata new file mode 100644 index 0000000..ada3c46 --- /dev/null +++ b/.tmux.metadata @@ -0,0 +1 @@ +cbb49e7964a549f65560dc9ae705c0af97279211 SOURCES/tmux-b202a2f1b517a3de7141fc35fbd9e39ed5ac5284.tar.gz diff --git a/SOURCES/bash_completion_tmux.sh b/SOURCES/bash_completion_tmux.sh new file mode 100644 index 0000000..74728b9 --- /dev/null +++ b/SOURCES/bash_completion_tmux.sh @@ -0,0 +1,105 @@ +# START tmux completion +# This file is in the public domain +# See: http://www.debian-administration.org/articles/317 for how to write more. +# Usage: Put "source bash_completion_tmux.sh" into your .bashrc +_tmux() +{ + local cur prev opts + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + + opts=" \ + attach-session \ + bind-key \ + break-pane \ + capture-pane \ + choose-client \ + choose-session \ + choose-window \ + clear-history \ + clock-mode \ + command-prompt \ + confirm-before \ + copy-buffer \ + copy-mode \ + delete-buffer \ + detach-client \ + display-message \ + display-panes \ + down-pane \ + find-window \ + has-session \ + if-shell \ + join-pane \ + kill-pane \ + kill-server \ + kill-session \ + kill-window \ + last-window \ + link-window \ + list-buffers \ + list-clients \ + list-commands \ + list-keys \ + list-panes \ + list-sessions \ + list-windows \ + load-buffer \ + lock-client \ + lock-server \ + lock-session \ + move-window \ + new-session \ + new-window \ + next-layout \ + next-window \ + paste-buffer \ + pipe-pane \ + previous-layout \ + previous-window \ + refresh-client \ + rename-session \ + rename-window \ + resize-pane \ + respawn-window \ + rotate-window \ + run-shell \ + save-buffer \ + select-layout \ + select-pane \ + select-prompt \ + select-window \ + send-keys \ + send-prefix \ + server-info \ + set-buffer \ + set-environment \ + set-option \ + set-window-option \ + show-buffer \ + show-environment \ + show-messages \ + show-options \ + show-window-options \ + source-file \ + split-window \ + start-server \ + suspend-client \ + swap-pane \ + swap-window \ + switch-client \ + unbind-key \ + unlink-window \ + up-pane" + + COMPREPLY=($(compgen -W "${opts}" -- ${cur})) + return 0 + +} +complete -F _tmux tmux + +# END tmux completion + + + diff --git a/SOURCES/mitigate-character-length-crash.patch b/SOURCES/mitigate-character-length-crash.patch new file mode 100644 index 0000000..c720037 --- /dev/null +++ b/SOURCES/mitigate-character-length-crash.patch @@ -0,0 +1,13 @@ +--- screen-write.c.orig 2023-12-12 21:17:02.960288969 +0100 ++++ screen-write.c 2023-12-12 21:18:07.498869550 +0100 +@@ -2120,6 +2120,10 @@ + return (0); + } + ++ /* Check if this combined character would be too long. */ ++ if (last.data.size + ud->size > sizeof last.data.data) ++ return (0); ++ + /* Combining; flush any pending output. */ + screen_write_collect_flush(ctx, 0, __func__); + diff --git a/SPECS/tmux.spec b/SPECS/tmux.spec new file mode 100644 index 0000000..119fc41 --- /dev/null +++ b/SPECS/tmux.spec @@ -0,0 +1,364 @@ +%global _hardened_build 1 + + +Name: tmux +%global forgeurl https://github.com/tmux/%{name} +%global commit b202a2f1b517a3de7141fc35fbd9e39ed5ac5284 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%forgemeta + +Version: 3.3a +# forge meta appends commit info +Release: 10%{?dist} +Summary: A terminal multiplexer + +License: ISC AND BSD-2-Clause AND BSD-3-Clause AND SSH-short AND LicenseRef-Fedora-Public-Domain +URL: https://tmux.github.io/ +Source0: %{forgesource} +# Examples has been removed - so include the bash_completion here +Source1: bash_completion_tmux.sh + +# don't crash instead of displaying certain glyphs +# https://bugzilla.redhat.com/show_bug.cgi?id=2253441 +# applied by upstream: https://github.com/tmux/tmux/issues/3729 +Patch0: mitigate-character-length-crash.patch + +BuildRequires: byacc +BuildRequires: gcc +BuildRequires: systemd-devel +BuildRequires: libutempter-devel +BuildRequires: make +BuildRequires: pkgconfig(libevent_core) >= 2 +BuildRequires: pkgconfig(tinfo) +BuildRequires: pkgconfig(ncurses) +BuildRequires: pkgconfig(ncursesw) +%if "%0{?commit}" != "0" +BuildRequires: automake +%endif + +%description +tmux is a "terminal multiplexer." It enables a number of terminals (or +windows) to be accessed and controlled from a single terminal. tmux is +intended to be a simple, modern, BSD-licensed alternative to programs such +as GNU Screen. + +%prep +%forgesetup +%patch 0 -p0 + +%build +%if "%0{?commit}" != "0" +sh ./autogen.sh +%endif +%configure --enable-systemd +%make_build + + +%install +%make_install +# bash completion +install -Dpm 644 %{SOURCE1} %{buildroot}%{_datadir}/bash-completion/completions/tmux + +%post +if [ "$1" = 1 ]; then + if [ ! -f %{_sysconfdir}/shells ] ; then + touch %{_sysconfdir}/shells + fi + for binpath in %{_bindir} /bin; do + if ! grep -q "^${binpath}/tmux$" %{_sysconfdir}/shells; then + (cat %{_sysconfdir}/shells; echo "$binpath/tmux") > %{_sysconfdir}/shells.new + mv %{_sysconfdir}/shells{.new,} + fi + done +fi + +%postun +if [ "$1" = 0 ] && [ -f %{_sysconfdir}/shells ] ; then + sed -e '\!^%{_bindir}/tmux$!d' -e '\!^/bin/tmux$!d' < %{_sysconfdir}/shells > %{_sysconfdir}/shells.new + mv %{_sysconfdir}/shells{.new,} +fi + +%files +%license COPYING +%doc CHANGES README* example_tmux.conf +%{_bindir}/tmux +%{_mandir}/man1/tmux.1.* +%{_datadir}/bash-completion/completions/tmux + +%changelog +* Tue Nov 26 2024 MSVSphere Packaging Team - 3.3a-10.gitb202a2f +- Rebuilt for MSVSphere 10 + +* Wed Jun 26 2024 Josef Ridky - 3.3a-10 +- Add gating.yaml file + +* Mon Jun 24 2024 Troy Dawson - 3.3a-9 +- Bump release for June 2024 mass rebuild + +* Sat Jan 27 2024 Fedora Release Engineering - 3.3a-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Tue Dec 12 2023 Sven Lankes - 3.3a-7.20230918gitb202a2f +- Don't crash on showing certain glyph + Resolves: rhbz#2253441 + +* Mon Oct 02 2023 David Cantrell - 3.3a-6.20230918gitb202a2f +- Convert License tag to SPDX expression + +* Mon Sep 18 2023 Ankur Sinha - 3.3a-5.20230918gitb202a2f +- update to snapshot +- https://github.com/tmux/tmux/issues/3699#issuecomment-1723095544 + +* Sat Jul 22 2023 Fedora Release Engineering - 3.3a-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sun Feb 12 2023 Filipe Rosset - 3.3a-3 +- Enable support for systemd socket activation fixes rhbz#2158980 + +* Sat Jan 21 2023 Fedora Release Engineering - 3.3a-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Aug 19 2022 Filipe Rosset - 3.3a-1 +- Update to 3.3a + +* Sat Jul 23 2022 Fedora Release Engineering - 3.2a-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jan 22 2022 Fedora Release Engineering - 3.2a-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 3.2a-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jul 02 2021 Igor Raits - 3.2a-1 +- Update to 3.2a + +* Wed Jan 27 2021 Fedora Release Engineering - 3.1c-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jan 4 2021 Filipe Rosset - 3.1c-1 +- Update to 3.1c + +* Wed Sep 16 2020 David Cantrell - 3.1-3 +- Rebuild for new libevent + +* Fri Jul 17 2020 Andrew Spiers - 3.1-2 +- Include upstream example config file + Resolves: rhbz#1741836 + +* Wed Apr 29 2020 Filipe Rosset - 3.1-1 +- Update to 3.1 fixes rhbz#1715313 + +* Fri Jan 31 2020 Fedora Release Engineering - 3.0a-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Tue Dec 03 2019 Brian C. Lane - 3.0a-1 +- New upstream release v3.0a + Resolves: rhbz#1715313 + +* Sat Jul 27 2019 Fedora Release Engineering - 2.9a-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sun May 12 2019 Filipe Rosset - 2.9a-2 +- update to version 2.9a, fixes rhbz #1692933 +- ChangeLog https://raw.githubusercontent.com/tmux/tmux/2.9/CHANGES +- removed upstreamed patch + +* Sun Feb 03 2019 Fedora Release Engineering - 2.8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Nov 22 2018 Filipe Rosset - 2.8-2 +- fixes rhbz #1652128 CVE-2018-19387 +- tmux: NULL Pointer Dereference in format_cb_pane_tabs in format.c + +* Fri Oct 19 2018 Filipe Rosset - 2.8-1 +- update to version 2.8 +- ChangeLog https://raw.githubusercontent.com/tmux/tmux/2.8/CHANGES + +* Sat Jul 14 2018 Fedora Release Engineering - 2.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu Apr 19 2018 Filipe Rosset - 2.7-1 +- update to version 2.7, fixes rhbz #1486507 +- removed upstreamed patches + spec modernization + +* Mon Apr 09 2018 Filipe Rosset - 2.6-4 +- added gcc as BR + +* Wed Feb 14 2018 Kevin Fenzi - 2.6-3 +- Rebuild for new libevent + +* Fri Feb 09 2018 Fedora Release Engineering - 2.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Fri Jan 26 2018 Andreas Schneider - 2.6-1 +- Update to version 2.6 +- Use hardened build + +* Sat Aug 05 2017 Filipe Rosset - 2.5-4 +- Fixes rhbz #1476851 tmux bell-action other not working +- Fixes rhbz #1476892 tmux update in F26 broke tmuxinator + +* Thu Aug 03 2017 Fedora Release Engineering - 2.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Jun 10 2017 Filipe Rosset - 2.5-1 +- New upstream release 2.5 - fixes rhbz #1449666 +- https://raw.githubusercontent.com/tmux/tmux/2.5/CHANGES + +* Fri Apr 21 2017 Filipe Rosset - 2.4-2 +- rebuild tmux as PIE - fixes rhbz #1324104 + +* Fri Apr 21 2017 Filipe Rosset - 2.4-1 +- New upstream release - fixes rhbz #1444011 + +* Sat Feb 11 2017 Fedora Release Engineering - 2.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Oct 28 2016 Sven Lankes - 2.3-1 +- New upstream release - fixes rhbz #1380562 +- Adapt shells handling to be atomic and support rpm-ostree - fixes rhbz #1367587 + +* Tue May 24 2016 Sven Lankes - 2.2-3 +- add libutempter-devel as buildrequires to allow writing to utmp +- fixes rhbz #1338936 + +* Mon May 09 2016 Sven Lankes - 2.2-2 +- Adapt source0 and url for new website (fixes rhbz #1334255) + +* Wed Apr 20 2016 Sven Lankes - 2.2-1 +- New upstream release + +* Tue Feb 23 2016 Sven Lankes - 2.1-3 +- use more correct bash completion path (thanks to Carl George) + +* Mon Feb 22 2016 Sven Lankes - 2.1-2 +- add upstream bash-completion (thanks to Scott Tsai - closes rhbz #1148183) + +* Mon Feb 22 2016 Sven Lankes - 2.1-1 +- New upstream release + +* Fri Feb 05 2016 Fedora Release Engineering - 2.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Jun 19 2015 Fedora Release Engineering - 2.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu May 07 2015 Filipe Rosset - 2.0-1 +- Rebuilt for new upstream version 2.0, fixes rhbz #1219300 + +* Fri Jan 02 2015 Sven Lankes - 1.9a-5 +- Pull in upstream commit to fix Fx-Key issues. rhbz #1177652 + +* Mon Aug 18 2014 Fedora Release Engineering - 1.9a-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sun Jun 08 2014 Fedora Release Engineering - 1.9a-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed Feb 26 2014 Filipe Rosset 1.9a-2 +- Fix rhbz #1069950, upstream [tmux:tickets] #105 + +* Sun Feb 23 2014 Filipe Rosset 1.9a-1 +- New upstream release 1.9a + +* Sat Feb 22 2014 Filipe Rosset 1.9-1 +- New upstream release 1.9 +- Fix rhbz #1067860 + +* Sun Aug 04 2013 Fedora Release Engineering - 1.8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Jun 10 2013 Petr Ĺ abata - 1.8-2 +- Remove tmux from the shells file upon package removal (#972633) + +* Sat Apr 13 2013 Sven Lankes 1.8-1 +- New upstream release + +* Fri Feb 15 2013 Fedora Release Engineering - 1.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sat Oct 13 2012 Sven Lankes 1.7-1 +- New upstream release + +* Sat Jul 21 2012 Fedora Release Engineering - 1.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jan 31 2012 Sven Lankes 1.6-1 +- New upstream release + +* Sat Jan 14 2012 Fedora Release Engineering - 1.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Nov 01 2011 Sven Lankes 1.5-1 +- New upstream release +- Do the right thing (tm) and revert to $upstream-behaviour: + No longer install tmux setgid and no longer use /var/run/tmux + for sockets. Use "tmux -S /var/run/tmux/tmux-`id -u`/default attach" + if you need to access an "old" tmux session +- tmux can be used as a login shell so add it to /etc/shells + +* Sat Apr 16 2011 Sven Lankes 1.4-4 +- Add /var/run/tmp to tmpdir.d - fixes rhbz 656704 and 697134 + +* Sun Apr 10 2011 Sven Lankes 1.4-3 +- Fix CVE-2011-1496 +- Fixes rhbz #693824 + +* Wed Feb 09 2011 Fedora Release Engineering - 1.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Dec 28 2010 Filipe Rosset 1.4-1 +- New upstream release + +* Fri Aug 06 2010 Filipe Rosset 1.3-2 +- Rebuild for F-13 + +* Mon Jul 19 2010 Sven Lankes 1.3-1 +- New upstream release + +* Sun Mar 28 2010 Sven Lankes 1.2-1 +- New upstream release +- rediff writehard patch + +* Mon Nov 09 2009 Sven Lankes 1.1-1 +- New upstream release + +* Sun Nov 01 2009 Sven Lankes 1.0-2 +- Add debian patches +- Add tmux group for improved socket handling + +* Sat Oct 24 2009 Sven Lankes 1.0-1 +- New upstream release + +* Mon Jul 13 2009 Chess Griffin 0.9-1 +- Update to version 0.9. +- Remove sed invocation as this was adopted upstream. +- Remove optflags patch since upstream source now uses ./configure and + detects the flags when passed to make. + +* Tue Jun 23 2009 Chess Griffin 0.8-5 +- Note that souce is mostly ISC licensed with some 2 and 3 clause BSD in + compat/. +- Remove fixiquote.patch and instead use a sed invocation in setup. + +* Mon Jun 22 2009 Chess Griffin 0.8-4 +- Add optimization flags by patching GNUmakefile and passing LDFLAGS + to make command. +- Use consistent macro format. +- Change examples/* to examples/ and add TODO to docs. + +* Sun Jun 21 2009 Chess Griffin 0.8-3 +- Remove fixperms.patch and instead pass them at make install stage. + +* Sat Jun 20 2009 Chess Griffin 0.8-2 +- Fix Source0 URL to point to correct upstream source. +- Modify fixperms.patch to set 644 permissions on the tmux.1.gz man page. +- Remove wildcards from 'files' section and replace with specific paths and + filenames. + +* Mon Jun 15 2009 Chess Griffin 0.8-1 +- Initial RPM release.