1
0
mirror of https://github.com/TheLocehiliosan/yadm synced 2024-10-27 20:34:27 +00:00
Commit Graph

388 Commits

Author SHA1 Message Date
Tim Byrne
ccb75b97ea
Escape space in YADM_HOOK_FULL_COMMAND (#187)
Backslashes are used to escape spaces, tabs, and backslashes. This
allows hooks to identify separate parameters (which are space
delimited).
2020-01-24 08:33:07 -06:00
Tim Byrne
3b820835ab
Test for warnings from man (#195) 2020-01-21 07:26:10 -06:00
Tim Byrne
d16f4b134a
Add man to testbed Docker image 2020-01-21 07:26:00 -06:00
Tim Byrne
d5b217f850
Merge pull request #195 from rra/manpage-fix 2020-01-21 07:24:42 -06:00
Tim Byrne
76c82c763e
Improve identification of WSL (#196)
Ignore case when searching for Microsoft inside /proc/version.
2020-01-20 07:52:50 -06:00
Russ Allbery
45ccf09aa5
Fix leading vim comment
Change `."` to `.\"` for a *roff comment.  `."` appears to do the
same thing, but only accidentally because it's treated as an unknown
macro and then ignored by default.  `man --warnings` will show the
problem:

  % man --warnings ./yadm.1 > /dev/null
  troff: <standard input>:1: warning: macro '"' not defined
2020-01-17 11:41:34 -08:00
Tim Byrne
04b98a96cb
Ensure all templates are written atomically
This takes jonasc's change, and applies it to all template writing. Also
removes the dependency on mktemp, and only moves files if they are
successfully written.
2020-01-16 16:27:59 -06:00
Tim Byrne
3e42bd9f52
Merge pull request #142 from jonasc/master
Resolved conflicts, and signed commit from jonasc.
2020-01-16 12:59:32 -06:00
jonasc
a1845c6e8a
Write template result to temporary file and move
This prevents problems with programs which watch the file for changes and will
first be presented an empty file.
One such example which will show a notification message about an empty config
file is Alacritty.
By writing to a tempory file and then moving it (atomically?) to the real
location this problem is mitigated.
2020-01-16 12:58:38 -06:00
Tim Byrne
75d2747aa0
Add test for multiple recipients 2020-01-15 09:17:26 -06:00
Tim Byrne
83c0edd9fb
Mention multiple recipients in man page 2020-01-15 08:07:04 -06:00
Tim Byrne
0b22220e3c
Merge pull request #139 from stigtsp/multiple-gpg-recipients 2020-01-14 08:08:44 -06:00
Tim Byrne
d9f68978fa
Add test for quoted os-release 2020-01-14 07:21:02 -06:00
Tim Byrne
4546636336
Merge pull request #194 from rasa/rasa/remove-quotes-from-distro 2020-01-14 07:14:04 -06:00
Tim Byrne
6e444736ab
Tests for encrypt_with_checksums hooks 2020-01-13 08:06:15 -06:00
Tim Byrne
8c6a96545d
Add organization and documentation to hooks collection 2020-01-10 08:37:24 -06:00
Tim Byrne
2af9c3a524
Merge pull request #188 from mzuther/encrypt_with_checksums 2020-01-10 07:54:29 -06:00
Martin Zuther
0009bb350b
get rid of echo 2019-12-30 00:43:24 +01:00
Martin Zuther
499837bd80
apply code review changes 2019-12-30 00:34:27 +01:00
Martin Zuther
9c9a750009
get rid of dependencies (pure bash) 2019-12-29 15:53:01 +01:00
Martin Zuther
45b218d5c1
support encrypted files in "yadm list"
* export some helper functions to hooks
2019-12-29 15:21:55 +01:00
Martin Zuther
bd19e31c6e
get rid of dirname 2019-12-29 12:51:29 +01:00
Martin Zuther
3c204119fb
select one of several checksum commands 2019-12-28 22:35:55 +01:00
Martin Zuther
c190333fdf
correctly export array to subscript
* fix shellcheck errors and warnings
2019-12-28 16:09:19 +01:00
Martin Zuther
0b79b461a6
change checksum algorithm to SHA-512
* SHA-512/256 doesn't seem to be supported on OS X
  (see https://ss64.com/osx/shasum.html)
2019-12-28 11:17:52 +01:00
Martin Zuther
e9720fb1c3
add quotes to support spaces in filenames 2019-12-27 23:39:06 +01:00
Martin Zuther
e96345eb87
re-factor hooks
* gracefully pass missing dependencies (grep and sed)
2019-12-27 23:25:45 +01:00
Martin Zuther
91266ca8eb
Check encrypted files with SHA-512/256 checksums 2019-12-27 18:15:04 +01:00
Tim Byrne
b4fd9e19c2
Release 2.3.0
Update version number and update documentation

* Support git-crypt (#168)
* Support specifying a command after `yadm enter`
* Expose GIT_WORK_TREE during `yadm enter` (#160)
* Support GNUPGHOME environment variable (#134)
* Assert private dirs, only when worktree = $HOME (#171)
2019-12-17 07:15:58 -06:00
Tim Byrne
ba5829ad48
Confirm exit status for enter w/cmd 2019-12-16 17:11:07 -06:00
Tim Byrne
7ad28c3a97
Set exit status when running a command from enter 2019-12-16 17:11:07 -06:00
Tim Byrne
2978c7dd8a
Add git-crypt info to man page 2019-12-16 17:11:06 -06:00
Tim Byrne
787de27b7c
Reorder items in man page 2019-12-16 17:11:06 -06:00
Tim Byrne
d3a2a06184
Support git-crypt (#168)
Support is inherently provided by `enter`, which now supports a command.
I've added a `git-crypt` command, which is really just an alias
under-the-hood for "enter git-crypt".
2019-12-16 17:11:06 -06:00
Tim Byrne
b9f5fdaafa
Support GNUPGHOME environment variable (#134) 2019-12-14 13:24:39 -06:00
Tim Byrne
84a173551e
Only assert private dirs, when worktree = $HOME (#171) 2019-12-14 13:24:32 -06:00
Tim Byrne
cc1993dc14
Move logic around assert_private_dirs to be more efficient 2019-12-12 08:09:30 -06:00
Tim Byrne
46105aae47
Set YADM_WORK within configure_paths 2019-12-12 08:00:10 -06:00
Tim Byrne
18e5fcfacc
Only assert private dirs, when worktree = $HOME 2019-12-11 08:37:45 -06:00
Tim Byrne
e7d2406af3
Export GIT_WORK_TREE during yadm enter (#160) 2019-12-08 15:17:47 -06:00
Tim Byrne
32baf81b56
Support specifying a command after yadm enter 2019-12-08 15:17:47 -06:00
Ross Smith II
43ac19398a
Remove quotes from distro name 2019-12-06 20:38:37 -08:00
Tim Byrne
96bce8dbac
Release 2.2.0
Update version number and update documentation

* Resolve hostname using `uname -n` (#182)
* Use /etc/os-release if lsb_release is missing (#175)
* Issue warning for any invalid alternates found (#183)
* Add support for gawk (#180)
2019-12-05 16:53:16 -06:00
Tim Byrne
397d45ccd0
Suppress insecure memory warnings 2019-12-05 15:02:47 -06:00
Tim Byrne
437ae2b719
Add --force-linters option to pylint (#179)
When this option is provided, linters will be run regardless of the
version installed. Normally tests are skipped if the linters are not the
supported version.
2019-12-05 15:02:47 -06:00
Tim Byrne
5d484ca825
Test with GnuPG 2 (#179)
Take advantage of pinentry-mock to obtain passphrases, instead of using
"expect" (which requires GnuPG 1).
2019-12-05 15:02:47 -06:00
Tim Byrne
e5ff95d09c
Create gnupg fixture
This fixture is a session scoped gnupg home directory, along with a
method to set the mocked password which will be used by the
pinentry-mock program.
2019-12-05 15:02:46 -06:00
Tim Byrne
fe96cfce28
Update testbed image to use GnuPG 2 2019-12-05 15:02:46 -06:00
Tim Byrne
3aefeeff0f
Create pinentry-mock
This is a program which adheres to the pinentry protocol. It always
provides the password located in /etc/mock-password.
2019-12-05 15:02:43 -06:00
Tim Byrne
4d23bbcf11
Standardize on &> when not appending output 2019-12-04 22:39:00 -06:00