| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
There is no `-e` flag available, and `-x` is the flag that is used for
specifying an exclusion pattern.
|
|
|
|
|
| |
Add two spaces to the end of each package maintainer entry to force
Markdown to add a newline.
|
|
|
|
|
|
|
|
| |
When installing using the default arguments to `configure`, root
privileges are required. Use a "sudo" prefix to notate this.
NB. root privileges are not needed when installing to a prefix under your
control.
|
|
|
|
|
|
|
|
|
|
|
| |
These changes are specified by the Homebrew Ruby style guide and `brew
audit --strict`.
- Remove `require 'formula'` from Homebrew formula. This is no longer
necessary.
- Use HTTPS URLs in Homebrew formula.
- Prefer double quoted strings in Homebrew formula.
- Add description field to Homebrew formula.
|
| |
|
|
|
|
| |
Add a SHA256 hash for the Debian and tarball downloads. Closes #127.
|
|
|
|
| |
`$(var)` creates a sub shell and does not reference a variable
|
|
|
|
|
|
|
|
|
|
| |
This changes the order that things are pulled in so that:
1. Hosts take priority over everything.
2. Tags take priority over default.
3. Default takes priority over nothing.
Closes #94
|
| |
|
|
|
|
|
|
|
| |
Some formatting and more explanatory text. Frost was missing from the
rcm(7) credits. While here, bump the version number.
Honestly I just had these edits sitting around, unsure for how long.
|
| |
|
|
|
|
|
|
|
| |
In preparation for 1.2.4, update the changelog such that it is ready for
a release. Move the bugfixes and documentation improvements to the top,
new features to the bottom, attribute as many people as reasonable, and
so on.
|
|
|
|
|
|
| |
- Make sure IFS in rcup and rcdn isn't left in an incorrect state when
the output of lsrc is empty.
- Add tests to check that hooks run on rcdn and rcup by default.
|
|
|
|
|
|
|
|
|
| |
- Fix obvious typos in `release.in`.
- Build both binary and source Debian package. Also, make sure to run
`debuild` in the actual build directory.
- Add Debian source packages to gh-pages branch.
- Put lonely `:` on its own line, to help it stand out.
- Turn on signing for Debian source packages.
|
|
|
|
|
|
|
| |
Improve the `CONTRIBUTING.md` documentation about what dependencies
exist, how to install them, and how to get started in general. Remind
developers about the `configure` script, because without it no
`Makefile` will exist.
|
|
|
|
|
| |
The explanation in the man page was vague as to what "canonical source"
meant.
|
|
|
|
|
|
|
|
|
| |
The Makefiles were mostly filled with a complex shell script written in
m4sh. Moving that out into a separate script helps debugging and
compatibility, and in general makes life better.
This also improved the DEVELOPERS.md documentation to be more clear
about the steps of a release, including third-party packages.
|
|
|
|
|
|
|
| |
It wasn't obvious that you could also use rcup with undotted files to add them
as new rc files.
There was also a typo.
|
|
|
|
|
|
|
|
| |
These changes:
* add the steps needed to get set up
* update the docs regarding mandatory tests
* clarify release instructions
* fix documentation formatting
|
|
|
|
|
|
| |
The `helper.sh` was not being distributed, which caused `make distcheck`
to fail. Add it as data so that it's not processed but still
distributed.
|
|
|
|
|
|
|
|
|
|
|
| |
This adds the `-U` option to lsrc(1), rcup(1), and rcdn(1) commands; its
argument is an exclusion pattern. Any file matching this pattern is
symlinked without the leading dot.
There is also a `-u` option to undo a `-U`. The `UNDOTTED` setting in
rcrc(5) can be used to set it permanently.
The mkrc(1) command has `-U` and `-u` flags. They take no argument.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The test uses `$(hostname)`, which can produce the FQDN; however, the
code only uses the host name portion of that. Modify the test to do the
same by defining a `hostname` function that calls the hostname(1)
binary then pipes it through sed(1).
Use command instead of hardcoding the path.
OS X uses `$HOSTNAME` instead of the result of hostname(1). In the test
suite, use `$HOSTNAME` first, falling back to hostname(1).
|
|
|
|
|
| |
It was not the full path to the docs, but let's also just refer to the version
on master.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mac OS X's `readlink` command does not support the same options as GNU,
FreeBSD, and other operating systems, nor does it support canonicalizing
symlink resolutions.
In place of `readlink`, we're going to borrow [this] suggested
implementation from the community.
[this]:
http://stackoverflow.com/questions/1055671/how-can-i-get-the-behavior-of-gnus-readlink-f-on-a-mac
|
|
|
|
|
|
|
|
| |
We are now in the OpenBSD ports tree, so add pkg_add(1) instructions.
This only works on -current right now.
While here, re-arrange installation instructions to be alphabetical by
OS (or distribution) name.
|
|
|
|
|
|
|
|
| |
Various flags were missing from usage messages across the system; `-g`
and `-s` were the most notable ones. Add them to the appropriate usage
messages.
Spotted by Christopher Koch.
|
|
|
|
| |
The word "directory" was duplicated.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a `-g` flag to rcup(1) to generate a standalone shell
script. This shell script can then be run again, even on different
computers, to recreate the symlinks.
This allows people to recreate the "download my dotfiles and run
./install.sh" instructions, but with generated code that they do not
need to maintain.
This provides us more freedom with lsrc(1): since rcm can be used to
generate a universal shell script, lsrc(1) now can be harder to install
-- it can depend on a compiler, for example -- because you only need to
install it on one machine.
The generated script is rather limited; this can be improved in future
commits, as desired.
|
|
|
|
|
|
| |
Add instructions for how to install rcm on Ubuntu using the
[~martin-frost/thoughtbot-rcm
PPA](https://launchpad.net/~martin-frost/+archive/ubuntu/thoughtbot-rcm)
|
|
|
|
|
| |
The prior fix for `-k` moved the `:` from after `I` to after `k`. Move
it back.
|
|
|
|
|
|
|
|
|
| |
The rcdn(1) program is all set up to handle the `-K` and `-k` flags,
except those flags were never actually allowed through `getopts`.
Thanks to Mikkel Fahnøe Jørgensen for discovering this.
Closes #93.
|
|
|
|
|
|
|
|
| |
This adds a `-s` that can be used to override the `SYMLINK_DIRS` config,
or the `-S` flag, to lsrc(1), mkrc(1), rcup(1), and rcdn(1).
The `-s` flag is the opposite of -S: any argument, if it is a directory,
is not symlinked but instead recurred down.
|
|
|
|
|
|
|
|
|
| |
- Remove two configure flags which just caused warnings.
- Replace `pkgver` function with a working one.
- Explicititly `cd` into `srcdir` before `gitname` as found in
`PKGBUILD-git.proto`.
- Bump `pkgrel`.
- Specify correct package version.
|
|
|
|
|
| |
To give people a preview of the joy they will expect to find when they
start using rcm, link to the HTML manpages from the README.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The lsrc(1), mkrc(1), rcup(1), and rcdn(1) commands will now print a
usage message and exit immediately (with 64, `EX_USAGE`) when given an
option it does not understand.
This includes `--version` and `--help`.
Normal `-h` will print usage and exit successfully, as normal.
Closes #59.
|
|
|
|
|
|
|
|
| |
The `check` target was broken because of `dist_TESTS`; it _must_ be just
`TESTS`, not distributed.
Use `dist_check_SCRIPTS` instead so that they can be packaged as scripts
for checking the system.
|
|
|
|
| |
This file is generated, so ignore it.
|
|
|
|
| |
This allows people to install rcm-git on Arch.
|
|
|
|
|
| |
The Debian changelog and NEWS.md.in need to be updated to prepare for
the auto-generation next time.
|
| |
|
|
|
|
|
| |
People who download the tarball should be able to run the tests
themselves, so distribute the tests as part of the tarball.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New flags have accumulated without proper care for the usage
instructions or man pages.
I manually went through each program and verified its usage instruction
against its `getopts`, then I alphabeticalized the usage message.
Based on the usage message, I then verified the synposis in the manpage.
Then, based on the synposis, I alphabeticalized the detailed listing of
the arguments and filled in the missing pieces. The `-h` and `-V`
arguments were missing from all manpages.
In the future we will need to be more careful about this. It would be
good to automate a checker that refuses to build unless the docs have
all the flags mentioned.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As described in #82, the hostname on OS X can vary:
- The result of hostname(1) can change depending on DHCP settings; by
default, as you move between networks, your hostname will change.
- The value for `ComputerName` as set in scutil(8) contains values that
are inappropriate for a directory name (spaces, quotes, and so on),
and is blank by default.
- The value for `LocalHostName` changes based on DNS and DHCP settings.
Therefore, OS X users are highly encouraged to set a hostname using the
`HOSTNAME` variable in rcrc(5).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Based on issue #82, we now provide `-B` to override the hostname. In
particular:
- `mkrc -B foo` will enable `-o` but with the hostname set up `foo`.
- `lsrc -B foo` will work like normal `lsrc` except it treats `host-foo`
as the host-specific directory.
- `rcup -B foo` will run a normal `rcup` except `host-foo` is the
host-specific directory.
- `rcdn -B foo` is just like normal `rcdn`, but with `host-foo` as the
host-specific directory.
The `HOSTNAME` can also be set in the rcrc(5), and this is overridden by
the aforementioned `-B`.
While making this change: The `test/Makefile.am` used a mix of tabs and
spaces. Since it's a Makefile, replace it all with tabs.
|
|
|
|
|
|
|
|
| |
A `break` anywhere inside a `for` loop (even inside a `case`) will exit
from the innermost loop. Replace the `break` with a `:` to get the
desired effect.
Spotted by Pat Brisin.
|
|
|
|
| |
This is a thoughtbot project now, so assign copyright to thoughtbot.
|
|
|
|
|
| |
This merge conflict was not handled perfectly, apparently, because we
got the same entry twice in `NEWS.md.in`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is best explained with an example. If I want to track a file like
`~/.bundle/config`, the correct way would be:
~$ mkrc ~/.bundle/config
--> ~/.dotfiles/bundle/config
But if you are already inside the directory, say:
~/.bundle $
and you ran:
~/.bundle $ mkrc con<TAB> # for autocomplete
~/.bundle $ mkrc config
--> ~/.dotfiles/.config
Which is obviously not what you meant.
This basically checks first if the file exists in the current working
directory and if it is, it's expand the full path.
~/.bundle $ mkrc config
--> ~/.dotfiles/bundle/config
|
|
|
|
|
| |
This project is now a part of openSUSE, which can provide easy-to-use
packages for RHEL and CentOS. Link to that.
|