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
|
1.07
|
||||||
* Add `CLASS` to supported alt-link patterns (#21)
|
* Add `CLASS` to supported alt-link patterns (#21)
|
||||||
* Add bootstrap command (#42)
|
* Add bootstrap command (#42)
|
||||||
|
|
|
@ -2,10 +2,12 @@ CONTRIBUTORS
|
||||||
|
|
||||||
Tim Byrne
|
Tim Byrne
|
||||||
Espen Henriksen
|
Espen Henriksen
|
||||||
Paraplegic Racehorse
|
Jan Schulz
|
||||||
Patrick Hof
|
Patrick Hof
|
||||||
Satoshi Ohki
|
Satoshi Ohki
|
||||||
Siôn Le Roux
|
Siôn Le Roux
|
||||||
|
Sébastien Gross
|
||||||
Tomas Cernaj
|
Tomas Cernaj
|
||||||
Uroš Golja
|
Uroš Golja
|
||||||
Franciszek Madej
|
Franciszek Madej
|
||||||
|
Paraplegic Racehorse
|
||||||
|
|
2
yadm
2
yadm
|
@ -19,7 +19,7 @@ if [ -z "$BASH_VERSION" ]; then
|
||||||
[ "$YADM_TEST" != 1 ] && exec bash "$0" "$@"
|
[ "$YADM_TEST" != 1 ] && exec bash "$0" "$@"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
VERSION=1.07
|
VERSION=1.08
|
||||||
|
|
||||||
YADM_WORK="$HOME"
|
YADM_WORK="$HOME"
|
||||||
YADM_DIR="$HOME/.yadm"
|
YADM_DIR="$HOME/.yadm"
|
||||||
|
|
2
yadm.1
2
yadm.1
|
@ -1,5 +1,5 @@
|
||||||
." vim: set spell so=8:
|
." vim: set spell so=8:
|
||||||
.TH yadm 1 "10 February 2017" "1.07"
|
.TH yadm 1 "3 April 2017" "1.08"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
yadm \- Yet Another Dotfiles Manager
|
yadm \- Yet Another Dotfiles Manager
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
|
|
66
yadm.md
66
yadm.md
|
@ -23,6 +23,8 @@
|
||||||
|
|
||||||
yadm encrypt
|
yadm encrypt
|
||||||
|
|
||||||
|
yadm enter
|
||||||
|
|
||||||
yadm decrypt [-l]
|
yadm decrypt [-l]
|
||||||
|
|
||||||
yadm alt
|
yadm alt
|
||||||
|
@ -41,7 +43,7 @@
|
||||||
git-command or git-alias
|
git-command or git-alias
|
||||||
Any command not internally handled by yadm is passed through to
|
Any command not internally handled by yadm is passed through to
|
||||||
git(1). Git commands or aliases are invoked with the yadm man-
|
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).
|
the configured work-tree (usually $HOME).
|
||||||
|
|
||||||
Dotfiles are managed by using standard git commands; add, com-
|
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 config command is not passed directly through. Instead use
|
||||||
the gitconfig command (see below).
|
the gitconfig command (see below).
|
||||||
|
|
||||||
alt Create symbolic links for any managed files matching the naming
|
alt Create symbolic links and process Jinja templates for any man-
|
||||||
rules describe in the ALTERNATES section. It is usually unnec-
|
aged files matching the naming rules described in the ALTERNATES
|
||||||
essary to run this command, as yadm automatically processes
|
and JINJA sections. It is usually unnecessary to run this com-
|
||||||
alternates by default. This automatic behavior can be disabled
|
mand, as yadm automatically processes alternates by default.
|
||||||
by setting the configuration yadm.auto-alt to "false".
|
This automatic behavior can be disabled by setting the configu-
|
||||||
|
ration yadm.auto-alt to "false".
|
||||||
|
|
||||||
bootstrap
|
bootstrap
|
||||||
Execute $HOME/.yadm/bootstrap if it exists.
|
Execute $HOME/.yadm/bootstrap if it exists.
|
||||||
|
@ -102,6 +105,20 @@
|
||||||
$HOME/.yadm/encrypt. See the ENCRYPTION section for more
|
$HOME/.yadm/encrypt. See the ENCRYPTION section for more
|
||||||
details.
|
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
|
gitconfig
|
||||||
Pass options to the git config command. Since yadm already uses
|
Pass options to the git config command. Since yadm already uses
|
||||||
the config command to manage its own configurations, this com-
|
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
|
itory managed by yadm. One useful case might be to configure
|
||||||
the repository so untracked files are shown in status commands.
|
the repository so untracked files are shown in status commands.
|
||||||
yadm initially configures its repository so that untracked files
|
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-
|
show untracked files and directories), you can remove this con-
|
||||||
figuration.
|
figuration.
|
||||||
|
|
||||||
|
@ -321,6 +338,41 @@
|
||||||
local.user.
|
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
|
## ENCRYPTION
|
||||||
It can be useful to manage confidential files, like SSH or GPG keys,
|
It can be useful to manage confidential files, like SSH or GPG keys,
|
||||||
across multiple systems. However, doing so would put plain text data
|
across multiple systems. However, doing so would put plain text data
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
Summary: Yet Another Dotfiles Manager
|
Summary: Yet Another Dotfiles Manager
|
||||||
Name: yadm
|
Name: yadm
|
||||||
Version: 1.07
|
Version: 1.08
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
URL: https://github.com/TheLocehiliosan/yadm
|
URL: https://github.com/TheLocehiliosan/yadm
|
||||||
License: GPLv3
|
License: GPLv3
|
||||||
|
@ -37,6 +37,9 @@ install -m 644 yadm.1 ${RPM_BUILD_ROOT}%{_mandir}/man1
|
||||||
%doc CHANGES CONTRIBUTORS README.md
|
%doc CHANGES CONTRIBUTORS README.md
|
||||||
|
|
||||||
%changelog
|
%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
|
* Fri Feb 10 2017 Tim Byrne <sultan@locehilios.com> - 1.07-1
|
||||||
- Bump version to 1.07
|
- Bump version to 1.07
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue