Please find blow a simple diff to update i3-gaps to the latest stable
version. This update needs a patch to replace wordexp with glob
otherwise it's straight-forward. Runs without notable issues with my
setup on amd64.

While here, I added me as maintainer.

OK?

Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/Makefile,v
retrieving revision 1.13
diff -u -p -u -p -r1.13 Makefile
--- Makefile    27 Feb 2021 13:55:47 -0000      1.13
+++ Makefile    11 Nov 2021 21:57:58 -0000
@@ -2,13 +2,14 @@
 
 COMMENT =      improved dynamic tiling window manager, fork with gaps
 
-V =            4.19.1
-REVISION =     1
+V =            4.20.1
 DISTNAME =     i3-gaps-${V}
 
 CATEGORIES =   x11
 
 HOMEPAGE =     https://i3wm.org/
+
+MAINTAINER =   Rafael Sadowski <[email protected]>
 
 # BSD
 PERMIT_PACKAGE =       Yes
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/distinfo,v
retrieving revision 1.7
diff -u -p -u -p -r1.7 distinfo
--- distinfo    13 Feb 2021 05:59:02 -0000      1.7
+++ distinfo    11 Nov 2021 21:57:58 -0000
@@ -1,2 +1,2 @@
-SHA256 (gaps-i3-4.19.1.tar.xz) = +yZ4Pc7zPZfwgBKbjQsrlXxIaxJBmIdE47lljx8FZG0=
-SIZE (gaps-i3-4.19.1.tar.xz) = 1280920
+SHA256 (gaps-i3-4.20.1.tar.xz) = /Y4ttm8dqCojtnFAQHj4/BAT67oarNQkXl0cLTMaOtg=
+SIZE (gaps-i3-4.20.1.tar.xz) = 1288400
Index: patches/patch-etc_config
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-etc_config,v
retrieving revision 1.4
diff -u -p -u -p -r1.4 patch-etc_config
--- patches/patch-etc_config    13 Feb 2021 05:59:02 -0000      1.4
+++ patches/patch-etc_config    11 Nov 2021 21:57:58 -0000
@@ -3,7 +3,7 @@ $OpenBSD: patch-etc_config,v 1.4 2021/02
 Index: etc/config
 --- etc/config.orig
 +++ etc/config
-@@ -22,18 +22,18 @@ font pango:monospace 8
+@@ -26,18 +26,18 @@ exec --no-startup-id dex --autostart --environment i3
  
  # xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
  # screen before suspend. Use loginctl lock-session to lock your screen.
@@ -29,7 +29,7 @@ Index: etc/config
  
  # use these keys for focus, movement, and resize directions when reaching for
  # the arrows is not convenient
-@@ -46,13 +46,13 @@ set $right semicolon
+@@ -50,13 +50,13 @@ set $right semicolon
  floating_modifier Mod1
  
  # start a terminal
Index: patches/patch-etc_config_keycodes
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-etc_config_keycodes,v
retrieving revision 1.4
diff -u -p -u -p -r1.4 patch-etc_config_keycodes
--- patches/patch-etc_config_keycodes   13 Feb 2021 05:59:02 -0000      1.4
+++ patches/patch-etc_config_keycodes   11 Nov 2021 21:57:58 -0000
@@ -6,7 +6,7 @@ different between Linux and OpenBSD.
 Index: etc/config.keycodes
 --- etc/config.keycodes.orig
 +++ etc/config.keycodes
-@@ -23,30 +23,30 @@ font pango:monospace 8
+@@ -27,30 +27,30 @@ exec --no-startup-id dex --autostart --environment i3
  
  # xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
  # screen before suspend. Use loginctl lock-session to lock your screen.
@@ -46,7 +46,7 @@ Index: etc/config.keycodes
  # A more modern dmenu replacement is rofi:
  # bindcode $mod+40 exec "rofi -modi drun,run -show drun"
  # There also is i3-dmenu-desktop which only displays applications shipping a
-@@ -60,10 +60,10 @@ bindcode $mod+46 focus up
+@@ -64,10 +64,10 @@ bindcode $mod+46 focus up
  bindcode $mod+47 focus right
  
  # alternatively, you can use the cursor keys:
@@ -61,7 +61,7 @@ Index: etc/config.keycodes
  
  # move focused window
  bindcode $mod+Shift+44 move left
-@@ -72,10 +72,10 @@ bindcode $mod+Shift+46 move up
+@@ -76,10 +76,10 @@ bindcode $mod+Shift+46 move up
  bindcode $mod+Shift+47 move right
  
  # alternatively, you can use the cursor keys:
@@ -76,7 +76,7 @@ Index: etc/config.keycodes
  
  # split in horizontal orientation
  bindcode $mod+43 split h
-@@ -161,10 +161,10 @@ mode "resize" {
+@@ -165,10 +165,10 @@ mode "resize" {
          bindcode 47 resize grow width 10 px or 10 ppt
  
          # same bindings, but for the arrow keys
Index: patches/patch-i3-dmenu-desktop
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-i3-dmenu-desktop,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-i3-dmenu-desktop
--- patches/patch-i3-dmenu-desktop      13 Feb 2021 05:59:02 -0000      1.3
+++ patches/patch-i3-dmenu-desktop      11 Nov 2021 21:57:58 -0000
@@ -12,7 +12,7 @@ Index: i3-dmenu-desktop
      !defined($xdg_data_dirs) ||
      $xdg_data_dirs eq '';
  
-@@ -224,12 +224,12 @@ for my $file (values %desktops) {
+@@ -226,12 +226,12 @@ for my $file (values %desktops) {
  #     'evince.desktop' => {
  #         'Exec' => 'evince %U',
  #         'Name' => 'Dokumentenbetrachter',
@@ -27,7 +27,7 @@ Index: i3-dmenu-desktop
  #       }
  #   };
  
-@@ -461,7 +461,7 @@ if (exists($app->{Terminal}) && $app->{Terminal}) {
+@@ -463,7 +463,7 @@ if (exists($app->{Terminal}) && $app->{Terminal}) {
      # we need to create a temporary script that contains the full command line
      # as the syntax for starting commands with arguments varies from terminal
      # emulator to terminal emulator.
@@ -36,7 +36,7 @@ Index: i3-dmenu-desktop
      my ($fh, $filename) = tempfile();
      binmode($fh, ':utf8');
      say $fh <<EOT;
-@@ -472,7 +472,7 @@ EOT
+@@ -474,7 +474,7 @@ EOT
      close($fh);
      chmod 0755, $filename;
  
@@ -45,7 +45,7 @@ Index: i3-dmenu-desktop
  } else {
      # i3 executes applications by passing the argument to i3’s “exec” command
      # as-is to $SHELL -c. The i3 parser supports quoted strings: When a string
-@@ -513,7 +513,7 @@ notifications.
+@@ -515,7 +515,7 @@ notifications.
  
  The .desktop files are searched in $XDG_DATA_HOME/applications (by default
  $HOME/.local/share/applications) and in the "applications" subdirectory of 
each
@@ -54,7 +54,7 @@ Index: i3-dmenu-desktop
  
  Files with the same name in $XDG_DATA_HOME/applications take precedence over
  files in $XDG_DATA_DIRS, so that you can overwrite parts of the system-wide
-@@ -527,7 +527,7 @@ file respectively) by appending it to the name of the 
+@@ -529,7 +529,7 @@ file respectively) by appending it to the name of the 
  want to launch "GNU Emacs 24" with the patch /tmp/foobar.txt, you would type
  "emacs", press TAB, type " /tmp/foobar.txt" and press ENTER.
  
Index: patches/patch-i3-nagbar_main_c
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-i3-nagbar_main_c,v
retrieving revision 1.4
diff -u -p -u -p -r1.4 patch-i3-nagbar_main_c
--- patches/patch-i3-nagbar_main_c      13 Feb 2021 05:59:02 -0000      1.4
+++ patches/patch-i3-nagbar_main_c      11 Nov 2021 21:57:58 -0000
@@ -12,7 +12,7 @@ Index: i3-nagbar/main.c
      } else {
          terminal_cmd = sstrdup(link_path);
      }
-@@ -459,7 +459,7 @@ int main(int argc, char *argv[]) {
+@@ -507,7 +507,7 @@ int main(int argc, char *argv[]) {
      font = load_font(pattern, true);
      set_font(&font);
  
Index: patches/patch-man_i3-nagbar_man
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-man_i3-nagbar_man,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-man_i3-nagbar_man
--- patches/patch-man_i3-nagbar_man     13 Feb 2021 05:59:02 -0000      1.3
+++ patches/patch-man_i3-nagbar_man     11 Nov 2021 21:57:58 -0000
@@ -3,7 +3,7 @@ $OpenBSD: patch-man_i3-nagbar_man,v 1.3 
 Index: man/i3-nagbar.man
 --- man/i3-nagbar.man.orig
 +++ man/i3-nagbar.man
-@@ -50,7 +50,7 @@ after modifying the configuration file.
+@@ -54,7 +54,7 @@ after modifying the configuration file.
  
  ------------------------------------------------
  i3-nagbar -m 'You have an error in your i3 config file!' \
Index: patches/patch-man_i3_man
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-man_i3_man,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-man_i3_man
--- patches/patch-man_i3_man    13 Feb 2021 05:59:02 -0000      1.3
+++ patches/patch-man_i3_man    11 Nov 2021 21:57:58 -0000
@@ -3,7 +3,7 @@ $OpenBSD: patch-man_i3_man,v 1.3 2021/02
 Index: man/i3.man
 --- man/i3.man.orig
 +++ man/i3.man
-@@ -172,8 +172,8 @@ When starting, i3 looks for configuration files in the
+@@ -175,8 +175,8 @@ When starting, i3 looks for configuration files in the
  
  1. ~/.config/i3/config (or $XDG_CONFIG_HOME/i3/config if set)
  2. ~/.i3/config
@@ -14,7 +14,7 @@ Index: man/i3.man
  
  You can specify a custom path using the -c option.
  
-@@ -197,13 +197,13 @@ font pango:DejaVu Sans Mono 8
+@@ -200,13 +200,13 @@ font pango:DejaVu Sans Mono 8
  floating_modifier Mod1
  
  # start a terminal
@@ -30,7 +30,7 @@ Index: man/i3.man
  
  # change focus
  bindsym Mod1+j focus left
-@@ -316,7 +316,7 @@ ulimit -c unlimited
+@@ -319,7 +319,7 @@ ulimit -c unlimited
  
  # Start i3 and log to ~/.i3/logfile
  echo "Starting at $(date)" >> ~/.i3/logfile
Index: patches/patch-meson_build
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-meson_build,v
retrieving revision 1.1
diff -u -p -u -p -r1.1 patch-meson_build
--- patches/patch-meson_build   13 Feb 2021 10:51:01 -0000      1.1
+++ patches/patch-meson_build   11 Nov 2021 21:57:58 -0000
@@ -3,7 +3,7 @@ $OpenBSD: patch-meson_build,v 1.1 2021/0
 Index: meson.build
 --- meson.build.orig
 +++ meson.build
-@@ -598,7 +598,7 @@ install_headers(
+@@ -607,7 +607,7 @@ install_headers(
  # because configure_file strips the backslash in e.g. \@display,
  # resulting in @display, breaking our Perl code:
  # https://github.com/mesonbuild/meson/issues/7165
Index: patches/patch-src_bindings_c
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-src_bindings_c,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-src_bindings_c
--- patches/patch-src_bindings_c        13 Feb 2021 05:59:02 -0000      1.3
+++ patches/patch-src_bindings_c        11 Nov 2021 21:57:58 -0000
@@ -3,7 +3,7 @@ $OpenBSD: patch-src_bindings_c,v 1.3 202
 Index: src/bindings.c
 --- src/bindings.c.orig
 +++ src/bindings.c
-@@ -835,7 +835,7 @@ CommandResult *run_binding(Binding *bind, Con *con) {
+@@ -851,7 +851,7 @@ CommandResult *run_binding(Binding *bind, Con *con) {
  
      if (result->parse_error) {
          char *pageraction;
Index: patches/patch-src_config_directives_c
===================================================================
RCS file: patches/patch-src_config_directives_c
diff -N patches/patch-src_config_directives_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_config_directives_c       11 Nov 2021 21:57:58 -0000
@@ -0,0 +1,44 @@
+$OpenBSD$
+
+Index: src/config_directives.c
+--- src/config_directives.c.orig
++++ src/config_directives.c
+@@ -9,7 +9,7 @@
+  */
+ #include "all.h"
+ 
+-#include <wordexp.h>
++#include <glob.h>
+ 
+ 
/*******************************************************************************
+  * Include functions.
+@@ -18,15 +18,15 @@
+ CFGFUN(include, const char *pattern) {
+     DLOG("include %s\n", pattern);
+ 
+-    wordexp_t p;
+-    const int ret = wordexp(pattern, &p, 0);
++    glob_t p;
++    const int ret = glob(pattern, GLOB_ERR, NULL, &p );
+     if (ret != 0) {
+-        ELOG("wordexp(%s): error %d\n", pattern, ret);
++        ELOG("glob(%s): error %d\n", pattern, ret);
+         result->has_errors = true;
+         return;
+     }
+-    char **w = p.we_wordv;
+-    for (size_t i = 0; i < p.we_wordc; i++) {
++    char **w = p.gl_pathv;
++    for (size_t i = 0; i < p.gl_pathc; i++) {
+         char resolved_path[PATH_MAX] = {'\0'};
+         if (realpath(w[i], resolved_path) == NULL) {
+             LOG("Skipping %s: %s\n", w[i], strerror(errno));
+@@ -86,7 +86,7 @@ CFGFUN(include, const char *pattern) {
+                 break;
+         }
+     }
+-    wordfree(&p);
++    globfree(&p);
+ }
+ 
+ 
/*******************************************************************************
Index: patches/patch-src_config_parser_c
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-src_config_parser_c,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-src_config_parser_c
--- patches/patch-src_config_parser_c   13 Feb 2021 05:59:02 -0000      1.3
+++ patches/patch-src_config_parser_c   11 Nov 2021 21:57:58 -0000
@@ -3,7 +3,7 @@ $OpenBSD: patch-src_config_parser_c,v 1.
 Index: src/config_parser.c
 --- src/config_parser.c.orig
 +++ src/config_parser.c
-@@ -792,8 +792,8 @@ static char *migrate_config(char *input, off_t size) {
+@@ -752,8 +752,8 @@ static char *migrate_config(char *input, off_t size) {
   */
  void start_config_error_nagbar(const char *configpath, bool has_errors) {
      char *editaction, *pageraction;
Index: patches/patch-src_main_c
===================================================================
RCS file: /cvs/ports/x11/i3-gaps/patches/patch-src_main_c,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 patch-src_main_c
--- patches/patch-src_main_c    13 Feb 2021 05:59:02 -0000      1.3
+++ patches/patch-src_main_c    11 Nov 2021 21:57:58 -0000
@@ -3,8 +3,8 @@ $OpenBSD: patch-src_main_c,v 1.3 2021/02
 Index: src/main.c
 --- src/main.c.orig
 +++ src/main.c
-@@ -970,7 +970,7 @@ int main(int argc, char *argv[]) {
-         xcb_free_pixmap(conn, pixmap);
+@@ -1125,7 +1125,7 @@ int main(int argc, char *argv[]) {
+         }
      }
  
 -#if defined(__OpenBSD__)

Reply via email to