Compare commits

...
Sign in to create a new pull request.

71 commits

Author SHA1 Message Date
Fedora Release Engineering
fcfbf98cca Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 08:38:44 +00:00
Fedora Release Engineering
5af1382b9e Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-17 20:04:33 +00:00
Fedora Release Engineering
77138c7b7c Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 20:14:41 +00:00
Fedora Release Engineering
791418ad3d Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-19 14:39:22 +00:00
Fedora Release Engineering
111efaf874 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-20 09:02:32 +00:00
Gwyn Ciesla
4568b21f6b Patch for modern C 2024-01-31 13:11:49 -06:00
Fedora Release Engineering
7a972eeeee Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-27 08:15:07 +00:00
Fedora Release Engineering
44b32bb0de Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-22 17:53:53 +00:00
Gwyn Ciesla
ec874df9bf migrated to SPDX license 2023-03-04 15:06:39 -06:00
Fedora Release Engineering
c64d2e6f80 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-21 06:31:42 +00:00
Fedora Release Engineering
7b4ebe9eb3 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-23 12:08:04 +00:00
Fedora Release Engineering
22b8af5c70 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-22 04:12:04 +00:00
Fedora Release Engineering
91342c5f6a - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 20:41:29 +00:00
Petr Viktorin
7039d3c732 Remove Requires on pygtk2
This is not necessary: the Python 2 bindings were removed
a while ago.
2021-02-10 15:43:37 +01:00
Fedora Release Engineering
bfd906e162 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 23:15:58 +00:00
Tom Stellard
aa4bb8d075 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-09 00:48:34 +00:00
Fedora Release Engineering
ebc9dd9cdb - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 13:54:35 +00:00
Fedora Release Engineering
b8ad6e7750 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-31 03:25:02 +00:00
Gwyn Ciesla
e238eb35d6 Drop Python bindings. 2019-10-07 09:36:42 -05:00
Fedora Release Engineering
fe981cd43b - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-27 03:12:41 +00:00
Kevin Fenzi
0e138df51d Fix last python unversioned deps. 2019-07-17 15:11:20 -07:00
Fedora Release Engineering
f31c5d0cc2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-03 11:28:30 +00:00
e1f5698716 Remove obsolete Group tag
References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
2019-01-28 20:24:54 +01:00
Kevin Fenzi
7d95bf010f Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild 2018-07-18 13:44:21 -07:00
Fedora Release Engineering
a83ce8e5a0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-14 08:40:26 +00:00
Jason Tibbitts
e4eb6a9570 Remove needless use of %defattr 2018-07-10 01:43:53 -05:00
Kevin Fenzi
d753b3ac1a Drop unneeded ldconfig calls 2018-07-07 13:47:44 -07:00
Kevin Fenzi
bf7958e880 Depend on systemd for utmp group, not initscripts anymore. Fixes bug #1592402 2018-06-18 17:14:18 -07:00
Kevin Fenzi
324317ea20 Add backported patches for various issues. Fixes bug #1574683 2018-05-06 12:24:25 -07:00
Fedora Release Engineering
23fd5b1a5b - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-09 20:41:44 +00:00
Iryna Shcherbina
26764d3bdc Update Python 2 dependency declarations to new packaging standards 2018-02-05 04:55:23 +01:00
Fedora Release Engineering
460295f793 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild 2017-08-03 10:09:17 +00:00
Fedora Release Engineering
8135a3533d - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild 2017-07-27 21:26:45 +00:00
Fedora Release Engineering
53d8bf0d9a - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild 2017-02-11 17:12:27 +00:00
Fedora Release Engineering
1020b634d9 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages 2016-07-19 13:08:08 +00:00
Fedora Release Engineering
391557fc23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-05 02:51:24 +00:00
Kevin Fenzi
52adb6b2db Acutally commit vte-0.28.2-introspection-fixes.patch 2015-09-05 13:47:32 -06:00
Kevin Fenzi
49ffd21781 Enable GObject Introspection (#1256535) 2015-09-05 13:21:23 -06:00
Dennis Gilmore
76100c861c - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild 2015-06-19 02:10:16 +00:00
36ba2a0f74 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild 2014-08-18 08:10:32 +00:00
Kevin Fenzi
ede5726a45 Add patch to fix bracketed paste. Fixes bug #1114301
- Thanks to nerijus for the patch
2014-06-29 13:14:30 -06:00
Kevin Fenzi
d28d4bd1b6 Add patch to fix control+home/control+end. Fixes bug #1114074
- Thanks to jskarvad for the patch
2014-06-28 10:32:49 -06:00
Dennis Gilmore
979bf8a7a8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild 2014-06-07 23:01:44 -05:00
Dennis Gilmore
38e0f47bf7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild 2013-08-04 01:30:00 -05:00
Kevin Fenzi
d9ea023534 Add patch to support aarch64. Fixes bug #926706 2013-03-23 14:37:34 -06:00
Dennis Gilmore
4c9f009c1d - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild 2013-02-14 20:55:15 -06:00
Dennis Gilmore
403a670664 Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild 2012-07-27 04:06:13 -05:00
Kevin Fenzi
adecff5f92 Add patch for DOS. Fixes bug #832356
- fixes CVE-2012-2738
2012-06-15 15:03:07 -06:00
Jon Ciesla
0daaeb5c16 Merge Review fixes. 2012-04-03 14:02:08 -05:00
Kevin Fenzi
665cfe02e7 Add patch for python bindings. Fixes bug #556200 2012-03-10 09:03:55 -07:00
Dennis Gilmore
a2bf956c41 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild 2012-01-14 02:05:17 -06:00
Matthias Clasen
4717eeb0be Fix Alt<>Meta problems with recent gtk
(cherry picked from commit 849a7f9ff4)
2011-12-14 14:05:24 +01:00
Tomas Bzatek
6d5c840e68 Update to 0.28.2 2011-11-25 12:10:57 +01:00
Tomas Bzatek
ed3c8137aa Revert "Update to 0.30.0"
This reverts commit 223ddb19d7.

vte dropped gtk2 support in 0.29.0, stick to latest available version.
Use vte3 for gtk3 instead.
2011-11-25 12:01:33 +01:00
Tomas Bzatek
6c71c05b90 Revert "- Rebuilt for glibc bug#747377"
This reverts commit d34afee210.
2011-11-25 12:01:24 +01:00
Dennis Gilmore
d34afee210 - Rebuilt for glibc bug#747377 2011-10-26 19:29:17 -05:00
Ray Strode
223ddb19d7 Update to 0.30.0 2011-09-27 16:36:56 -04:00
Tomas Bzatek
b04578e384 Update to 0.28.1 2011-06-16 14:43:17 +02:00
Matthias Clasen
ba830919ca 0.28.0 2011-04-04 12:02:07 -04:00
Matthias Clasen
b0e33a647d fix sources 2011-02-22 11:30:47 -05:00
Matthias Clasen
4496e6b679 0.27.90 2011-02-22 11:24:45 -05:00
Dennis Gilmore
49e4f19dfa - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild 2011-02-07 19:54:16 -06:00
Matthias Clasen
73133f613b 0.27.4 2011-01-11 16:05:02 -05:00
Matthias Clasen
727fea11a5 0.27.2 2010-12-02 23:46:21 -05:00
Bill Nottingham
b0edc6ce2f 0.27.1
Test programs aren't installed by default any more, so remove from file list.
2010-10-29 15:09:23 -04:00
Matthias Clasen
cf9d0fbf69 0.27.0 2010-10-04 18:31:16 -04:00
Matthias Clasen
a04aa0980d fix spec 2010-09-29 23:22:12 -04:00
Matthias Clasen
168a2d6d95 0.26.0 2010-09-29 22:51:13 -04:00
Matthias Clasen
ca517bd401 0.25.91 2010-08-31 12:26:03 -04:00
Matthias Clasen
accb759a25 fix file lists 2010-08-18 21:50:36 -04:00
Matthias Clasen
603cb73117 0.25.90 2010-08-18 09:40:23 -04:00
14 changed files with 3305 additions and 39 deletions

11
.gitignore vendored
View file

@ -1 +1,12 @@
vte-0.25.1.tar.bz2
/vte-0.25.90.tar.bz2
/vte-0.25.91.tar.bz2
/vte-0.26.0.tar.bz2
/vte-0.27.0.tar.bz2
/vte-0.27.1.tar.bz2
/vte-0.27.2.tar.bz2
/vte-0.27.4.tar.bz2
/vte-0.27.90.tar.bz2
/vte-0.28.0.tar.bz2
/vte-0.28.1.tar.xz
/vte-0.28.2.tar.xz

22
pointer-types.patch Normal file
View file

@ -0,0 +1,22 @@
--- src/reaper.c~ 2011-08-16 16:52:48.000000000 -0500
+++ src/reaper.c 2024-01-31 11:42:45.581345843 -0600
@@ -85,7 +85,7 @@
return g_object_ref (singleton_reaper);
} else {
GObject *obj;
- obj = G_OBJECT_CLASS (vte_reaper_parent_class)->constructor (type, n_construct_properties, construct_properties);
+ obj = (GObject *)(G_OBJECT_CLASS (vte_reaper_parent_class)->constructor (type, n_construct_properties, construct_properties));
singleton_reaper = VTE_REAPER (obj);
return obj;
}
--- src/reaper.c~ 2024-01-31 12:12:15.260939495 -0600
+++ src/reaper.c 2024-01-31 13:03:55.397334625 -0600
@@ -82,7 +82,7 @@
GObjectConstructParam *construct_properties)
{
if (singleton_reaper) {
- return g_object_ref (singleton_reaper);
+ return (GObject *)(g_object_ref (singleton_reaper));
} else {
GObject *obj;
obj = (GObject *)(G_OBJECT_CLASS (vte_reaper_parent_class)->constructor (type, n_construct_properties, construct_properties));

View file

@ -1 +1 @@
986bdf8f4e25bdb30615b69b26289909 vte-0.25.1.tar.bz2
497f26e457308649e6ece32b3bb142ff vte-0.28.2.tar.xz

22
vte-0.28.2-683730.patch Normal file
View file

@ -0,0 +1,22 @@
--- o/src/vte.c 2018-05-03 20:53:16.000000000 +0200
+++ n/src/vte.c 2018-05-03 20:57:48.764010197 +0200
@@ -7513,17 +7513,10 @@
event->button, x, y);
switch (event->button) {
case 1:
- /* If Shift is held down, or we're not in events mode,
- * copy the selected text. */
- if ((terminal->pvt->modifiers & GDK_SHIFT_MASK) ||
- !terminal->pvt->mouse_tracking_mode)
- handled = _vte_terminal_maybe_end_selection (terminal);
+ handled = _vte_terminal_maybe_end_selection (terminal);
break;
case 2:
- if ((terminal->pvt->modifiers & GDK_SHIFT_MASK) ||
- !terminal->pvt->mouse_tracking_mode) {
- handled = TRUE;
- }
+ handled = TRUE;
break;
case 3:
default:

68
vte-0.28.2-control.patch Normal file
View file

@ -0,0 +1,68 @@
--- a/src/keymap.c
+++ a/src/keymap.c
@@ -286,6 +286,8 @@ static const struct _vte_keymap_entry _vte_keymap_GDK_Home[] = {
{cursor_all, keypad_all, fkey_vt220, 0, _VTE_CAP_CSI "1~", -1, X_NULL},
{cursor_all, keypad_all, fkey_hp, 0, _VTE_CAP_ESC "h", -1, X_NULL},
{cursor_all, keypad_all, fkey_nothpvt, 0, X_NULL, 0, "kh"},
+ {cursor_default, keypad_all, fkey_default, 0, _VTE_CAP_CSI "H", -1, X_NULL},
+ {cursor_app, keypad_all, fkey_default, 0, _VTE_CAP_SS3 "H", -1, X_NULL},
{cursor_all, keypad_all, fkey_all, 0, X_NULL, 0, X_NULL},
};
@@ -293,6 +295,8 @@ static const struct _vte_keymap_entry _vte_keymap_GDK_End[] = {
{cursor_all, keypad_all, fkey_all, 0, X_NULL, 0, "@7"},
{cursor_all, keypad_all, fkey_vt220, 0, _VTE_CAP_CSI "4~", -1, X_NULL},
{cursor_all, keypad_all, fkey_notvt220, 0, X_NULL, 0, "@7"},
+ {cursor_default, keypad_all, fkey_default, 0, _VTE_CAP_CSI "F", -1, X_NULL},
+ {cursor_app, keypad_all, fkey_default, 0, _VTE_CAP_SS3 "F", -1, X_NULL},
{cursor_all, keypad_all, fkey_all, 0, X_NULL, 0, X_NULL},
};
@@ -504,10 +508,11 @@ static const struct _vte_keymap_entry _vte_keymap_GDK_KP_Insert[] = {
static const struct _vte_keymap_entry _vte_keymap_GDK_KP_End[] = {
{cursor_all, keypad_default, fkey_all, 0, X_NULL, 0, "K4"},
- {cursor_all, keypad_default, fkey_notvt220,
- 0, _VTE_CAP_CSI "4~", -1, X_NULL},
+ {cursor_default, keypad_default, fkey_notvt220, 0, _VTE_CAP_CSI "F", -1, X_NULL},
+ {cursor_app, keypad_default, fkey_notvt220, 0, _VTE_CAP_SS3 "F", -1, X_NULL},
{cursor_all, keypad_default, fkey_vt220, 0, "1", 1, X_NULL},
- {cursor_all, keypad_app, fkey_notvt220, 0, _VTE_CAP_CSI "4~", -1, X_NULL},
+ {cursor_default, keypad_app, fkey_notvt220, 0, _VTE_CAP_CSI "F", -1, X_NULL},
+ {cursor_app, keypad_app, fkey_notvt220, 0, _VTE_CAP_SS3 "F", -1, X_NULL},
{cursor_all, keypad_app, fkey_vt220, 0, _VTE_CAP_SS3 "q", -1, X_NULL},
{cursor_all, keypad_all, fkey_all, 0, X_NULL, 0, X_NULL},
};
@@ -565,10 +570,11 @@ static const struct _vte_keymap_entry _vte_keymap_GDK_KP_Right[] = {
static const struct _vte_keymap_entry _vte_keymap_GDK_KP_Home[] = {
{cursor_all, keypad_default, fkey_all, 0, X_NULL, 0, "K1"},
- {cursor_all, keypad_default, fkey_notvt220,
- 0, _VTE_CAP_CSI "1~", -1, X_NULL},
+ {cursor_default, keypad_default, fkey_notvt220, 0, _VTE_CAP_CSI "H", -1, X_NULL},
+ {cursor_app, keypad_default, fkey_notvt220, 0, _VTE_CAP_SS3 "H", -1, X_NULL},
{cursor_all, keypad_default, fkey_vt220, 0, "7", 1, X_NULL},
- {cursor_all, keypad_app, fkey_notvt220, 0, _VTE_CAP_CSI "1~", -1, X_NULL},
+ {cursor_default, keypad_app, fkey_notvt220, 0, _VTE_CAP_CSI "H", -1, X_NULL},
+ {cursor_app, keypad_app, fkey_notvt220, 0, _VTE_CAP_SS3 "H", -1, X_NULL},
{cursor_all, keypad_app, fkey_vt220, 0, _VTE_CAP_SS3 "w", -1, X_NULL},
{cursor_all, keypad_all, fkey_all, 0, X_NULL, 0, X_NULL},
};
@@ -1280,6 +1286,8 @@ _vte_keymap_key_gets_modifiers(guint keyval)
case GDK_KEY (Right):
case GDK_KEY (Insert):
case GDK_KEY (Delete):
+ case GDK_KEY (Home):
+ case GDK_KEY (End):
case GDK_KEY (Page_Up):
case GDK_KEY (Page_Down):
case GDK_KEY (KP_Up):
@@ -1288,6 +1296,8 @@ _vte_keymap_key_gets_modifiers(guint keyval)
case GDK_KEY (KP_Right):
case GDK_KEY (KP_Insert):
case GDK_KEY (KP_Delete):
+ case GDK_KEY (KP_Home):
+ case GDK_KEY (KP_End):
case GDK_KEY (KP_Page_Up):
case GDK_KEY (KP_Page_Down):
case GDK_KEY (F1):

View file

@ -0,0 +1,84 @@
commit 8cff105a2b280ed738b296955724590b9cd348ce
commit ef34977b6765be1036ea8cd016861199033e2231
commit 49e3433dea9a32d7ab9972b719484b49ca7f6b81
commit 94b6ca416d4e5b54be084a057ec1341bcfddabe1
commit ecb9fcc8cfb73207bcda93889e3e2564d41f79c9
--- origsrc/vte-0.28.2/src/pty.c 2011-08-16 16:52:48.000000000 -0500
+++ src/vte-0.28.2/src/pty.c 2015-08-03 14:01:55.151226800 -0500
@@ -616,7 +616,7 @@ __vte_pty_fork(VtePty *pty,
* @pty: a #VtePty
* @rows: the desired number of rows
* @columns: the desired number of columns
- * @error: (allow-none); return location to store a #GError, or %NULL
+ * @error: (allow-none): return location to store a #GError, or %NULL
*
* Attempts to resize the pseudo terminal's window size. If successful, the
* OS kernel will send #SIGWINCH to the child process group.
--- origsrc/vte-0.28.2/src/vte.c 2015-08-03 13:56:24.348720200 -0500
+++ src/vte-0.28.2/src/vte.c 2015-08-03 16:15:52.185800500 -0500
@@ -2474,7 +2474,7 @@ _vte_terminal_set_pointer_visible(VteTer
*
* Creates a new terminal widget.
*
- * Returns: (transfer full) (type Vte.Terminal): a new #VteTerminal object
+ * Returns: (transfer none) (type Vte.Terminal): a new #VteTerminal object
*/
GtkWidget *
vte_terminal_new(void)
@@ -3680,7 +3680,7 @@ vte_terminal_watch_child (VteTerminal *t
* Gets the user's shell, or %NULL. In the latter case, the
* system default (usually "/bin/sh") should be used.
*
- * Returns: (tranfer full) (type filename): a newly allocated string with the
+ * Returns: (transfer full) (type filename): a newly allocated string with the
* user's shell, or %NULL
*
* Since: 0.28
@@ -4615,8 +4615,8 @@ out:
/**
* vte_terminal_feed:
* @terminal: a #VteTerminal
- * @data: a string in the terminal's current encoding
- * @length: the length of the string
+ * @data: (array length=length) (element-type guint8): a string in the terminal's current encoding
+ * @length the length of the string
*
* Interprets @data as if it were data received from a child process. This
* can either be used to drive the terminal without a child process, or just
@@ -6233,7 +6233,7 @@ vte_terminal_copy_cb(GtkClipboard *clipb
* @start_col: first column to search for data
* @end_row: last row to search for data
* @end_col: last column to search for data
- * @is_selected: a #VteSelectionFunc callback
+ * @is_selected: (scope call): a #VteSelectionFunc callback
* @user_data: (closure): user data to be passed to the callback
* @attributes: (out) (transfer full) (array) (element-type Vte.CharAttributes): location for storing text attributes
*
@@ -6432,7 +6432,7 @@ vte_terminal_get_text_maybe_wrapped(VteT
/**
* vte_terminal_get_text:
* @terminal: a #VteTerminal
- * @is_selected: a #VteSelectionFunc callback
+ * @is_selected: (scope call): a #VteSelectionFunc callback
* @user_data: (closure): user data to be passed to the callback
* @attributes: (out) (transfer full) (array) (element-type Vte.CharAttributes): location for storing text attributes
*
@@ -6462,7 +6462,7 @@ vte_terminal_get_text(VteTerminal *termi
/**
* vte_terminal_get_text_include_trailing_spaces:
* @terminal: a #VteTerminal
- * @is_selected: a #VteSelectionFunc callback
+ * @is_selected: (scope call): a #VteSelectionFunc callback
* @user_data: (closure): user data to be passed to the callback
* @attributes: (out) (transfer full) (array) (element-type Vte.CharAttributes): location for storing text attributes
*
@@ -6497,7 +6497,7 @@ vte_terminal_get_text_include_trailing_s
* vte_terminal_get_cursor_position:
* @terminal: a #VteTerminal
* @column: (out) (allow-none): a location to store the column, or %NULL
- * @row : (out) (allow-none): a location to store the row, or %NULL
+ * @row: (out) (allow-none): a location to store the row, or %NULL
*
* Reads the location of the insertion cursor and returns it. The row
* coordinate is absolute.

View file

@ -0,0 +1,40 @@
From feeee4b5832b17641e505b7083e0d299fdae318e Mon Sep 17 00:00:00 2001
From: Christian Persch <chpe@gnome.org>
Date: Sat, 19 May 2012 17:36:09 +0000
Subject: emulation: Limit integer arguments to 65535
To guard against malicious sequences containing excessively big numbers,
limit all parsed numbers to 16 bit range. Doing this here in the parsing
routine is a catch-all guard; this doesn't preclude enforcing
more stringent limits in the handlers themselves.
https://bugzilla.gnome.org/show_bug.cgi?id=676090
---
diff --git a/src/table.c b/src/table.c
index 140e8c8..85cf631 100644
--- a/src/table.c
+++ b/src/table.c
@@ -550,7 +550,7 @@ _vte_table_extract_numbers(GValueArray **array,
if (G_UNLIKELY (*array == NULL)) {
*array = g_value_array_new(1);
}
- g_value_set_long(&value, total);
+ g_value_set_long(&value, CLAMP (total, 0, G_MAXUSHORT));
g_value_array_append(*array, &value);
} while (i++ < arginfo->length);
g_value_unset(&value);
diff --git a/src/vteseq.c b/src/vteseq.c
index 457c06a..46def5b 100644
--- a/src/vteseq.c
+++ b/src/vteseq.c
@@ -557,7 +557,7 @@ vte_sequence_handler_multiple(VteTerminal *terminal,
GValueArray *params,
VteTerminalSequenceHandler handler)
{
- vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXLONG);
+ vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXUSHORT);
}
static void
--
cgit v0.9.0.2

View file

@ -0,0 +1,268 @@
--- vte-0.28.2-clean/src/mev.c 2011-08-16 23:52:48.000000000 +0200
+++ vte-0.28.2-clean/src/mev.c 2018-05-03 22:07:30.275915172 +0200
@@ -42,7 +42,9 @@
tracking_mouse = 1000,
tracking_hilite = 1001,
tracking_cell_motion = 1002,
- tracking_all_motion = 1003
+ tracking_all_motion = 1003,
+ tracking_xterm_ext = 1006,
+ tracking_urxvt = 1015
} tracking_mode = 0;
static void
@@ -59,6 +61,8 @@
decset(tracking_hilite, FALSE);
decset(tracking_cell_motion, FALSE);
decset(tracking_all_motion, FALSE);
+ decset(tracking_xterm_ext, FALSE);
+ decset(tracking_urxvt, FALSE);
fflush(stdout);
}
@@ -93,6 +97,14 @@
fprintf(stdout, "All motion tracking enabled.\r\n");
decset(tracking_all_motion, TRUE);
break;
+ case tracking_xterm_ext:
+ fprintf(stdout, "Xterm 1006 mouse tracking extension enabled.\r\n");
+ decset(tracking_xterm_ext, TRUE);
+ break;
+ case tracking_urxvt:
+ fprintf(stdout, "rxvt-unicode 1015 mouse tracking extension enabled.\r\n");
+ decset(tracking_urxvt, TRUE);
+ break;
default:
fprintf(stdout, "Tracking disabled.\r\n");
break;
@@ -102,6 +114,8 @@
fprintf(stdout, "C - Hilite tracking [FIXME: NOT IMPLEMENTED].\r\n");
fprintf(stdout, "D - Cell motion tracking.\r\n");
fprintf(stdout, "E - All motion tracking.\r\n");
+ fprintf(stdout, "F - Xterm 1006 extension.\r\n");
+ fprintf(stdout, "G - rxvt-unicode extension.\r\n");
fprintf(stdout, "%s", _VTE_CAP_ESC "8");
fflush(stdout);
}
@@ -153,6 +167,18 @@
0 : tracking_all_motion;
i++;
break;
+ case 'F':
+ case 'f':
+ tracking_mode = (tracking_mode == tracking_xterm_ext) ?
+ 0 : tracking_xterm_ext;
+ i++;
+ break;
+ case 'G':
+ case 'g':
+ tracking_mode = (tracking_mode == tracking_urxvt) ?
+ 0 : tracking_urxvt;
+ i++;
+ break;
case 'Q':
case 'q':
ret = TRUE;
--- vte-0.28.2-clean/src/vte.c 2018-05-03 22:04:27.780199219 +0200
+++ vte-0.28.2-clean/src/vte.c 2018-05-03 22:07:30.277915158 +0200
@@ -5816,21 +5816,20 @@
}
static void
-vte_terminal_get_mouse_tracking_info (VteTerminal *terminal,
- int button,
- long col,
- long row,
- unsigned char *pb,
- unsigned char *px,
- unsigned char *py)
+vte_terminal_feed_mouse_event(VteTerminal *terminal,
+ int button,
+ gboolean is_drag,
+ gboolean is_release,
+ long col,
+ long row)
{
- unsigned char cb = 0, cx = 0, cy = 0;
+ unsigned char cb = 0;
+ long cx, cy;
+ char buf[LINE_MAX];
+ gint len = 0;
/* Encode the button information in cb. */
switch (button) {
- case 0: /* Release/no buttons. */
- cb = 3;
- break;
case 1: /* Left. */
cb = 0;
break;
@@ -5847,7 +5846,12 @@
cb = 65; /* Scroll down. */
break;
}
- cb += 32; /* 32 for normal */
+
+ /* With the exception of the 1006 mode, button release is also encoded here. */
+ /* Note that if multiple extensions are enabled, the 1006 is used, so it's okay to check for only that. */
+ if (is_release && !terminal->pvt->mouse_xterm_extension) {
+ cb = 3;
+ }
/* Encode the modifiers. */
if (terminal->pvt->modifiers & GDK_SHIFT_MASK) {
@@ -5860,38 +5864,46 @@
cb |= 16;
}
- /* Encode the cursor coordinates. */
- cx = 32 + CLAMP(1 + col,
- 1, terminal->column_count);
- cy = 32 + CLAMP(1 + row,
- 1, terminal->row_count);;
-
- *pb = cb;
- *px = cx;
- *py = cy;
+ /* Encode a drag event. */
+ if (is_drag) {
+ cb |= 32;
+ }
+
+ /* Clamp the cursor coordinates. Make them 1-based. */
+ cx = CLAMP(1 + col,
+ 1, terminal->column_count);
+ cy = CLAMP(1 + row,
+ 1, terminal->row_count);
+
+ /* Check the extensions in decreasing order of preference. Encoding the release event above assumes that 1006 comes first. */
+ if (terminal->pvt->mouse_xterm_extension) {
+ /* xterm's extended mode (1006) */
+ len = g_snprintf(buf, sizeof(buf), _VTE_CAP_CSI "<%d;%ld;%ld%c", cb, cx, cy, is_release ? 'm' : 'M');
+ } else if (terminal->pvt->mouse_urxvt_extension) {
+ /* urxvt's extended mode (1015) */
+ len = g_snprintf(buf, sizeof(buf), _VTE_CAP_CSI "%d;%ld;%ldM", 32 + cb, cx, cy);
+ } else if (cx <= 231 && cy <= 231) {
+ /* legacy mode */
+ len = g_snprintf(buf, sizeof(buf), _VTE_CAP_CSI "M%c%c%c", 32 + cb, 32 + (guchar)cx, 32 + (guchar)cy);
+ }
+
+ /* Send event direct to the child, this is binary not text data */
+ vte_terminal_feed_child_binary(terminal, buf, len);
}
static void
vte_terminal_send_mouse_button_internal(VteTerminal *terminal,
int button,
+ gboolean is_release,
long x,
long y)
{
- unsigned char cb, cx, cy;
- char buf[LINE_MAX];
- gint len;
int width = terminal->char_width;
int height = terminal->char_height;
long col = (x - terminal->pvt->inner_border.left) / width;
long row = (y - terminal->pvt->inner_border.top) / height;
- vte_terminal_get_mouse_tracking_info (terminal,
- button, col, row,
- &cb, &cx, &cy);
-
- /* Send event direct to the child, this is binary not text data */
- len = g_snprintf(buf, sizeof(buf), _VTE_CAP_CSI "M%c%c%c", cb, cx, cy);
- vte_terminal_feed_child_binary(terminal, buf, len);
+ vte_terminal_feed_mouse_event(terminal, button, FALSE /* not drag */, is_release, col, row);
}
/* Send a mouse button click/release notification. */
@@ -5919,7 +5931,8 @@
}
vte_terminal_send_mouse_button_internal(terminal,
- (event->type == GDK_BUTTON_PRESS) ? event->button : 0,
+ event->button,
+ event->type == GDK_BUTTON_RELEASE,
event->x, event->y);
}
@@ -5927,9 +5940,6 @@
static void
vte_terminal_maybe_send_mouse_drag(VteTerminal *terminal, GdkEventMotion *event)
{
- unsigned char cb, cx, cy;
- char buf[LINE_MAX];
- gint len;
int width = terminal->char_width;
int height = terminal->char_height;
long col = ((long) event->x - terminal->pvt->inner_border.left) / width;
@@ -5958,14 +5968,9 @@
break;
}
- vte_terminal_get_mouse_tracking_info (terminal,
- terminal->pvt->mouse_last_button, col, row,
- &cb, &cx, &cy);
- cb += 32; /* for movement */
-
- /* Send event direct to the child, this is binary not text data */
- len = g_snprintf(buf, sizeof(buf), _VTE_CAP_CSI "M%c%c%c", cb, cx, cy);
- vte_terminal_feed_child_binary(terminal, buf, len);
+ vte_terminal_feed_mouse_event(terminal, terminal->pvt->mouse_last_button,
+ TRUE /* drag */, FALSE /* not release */,
+ col, row);
}
/* Clear all match hilites. */
@@ -11384,6 +11389,7 @@
/* Encode the parameters and send them to the app. */
vte_terminal_send_mouse_button_internal(terminal,
button,
+ FALSE /* not release */,
event->x,
event->y);
}
@@ -14091,6 +14097,8 @@
pvt->mouse_last_button = 0;
pvt->mouse_last_x = 0;
pvt->mouse_last_y = 0;
+ pvt->mouse_xterm_extension = FALSE;
+ pvt->mouse_urxvt_extension = FALSE;
/* Clear modifiers. */
pvt->modifiers = 0;
/* Reset miscellaneous stuff. */
--- vte-0.28.2-clean/src/vte-private.h 2018-05-03 22:04:27.773199268 +0200
+++ vte-0.28.2-clean/src/vte-private.h 2018-05-03 22:07:30.275915172 +0200
@@ -305,6 +305,8 @@
long mouse_last_x, mouse_last_y;
gboolean mouse_autohide;
guint mouse_autoscroll_tag;
+ gboolean mouse_xterm_extension;
+ gboolean mouse_urxvt_extension;
/* State variables for handling match checks. */
char *match_contents;
--- vte-0.28.2-clean/src/vteseq.c 2018-05-03 22:04:27.773199268 +0200
+++ vte-0.28.2-clean/src/vteseq.c 2018-05-03 22:07:30.277915158 +0200
@@ -685,10 +685,20 @@
GINT_TO_POINTER(0),
GINT_TO_POINTER(MOUSE_TRACKING_ALL_MOTION_TRACKING),
NULL, NULL,},
+ /* 1006: Extended mouse coordinates. */
+ {1006, &terminal->pvt->mouse_xterm_extension, NULL, NULL,
+ GINT_TO_POINTER(FALSE),
+ GINT_TO_POINTER(TRUE),
+ NULL, NULL,},
/* 1010/rxvt: disallowed, scroll-on-output is set by user. */
{1010, NULL, NULL, NULL, NULL, NULL, NULL, NULL,},
/* 1011/rxvt: disallowed, scroll-on-keypress is set by user. */
{1011, NULL, NULL, NULL, NULL, NULL, NULL, NULL,},
+ /* 1015/urxvt: Extended mouse coordinates. */
+ {1015, &terminal->pvt->mouse_urxvt_extension, NULL, NULL,
+ GINT_TO_POINTER(FALSE),
+ GINT_TO_POINTER(TRUE),
+ NULL, NULL,},
/* 1035: disallowed, don't know what to do with it. */
{1035, NULL, NULL, NULL, NULL, NULL, NULL, NULL,},
/* 1036: Meta-sends-escape. */

71
vte-0.28.2-paste-fix.diff Normal file
View file

@ -0,0 +1,71 @@
diff -ur vte-0.28.2.orig/src/vte.c vte-0.28.2/src/vte.c
--- vte-0.28.2.orig/src/vte.c 2011-08-29 00:31:45.000000000 +0300
+++ vte-0.28.2/src/vte.c 2014-06-26 04:20:52.409371214 +0300
@@ -5806,10 +5806,10 @@
p++;
}
}
- if (terminal->pvt->screen->bracketed_paste_mode)
+ if (terminal->pvt->bracketed_paste_mode)
vte_terminal_feed_child(terminal, "\e[200~", -1);
vte_terminal_feed_child(terminal, paste, length);
- if (terminal->pvt->screen->bracketed_paste_mode)
+ if (terminal->pvt->bracketed_paste_mode)
vte_terminal_feed_child(terminal, "\e[201~", -1);
g_free(paste);
}
@@ -14065,14 +14065,12 @@
pvt->normal_screen.linefeed_mode = FALSE;
pvt->normal_screen.origin_mode = FALSE;
pvt->normal_screen.reverse_mode = FALSE;
- pvt->normal_screen.bracketed_paste_mode = FALSE;
pvt->alternate_screen.scrolling_restricted = FALSE;
pvt->alternate_screen.sendrecv_mode = TRUE;
pvt->alternate_screen.insert_mode = FALSE;
pvt->alternate_screen.linefeed_mode = FALSE;
pvt->alternate_screen.origin_mode = FALSE;
pvt->alternate_screen.reverse_mode = FALSE;
- pvt->alternate_screen.bracketed_paste_mode = FALSE;
pvt->cursor_visible = TRUE;
/* Reset the encoding. */
vte_terminal_set_encoding(terminal, NULL);
@@ -14102,6 +14100,8 @@
pvt->mouse_last_y = 0;
/* Clear modifiers. */
pvt->modifiers = 0;
+ /* Reset miscellaneous stuff. */
+ pvt->bracketed_paste_mode = FALSE;
/* Cause everything to be redrawn (or cleared). */
vte_terminal_maybe_scroll_to_bottom(terminal);
_vte_invalidate_all(terminal);
diff -ur vte-0.28.2.orig/src/vte-private.h vte-0.28.2/src/vte-private.h
--- vte-0.28.2.orig/src/vte-private.h 2011-08-17 00:52:48.000000000 +0300
+++ vte-0.28.2/src/vte-private.h 2014-06-26 04:20:52.410371214 +0300
@@ -219,7 +219,6 @@
gboolean sendrecv_mode; /* sendrecv mode */
gboolean insert_mode; /* insert mode */
gboolean linefeed_mode; /* linefeed mode */
- gboolean bracketed_paste_mode;
struct vte_scrolling_region {
int start, end;
} scrolling_region; /* the region we scroll in */
@@ -274,6 +273,7 @@
gboolean text_modified_flag;
gboolean text_inserted_flag;
gboolean text_deleted_flag;
+ gboolean bracketed_paste_mode;
/* Scrolling options. */
gboolean scroll_background;
diff -ur vte-0.28.2.orig/src/vteseq.c vte-0.28.2/src/vteseq.c
--- vte-0.28.2.orig/src/vteseq.c 2014-06-26 04:08:49.998358634 +0300
+++ vte-0.28.2/src/vteseq.c 2014-06-26 04:34:00.214384933 +0300
@@ -737,7 +737,7 @@
GINT_TO_POINTER(TRUE),
NULL, NULL},
/* 2004: Bracketed paste mode. */
- {2004, &terminal->pvt->screen->bracketed_paste_mode, NULL, NULL,
+ {2004, &terminal->pvt->bracketed_paste_mode, NULL, NULL,
GINT_TO_POINTER(FALSE),
GINT_TO_POINTER(TRUE),
NULL, NULL,},

View file

@ -0,0 +1,11 @@
--- o/src/vte.c 2018-05-03 20:53:16.000000000 +0200
+++ o/src/vte.c 2018-05-03 20:57:48.764010197 +0200
@@ -4520,7 +4520,7 @@
if (max_bytes) {
max_bytes = terminal->pvt->max_input_bytes / max_bytes;
} else {
- max_bytes = VTE_MAX_INPUT_READ;
+ max_bytes = terminal->pvt->max_input_bytes;
}
bytes = terminal->pvt->input_bytes;

2288
vte-aarch64.patch Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,74 @@
From 180dcc578e13c6096e277fb853e7162db640f207 Mon Sep 17 00:00:00 2001
From: Alexandre Rostovtsev <tetromino@gentoo.org>
Date: Tue, 15 Nov 2011 03:06:40 -0500
Subject: [PATCH] Map both gdk's Meta and Alt to vte's Meta for >=gtk+-3.2.2
compatibility
Also, since VTE_META_MASK is now a mask with multiple bits set, code that
compares gdk key modifiers to VTE_META_MASK by numerical equality is no
longer guaranteed to work. Therefore, for such comparisons a new function,
vte_keymap_fixup_modifiers, is introduced; it ensures that if any bits
matching matching VTE_META_MASK are set, then all are set.
https://bugzilla.gnome.org/show_bug.cgi?id=663779
---
src/keymap.c | 15 +++++++++++++--
src/keymap.h | 2 +-
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/src/keymap.c b/src/keymap.c
index 9a21669..95b4c5b 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -990,6 +990,17 @@ static const struct _vte_keymap_group {
{GDK_KEY (F35), _vte_keymap_GDK_F35},
};
+/* Restrict modifiers to the specified mask and ensure that VTE_META_MASK,
+ * despite being a compound mask, is treated as indivisible. */
+GdkModifierType
+_vte_keymap_fixup_modifiers(GdkModifierType modifiers,
+ GdkModifierType mask)
+{
+ if (modifiers & VTE_META_MASK)
+ modifiers |= VTE_META_MASK;
+ return modifiers & mask;
+}
+
/* Map the specified keyval/modifier setup, dependent on the mode, to either
* a literal string or a capability name. */
void
@@ -1104,7 +1115,7 @@ _vte_keymap_map(guint keyval,
} else {
fkey_mode = fkey_default;
}
- modifiers &= (GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
+ modifiers = _vte_keymap_fixup_modifiers(modifiers, GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK);
/* Search for the conditions. */
for (i = 0; entries[i].normal_length || entries[i].special[0]; i++)
@@ -1375,7 +1386,7 @@ _vte_keymap_key_add_key_modifiers(guint keyval,
return;
}
- switch (modifiers & significant_modifiers) {
+ switch (_vte_keymap_fixup_modifiers(modifiers, significant_modifiers)) {
case 0:
modifier = 0;
break;
diff --git a/src/keymap.h b/src/keymap.h
index 243e22e..21d9b8e 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -27,7 +27,7 @@
G_BEGIN_DECLS
-#define VTE_META_MASK GDK_META_MASK
+#define VTE_META_MASK (GDK_META_MASK | GDK_MOD1_MASK)
#define VTE_NUMLOCK_MASK GDK_MOD2_MASK
/* Map the specified keyval/modifier setup, dependent on the mode, to either
--
1.7.8.rc3

86
vte-python-bugfixes.patch Normal file
View file

@ -0,0 +1,86 @@
diff -ur vte-0.22.5-orig/python/vte.override vte-0.22.5-python-get-text/python/vte.override
--- vte-0.22.5-orig/python/vte.override 2010-01-16 20:54:40.515014436 -0500
+++ vte-0.22.5-python-get-text/python/vte.override 2010-01-16 22:14:40.881828300 -0500
@@ -306,9 +306,9 @@
}
cb = PySequence_GetItem(data, 0); /* INCREFs */
- Py_XDECREF(cb);
if (!PyCallable_Check(cb)) {
+ Py_XDECREF(cb);
PyErr_SetString(PyExc_TypeError, "callback is not a callable object");
return FALSE;
}
@@ -320,6 +320,7 @@
PyTuple_SetItem(args, 3, PySequence_GetItem(data, 2));
result = PyObject_CallObject(cb, args);
+ Py_XDECREF(cb);
Py_DECREF(args);
ret = (result && PyObject_IsTrue(result));
@@ -332,7 +333,7 @@
build_attributes(GArray *attrs)
{
PyObject *py_attrs = PyTuple_New(attrs->len);
- int count;
+ guint count;
PyObject *row = PyString_FromString("row");
PyObject *column = PyString_FromString("column");
PyObject *fore = PyString_FromString("fore");
@@ -344,6 +345,8 @@
VteCharAttributes *cht;
PyObject *py_char_attr;
+ cht = &g_array_index(attrs, VteCharAttributes, count);
+
py_char_attr = Py_BuildValue("{S:l,S:l,S:N,S:N,S:I,S:I}",
row, cht->row,
column, cht->column,
@@ -380,10 +383,9 @@
GArray *attrs = NULL;
char *text;
PyObject *py_attrs;
- int count;
long length;
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OO:terminal_get_text",
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OOO:terminal_get_text",
kwlist, &callback, &do_attr, &data)) {
return NULL;
}
@@ -451,10 +453,9 @@
GArray *attrs = NULL;
char *text;
PyObject *py_attrs;
- int count;
long length;
- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OO:terminal_get_text_include_trailing_spaces",
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OOO:terminal_get_text_include_trailing_spaces",
kwlist, &callback, &do_attr, &data)) {
return NULL;
}
@@ -522,11 +523,10 @@
GArray *attrs = NULL;
char *text;
PyObject *py_attrs;
- int count;
long length;
if (!PyArg_ParseTupleAndKeywords(args, kwargs,
- "llllO|OO:terminal_get_text_range",
+ "llll|OOO:terminal_get_text_range",
kwlist,
&start_row, &start_col, &end_row, &end_col,
&callback, &do_attr, &data)) {
@@ -641,7 +641,7 @@
static char *kwlist[] = { "column", "row", NULL };
gchar *ret;
glong column, row;
- int *tag;
+ int tag;
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ll:VteTerminal.match_check", kwlist, &column, &row))
return NULL;

295
vte.spec
View file

@ -1,38 +1,70 @@
%define glib2_version 2.18.0
%define glib2_version 2.26.0
%define pango_version 1.22.0
%define gtk2_version 2.12.0
%define gtk2_version 2.20.0
Name: vte
Version: 0.25.1
Release: 2%{?dist}
Version: 0.28.2
Release: 47%{?dist}
Summary: A terminal emulator
License: LGPLv2+
Group: User Interface/X
License: LGPL-2.0-or-later
#VCS: git:git://git.gnome.org/vte
Source: http://download.gnome.org/sources/vte/0.25/%{name}-%{version}.tar.bz2
URL: http://developer.gnome.org/vte/
Source: http://download.gnome.org/sources/vte/0.28/%{name}-%{version}.tar.xz
# https://bugzilla.gnome.org/show_bug.cgi?id=663779
Patch0: vte-alt-meta-confusion.patch
# Python bindings bugfix
# https://bugzilla.redhat.com/show_bug.cgi?id=556200
Patch1: vte-python-bugfixes.patch
# limit arguments to avoid DOS
# http://git.gnome.org/browse/vte/patch/?id=feeee4b5832b17641e505b7083e0d299fdae318e
Patch2: vte-0.28.2-limit-arguments.patch
#
# aarch64 support
Patch3: http://ausil.fedorapeople.org/aarch64/vte/vte-aarch64.patch
# Fix control home/control end codes
# https://bugzilla.redhat.com/show_bug.cgi?id=1114074
Patch4: vte-0.28.2-control.patch
# Fix mc paste
# https://bugzilla.redhat.com/show_bug.cgi?id=1114301
Patch5: vte-0.28.2-paste-fix.diff
# Backport introspection fixes
# https://bugzilla.redhat.com/show_bug.cgi?id=1256535
Patch6: vte-0.28.2-introspection-fixes.patch
# Backport "cat bigfile" speedup
# https://bugzilla.gnome.org/show_bug.cgi?id=721944
Patch7: vte-0.28.2-performance.patch
# Backport shift-mouse grab "hang" fix
# https://bugzilla.gnome.org/show_bug.cgi?id=683730
Patch8: vte-0.28.2-683730.patch
# Backport extended xterm/urxvt mouse tracking support
# https://bugzilla.gnome.org/show_bug.cgi?id=681329
Patch9: vte-0.28.2-mouse-tracking.patch
Patch10: pointer-types.patch
BuildRequires: make
BuildRequires: gtk2-devel >= %{gtk2_version}
BuildRequires: pango-devel >= %{pango_version}
BuildRequires: glib2-devel >= %{glib2_version}
BuildRequires: pygtk2-devel, python-devel, ncurses-devel
BuildRequires: ncurses-devel
BuildRequires: gettext
BuildRequires: libXt-devel
BuildRequires: intltool
# Work around broken perl / perl-Carp
BuildRequires: perl-Carp
BuildRequires: gobject-introspection-devel
# initscripts creates the utmp group
Prereq: initscripts
# systemd creates the utmp group
Requires: systemd
%description
VTE is a terminal emulator widget for use with GTK+ 2.0.
%package devel
Summary: Files needed for developing applications which use vte
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: gtk2-devel
Requires: ncurses-devel
Requires: pkgconfig
Requires: pygtk2-devel
%description devel
The vte-devel package includes the header files and developer docs
@ -43,12 +75,29 @@ vte.
%prep
%setup -q
%patch -P 0 -p1
%patch -P 1 -p1
%patch -P 2 -p1
%patch -P 3 -p1
%patch -P 4 -p1
%patch -P 5 -p1
%patch -P 6 -p2
%patch -P 7 -p1
%patch -P 8 -p1
%patch -P 9 -p1
%patch -P 10 -p0
%build
PYTHON=%{_bindir}/python`%{__python} -c "import sys ; print sys.version[:3]"`
export PYTHON
%configure --enable-shared --enable-static --libexecdir=%{_libdir}/%{name} --without-glX --disable-gtk-doc
make
%configure \
--enable-shared \
--enable-static \
--enable-introspection \
--with-gtk=2.0 \
--libexecdir=%{_libdir}/%{name} \
--without-glX \
--disable-gtk-doc \
--disable-python
make %{?_smp_mflags}
%install
make install DESTDIR=$RPM_BUILD_ROOT
@ -61,38 +110,210 @@ rm $RPM_BUILD_ROOT/%{_libdir}/lib%{name}.la
rm -f $RPM_BUILD_ROOT/%{_libdir}/python*/site-packages/gtk-2.0/*.la
rm -f $RPM_BUILD_ROOT/%{_libdir}/python*/site-packages/gtk-2.0/*.a
%find_lang %{name}
%find_lang vte-0.0
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files -f %{name}.lang
%defattr(-,root,root)
%files -f vte-0.0.lang
%doc COPYING HACKING NEWS README
%doc src/iso2022.txt
%doc doc/utmpwtmp.txt doc/boxes.txt doc/openi18n/UTF-8.txt doc/openi18n/wrap.txt
%{_libdir}/*.so.*
%dir %{_libdir}/%{name}
%attr(2711,root,utmp) %{_libdir}/%{name}/gnome-pty-helper
%dir %{_libdir}/vte
%attr(2711,root,utmp) %{_libdir}/vte/gnome-pty-helper
%{_datadir}/%{name}
%{_libdir}/python*/site-packages/*
%{_libdir}/girepository-1.0
#rpmlint gives:
#vte.x86_64: W: private-shared-object-provides /usr/lib64/python2.7/site-packages/gtk-2.0/vtemodule.so vtemodule.so()(64bit)
# This is not used by anything except possibly third party scripts, so we're leaving it in place.
%files devel
%defattr(-,root,root)
%{_includedir}/*
%{_libdir}/%{name}/decset
%{_libdir}/%{name}/interpret
%{_libdir}/%{name}/osc
%{_libdir}/%{name}/slowcat
%{_libdir}/%{name}/window
%{_libdir}/*.so
%{_libdir}/pkgconfig/*
%{_bindir}/%{name}
%{_datadir}/pygtk/2.0/defs/vte.defs
%doc %{_datadir}/gtk-doc/html/%{name}
%{_datadir}/gir-1.0
%doc %{_datadir}/gtk-doc/html/vte-0.0
%changelog
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-47
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-46
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-45
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-44
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Wed Jan 31 2024 Gwyn Ciesla <gwync@protonmail.com> - 0.28.2-42
- PAtch for modern C.
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-41
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-40
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Mar 04 2023 Gwyn Ciesla <gwync@protonmail.com> - 0.28.2-39
- migrated to SPDX license
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-37
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-35
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Feb 10 2021 Petr Viktorin <pviktori@redhat.com> - 0.28.2-34
- Remove Requires on pygtk2
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-33
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-32
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-31
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Oct 05 2019 Lumír Balhar <lbalhar@redhat.com> - 0.28.2-30
- Disable Python 2 bindings
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-29
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed Jul 17 2019 Kevin Fenzi <kevin@scrye.com> - 0.28.2-28
- Fix last python unversioned deps.
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-27
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon Jun 18 2018 Kevin Fenzi <kevin@scrye.com> - 0.28.2-25
- Depend on systemd for utmp group, not initscripts anymore. Fixes bug #1592402
* Sun May 06 2018 Kevin Fenzi <kevin@scrye.com> - 0.28.2-24
- Add backported patches for various issues. Fixes bug #1574683
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Mon Feb 05 2018 Iryna Shcherbina <ishcherb@redhat.com> - 0.28.2-22
- Update Python 2 dependency declarations to new packaging standards
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-18
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.28.2-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Aug 24 2015 Yaakov Selkowitz <yselkowi@redhat.com> - 0.28.2-16
- Enable GObject Introspection (#1256535)
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 29 2014 Kevin Fenzi <kevin@scrye.com> 0.28.2-13
- Add patch to fix bracketed paste. Fixes bug #1114301
- Thanks to nerijus for the patch
* Sat Jun 28 2014 Kevin Fenzi <kevin@scrye.com> 0.28.2-12
- Add patch to fix control+home/control+end. Fixes bug #1114074
- Thanks to jskarvad for the patch
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Sat Mar 23 2013 Kevin Fenzi <kevin@scrye.com> 0.28.2-9
- Add patch to support aarch64. Fixes bug #926706
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Fri Jul 27 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Fri Jun 15 2012 Kevin Fenzi <kevin@scrye.com> - 0.28.2-6
- Add patch for DOS. Fixes bug #832356
- fixes CVE-2012-2738
* Tue Apr 03 2012 Jon Ciesla <limburgher@gmail.com> - 0.28.2-5
- Added URL, fixed whitespace for Merge Review BZ 226534.
- Commented on odd provides for rpmlint warning.
* Sat Mar 10 2012 Kevin Fenzi <kevin@scrye.com> - 0.28.2-4
- Add patch for python bindings. Fixes bug #556200
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.28.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Mon Dec 12 2011 Matthias Clasen <mclasen@redhat.com> - 0.28.2-2
- Fix problems with Alt<>Meta with recent gtk
* Fri Nov 25 2011 Tomas Bzatek <tbzatek@redhat.com> - 0.28.2-1
- Update to 0.28.2
* Thu Jun 16 2011 Tomas Bzatek <tbzatek@redhat.com> - 0.28.1-1
- Update to 0.28.1
* Mon Apr 4 2011 Matthias Clasen <mclasen@redhat.co> - 0.28.0-1
- Update to 0.28.0
* Tue Feb 22 2011 Matthias Clasen <mclasen@redhat.co> - 0.27.90-1
- Update to 0.27.90
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.27.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Jan 11 2011 Matthias Clasen <mclasen@redhat.com> 0.27.4-1
- Update to 0.27.4
* Thu Dec 2 2010 Matthias Clasen <mclasen@redhat.com> 0.27.2-1
- Update to 0.27.2
* Fri Oct 29 2010 Bill Nottingham <notting@redhat.com> 0.27.1-1
- Update to 0.27.1
* Mon Oct 4 2010 Matthias Clasen <mclasen@redhat.com> 0.27.0-1
- Update to 0.27.0
* Wed Sep 29 2010 Matthias Clasen <mclasen@redhat.com> 0.26.0-1
- Update to 0.26
* Tue Aug 31 2010 Matthias Clasen <mclasen@redhat.com> 0.25.91-1
- Update to 0.25.91
* Wed Aug 18 2010 Matthias Clasen <mclasen@redhat.com> 0.25.90-1
- Update to 0.25.90
* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 0.25.1-2
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
@ -449,18 +670,18 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/python*/site-packages/gtk-2.0/*.a
* Tue Nov 9 2004 Ray Strode <rstrode@redhat.com> 0.11.11-13
- Don't copy blocks; use pointers to block array directly.
(based on the debugging efforts of
Egmont Koblinger <egmong@uhulinux.hu>, bug 135537).
Egmont Koblinger <egmong@uhulinux.hu>, bug 135537).
* Mon Nov 8 2004 Jeremy Katz <katzj@redhat.com> - 0.11.11-12
- rebuild against python 2.4
* Mon Nov 8 2004 Ray Strode <rstrode@redhat.com> 0.11.11-11
- Fix keypad keys when numlock is on in application mode
(Patch from <jylefort@brutele.be>, bug 126110).
- (Patch from <jylefort@brutele.be>, bug 126110).
* Sun Oct 31 2004 Dan Williams <dcbw@redhat.com> 0.11.11-10
- Redraw background when unobscured visiblity event is received
(workaround, patch from Jon Nettleton) #rh100420#
- (workaround, patch from Jon Nettleton) #rh100420#
- Mad speed zoom zoom (patch from Soren Sandmann) #rh132770#
* Sun Oct 31 2004 Ray Strode <rstrode@redhat.com> 0.11.11-9