Cut splits by equals sign and takes the second field. This ignores path
contents after a second equals sign. Currently this prevents the
installation on NixOS as the nix store path automatically contains a
"=".
This PR instead selects all but the first field and equals sign, leaving
the passed paths as intended.
Fixes#738 by changing the git config autocrlf test to check for what we do not want to see "false".
Instead of trying to convert the output of git config autocrlf to binary, which will not always work as "input" is also a valid value in addition to true and false, we check for the value false and exit if it is found.
Replace package database with independently installed package repositories
- Add support for fetching and installing from package repositories containing package URLs and metadata
- Support multiple package repository sources
- Add new repo command
- Remove submit command
- Enhance describe and search commands
- Fix and improve help text for new and adjusted commands
- Fix bundle install exit status
- Refer to plugins as "plugins" instead of the general term "packages"
- Code clarity improvements
- Put plugin/theme distinction into package metadata
* assert fish version before asserting commands
- fix#398 so that the correct error message is displayed
* move assert_cmds to after fish and git checks
- remove fish and git from assert_cmds, these checks are already done in their specific assert_ functions making them redundant in assert_cmds
- move function assert_cmds to match execution order
Refactor the installer to be more maintainable and interactive. The installer is now more robust and safe in its operation, and asks interactive questions for choices that the user must resolve. Setting up confuguration is also now changed to take advantage of Fish 2.3 features and does not mess with user's configuration files without permission.
- Make installer smarter and use uninstaller in destroy
- Better handling and checking for offline installs
- `omf destroy` simply uses `install --uninstall`
- Final warning message is no longer displayed when user intentionally aborts install
- Backups are restored during uninstall
- Update the README to detail the new ways to install OMF
First works toward generalizing file backup code, applying to both
config.fish file and now fish_prompt.fish too. This avoids clean
installs which start with theme issues.
This PR sets the default value of `OMF_CONFIG` variable in
framework init.fish file. The variable can still be overridden by
the user by setting it on `~/.config/fish/config.fish file`.
This is in preparation to rewriting install script in plain fish,
which will ditch config template and stop replacing `config.fish`
contents in favor of just appending Oh My Fish startup.
* On clean install, configure and download `default` theme.
* Do not allow `default` theme to be removed.
* When the current theme is removed, fallback to `default`.
It's hard to read the template as it was being created using `echo`
instead of being defined on a separate file. Also adding some comments
to improve the configuration file readability.
Per conversation with @bpinto in Gitter.
There's no need for two separate directories. You don't have a `.git` and `.git-custom` folder, you just put your config in `.git` :)
The most straightforward interpretation of XDG basedir spec is that user configuration for omf would go in `~/.config/omf`, so let's put it there. The only question is whether omf-generated config (i.e. the `theme` file) should go there as well. By analogy with git, programmatically generated config should probably be merged in with user config. This also makes it so when a user clones their dotfiles to a new machine, both kinds of settings come with it.