Date: Wednesday, March 24, 2021 @ 20:32:37 Author: heftig Revision: 410868
archrelease: copy trunk to extra-x86_64 Added: gnome-terminal/repos/extra-x86_64/PKGBUILD (from rev 410867, gnome-terminal/trunk/PKGBUILD) Deleted: gnome-terminal/repos/extra-x86_64/0001-screen-Manually-handle-env-inheritance.patch gnome-terminal/repos/extra-x86_64/0002-screen-Move-env-sanitization-from-client.patch gnome-terminal/repos/extra-x86_64/0003-screen-Ignore-some-more-environment-variables.patch gnome-terminal/repos/extra-x86_64/PKGBUILD ----------------------------------------------------------+ 0001-screen-Manually-handle-env-inheritance.patch | 66 -------- 0002-screen-Move-env-sanitization-from-client.patch | 107 ------------- 0003-screen-Ignore-some-more-environment-variables.patch | 26 --- PKGBUILD | 102 +++++------- 4 files changed, 44 insertions(+), 257 deletions(-) Deleted: 0001-screen-Manually-handle-env-inheritance.patch =================================================================== --- 0001-screen-Manually-handle-env-inheritance.patch 2021-03-24 20:32:25 UTC (rev 410867) +++ 0001-screen-Manually-handle-env-inheritance.patch 2021-03-24 20:32:37 UTC (rev 410868) @@ -1,66 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steff...@gmail.com> -Date: Tue, 27 Oct 2020 19:50:30 +0000 -Subject: [PATCH] screen: Manually handle env inheritance - -Don't let VTE handle merging the environment; build the merged block -ourselves. This avoids confusion when we reuse the exec data. - -https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/303 ---- - src/terminal-screen.c | 26 +++++++++++++------------- - 1 file changed, 13 insertions(+), 13 deletions(-) - -diff --git a/src/terminal-screen.c b/src/terminal-screen.c -index f44de43a..570d4151 100644 ---- a/src/terminal-screen.c -+++ b/src/terminal-screen.c -@@ -943,9 +943,7 @@ terminal_screen_exec (TerminalScreen *screen, - &shell); - - gboolean preserve_cwd = FALSE; -- GSpawnFlags spawn_flags = G_SPAWN_SEARCH_PATH_FROM_ENVP; -- if (initial_envv) -- spawn_flags |= VTE_SPAWN_NO_PARENT_ENVV; -+ GSpawnFlags spawn_flags = G_SPAWN_SEARCH_PATH_FROM_ENVP | VTE_SPAWN_NO_PARENT_ENVV; - gs_strfreev char **exec_argv = NULL; - if (!terminal_screen_get_child_command (screen, - argv, -@@ -1432,25 +1430,27 @@ terminal_screen_get_child_environment (TerminalScreen *screen, - { - TerminalApp *app = terminal_app_get (); - char **env; -+ gs_strfreev char **current_environ = NULL; - char *e, *v; - GHashTable *env_table; - GHashTableIter iter; - GPtrArray *retval; - guint i; - - env_table = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); - -- env = initial_envv; -- if (env) -+ if (initial_envv) -+ env = initial_envv; -+ else -+ env = current_environ = g_get_environ (); -+ -+ for (i = 0; env[i]; ++i) - { -- for (i = 0; env[i]; ++i) -- { -- v = strchr (env[i], '='); -- if (v) -- g_hash_table_replace (env_table, g_strndup (env[i], v - env[i]), g_strdup (v + 1)); -- else -- g_hash_table_replace (env_table, g_strdup (env[i]), NULL); -- } -+ v = strchr (env[i], '='); -+ if (v) -+ g_hash_table_replace (env_table, g_strndup (env[i], v - env[i]), g_strdup (v + 1)); -+ else -+ g_hash_table_replace (env_table, g_strdup (env[i]), NULL); - } - - g_hash_table_remove (env_table, "COLUMNS"); Deleted: 0002-screen-Move-env-sanitization-from-client.patch =================================================================== --- 0002-screen-Move-env-sanitization-from-client.patch 2021-03-24 20:32:25 UTC (rev 410867) +++ 0002-screen-Move-env-sanitization-from-client.patch 2021-03-24 20:32:37 UTC (rev 410868) @@ -1,107 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steff...@gmail.com> -Date: Tue, 27 Oct 2020 19:44:58 +0000 -Subject: [PATCH] screen: Move env sanitization from client - -We always want to sanitize the environment, even when we start with the -server's environment instead of the client's one. - -https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/303 ---- - src/terminal-client-utils.c | 31 ------------------------------- - src/terminal-screen.c | 30 ++++++++++++++++++++++++++---- - 2 files changed, 26 insertions(+), 35 deletions(-) - -diff --git a/src/terminal-client-utils.c b/src/terminal-client-utils.c -index f7fb6a81..774e5f50 100644 ---- a/src/terminal-client-utils.c -+++ b/src/terminal-client-utils.c -@@ -119,37 +119,6 @@ terminal_client_append_exec_options (GVariantBuilder *builder, - gs_strfreev char **envv; - - envv = g_get_environ (); -- envv = g_environ_unsetenv (envv, "COLORTERM"); -- envv = g_environ_unsetenv (envv, "COLUMNS"); -- envv = g_environ_unsetenv (envv, "DESKTOP_STARTUP_ID"); -- envv = g_environ_unsetenv (envv, "EXIT_CODE"); -- envv = g_environ_unsetenv (envv, "EXIT_STATUS"); -- envv = g_environ_unsetenv (envv, "GIO_LAUNCHED_DESKTOP_FILE"); -- envv = g_environ_unsetenv (envv, "GIO_LAUNCHED_DESKTOP_FILE_PID"); -- envv = g_environ_unsetenv (envv, "GNOME_DESKTOP_ICON"); -- envv = g_environ_unsetenv (envv, "INVOCATION_ID"); -- envv = g_environ_unsetenv (envv, "JOURNAL_STREAM"); -- envv = g_environ_unsetenv (envv, "LINES"); -- envv = g_environ_unsetenv (envv, "LISTEN_FDNAMES"); -- envv = g_environ_unsetenv (envv, "LISTEN_FDS"); -- envv = g_environ_unsetenv (envv, "LISTEN_PID"); -- envv = g_environ_unsetenv (envv, "MAINPID"); -- envv = g_environ_unsetenv (envv, "MANAGERPID"); -- envv = g_environ_unsetenv (envv, "NOTIFY_SOCKET"); -- envv = g_environ_unsetenv (envv, "NOTIFY_SOCKET"); -- envv = g_environ_unsetenv (envv, "PIDFILE"); -- envv = g_environ_unsetenv (envv, "PWD"); -- envv = g_environ_unsetenv (envv, "REMOTE_ADDR"); -- envv = g_environ_unsetenv (envv, "REMOTE_PORT"); -- envv = g_environ_unsetenv (envv, "SERVICE_RESULT"); -- envv = g_environ_unsetenv (envv, "TERM"); -- envv = g_environ_unsetenv (envv, "VTE_VERSION"); -- envv = g_environ_unsetenv (envv, "WATCHDOG_PID"); -- envv = g_environ_unsetenv (envv, "WATCHDOG_USEC"); -- envv = g_environ_unsetenv (envv, "WINDOWID"); -- -- envv = g_environ_unsetenv (envv, TERMINAL_ENV_SERVICE_NAME); -- envv = g_environ_unsetenv (envv, TERMINAL_ENV_SCREEN); - - g_variant_builder_add (builder, "{sv}", - "environ", -diff --git a/src/terminal-screen.c b/src/terminal-screen.c -index 570d4151..1e95d41b 100644 ---- a/src/terminal-screen.c -+++ b/src/terminal-screen.c -@@ -960,10 +960,8 @@ terminal_screen_exec (TerminalScreen *screen, - return FALSE; - } - -- if (!preserve_cwd) { -+ if (!preserve_cwd) - cwd = g_get_home_dir (); -- envv = g_environ_unsetenv (envv, "PWD"); -- } - - data->fd_list = fd_list ? g_object_ref(fd_list) : NULL; - -@@ -1453,9 +1451,33 @@ terminal_screen_get_child_environment (TerminalScreen *screen, - g_hash_table_replace (env_table, g_strdup (env[i]), NULL); - } - -+ g_hash_table_remove (env_table, "COLORTERM"); - g_hash_table_remove (env_table, "COLUMNS"); -- g_hash_table_remove (env_table, "LINES"); -+ g_hash_table_remove (env_table, "DESKTOP_STARTUP_ID"); -+ g_hash_table_remove (env_table, "EXIT_CODE"); -+ g_hash_table_remove (env_table, "EXIT_STATUS"); -+ g_hash_table_remove (env_table, "GIO_LAUNCHED_DESKTOP_FILE"); -+ g_hash_table_remove (env_table, "GIO_LAUNCHED_DESKTOP_FILE_PID"); - g_hash_table_remove (env_table, "GNOME_DESKTOP_ICON"); -+ g_hash_table_remove (env_table, "INVOCATION_ID"); -+ g_hash_table_remove (env_table, "JOURNAL_STREAM"); -+ g_hash_table_remove (env_table, "LINES"); -+ g_hash_table_remove (env_table, "LISTEN_FDNAMES"); -+ g_hash_table_remove (env_table, "LISTEN_FDS"); -+ g_hash_table_remove (env_table, "LISTEN_PID"); -+ g_hash_table_remove (env_table, "MAINPID"); -+ g_hash_table_remove (env_table, "MANAGERPID"); -+ g_hash_table_remove (env_table, "NOTIFY_SOCKET"); -+ g_hash_table_remove (env_table, "NOTIFY_SOCKET"); -+ g_hash_table_remove (env_table, "PIDFILE"); -+ g_hash_table_remove (env_table, "PWD"); -+ g_hash_table_remove (env_table, "REMOTE_ADDR"); -+ g_hash_table_remove (env_table, "REMOTE_PORT"); -+ g_hash_table_remove (env_table, "SERVICE_RESULT"); -+ g_hash_table_remove (env_table, "TERM"); -+ g_hash_table_remove (env_table, "VTE_VERSION"); -+ g_hash_table_remove (env_table, "WATCHDOG_PID"); -+ g_hash_table_remove (env_table, "WATCHDOG_USEC"); - - /* WINDOWID does not work correctly ever since we don't use a native - * GdkWindow anymore, and it also becomes incorrect if the screen is Deleted: 0003-screen-Ignore-some-more-environment-variables.patch =================================================================== --- 0003-screen-Ignore-some-more-environment-variables.patch 2021-03-24 20:32:25 UTC (rev 410867) +++ 0003-screen-Ignore-some-more-environment-variables.patch 2021-03-24 20:32:37 UTC (rev 410868) @@ -1,26 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <jan.steff...@gmail.com> -Date: Tue, 27 Oct 2020 20:16:39 +0000 -Subject: [PATCH] screen: Ignore some more environment variables - -- `GJS_DEBUG_OUTPUT` and `GJS_DEBUG_TOPICS` are set by GNOME Shell. -- `G_ENABLE_DIAGNOSTIC` is set by GNOME Terminal itself. ---- - src/terminal-screen.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/terminal-screen.c b/src/terminal-screen.c -index 1e95d41b..137faaa1 100644 ---- a/src/terminal-screen.c -+++ b/src/terminal-screen.c -@@ -1458,7 +1458,10 @@ terminal_screen_get_child_environment (TerminalScreen *screen, - g_hash_table_remove (env_table, "EXIT_STATUS"); - g_hash_table_remove (env_table, "GIO_LAUNCHED_DESKTOP_FILE"); - g_hash_table_remove (env_table, "GIO_LAUNCHED_DESKTOP_FILE_PID"); -+ g_hash_table_remove (env_table, "GJS_DEBUG_OUTPUT"); -+ g_hash_table_remove (env_table, "GJS_DEBUG_TOPICS"); - g_hash_table_remove (env_table, "GNOME_DESKTOP_ICON"); -+ g_hash_table_remove (env_table, "G_ENABLE_DIAGNOSTIC"); - g_hash_table_remove (env_table, "INVOCATION_ID"); - g_hash_table_remove (env_table, "JOURNAL_STREAM"); - g_hash_table_remove (env_table, "LINES"); Deleted: PKGBUILD =================================================================== --- PKGBUILD 2021-03-24 20:32:25 UTC (rev 410867) +++ PKGBUILD 2021-03-24 20:32:37 UTC (rev 410868) @@ -1,58 +0,0 @@ -# Maintainer: Jan Alexander Steffens (heftig) <hef...@archlinux.org> -# Contributor: Jan de Groot <j...@archlinux.org> - -pkgname=gnome-terminal -pkgver=3.38.3 -pkgrel=1 -pkgdesc="The GNOME Terminal Emulator" -url="https://wiki.gnome.org/Apps/Terminal" -arch=(x86_64) -license=(GPL) -depends=('vte3>=0.60.0' gsettings-desktop-schemas) -makedepends=(itstool docbook-xsl libnautilus-extension appstream-glib - gnome-shell vala yelp-tools git) -groups=(gnome) -_commit=3be01f5fa7991bcd28a1a9d4b4390de3d4c16cb8 # tags/3.38.3^0 -source=("git+https://gitlab.gnome.org/GNOME/gnome-terminal.git#commit=$_commit" - 0001-screen-Manually-handle-env-inheritance.patch - 0002-screen-Move-env-sanitization-from-client.patch - 0003-screen-Ignore-some-more-environment-variables.patch) -sha256sums=('SKIP' - 'c350db9831c3bbe5c28ab5f959076cbeacc1b2bac12ca37623db2bf7d9461ecf' - '4dc0260da875d22830440c3295aef2c73a1625eeeadf94747ac22920d0ddcdca' - 'abc5e7b30979a12dc6790d17efc47ec4a112fa6e3e3555ff16c0769b0178c599') - -pkgver() { - cd $pkgname - git describe --tags | sed 's/-/+/g' -} - -prepare() { - cd $pkgname - - # https://bugs.archlinux.org/task/68318 - # https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/303 - git apply -3 ../0001-screen-Manually-handle-env-inheritance.patch - git apply -3 ../0002-screen-Move-env-sanitization-from-client.patch - git apply -3 ../0003-screen-Ignore-some-more-environment-variables.patch - - NOCONFIGURE=1 ./autogen.sh -} - -build() { - cd $pkgname - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ - --libexecdir=/usr/lib --disable-static --with-nautilus-extension - sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool - make -} - -check() { - cd $pkgname - make check -} - -package() { - cd $pkgname - make DESTDIR="$pkgdir" install -} Copied: gnome-terminal/repos/extra-x86_64/PKGBUILD (from rev 410867, gnome-terminal/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2021-03-24 20:32:37 UTC (rev 410868) @@ -0,0 +1,44 @@ +# Maintainer: Jan Alexander Steffens (heftig) <hef...@archlinux.org> +# Contributor: Jan de Groot <j...@archlinux.org> + +pkgname=gnome-terminal +pkgver=3.40.0 +pkgrel=1 +pkgdesc="The GNOME Terminal Emulator" +url="https://wiki.gnome.org/Apps/Terminal" +arch=(x86_64) +license=(GPL) +depends=('vte3>=0.64.0' gsettings-desktop-schemas) +makedepends=(docbook-xsl libnautilus-extension gnome-shell yelp-tools git) +groups=(gnome) +_commit=43a88b38000e8bae189cfe039702bf2b23a7f299 # tags/3.40.0^0 +source=("git+https://gitlab.gnome.org/GNOME/gnome-terminal.git#commit=$_commit") +sha256sums=('SKIP') + +pkgver() { + cd $pkgname + git describe --tags | sed 's/-/+/g' +} + +prepare() { + cd $pkgname + NOCONFIGURE=1 ./autogen.sh +} + +build() { + cd $pkgname + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --libexecdir=/usr/lib --disable-static --with-nautilus-extension + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +check() { + cd $pkgname + make check +} + +package() { + cd $pkgname + make DESTDIR="$pkgdir" install +}