Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rcm for openSUSE:Factory checked in 
at 2022-05-10 15:11:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rcm (Old)
 and      /work/SRC/openSUSE:Factory/.rcm.new.1538 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rcm"

Tue May 10 15:11:56 2022 rev:5 rq:975916 version:1.3.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/rcm/rcm.changes  2021-02-18 20:53:11.707483564 
+0100
+++ /work/SRC/openSUSE:Factory/.rcm.new.1538/rcm.changes        2022-05-10 
15:12:05.683582468 +0200
@@ -1,0 +2,13 @@
+Mon May  9 16:48:50 UTC 2022 - Andrei Dziahel <[email protected]>
+
+- Update to version 1.3.5
+  * BUGFIX: *:*~ exclude paterns work again (Alexander Goldstein)
+  * BUGFIX: messages for -C being a copy so can't update (Mat M).
+  * BUGFIX: expect at least one existing dotfiles directory (Mat M).
+  * BUGFIX: fix program name in rcdn -V (Ivan Tkachenko)
+  * Feature: mkrc hooks via -k/-K (Patrick Brisbin)
+  * Feature: All symlinks in input are rejected (Mat M).
+  * Package and maintenance improvements (Alexander Goldstein, Eric Collins, 
+    Mat M, Darcy Parker).
+
+-------------------------------------------------------------------

Old:
----
  rcm-1.3.4.tar.gz

New:
----
  rcm-1.3.5.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rcm.spec ++++++
--- /var/tmp/diff_new_pack.rDk8fZ/_old  2022-05-10 15:12:06.227583153 +0200
+++ /var/tmp/diff_new_pack.rDk8fZ/_new  2022-05-10 15:12:06.231583159 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rcm
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 # See also http://en.opensuse.org/openSUSE:Specfile_guidelines
 Name:           rcm
-Version:        1.3.4
+Version:        1.3.5
 Release:        0
 Summary:        An rc file (dotfile) management tool
 License:        BSD-3-Clause

++++++ rcm-1.3.4.tar.gz -> rcm-1.3.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/Makefile.am new/rcm-1.3.5/Makefile.am
--- old/rcm-1.3.4/Makefile.am   2020-08-28 19:53:20.000000000 +0200
+++ new/rcm-1.3.5/Makefile.am   2022-03-04 22:23:02.000000000 +0100
@@ -24,9 +24,12 @@
        test/lsrc-globs.t \
        test/mkrc-alternate-dotfiles-dir.t \
        test/mkrc-copy-file.t \
+       test/mkrc-hooks.t \
        test/mkrc-host-file.t \
        test/mkrc-hostname.t \
+       test/mkrc-no-dotfiles-dir-found.t \
        test/mkrc-no-symlinks.t \
+       test/mkrc-one-dotfile-arg.t \
        test/mkrc-simple-output.t \
        test/mkrc-spaces.t \
        test/mkrc-symlink-dirs.t \
@@ -36,6 +39,7 @@
        test/rcrc-custom.t \
        test/rcrc-tilde.t \
        test/rcrc-hostname.t \
+       test/rcrc-lsrc-excludes.t \
        test/rcrc.t \
        test/rcup-link-files.t \
        test/rcup-hostname.t \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/Makefile.in new/rcm-1.3.5/Makefile.in
--- old/rcm-1.3.4/Makefile.in   2020-08-28 22:36:08.000000000 +0200
+++ new/rcm-1.3.5/Makefile.in   2022-04-22 22:01:37.000000000 +0200
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.16.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.3 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2018 Free Software Foundation, Inc.
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -314,6 +314,7 @@
   bases='$(TEST_LOGS)'; \
   bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
   bases=`echo $$bases`
+AM_TESTSUITE_SUMMARY_HEADER = ' for $(PACKAGE_STRING)'
 RECHECK_LOGS = $(TEST_LOGS)
 AM_RECURSIVE_TARGETS = check recheck
 TEST_SUITE_LOG = test-suite.log
@@ -354,6 +355,8 @@
 DIST_ARCHIVES = $(distdir).tar.gz
 GZIP_ENV = --best
 DIST_TARGETS = dist-gzip
+# Exists only to be overridden by the user if desired.
+AM_DISTCHECK_DVI_TARGET = dvi
 distuninstallcheck_listfiles = find . -type f -print
 am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
   | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
@@ -456,9 +459,12 @@
        test/lsrc-globs.t \
        test/mkrc-alternate-dotfiles-dir.t \
        test/mkrc-copy-file.t \
+       test/mkrc-hooks.t \
        test/mkrc-host-file.t \
        test/mkrc-hostname.t \
+       test/mkrc-no-dotfiles-dir-found.t \
        test/mkrc-no-symlinks.t \
+       test/mkrc-one-dotfile-arg.t \
        test/mkrc-simple-output.t \
        test/mkrc-spaces.t \
        test/mkrc-symlink-dirs.t \
@@ -468,6 +474,7 @@
        test/rcrc-custom.t \
        test/rcrc-tilde.t \
        test/rcrc-hostname.t \
+       test/rcrc-lsrc-excludes.t \
        test/rcrc.t \
        test/rcup-link-files.t \
        test/rcup-hostname.t \
@@ -838,7 +845,7 @@
          test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG);               \
        fi;                                                             \
        echo "$${col}$$br$${std}";                                      \
-       echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}";   \
+       echo "$${col}Testsuite summary"$(AM_TESTSUITE_SUMMARY_HEADER)"$${std}"; 
\
        echo "$${col}$$br$${std}";                                      \
        create_testsuite_report --maybe-color;                          \
        echo "$$col$$br$$std";                                          \
@@ -977,6 +984,13 @@
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test/mkrc-hooks.t.log: test/mkrc-hooks.t
+       @p='test/mkrc-hooks.t'; \
+       b='test/mkrc-hooks.t'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test/mkrc-host-file.t.log: test/mkrc-host-file.t
        @p='test/mkrc-host-file.t'; \
        b='test/mkrc-host-file.t'; \
@@ -991,6 +1005,13 @@
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test/mkrc-no-dotfiles-dir-found.t.log: test/mkrc-no-dotfiles-dir-found.t
+       @p='test/mkrc-no-dotfiles-dir-found.t'; \
+       b='test/mkrc-no-dotfiles-dir-found.t'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test/mkrc-no-symlinks.t.log: test/mkrc-no-symlinks.t
        @p='test/mkrc-no-symlinks.t'; \
        b='test/mkrc-no-symlinks.t'; \
@@ -998,6 +1019,13 @@
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test/mkrc-one-dotfile-arg.t.log: test/mkrc-one-dotfile-arg.t
+       @p='test/mkrc-one-dotfile-arg.t'; \
+       b='test/mkrc-one-dotfile-arg.t'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test/mkrc-simple-output.t.log: test/mkrc-simple-output.t
        @p='test/mkrc-simple-output.t'; \
        b='test/mkrc-simple-output.t'; \
@@ -1061,6 +1089,13 @@
        --log-file $$b.log --trs-file $$b.trs \
        $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
        "$$tst" $(AM_TESTS_FD_REDIRECT)
+test/rcrc-lsrc-excludes.t.log: test/rcrc-lsrc-excludes.t
+       @p='test/rcrc-lsrc-excludes.t'; \
+       b='test/rcrc-lsrc-excludes.t'; \
+       $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
+       --log-file $$b.log --trs-file $$b.trs \
+       $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) 
-- $(LOG_COMPILE) \
+       "$$tst" $(AM_TESTS_FD_REDIRECT)
 test/rcrc.t.log: test/rcrc.t
        @p='test/rcrc.t'; \
        b='test/rcrc.t'; \
@@ -1225,6 +1260,10 @@
        tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c 
>$(distdir).tar.xz
        $(am__post_remove_distdir)
 
+dist-zstd: distdir
+       tardir=$(distdir) && $(am__tar) | zstd -c 
$${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
+       $(am__post_remove_distdir)
+
 dist-tarZ: distdir
        @echo WARNING: "Support for distribution archives compressed with" \
                       "legacy program 'compress' is deprecated." >&2
@@ -1267,6 +1306,8 @@
          eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
        *.zip*) \
          unzip $(distdir).zip ;;\
+       *.tar.zst*) \
+         zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
        esac
        chmod -R a-w $(distdir)
        chmod u+w $(distdir)
@@ -1282,7 +1323,7 @@
            $(DISTCHECK_CONFIGURE_FLAGS) \
            --srcdir=../.. --prefix="$$dc_install_base" \
          && $(MAKE) $(AM_MAKEFLAGS) \
-         && $(MAKE) $(AM_MAKEFLAGS) dvi \
+         && $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
          && $(MAKE) $(AM_MAKEFLAGS) check \
          && $(MAKE) $(AM_MAKEFLAGS) install \
          && $(MAKE) $(AM_MAKEFLAGS) installcheck \
@@ -1453,9 +1494,9 @@
 .PHONY: all all-am am--refresh check check-TESTS check-am clean \
        clean-generic cscopelist-am ctags-am dist dist-all dist-bzip2 \
        dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \
-       distcheck distclean distclean-generic distcleancheck distdir \
-       distuninstallcheck dvi dvi-am html html-am info info-am \
-       install install-am install-data install-data-am \
+       dist-zstd distcheck distclean distclean-generic distcleancheck \
+       distdir distuninstallcheck dvi dvi-am html html-am info \
+       info-am install install-am install-data install-data-am \
        install-dist_binSCRIPTS install-dist_pkgdataDATA install-dvi \
        install-dvi-am install-exec install-exec-am install-html \
        install-html-am install-info install-info-am install-man \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/NEWS.md new/rcm-1.3.5/NEWS.md
--- old/rcm-1.3.4/NEWS.md       2020-08-28 22:36:10.000000000 +0200
+++ new/rcm-1.3.5/NEWS.md       2022-04-29 21:58:31.000000000 +0200
@@ -1,9 +1,22 @@
+rcm (1.3.5) unstable; urgency=low
+
+  * BUGFIX: *:*~ exclude paterns work again (Alexander Goldstein)
+  * BUGFIX: messages for -C being a copy so can't update (Mat M).
+  * BUGFIX: expect at least one existing dotfiles directory (Mat M).
+  * BUGFIX: fix program name in rcdn -V (Ivan Tkachenko)
+  * Feature: mkrc hooks via -k/-K (Patrick Brisbin)
+  * Feature: All symlinks in input are rejected (Mat M).
+  * Package and maintenance improvements (Alexander Goldstein, Eric Collins,
+      Mat M, Darcy Parker).
+  
+ -- Mike Burns <[email protected]>  Fri, 13 Jul 2018 14:12:00 -0500
+
 rcm (1.3.4) unstable; urgency=low
 
   * BUGFIX: Globs no longer expand permanently (Edd Salkield).
   * BUGFIX: Show $ for symlinked dirs in `lsrc -F` (Mathias Michel).
-  * Feature: All symlinks in input are rejected (Mat M).
-  * Packaging improvements (Stephen Groat, Martin Frost, Link Dupont).
+  * BUGFIX: all symlinks in mkrc input are rejected (Mat M).
+  * Packaging improvements (Stephen Groat, Martin Frost, Link Dupont)
   
  -- Mike Burns <[email protected]>  Fri, 13 Jul 2018 14:12:00 -0500
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/NEWS.md.in new/rcm-1.3.5/NEWS.md.in
--- old/rcm-1.3.4/NEWS.md.in    2020-08-28 22:32:05.000000000 +0200
+++ new/rcm-1.3.5/NEWS.md.in    2022-04-22 21:59:21.000000000 +0200
@@ -1,9 +1,22 @@
 rcm (@PACKAGE_VERSION@) unstable; urgency=low
 
+  * BUGFIX: *:*~ exclude paterns work again (Alexander Goldstein)
+  * BUGFIX: messages for -C being a copy so can't update (Mat M).
+  * BUGFIX: expect at least one existing dotfiles directory (Mat M).
+  * BUGFIX: fix program name in rcdn -V (Ivan Tkachenko)
+  * Feature: mkrc hooks via -k/-K (Patrick Brisbin)
+  * Feature: All symlinks in input are rejected (Mat M).
+  * Package and maintenance improvements (Alexander Goldstein, Eric Collins,
+      Mat M, Darcy Parker).
+  
+ -- Mike Burns <[email protected]>  Fri, 13 Jul 2018 14:12:00 -0500
+
+rcm (1.3.4) unstable; urgency=low
+
   * BUGFIX: Globs no longer expand permanently (Edd Salkield).
   * BUGFIX: Show $ for symlinked dirs in `lsrc -F` (Mathias Michel).
-  * Feature: All symlinks in input are rejected (Mat M).
-  * Packaging improvements (Stephen Groat, Martin Frost, Link Dupont).
+  * BUGFIX: all symlinks in mkrc input are rejected (Mat M).
+  * Packaging improvements (Stephen Groat, Martin Frost, Link Dupont)
   
  -- Mike Burns <[email protected]>  Fri, 13 Jul 2018 14:12:00 -0500
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/README.md new/rcm-1.3.5/README.md
--- old/rcm-1.3.4/README.md     2020-08-28 20:12:55.000000000 +0200
+++ new/rcm-1.3.5/README.md     2022-03-04 22:22:33.000000000 +0100
@@ -20,11 +20,11 @@
 
 Arch Linux:
 
-  https://aur.archlinux.org/packages/rcm/
+    https://aur.archlinux.org/packages/rcm/
 
 Debian (see further down for Ubuntu):
 
-    wget -qO - https://apt.thoughtbot.com/thoughtbot.gpg.key | sudo apt-key 
add -
+    sudo wget -q https://apt.thoughtbot.com/thoughtbot.gpg.key -O 
/etc/apt/trusted.gpg.d/thoughtbot.gpg
     echo "deb https://apt.thoughtbot.com/debian/ stable main" | sudo tee 
/etc/apt/sources.list.d/thoughtbot.list
     sudo apt-get update
     sudo apt-get install rcm
@@ -88,13 +88,14 @@
 
 This uses the standard GNU autotools, so it's the normal dance:
 
-    curl -LO https://thoughtbot.github.io/rcm/dist/rcm-1.3.3.tar.gz &&
+    curl -LO https://thoughtbot.github.io/rcm/dist/rcm-1.3.4.tar.gz &&
 
-    sha=$(sha256 rcm-1.3.3.tar.gz | cut -f1 -d' ') &&
-    [ "$sha" = 
"935524456f2291afa36ef815e68f1ab4a37a4ed6f0f144b7de7fb270733e13af" ] &&
+    # Use sha256sum with GNU coreutils, sha256 on BSD and macOS
+    sha=$(sha256sum rcm-1.3.4.tar.gz | cut -f1 -d' ') &&
+    [ "$sha" = 
"9b11ae37449cf4d234ec6d1348479bfed3253daba11f7e9e774059865b66c24a" ] &&
 
-    tar -xvf rcm-1.3.3.tar.gz &&
-    cd rcm-1.3.3 &&
+    tar -xvf rcm-1.3.4.tar.gz &&
+    cd rcm-1.3.4 &&
 
     ./configure &&
     make &&
@@ -133,7 +134,8 @@
 Copyright 2013 Mike Burns. BSD license.
 Copyright 2014-2015 thoughtbot. BSD license.
 
-## About thoughtbot
+About thoughtbot
+----------------
 
 
![thoughtbot](http://presskit.thoughtbot.com/images/thoughtbot-logo-for-readmes.svg)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/aclocal.m4 new/rcm-1.3.5/aclocal.m4
--- old/rcm-1.3.4/aclocal.m4    2020-08-28 22:36:06.000000000 +0200
+++ new/rcm-1.3.5/aclocal.m4    2022-04-22 22:01:34.000000000 +0200
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.3 -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 
'autoreconf'.])])
 
-# Copyright (C) 2002-2018 Free Software Foundation, Inc.
+# Copyright (C) 2002-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.1], [],
+m4_if([$1], [1.16.3], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,14 +51,14 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.3])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -307,7 +307,7 @@
 done
 echo "timestamp for $_am_arg" 
>`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -328,7 +328,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2018 Free Software Foundation, Inc.
+# Copyright (C) 2003-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -349,7 +349,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2018 Free Software Foundation, Inc.
+# Copyright (C) 1997-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -370,12 +370,7 @@
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
 if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\    *)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
+  MISSING="\${SHELL} '$am_aux_dir/missing'"
 fi
 # Use eval to expand $SHELL
 if eval "$MISSING --is-lightweight"; then
@@ -388,7 +383,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -419,7 +414,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2018 Free Software Foundation, Inc.
+# Copyright (C) 1996-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -500,7 +495,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2018 Free Software Foundation, Inc.
+# Copyright (C) 2009-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -560,7 +555,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2018 Free Software Foundation, Inc.
+# Copyright (C) 2001-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -588,7 +583,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -607,7 +602,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2018 Free Software Foundation, Inc.
+# Copyright (C) 2004-2020 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/bin/lsrc new/rcm-1.3.5/bin/lsrc
--- old/rcm-1.3.4/bin/lsrc      2020-08-28 22:36:10.000000000 +0200
+++ new/rcm-1.3.5/bin/lsrc      2022-04-29 21:58:31.000000000 +0200
@@ -166,7 +166,8 @@
   $DEBUG "dotfiles_dir_excludes $dotfiles_dir"
   $DEBUG "  with excludes: $excludes"
 
-  for exclude in "$excludes"; do
+  set -o noglob
+  for exclude in $excludes; do
     if echo "$exclude" | grep ':' >/dev/null; then
       dotfiles_dir_pat="$(echo "$exclude" | sed 's/:.*//')"
       file_glob="$(echo "$exclude" | sed 's/.*://')"
@@ -182,6 +183,7 @@
       echo "$exclude"
     fi
   done
+  set +o noglob
 }
 
 is_excluded() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/bin/lsrc.in new/rcm-1.3.5/bin/lsrc.in
--- old/rcm-1.3.4/bin/lsrc.in   2020-08-28 20:11:52.000000000 +0200
+++ new/rcm-1.3.5/bin/lsrc.in   2022-03-04 22:23:02.000000000 +0100
@@ -166,7 +166,8 @@
   $DEBUG "dotfiles_dir_excludes $dotfiles_dir"
   $DEBUG "  with excludes: $excludes"
 
-  for exclude in "$excludes"; do
+  set -o noglob
+  for exclude in $excludes; do
     if echo "$exclude" | grep ':' >/dev/null; then
       dotfiles_dir_pat="$(echo "$exclude" | sed 's/:.*//')"
       file_glob="$(echo "$exclude" | sed 's/.*://')"
@@ -182,6 +183,7 @@
       echo "$exclude"
     fi
   done
+  set +o noglob
 }
 
 is_excluded() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/bin/mkrc new/rcm-1.3.5/bin/mkrc
--- old/rcm-1.3.4/bin/mkrc      2020-08-28 22:36:10.000000000 +0200
+++ new/rcm-1.3.5/bin/mkrc      2022-04-29 21:58:31.000000000 +0200
@@ -26,7 +26,7 @@
   if [ -L "$file" ]; then
       $ERROR 1 "'$file' is a symlink. Cannot process file."
   elif is_nested "$file"; then
-    # Remove DEST_DIR in case $HOME is under a symlink
+    # Remove DEST_DIR in case one folder of $HOME is a symlink
     saved_ifs="$IFS"
     IFS=/
     set -- $(dirname "$file" | sed "s|$DEST_DIR/||")
@@ -42,10 +42,21 @@
   fi
 }
 
+only_one_dir() {
+  local dotfiles="$1"
+
+  if [ ! -z "$OPT_DOTFILES_DIR" ]; then
+    echo_stderr "Only one '-d' option is allowed in mkrc."
+    show_help 64
+  else
+    OPT_DOTFILES_DIR="$dotfiles"
+  fi
+}
+
 show_help() {
   local exit_code=${1:-0}
 
-  $PRINT "Usage: mkrc [-ChSsUuVvqo] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ..."
+  $PRINT "Usage: mkrc [-ChSsUuVvqokK] [-t TAG] [-d DIR] [-B HOSTNAME] FILES 
..."
   $PRINT "see mkrc(1) and rcm(7) for more details"
 
   exit $exit_code
@@ -55,10 +66,6 @@
   show_help 64
 fi
 
-for DOTFILES_DIR in $DOTFILES_DIRS $DEFAULT_DOTFILES_DIR; do
-  break
-done
-
 tag=
 hostname=
 verbosity=0
@@ -69,7 +76,7 @@
 undotted=50
 install_args=
 
-while getopts :ChSsUuVvqot:d:B: opt; do
+while getopts :ChSsUuVvqot:d:B:kK opt; do
   case "$opt" in
     C) always_copy=1 ;;
     h) show_help ;;
@@ -77,7 +84,7 @@
     v) verbosity=$(($verbosity + 1)) ;;
     q) verbosity=$(($verbosity - 1)) ;;
     o) in_host=1 ;;
-    d) DOTFILES_DIR="$OPTARG" ;;
+    d) only_one_dir "$OPTARG" ;;
     V) version=1 ;;
     S) force_symlink=1 ;;
     s) force_symlink=0 ;;
@@ -88,6 +95,12 @@
       hostname="$OPTARG"
       install_args=$(append_variable "$install_args" "-B $hostname")
       ;;
+    k)
+      install_args=$(append_variable "$install_args" "-k")
+      ;;
+    K)
+      install_args=$(append_variable "$install_args" "-K")
+      ;;
     ?) show_help 64 ;;
   esac
 done
@@ -110,6 +123,18 @@
   files="$(printf "$files\n$i")"
 done
 
+for DOTFILES_DIR in "$OPT_DOTFILES_DIR" $DOTFILES_DIRS 
"$DEFAULT_DOTFILES_DIR"; do
+  if [ -d "$DOTFILES_DIR" ]; then
+    break
+  else
+    unset DOTFILES_DIR
+  fi
+done
+
+if [ -z "$DOTFILES_DIR" ]; then
+  $ERROR 1 "No dotfiles directories found in 
$OPT_DOTFILES_DIR${OPT_DOTFILES_DIR:+ }$DEFAULT_DOTFILES_DIR"
+fi
+
 if [ $force_symlink -eq 1 ]; then
   for file in $files; do
     dedotted="$(de_dot "$file")"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/bin/mkrc.in new/rcm-1.3.5/bin/mkrc.in
--- old/rcm-1.3.4/bin/mkrc.in   2020-08-28 19:53:20.000000000 +0200
+++ new/rcm-1.3.5/bin/mkrc.in   2022-03-04 20:41:05.000000000 +0100
@@ -26,7 +26,7 @@
   if [ -L "$file" ]; then
       $ERROR 1 "'$file' is a symlink. Cannot process file."
   elif is_nested "$file"; then
-    # Remove DEST_DIR in case $HOME is under a symlink
+    # Remove DEST_DIR in case one folder of $HOME is a symlink
     saved_ifs="$IFS"
     IFS=/
     set -- $(dirname "$file" | sed "s|$DEST_DIR/||")
@@ -42,10 +42,21 @@
   fi
 }
 
+only_one_dir() {
+  local dotfiles="$1"
+
+  if [ ! -z "$OPT_DOTFILES_DIR" ]; then
+    echo_stderr "Only one '-d' option is allowed in mkrc."
+    show_help 64
+  else
+    OPT_DOTFILES_DIR="$dotfiles"
+  fi
+}
+
 show_help() {
   local exit_code=${1:-0}
 
-  $PRINT "Usage: mkrc [-ChSsUuVvqo] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ..."
+  $PRINT "Usage: mkrc [-ChSsUuVvqokK] [-t TAG] [-d DIR] [-B HOSTNAME] FILES 
..."
   $PRINT "see mkrc(1) and rcm(7) for more details"
 
   exit $exit_code
@@ -55,10 +66,6 @@
   show_help 64
 fi
 
-for DOTFILES_DIR in $DOTFILES_DIRS $DEFAULT_DOTFILES_DIR; do
-  break
-done
-
 tag=
 hostname=
 verbosity=0
@@ -69,7 +76,7 @@
 undotted=50
 install_args=
 
-while getopts :ChSsUuVvqot:d:B: opt; do
+while getopts :ChSsUuVvqot:d:B:kK opt; do
   case "$opt" in
     C) always_copy=1 ;;
     h) show_help ;;
@@ -77,7 +84,7 @@
     v) verbosity=$(($verbosity + 1)) ;;
     q) verbosity=$(($verbosity - 1)) ;;
     o) in_host=1 ;;
-    d) DOTFILES_DIR="$OPTARG" ;;
+    d) only_one_dir "$OPTARG" ;;
     V) version=1 ;;
     S) force_symlink=1 ;;
     s) force_symlink=0 ;;
@@ -88,6 +95,12 @@
       hostname="$OPTARG"
       install_args=$(append_variable "$install_args" "-B $hostname")
       ;;
+    k)
+      install_args=$(append_variable "$install_args" "-k")
+      ;;
+    K)
+      install_args=$(append_variable "$install_args" "-K")
+      ;;
     ?) show_help 64 ;;
   esac
 done
@@ -110,6 +123,18 @@
   files="$(printf "$files\n$i")"
 done
 
+for DOTFILES_DIR in "$OPT_DOTFILES_DIR" $DOTFILES_DIRS 
"$DEFAULT_DOTFILES_DIR"; do
+  if [ -d "$DOTFILES_DIR" ]; then
+    break
+  else
+    unset DOTFILES_DIR
+  fi
+done
+
+if [ -z "$DOTFILES_DIR" ]; then
+  $ERROR 1 "No dotfiles directories found in 
$OPT_DOTFILES_DIR${OPT_DOTFILES_DIR:+ }$DEFAULT_DOTFILES_DIR"
+fi
+
 if [ $force_symlink -eq 1 ]; then
   for file in $files; do
     dedotted="$(de_dot "$file")"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/bin/rcdn new/rcm-1.3.5/bin/rcdn
--- old/rcm-1.3.4/bin/rcdn      2020-08-28 22:36:10.000000000 +0200
+++ new/rcm-1.3.5/bin/rcdn      2022-04-29 21:58:31.000000000 +0200
@@ -66,7 +66,7 @@
   done
   shift $(($OPTIND-1))
 
-  handle_common_flags rcup $version $verbosity
+  handle_common_flags rcdn $version $verbosity
   hostname="$(determine_hostname "$hostname")"
 
   tags="${arg_tags:-$TAGS}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/bin/rcdn.in new/rcm-1.3.5/bin/rcdn.in
--- old/rcm-1.3.4/bin/rcdn.in   2020-08-28 19:53:20.000000000 +0200
+++ new/rcm-1.3.5/bin/rcdn.in   2022-03-04 20:41:05.000000000 +0100
@@ -66,7 +66,7 @@
   done
   shift $(($OPTIND-1))
 
-  handle_common_flags rcup $version $verbosity
+  handle_common_flags rcdn $version $verbosity
   hostname="$(determine_hostname "$hostname")"
 
   tags="${arg_tags:-$TAGS}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/configure new/rcm-1.3.5/configure
--- old/rcm-1.3.4/configure     2020-08-28 22:36:06.000000000 +0200
+++ new/rcm-1.3.5/configure     2022-04-22 22:01:35.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for rcm 1.3.4.
+# Generated by GNU Autoconf 2.69 for rcm 1.3.5.
 #
 # Report bugs to <[email protected]>.
 #
@@ -579,8 +579,8 @@
 # Identity of this package.
 PACKAGE_NAME='rcm'
 PACKAGE_TARNAME='rcm'
-PACKAGE_VERSION='1.3.4'
-PACKAGE_STRING='rcm 1.3.4'
+PACKAGE_VERSION='1.3.5'
+PACKAGE_STRING='rcm 1.3.5'
 PACKAGE_BUGREPORT='[email protected]'
 PACKAGE_URL=''
 
@@ -1211,7 +1211,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures rcm 1.3.4 to adapt to many kinds of systems.
+\`configure' configures rcm 1.3.5 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1278,7 +1278,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of rcm 1.3.4:";;
+     short | recursive ) echo "Configuration of rcm 1.3.5:";;
    esac
   cat <<\_ACEOF
 
@@ -1352,7 +1352,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-rcm configure 1.3.4
+rcm configure 1.3.5
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1369,7 +1369,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by rcm $as_me 1.3.4, which was
+It was created by rcm $as_me 1.3.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -1922,12 +1922,7 @@
 am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
 if test x"${MISSING+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\    *)
-    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
-  *)
-    MISSING="\${SHELL} $am_aux_dir/missing" ;;
-  esac
+  MISSING="\${SHELL} '$am_aux_dir/missing'"
 fi
 # Use eval to expand $SHELL
 if eval "$MISSING --is-lightweight"; then
@@ -2232,7 +2227,7 @@
 
 # Define the identity of the package.
  PACKAGE='rcm'
- VERSION='1.3.4'
+ VERSION='1.3.5'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2932,7 +2927,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by rcm $as_me 1.3.4, which was
+This file was extended by rcm $as_me 1.3.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -2985,7 +2980,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-rcm config.status 1.3.4
+rcm config.status 1.3.5
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/configure.ac new/rcm-1.3.5/configure.ac
--- old/rcm-1.3.4/configure.ac  2020-08-28 22:35:53.000000000 +0200
+++ new/rcm-1.3.5/configure.ac  2022-04-22 21:50:05.000000000 +0200
@@ -1,5 +1,5 @@
 AC_PREREQ([2.69])
-AC_INIT(rcm, 1.3.4, [email protected])
+AC_INIT([rcm],[1.3.5],[[email protected]])
 AM_INIT_AUTOMAKE([subdir-objects])
 
 # /bin/sh on Solaris is not POSIX, so try to find another one.
@@ -11,4 +11,5 @@
 esac
 AC_SUBST([SHELL])
 
-AC_OUTPUT(Makefile share/rcm.sh arch/git-PKGBUILD NEWS.md bin/lsrc bin/mkrc 
bin/rcdn bin/rcup maint/release)
+AC_CONFIG_FILES([Makefile share/rcm.sh arch/git-PKGBUILD NEWS.md bin/lsrc 
bin/mkrc bin/rcdn bin/rcup maint/release])
+AC_OUTPUT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/maint/release.in 
new/rcm-1.3.5/maint/release.in
--- old/rcm-1.3.4/maint/release.in      2020-08-28 22:34:00.000000000 +0200
+++ new/rcm-1.3.5/maint/release.in      2022-04-22 20:15:39.000000000 +0200
@@ -9,15 +9,6 @@
 abs_top_builddir='@abs_top_builddir@'
 dist_man_MANS='lsrc.1 mkrc.1 rcdn.1 rcup.1 rcrc.5 rcm.7'
 
-edit_package() {
-  sed \
-    -e "s|@PACKAGE[@]|$PACKAGE|g" \
-    -e "s|@PACKAGE_VERSION[@]|$PACKAGE_VERSION|g" \
-    -e "s|@DIST_ARCHIVES[@]|$DIST_ARCHIVES|g" \
-    -e "s|@DIST_SHA[@]|$DIST_SHA|g" \
-    "$1"
-}
-
 # Tarball
 release_build_tarball() {
   ([ -d gh-pages ] || git clone --branch gh-pages . gh-pages) && \
@@ -59,6 +50,19 @@
   rm -rf $DIST_ARCHIVES
 }
 
+generate_dist_sha() {
+  export DIST_SHA=$(openssl sha256 $srcdir/$DIST_ARCHIVES | cut -d' ' -f2)
+}
+
+edit_package() {
+  sed \
+    -e "s|@PACKAGE[@]|$PACKAGE|g" \
+    -e "s|@PACKAGE_VERSION[@]|$PACKAGE_VERSION|g" \
+    -e "s|@DIST_ARCHIVES[@]|$DIST_ARCHIVES|g" \
+    -e "s|@DIST_SHA[@]|$DIST_SHA|g" \
+    "$1"
+}
+
 # Deb
 release_build_deb() {
   mkdir deb-build && \
@@ -108,10 +112,6 @@
   :
 }
 
-generate_dist_sha() {
-  export DIST_SHA=$(openssl sha256 $srcdir/$DIST_ARCHIVES | cut -d' ' -f2)
-}
-
 # manpages as HTML
 release_build_man_html() {
   ([ -d gh-pages ] || git clone --branch gh-pages . gh-pages) && \
@@ -140,6 +140,16 @@
   exit 64
 fi
 
+if ! command -v git >/dev/null; then
+  echo >&2 "release: missing dependency: git"
+  exit 1
+fi
+
+if ! command -v mandoc >/dev/null; then
+  echo >&2 "release: missing dependency: git"
+  exit 1
+fi
+
 verb="$1"
 noun="$2"
 DIST_ARCHIVES="$3"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/man/mkrc.1 new/rcm-1.3.5/man/mkrc.1
--- old/rcm-1.3.4/man/mkrc.1    2020-01-17 23:16:41.000000000 +0100
+++ new/rcm-1.3.5/man/mkrc.1    2022-03-04 20:41:05.000000000 +0100
@@ -1,20 +1,25 @@
-.Dd July 28, 2013
+.Dd April 13, 2020
 .Dt MKRC 1
 .Os
 .Sh NAME
 .Nm mkrc
-.Nd bless files into a dotfile managed by rcm
+.Nd bless files into a dotfiles managed by rcm
 .Sh SYNOPSIS
 .Nm mkrc
-.Op Fl ChoqSsVvUu
+.Op Fl ChoqSsVvUukK
 .Op Fl t Ar tag
 .Op Fl d Ar dir
 .Op Fl B Ar hostname
 .Ar files ...
 .Sh DESCRIPTION
-This program adds files to your dotfiles directory then installs it
+This program adds files to your dotfiles directory then update them
 back into your home directory. It can install files under a tag or
-different source directory.
+install them in a different source directory. Remember to first create
+standard rc files, then use
+.Nm
+on them.
+.
+.Pp
 .
 It supports these options:
 .
@@ -24,24 +29,25 @@
 .Fl o .
 .It Fl C
 copy instead of symlinking when installing the rc file back into your
-home directory
+home directory. This will prevent future updates in the dotfiles directory for
+added element, and its contents if it is a directory.
 .It Fl d Ar DIR
-install dotfiles under the specified directory. This can be specified
-multiple times.
+install dotfiles under the specified directory. Use only once to override
+DOTFILES_DIRS value from RCRC and the absolute default value.
 .It Fl h
 show usage instructions.
 .It Fl o
-install dotfiles into the host-specific directory
+install dotfiles into the host-specific directory.
 .It Fl q
-decrease verbosity
+decrease verbosity.
 .It Fl S
 treat the specified rc files as files to be symlinked, even if they are
-directories
+directories.
 .It Fl s
 if the rc file is a file, symlink it; otherwise, make a directory
 structure as described in
-.Xr rcup 1
-in the section
+.Xr rcup 1 
+in the section 
 .Sx ALGORITHM .
 This is the default.
 .It Fl t Ar TAG
@@ -56,6 +62,18 @@
 increase verbosity. This can be repeated for extra verbosity.
 .It Fl V
 show the version number.
+.It Fl k
+pass -k to rcup when installing the made rc file. This option enables pre- and
+post-hooks, which is the default, making this effectively a no-op. See the
+.Sx ALGORITHM
+section in
+.Xr rcup 1 .
+.It Fl K
+pass -K to rcup when installing the made rc file. This option prevents pre- and
+post-up hooks from running as part of creating the rc file. See the
+.Sx ALGORITHM
+section in
+.Xr rcup 1 .
 .El
 .Sh ENVIRONMENT
 .Bl -tag -width ".Ev RCRC"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/man/rcm.7 new/rcm-1.3.5/man/rcm.7
--- old/rcm-1.3.4/man/rcm.7     2020-08-28 22:36:08.000000000 +0200
+++ new/rcm-1.3.5/man/rcm.7     2022-04-22 22:01:37.000000000 +0200
@@ -277,10 +277,9 @@
 so on.
 .
 .Sh RATIONALE
-The rcm suite was built as an abstraction over the shell, Ruby, Python,
-and make scripts people were writing and sharing. It is intended to run
-on any unix system and support the range from simple to complex dotfile
-directories.
+The rcm suite was built as an abstraction over the shell, Ruby, Python, and
+make scripts people were writing and sharing. It is intended to run on any unix
+system and support the range from simple to complex dotfile directories.
 .Pp
 As such, this suite is useful as a common base. Through this we can
 share tools and develop this further as a first-class entity. It is also
@@ -314,6 +313,7 @@
 .Sh CONTRIBUTORS
 .An -split
 .An "Alan Yee" Aq Mt [email protected]
+.An "Alexander Goldstein" Aq Mt [email protected]
 .An "Andrei Dziahel" Aq Mt [email protected]
 .An "Anton Ilin" Aq Mt [email protected]
 .An "Ben Stephens" Aq Mt [email protected]
@@ -327,6 +327,7 @@
 .An "Christopher Koch" Aq Mt [email protected]
 .An "Dan Croak" Aq Mt [email protected]
 .An "Daniel Watson" Aq Mt [email protected]
+.An "Darcy Parker" Aq Mt [email protected]
 .An "David Alexander" Aq Mt [email protected]
 .An "Devraj Mehta" Aq Mt [email protected]
 .An "Edd Salkield" Aq Mt [email protected]
@@ -361,6 +362,7 @@
 .An "Vlad GURDIGA" Aq Mt [email protected]
 .An "Yota Toyama" Aq Mt [email protected]
 .An "Zach Latta" Aq Mt [email protected]
+.An "ivan tkachenko" Aq Mt [email protected]
 .An "kajisha" Aq Mt [email protected]
 .An "maxice8" Aq Mt [email protected]
 .An "subpop" Aq Mt [email protected]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/man/rcup.1 new/rcm-1.3.5/man/rcup.1
--- old/rcm-1.3.4/man/rcup.1    2020-01-17 23:16:41.000000000 +0100
+++ new/rcm-1.3.5/man/rcup.1    2022-03-04 20:41:05.000000000 +0100
@@ -34,9 +34,9 @@
 .It Fl B Ar HOSTNAME
 treat
 .Pa host-HOSTNAME
-as the host-specific directory instead of computing it
+as the host-specific directory instead of computing it.
 .It Fl C
-copy the files instead of symlinking them
+copy the files instead of symlinking them.
 .It Fl d Ar DIR
 install dotfiles from the
 .Ar DIR .
@@ -44,7 +44,7 @@
 .It Fl f
 if the rc file already exists in your home directory but does not match
 the file in your dotfiles directory, remove the rc file then create the
-symlink
+symlink.
 .It Fl g
 print to
 .Li stdout
@@ -70,9 +70,9 @@
 .It Fl i
 if the rc file already exists in your home directory but does not match
 the file in your dotfiles directory, prompt for how to handle it. This
-is the default
+is the default.
 .It Fl K
-skip pre- and post-hooks
+skip pre- and post-hooks.
 .It Fl k
 run pre- and post-hooks (see
 .Sx DIRECTORY LAYOUT
@@ -80,8 +80,8 @@
 .It Fl S Ar EXCL_PAT
 any rc file that matches
 .Ar EXCL_PAT
-is installed as if it were a file (using a symlink) instead of as if it
-were a directory (by making a directory). This option can be repeated.
+is installed using a symlink even if it is a directory. This option
+can be repeated.
 .It Fl s Ar EXCL_PAT
 any file that matches
 .Ar EXCL_PAT
@@ -92,7 +92,7 @@
 This option can be repeated.
 .It Fl t Ar TAG
 install dotfiles according to
-.Ar TAG
+.Ar TAG .
 .It Fl U Ar EXCL_PAT
 any rc file that matches
 .Ar EXCL_PAT
@@ -113,7 +113,7 @@
 .Xr lsrc 1
 for more information.
 .It Fl q
-decrease verbosity
+decrease verbosity.
 .It Fl V
 show the version number.
 .It Fl v
@@ -146,7 +146,8 @@
 .Va COPY_ALWAYS
 option in
 .Xr rcrc 5
-can be used to list files that must only be copied.
+can be used to list files that must only be copied. Copied files are not
+updated in your dotfiles directory.
 .Pp
 Three meta files are supported: host-specific files, tagged files,
 hooks.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/share/rcm.sh new/rcm-1.3.5/share/rcm.sh
--- old/rcm-1.3.4/share/rcm.sh  2020-08-28 22:36:10.000000000 +0200
+++ new/rcm-1.3.5/share/rcm.sh  2022-04-29 21:58:31.000000000 +0200
@@ -1,4 +1,4 @@
-VERSION="1.3.4"
+VERSION="1.3.5"
 
 #set -x
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/test/lsrc-excludes.t 
new/rcm-1.3.5/test/lsrc-excludes.t
--- old/rcm-1.3.4/test/lsrc-excludes.t  2020-01-17 23:16:41.000000000 +0100
+++ new/rcm-1.3.5/test/lsrc-excludes.t  2022-03-04 22:23:02.000000000 +0100
@@ -19,6 +19,12 @@
   /*/.excluded:/*/.dotfiles/excluded (glob)
   /*/.included:/*/.other-dotfiles/included (glob)
 
+Should accept directory:file syntax with wildcard directory
+
+  $ lsrc -d .dotfiles -d .other-dotfiles -x *:excluded
+  /*/.example:/*/.dotfiles/example (glob)
+  /*/.included:/*/.other-dotfiles/included (glob)
+
 Should handle excludes with globs
 
   $ mkdir -p fresh/hola/chao
@@ -33,3 +39,29 @@
 
   $ lsrc -d fresh -x 'hola/chao' -x s
   /*/.hola/tossala:/*/fresh/hola/tossala (glob)
+
+Should support wildcards in the excludes, including Emacs backup
+files, and wildcards in directory specifier.
+
+  $ rm -rf .dotfiles
+  $ ( mkdir .dotfiles && cd .dotfiles && touch included README.md included~ 
README.md~ )
+
+Should exclude multiple patterns including globs and plain names using -x 
argument
+
+  $ lsrc -x README.md -x "*~"
+  /*/.included:/*/.dotfiles/included (glob)
+
+And the with directory tagged globs using -x with sole exclude
+
+  $ lsrc -x "*:*~" | grep -v README.md
+  /*/.included:/*/.dotfiles/included (glob)
+
+And the with directory tagged globs using -x
+
+  $ lsrc -x README.md -x "*:*~"
+  /*/.included:/*/.dotfiles/included (glob)
+
+And sanity check that directory tagged this work with just one exclude
+
+  $ lsrc -x "*~" | grep -v README.md
+  /*/.included:/*/.dotfiles/included (glob)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/test/mkrc-hooks.t 
new/rcm-1.3.5/test/mkrc-hooks.t
--- old/rcm-1.3.4/test/mkrc-hooks.t     1970-01-01 01:00:00.000000000 +0100
+++ new/rcm-1.3.5/test/mkrc-hooks.t     2022-03-04 20:41:05.000000000 +0100
@@ -0,0 +1,41 @@
+  $ . "$TESTDIR/helper.sh"
+  > mkdir -p .dotfiles/hooks
+  > echo 'echo Pre' > .dotfiles/hooks/pre-up
+  > echo 'echo Post' > .dotfiles/hooks/post-up
+  > chmod +x .dotfiles/hooks/pre-up
+  > chmod +x .dotfiles/hooks/post-up
+  > touch .example
+  > touch .example-2
+  > touch .example-3
+
+Making an rc file runs pre- and post-up hooks
+
+  $ mkrc -v .example
+  Moving...
+  '*/.example' -> '*/.dotfiles/example' (glob)
+  Linking...
+  running pre-up hooks for */.dotfiles (glob)
+  Pre
+  '*/.dotfiles/example' -> '*/.example' (glob)
+  running post-up hooks for */.dotfiles (glob)
+  Post
+
+Avoids hooks by -K
+
+  $ mkrc -K -v .example-2
+  Moving...
+  '*/.example-2' -> '*/.dotfiles/example-2' (glob)
+  Linking...
+  '*/.dotfiles/example-2' -> '*/.example-2' (glob)
+
+Accepts -k for parity with rcup
+
+  $ mkrc -k -v .example-3
+  Moving...
+  '*/.example-3' -> '*/.dotfiles/example-3' (glob)
+  Linking...
+  running pre-up hooks for */.dotfiles (glob)
+  Pre
+  '*/.dotfiles/example-3' -> '*/.example-3' (glob)
+  running post-up hooks for */.dotfiles (glob)
+  Post
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/test/mkrc-no-dotfiles-dir-found.t 
new/rcm-1.3.5/test/mkrc-no-dotfiles-dir-found.t
--- old/rcm-1.3.4/test/mkrc-no-dotfiles-dir-found.t     1970-01-01 
01:00:00.000000000 +0100
+++ new/rcm-1.3.5/test/mkrc-no-dotfiles-dir-found.t     2022-03-04 
20:41:05.000000000 +0100
@@ -0,0 +1,23 @@
+  $ . "$TESTDIR/helper.sh"
+
+Use the first existing dotfiles location
+$HOME/.dotfiles is created at test time
+
+  $ touch .example
+
+  $ mkrc -d .missing-dotfiles .example  >/dev/null
+
+  $ assert_linked "$HOME/.example" "$HOME/.dotfiles/example"
+
+Exit when no location found
+
+  $ mv .dotfiles .dotfiles-error
+
+  $ touch .exampleno
+
+  $ mkrc -d .missing-dotfiles .exampleno  >/dev/null
+  No dotfiles directories found in .missing-dotfiles */.dotfiles (glob)
+  [1]
+
+  $ refute "should not be a symlink" -h $HOME/.examplenob
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/test/mkrc-one-dotfile-arg.t 
new/rcm-1.3.5/test/mkrc-one-dotfile-arg.t
--- old/rcm-1.3.4/test/mkrc-one-dotfile-arg.t   1970-01-01 01:00:00.000000000 
+0100
+++ new/rcm-1.3.5/test/mkrc-one-dotfile-arg.t   2022-03-04 22:22:33.000000000 
+0100
@@ -0,0 +1,28 @@
+  $ . "$TESTDIR/helper.sh"
+  > mv .dotfiles .other-dotfiles
+  > mkdir .another-dotfiles
+  > touch rcfile
+
+Trying to fool should result in no dir found error
+
+  $ mkrc -d ".other-dotfiles .another-dotfiles" rcfile
+  No dotfiles directories found in .other-dotfiles .another-dotfiles 
/*/.dotfiles (glob)
+  [1]
+
+Giving 2 dotfiles dir should result in an error and exit EX_USAGE
+
+  $ mkrc -d .dotfiles -d .other-dotfiles rcfile
+  Only one '-d' option is allowed in mkrc.
+  Usage: mkrc * (glob)
+  see mkrc(1) and rcm(7) for more details
+  [64]
+
+Giving one dotfiles dir should override default
+
+  $ mv .other-dotfiles .dotfiles
+  $ mkrc -v -d .another-dotfiles rcfile
+  Moving...
+  '/*/rcfile' -> '.another-dotfiles/rcfile' (glob)
+  Linking...
+  '/*/.another-dotfiles/rcfile' -> '/*/.rcfile' (glob)
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/test/mkrc-usage.t 
new/rcm-1.3.5/test/mkrc-usage.t
--- old/rcm-1.3.4/test/mkrc-usage.t     2020-01-17 23:16:41.000000000 +0100
+++ new/rcm-1.3.5/test/mkrc-usage.t     2022-03-04 20:41:05.000000000 +0100
@@ -3,19 +3,19 @@
 no arguments should output usage information and exit EX_USAGE
 
   $ mkrc
-  Usage: mkrc [-ChSsUuVvqo] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ...
+  Usage: mkrc [-ChSsUuVvqokK] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ...
   see mkrc(1) and rcm(7) for more details
   [64]
 
 -h should output usage information and exit 0
 
   $ mkrc -h
-  Usage: mkrc [-ChSsUuVvqo] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ...
+  Usage: mkrc [-ChSsUuVvqokK] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ...
   see mkrc(1) and rcm(7) for more details
 
 Unsupported options should output usage information and exit EX_USAGE
 
   $ mkrc --version
-  Usage: mkrc [-ChSsUuVvqo] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ...
+  Usage: mkrc [-ChSsUuVvqokK] [-t TAG] [-d DIR] [-B HOSTNAME] FILES ...
   see mkrc(1) and rcm(7) for more details
   [64]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rcm-1.3.4/test/rcrc-lsrc-excludes.t 
new/rcm-1.3.5/test/rcrc-lsrc-excludes.t
--- old/rcm-1.3.4/test/rcrc-lsrc-excludes.t     1970-01-01 01:00:00.000000000 
+0100
+++ new/rcm-1.3.5/test/rcrc-lsrc-excludes.t     2022-03-04 22:23:02.000000000 
+0100
@@ -0,0 +1,85 @@
+  $ . "$TESTDIR/helper.sh"
+
+Should exclude items with EXCLUDES=
+
+  $ touch .dotfiles/example
+  > touch .dotfiles/excluded
+
+  $ echo 'EXCLUDES=excluded' > $HOME/.rcrc
+
+  $ lsrc
+  /*/.example:/*/.dotfiles/example (glob)
+
+Should accept directory:file syntax
+
+  $ mkdir .other-dotfiles
+  > touch .other-dotfiles/included
+  > touch .other-dotfiles/excluded
+
+  $ echo 'EXCLUDES="other-dotfiles:excluded"'             > ~/.rcrc
+  $ echo 'DOTFILES_DIRS="~/.dotfiles ~/.other-dotfiles"' >> ~/.rcrc
+
+  $ lsrc
+  /*/.example:/*/.dotfiles/example (glob)
+  /*/.excluded:/*/.dotfiles/excluded (glob)
+  /*/.included:/*/.other-dotfiles/included (glob)
+
+Should handle excludes with globs
+
+  $ mkdir -p fresh/hola/chao
+  > touch fresh/hola/chao/wo
+  > touch fresh/hola/chao/nemo
+  > touch fresh/hola/tossala
+  > touch fresh/hola/s
+  > touch fresh/s
+
+  $ echo 'EXCLUDES="hola/chao/* s"'           > ~/.rcrc
+  $ lsrc -d fresh
+  /*/.hola/tossala:/*/fresh/hola/tossala (glob)
+
+  $ echo 'EXCLUDES="hola/chao s"'             > ~/.rcrc
+  $ lsrc -d fresh
+  /*/.hola/tossala:/*/fresh/hola/tossala (glob)
+
+When -x argument is provided, RCRC EXCLUDES are ignored
+
+  $ echo 'EXCLUDES="hola/chao"'               > ~/.rcrc
+  $ lsrc -d fresh -x s
+  /*/.hola/chao/nemo:/*/fresh/hola/chao/nemo (glob)
+  /*/.hola/chao/wo:/*/fresh/hola/chao/wo (glob)
+  /*/.hola/tossala:/*/fresh/hola/tossala (glob)
+
+  $ echo 'EXCLUDES="s"'                       > ~/.rcrc
+  $ lsrc -d fresh -x hola/chao
+  /*/.hola/s:/*/fresh/hola/s (glob)
+  /*/.hola/tossala:/*/fresh/hola/tossala (glob)
+  /*/.s:/*/fresh/s (glob)
+
+Should support globs in the excludes, including Emacs backup files
+
+  $ rm -rf .dotfiles
+  $ ( mkdir .dotfiles && cd .dotfiles && touch included README.md included~ 
README.md~ )
+
+  $ echo 'EXCLUDES="README.md *~"'           > ~/.rcrc
+  $ lsrc
+  /*/.included:/*/.dotfiles/included (glob)
+
+Should support a globs in the directory specifier
+
+  $ echo 'EXCLUDES="*:*~"'                     > ~/.rcrc
+  $ lsrc
+  /*/.README.md:/*/.dotfiles/README.md (glob)
+  /*/.included:/*/.dotfiles/included (glob)
+
+And should support a mix of plain and directory tagged globs
+
+  $ echo 'EXCLUDES="README.md *:*~"'           > ~/.rcrc
+  $ lsrc
+  /*/.included:/*/.dotfiles/included (glob)
+
+And a redundant list of implied and specified globs
+
+  $ echo 'EXCLUDES="README.md *~ *:*~"'        > ~/.rcrc
+  $ lsrc
+  /*/.included:/*/.dotfiles/included (glob)
+

Reply via email to