1
0
mirror of https://github.com/TheLocehiliosan/yadm synced 2026-03-02 03:49:29 +00:00
Commit Graph

309 Commits

Author SHA1 Message Date
jonasc
60b23e33e8 Assert existence of config file's parent directory
Fixes TheLocehiliosan/yadm#226

When a config file path is passed to yadm whose parent directory does
not exist, git (and hence yadm) fails without writing the file.
Yadm should, however, make sure that the directory exists s.t. git can
just write to the file.
2020-07-08 15:13:03 -05:00
Jonathan Daigle
bea6e5506a Process config alt before any other.
This allows to version the configuration, using alt and to still be
able to use those configuration values in esh template
(using <% yamd config some-config %> )
2020-05-27 21:13:19 -04:00
Jonathan Daigle
f348e154c7 Add support for ESH 2020-05-27 19:38:15 -04:00
Travis A. Everett
9132b6dec9 Fix regexp with space for compatibility 2020-04-02 22:41:08 -05:00
Tim Byrne
778c33145c Remove legacy code which was reintroduced 2020-02-28 07:58:07 -06:00
Tim Byrne
0995f38b06 Merge pull request #138 from ldotlopez/master
I signed all commits first
2020-02-27 08:24:25 -06:00
Luis López
9fe5377749 Fix some typos and code style 2020-02-27 08:21:27 -06:00
Luis López
7698adfd77 Rebase on top of upstream/develop 2020-02-27 08:21:14 -06:00
Luis López
8e2d85de7f Merge from upstream 2020-02-27 08:20:45 -06:00
Luis López
67ce492b2a Added undocumented config yadm.openssl-ciphername 2020-02-27 07:44:44 -06:00
Luis López
bde5ecbc66 Deduplicate openssl cipher name code (and change default value) 2020-02-27 07:44:41 -06:00
Luis López
baaeb88628 Initial support for alternative cyphers.
This patch implements an OpenSSL cypher (via openssl enc command). It has to be enabled using yadm.cypher configuration key.

Some rough edges:
- archive file refers to GPG (.gpg extension)
- no test cases
2020-02-27 07:43:57 -06:00
James Clark
77d2da4e9b Support architecture in alternates (#202) 2020-02-22 02:08:53 +00:00
Tim Byrne
4b99ece480 Support transcrypt (#197)
Support is inherently provided by `enter`, which supports a command.
I've added a `transcrypt` command, which is really just an alias
under-the-hood for "enter transcrypt".
2020-02-21 08:05:56 -06:00
Tim Byrne
ee9ffb6828 Reorder command list 2020-02-21 07:55:58 -06:00
Tim Byrne
dd86c8a691 Release 2.4.0
Update version number and update documentation

* Support multiple keys in `yadm.gpg-recipient` (#139)
* Ensure all templates are written atomically (#142)
* Add encrypt_with_checksums to the hooks collection (#188)
* Escape white space in YADM_HOOK_FULL_COMMAND (#187)
* Improve parsing of os-release (#194)
* Improve identification of WSL (#196)
* Fix troff warnings emitted by man page (#195)
* Write encrypt-based exclusions during decrypt
2020-02-06 07:53:18 -06:00
Tim Byrne
79e93e38bc Fix error when /proc/version is missing 2020-02-03 08:30:50 -06:00
Ross Smith II
062181be4a Simplify WSL identification 2020-02-03 08:27:54 -06:00
Tim Byrne
69cde7f83c Exclude files listed in yadm/encrypt when decrypt is called
Previously this would only happen when encrypting.
2020-01-30 09:39:10 -06:00
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
76c82c763e Improve identification of WSL (#196)
Ignore case when searching for Microsoft inside /proc/version.
2020-01-20 07:52:50 -06: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
0b22220e3c Merge pull request #139 from stigtsp/multiple-gpg-recipients 2020-01-14 08:08:44 -06:00
Tim Byrne
4546636336 Merge pull request #194 from rasa/rasa/remove-quotes-from-distro 2020-01-14 07:14:04 -06:00
Martin Zuther
499837bd80 apply code review changes 2019-12-30 00:34:27 +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
c190333fdf correctly export array to subscript
* fix shellcheck errors and warnings
2019-12-28 16:09:19 +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
7ad28c3a97 Set exit status when running a command from enter 2019-12-16 17:11:07 -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
4d23bbcf11 Standardize on &> when not appending output 2019-12-04 22:39:00 -06:00
Tim Byrne
758a2e0c26 Automatically prefer gawk over awk 2019-12-04 22:18:22 -06:00
Tim Byrne
c0310a43a2 Merge pull request #180 from rasa/rasa/use-gawk-on-openwrt 2019-12-04 17:53:36 -06:00
Tim Byrne
3d10309665 Issue warning for any invalid alternates found (#183) 2019-12-03 08:38:11 -06:00
Tim Byrne
6bf0852609 Use /etc/os-release if lsb_release is missing (#175) 2019-11-30 18:31:27 -06:00
Tim Byrne
96839a5743 Remove dependency on hostname (#182) 2019-11-30 10:27:28 -06:00
Tim Byrne
75c19c9cc0 Release 2.1.0
Update version number and update documentation

* Use relative symlinks for alternates (#100, #177)
* Support double-star globs in .config/yadm/encrypt (#109)
* Improve bash completion (#136)
* Update docs about using magit (#123)
* Note exception for WSL (#113)
2019-11-27 07:21:44 -06:00