Release 1.08
Update version number and update documentation * Fix bug alternates based on `CLASS` (#51) * Support globs and paths with space in .yadm/encrypt (#53, #54) * Add support for alternate files using Jinja templates (#56, #58) * Add `enter` command, for creating a sub-shell (#57) * Support local.hostname properly (#59)
This commit is contained in:
parent
9824de5410
commit
df4652d6de
6 changed files with 163 additions and 99 deletions
7
CHANGES
7
CHANGES
|
@ -1,3 +1,10 @@
|
|||
1.08
|
||||
* Fix bug alternates based on `CLASS` (#51)
|
||||
* Support globs and paths with space in .yadm/encrypt (#53, #54)
|
||||
* Add support for alternate files using Jinja templates (#56, #58)
|
||||
* Add `enter` command, for creating a sub-shell (#57)
|
||||
* Support local.hostname properly (#59)
|
||||
|
||||
1.07
|
||||
* Add `CLASS` to supported alt-link patterns (#21)
|
||||
* Add bootstrap command (#42)
|
||||
|
|
|
@ -2,10 +2,12 @@ CONTRIBUTORS
|
|||
|
||||
Tim Byrne
|
||||
Espen Henriksen
|
||||
Paraplegic Racehorse
|
||||
Jan Schulz
|
||||
Patrick Hof
|
||||
Satoshi Ohki
|
||||
Siôn Le Roux
|
||||
Sébastien Gross
|
||||
Tomas Cernaj
|
||||
Uroš Golja
|
||||
Franciszek Madej
|
||||
Paraplegic Racehorse
|
||||
|
|
2
yadm
2
yadm
|
@ -19,7 +19,7 @@ if [ -z "$BASH_VERSION" ]; then
|
|||
[ "$YADM_TEST" != 1 ] && exec bash "$0" "$@"
|
||||
fi
|
||||
|
||||
VERSION=1.07
|
||||
VERSION=1.08
|
||||
|
||||
YADM_WORK="$HOME"
|
||||
YADM_DIR="$HOME/.yadm"
|
||||
|
|
2
yadm.1
2
yadm.1
|
@ -1,5 +1,5 @@
|
|||
." vim: set spell so=8:
|
||||
.TH yadm 1 "10 February 2017" "1.07"
|
||||
.TH yadm 1 "3 April 2017" "1.08"
|
||||
.SH NAME
|
||||
yadm \- Yet Another Dotfiles Manager
|
||||
.SH SYNOPSIS
|
||||
|
|
66
yadm.md
66
yadm.md
|
@ -23,6 +23,8 @@
|
|||
|
||||
yadm encrypt
|
||||
|
||||
yadm enter
|
||||
|
||||
yadm decrypt [-l]
|
||||
|
||||
yadm alt
|
||||
|
@ -41,7 +43,7 @@
|
|||
git-command or git-alias
|
||||
Any command not internally handled by yadm is passed through to
|
||||
git(1). Git commands or aliases are invoked with the yadm man-
|
||||
aged repository. The working directory for git commands will be
|
||||
aged repository. The working directory for Git commands will be
|
||||
the configured work-tree (usually $HOME).
|
||||
|
||||
Dotfiles are managed by using standard git commands; add, com-
|
||||
|
@ -50,11 +52,12 @@
|
|||
The config command is not passed directly through. Instead use
|
||||
the gitconfig command (see below).
|
||||
|
||||
alt Create symbolic links for any managed files matching the naming
|
||||
rules describe in the ALTERNATES section. It is usually unnec-
|
||||
essary to run this command, as yadm automatically processes
|
||||
alternates by default. This automatic behavior can be disabled
|
||||
by setting the configuration yadm.auto-alt to "false".
|
||||
alt Create symbolic links and process Jinja templates for any man-
|
||||
aged files matching the naming rules described in the ALTERNATES
|
||||
and JINJA sections. It is usually unnecessary to run this com-
|
||||
mand, as yadm automatically processes alternates by default.
|
||||
This automatic behavior can be disabled by setting the configu-
|
||||
ration yadm.auto-alt to "false".
|
||||
|
||||
bootstrap
|
||||
Execute $HOME/.yadm/bootstrap if it exists.
|
||||
|
@ -102,6 +105,20 @@
|
|||
$HOME/.yadm/encrypt. See the ENCRYPTION section for more
|
||||
details.
|
||||
|
||||
enter Run a sub-shell with all Git variables set. Exit the sub-shell
|
||||
the same way you leave your normal shell (usually with the
|
||||
"exit" command). This sub-shell can be used to easily interact
|
||||
with your yadm repository using "git" commands. This could be
|
||||
useful if you are using a tool which uses Git directly. For
|
||||
example, Emacs Tramp and Magit can manage files by using this
|
||||
configuration:
|
||||
(add-to-list 'tramp-methods
|
||||
'("yadm"
|
||||
(tramp-login-program "yadm")
|
||||
(tramp-login-args (("enter")))
|
||||
(tramp-remote-shell "/bin/sh")
|
||||
(tramp-remote-shell-args ("-c"))))
|
||||
|
||||
gitconfig
|
||||
Pass options to the git config command. Since yadm already uses
|
||||
the config command to manage its own configurations, this com-
|
||||
|
@ -109,7 +126,7 @@
|
|||
itory managed by yadm. One useful case might be to configure
|
||||
the repository so untracked files are shown in status commands.
|
||||
yadm initially configures its repository so that untracked files
|
||||
are not shown. If you wish use the default git behavior (to
|
||||
are not shown. If you wish use the default Git behavior (to
|
||||
show untracked files and directories), you can remove this con-
|
||||
figuration.
|
||||
|
||||
|
@ -321,6 +338,41 @@
|
|||
local.user.
|
||||
|
||||
|
||||
## JINJA
|
||||
If the envtpl command is available, Jinja templates will also be pro-
|
||||
cessed to create or overwrite real files. yadm will treat files ending
|
||||
in
|
||||
|
||||
##yadm.j2
|
||||
|
||||
as Jinja templates. During processing, the following variables are set
|
||||
according to the rules explained in the ALTERNATES section:
|
||||
|
||||
YADM_CLASS
|
||||
YADM_OS
|
||||
YADM_HOSTNAME
|
||||
YADM_USER
|
||||
|
||||
For example, a file named whatever##yadm.j2 with the following content
|
||||
|
||||
{% if YADM_USER == 'harvey' -%}
|
||||
config={{YADM_CLASS}}-{{ YADM_OS }}
|
||||
{% else -%}
|
||||
config=dev-whatever
|
||||
{% endif -%}
|
||||
|
||||
would output a file named whatever with the following content if the
|
||||
user is "harvey":
|
||||
|
||||
config=work-Linux
|
||||
|
||||
and the following otherwise:
|
||||
|
||||
config=dev-whatever
|
||||
|
||||
See http://jinja.pocoo.org/ for an overview of Jinja.
|
||||
|
||||
|
||||
## ENCRYPTION
|
||||
It can be useful to manage confidential files, like SSH or GPG keys,
|
||||
across multiple systems. However, doing so would put plain text data
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Summary: Yet Another Dotfiles Manager
|
||||
Name: yadm
|
||||
Version: 1.07
|
||||
Version: 1.08
|
||||
Release: 1%{?dist}
|
||||
URL: https://github.com/TheLocehiliosan/yadm
|
||||
License: GPLv3
|
||||
|
@ -37,6 +37,9 @@ install -m 644 yadm.1 ${RPM_BUILD_ROOT}%{_mandir}/man1
|
|||
%doc CHANGES CONTRIBUTORS README.md
|
||||
|
||||
%changelog
|
||||
* Mon Apr 3 2017 Tim Byrne <sultan@locehilios.com> - 1.08-1
|
||||
- Bump version to 1.08
|
||||
|
||||
* Fri Feb 10 2017 Tim Byrne <sultan@locehilios.com> - 1.07-1
|
||||
- Bump version to 1.07
|
||||
|
||||
|
|
Loading…
Reference in a new issue