Commit Graph

55 Commits

Author SHA1 Message Date
Robbert van der Helm 8ce4ebfc28 Bump to version 1.5.0 2020-08-21 15:11:36 +02:00
Robbert van der Helm 56c939012d Bump to version 1.4.1 2020-07-27 16:33:41 +02:00
Robbert van der Helm f02dbb3755 Fix TOML parsing with large unsigned integers
The parser parses everything as signed integers so the configuration
file will fail to parse large numbers that don't fit in an i64.

https://github.com/alexcrichton/toml-rs/issues/256
2020-07-27 16:25:36 +02:00
Robbert van der Helm 81696f4dde Fix broken symlinks not being removed
`Path::exists()` returns false for broken symlinks:

https://doc.rust-lang.org/std/path/struct.Path.html#method.exists
2020-07-27 16:10:27 +02:00
Robbert van der Helm f5b1d48d96 Bump version to 1.4.0 2020-07-26 15:20:48 +02:00
Robbert van der Helm 9abaf60008 Fix potential out of bounds error in Wine check 2020-07-19 19:08:01 +02:00
Robbert van der Helm 6f9eb19969 Remove random comment 2020-07-19 19:03:09 +02:00
Robbert van der Helm 6bba1a9bf8 Check for Wine and yabridge compatibility on sync
This will probably solve the last common setup issue. Starting Wine can
take a second so this check is only repeated when either Wine or
yabridge get updated.
2020-07-19 16:57:18 +02:00
Robbert van der Helm a8e914a71a Add a last known config field to the configuration
For verifying that a combination of Wine and yabridge is going to work
together properly.
2020-07-19 14:39:07 +02:00
Robbert van der Helm 0778d787cc Add references to the filesystem function wrappers 2020-07-19 14:32:17 +02:00
Robbert van der Helm 3e438be302 Add an option to disable setup checks
The path check should only take a few milliseconds to run, but checking
whether yabridge-host.exe runs correctly could take over a second when
wineserver isn't already running in the background.
2020-07-19 13:54:12 +02:00
Robbert van der Helm 86be5c4814 Wrap filesystem functions for readable errors
Without having to repeat this all over the place.
2020-07-19 13:50:25 +02:00
Robbert van der Helm 9580dbea12 Wrap options for yabridgectl sync/set in a struct
To prevent having to pass a bunch of confusing boolean values or an
entire ArgMatch object.
2020-07-19 13:36:45 +02:00
Robbert van der Helm c5ec9b9dd3 Bump to version 1.3.0 2020-07-17 15:19:51 +02:00
Robbert van der Helm 74be0992fd Update yabridgectl documentation 2020-07-17 13:34:55 +02:00
Robbert van der Helm b94e68e935 Start argv[0] with a hyphen in login shell check
Since Rust 1.45 just came out today.
2020-07-17 13:10:01 +02:00
Robbert van der Helm 13214ca3a6 Print shell name in path setup warning 2020-07-16 23:00:10 +02:00
Robbert van der Helm 1df581cc55 Add missing blank line to path check warning 2020-07-16 22:57:49 +02:00
Robbert van der Helm 0f9599df4d Fix sentence structure in yabridgectl messages 2020-07-16 22:53:20 +02:00
Robbert van der Helm 8698a8fd0b Update messages in yabridgectl 2020-07-16 19:07:34 +02:00
Robbert van der Helm b05d5d2b7c Add support for ion, elvish, oil and nushell
Xonsh 0.9.14's which implementation is broken so I left it out:

```shell
$ env -i HOME=$HOME xonsh -l -c 'which <anything>'
xonsh: For full traceback set: $XONSH_SHOW_TRACEBACK = True
KeyError: 'PATH'
```
2020-07-16 17:25:26 +02:00
Robbert van der Helm 836aefcfbb Verify that the PATH has been set up correctly
When creating copies with yabridgectl. This should at least give an
advance warning that some additional steps are required when first
setting up yabridge.
2020-07-16 16:56:27 +02:00
Robbert van der Helm 2ec53c78d9 Add a descriptive error when winedump is missing 2020-07-16 15:04:07 +02:00
Robbert van der Helm 1ee2fe4746 Use anyhow for formatting and handling errors
This works better than doing it manually, and it significantly reduces
the amount of boilerplate needed.
2020-07-16 14:43:00 +02:00
Robbert van der Helm f48b5e66ca Move all subcommand handlers to a module
To unclutter in main.rs a bit.
2020-07-16 13:43:50 +02:00
Robbert van der Helm 9a53d788f8 Link to yabridgectl in the readme
In case anyone stumbles upon this.
2020-07-15 23:44:06 +02:00
Robbert van der Helm 7e3086c354 Prompt to remove leftover files when removing dir 2020-07-15 22:49:34 +02:00
Robbert van der Helm ae0f4aa64e Update yabridgectl readme 2020-07-15 21:54:47 +02:00
Robbert van der Helm 98f57b0793 Explain the installation methods in yabridgectl 2020-07-15 18:17:17 +02:00
Robbert van der Helm 1929d1a6d1 Implement yabridgectl set 2020-07-15 17:35:42 +02:00
Robbert van der Helm cb5944b128 Mention the bash snippets in yabridgectl readme 2020-07-15 16:58:25 +02:00
Robbert van der Helm ac5c6bab67 Show the installation method used 2020-07-15 16:10:52 +02:00
Robbert van der Helm fefce517d0 Wrap the help text to the terminal width 2020-07-15 16:10:35 +02:00
Robbert van der Helm f9deb8c201 Print skipped files on yabridgectl sync -v 2020-07-15 14:04:09 +02:00
Robbert van der Helm 53ebfcd463 Implement yabridgectl sync 2020-07-14 22:26:23 +02:00
Robbert van der Helm b94af4e7ae Print path to libyabridge.so in yabridgectl status 2020-07-14 21:01:52 +02:00
Robbert van der Helm a5c626cb24 Ensure installation status order is stable 2020-07-14 18:41:38 +02:00
Robbert van der Helm 26f26fc21c Implement the status command 2020-07-14 18:35:54 +02:00
Robbert van der Helm d840142036 Move the subcommands to functions 2020-07-14 17:52:08 +02:00
Robbert van der Helm 748d52f62a Implement the add, rm and list options 2020-07-14 17:21:18 +02:00
Robbert van der Helm b8eb031c77 Store paths in a BTreeSet
To avoid duplicates and to ensure that the order is stable.
2020-07-14 17:16:30 +02:00
Robbert van der Helm 3a7fd089b6 Add subcommands for managing directories 2020-07-14 16:46:49 +02:00
Robbert van der Helm f288bbb980 Fix yabridgectl config file loading 2020-07-14 16:36:56 +02:00
Robbert van der Helm 286135400f Query installation status and orphan files 2020-07-14 14:59:26 +02:00
Robbert van der Helm 7a8e0ed5cd Add VST2 file indexing to yabridgectl 2020-07-14 14:24:34 +02:00
Robbert van der Helm 5f2cb434bc Fix searching for libyabridge.so in ~/.local/share 2020-07-13 16:23:49 +02:00
Robbert van der Helm 21d48c3022 Implement reading and writing of config files 2020-07-13 14:31:45 +02:00
Robbert van der Helm 4537b6a5b0 Add the configuration struct for yabridgectl 2020-07-13 13:26:09 +02:00
Robbert van der Helm 2b1f29cc19 Mention how to acquire yabridgectl 2020-07-13 13:22:47 +02:00
Robbert van der Helm ee76da9be6 Rename 'yabridgectl ls' to 'yabridgectl list' 2020-07-13 13:21:33 +02:00