Commit Graph

154 Commits

Author SHA1 Message Date
Robbert van der Helm 47eb80798b [yabridgectl] Suggest not reading the readme
Yes, a readme that should not be read! I guess it's mostly there for
documentation's sake, because you probably shouldn't need any of
yabridgectl's functionality that's not outlined in the main readme.
2021-08-09 15:56:44 +02:00
Robbert van der Helm 63975115d2 Bump to version 3.5.2 2021-08-08 15:49:17 +02:00
Robbert van der Helm 1db6e853da Bump to version 3.5.1 2021-07-31 21:29:48 +02:00
Robbert van der Helm 4b256d456b Bump to version 3.5.0 2021-07-23 16:38:00 +02:00
Robbert van der Helm 6d76daff80 [yabridgectl] Print yabridge host paths in status 2021-07-20 02:02:39 +02:00
Robbert van der Helm ae454be4b5 Bump to version 3.4.0 2021-07-15 16:06:15 +02:00
Robbert van der Helm 784593df5c [yabridgectl] Remove explicit fallback
This was already handled by appending this to the `$PATH`.
2021-07-14 15:10:03 +02:00
Robbert van der Helm 2c25615ea5 Restore old yabridgectl plugin count with symlinks
The count will probably be a bit off now, but it's better than counting
only two plugins.
2021-07-13 00:01:32 +02:00
Robbert van der Helm b4019213f6 [yabridgectl] Remove 32-bit prefix warning on sync
This is no longer an issue since yabridgectl checks the prefixes
architecture now.
2021-07-12 15:46:35 +02:00
Robbert van der Helm bf84057044 [yabridgectl] Normalize symlinks for plugin counts
Now this should actually be correct with partially overlapping plugin
directories when symlinks were used.
2021-07-05 17:56:22 +02:00
Robbert van der Helm c13d8f2ee3 [yabridgectl] Recursively prune empty directories
If pruning results in a directory becoming empty, then we should remove
that directory. This approach won't touch any directories that we aren't
pruning from.
2021-07-03 18:35:51 +02:00
Robbert van der Helm 70c40970aa [yabridgectl] Make syncing much more resiliant
This commit does a couple of things since the refactoring made it
difficult to split these things up:

- The counts for managed and new plugins are now always correct, even
  when plugin directory A contains a symlink to plugin directory B.
- Orphan files will now be pruned from managed VST3 directories, making
  switching between different architectures easier. (the previous
  approach involved nuking the entire bundle, which of course has a
  bunch of downsides)
2021-07-03 18:20:05 +02:00
Robbert van der Helm 85c84aba0f [yabridgectl] Partially revert 5ea04c4
We should be a bit more clever about this. This approach would mean that
the plugin would be rescanned every time, since the whole 'don't
reinstall plugins if that wouldn't change anything' thing no longer
works with this approach.
2021-07-03 16:38:56 +02:00
Robbert van der Helm 9b1f3a5f4c Remove non-existent VST2 entry point
Since there isn't any public documentation on VST2, I saw JUCE and a
couple of other plugins and bridges use this, but they all redefined the
symbol to`main`.
2021-06-29 12:11:05 +02:00
Robbert van der Helm 5133f07c2c [yabridgectl] Fix setup checks with 32-bit prefix
This will now run `yabridge-host-32.exe` if `~/.wine` was created with
`WINEARCH=win32`.
2021-06-25 02:13:16 +02:00
Robbert van der Helm 3e75ff557b [yabridgectl] Bump reflink for 32-bit support
The version on crates.io always assumes the toolchain is 64-bit.
2021-06-24 17:43:37 +02:00
Robbert van der Helm c770e561d3 [yabridgectl] Use the correct VST3 arch name 2021-06-24 16:09:56 +02:00
Robbert van der Helm 5ea04c402e [yabridgectl] Clean up VST3 bundles
We would completely remove VST3 bundles that yabridgectl does not know
about anymore, but we would not remove leftover files within bundles.
This could otherwise cause issues when messing with 32-bit and 64-bit
versions of plugins or yabridge itself.
2021-06-24 16:04:04 +02:00
Robbert van der Helm 0b8221b136 [yabridgectl] Add support for 32-bit yabridge VST3
Bundles containing a 32-bit version of `libyabridge-vst3.so` should use
the `x86-linux` directory instead of the `x86_64-linux` directory.
2021-06-24 15:48:43 +02:00
Robbert van der Helm b521debbb7 [yabridgectl] Determine libyabridge-vst3.so arch
We're going to need this for supporting merged VST3 bundles with a
32-bit libyabridge-vst3.so.
2021-06-24 15:23:41 +02:00
Robbert van der Helm 3e0a2dc913 [yabridgectl] Change the library architecture enum
We're going to need this for native libraries as well.
2021-06-24 14:19:06 +02:00
Robbert van der Helm 3ad70678da [yabridgectl] Fix typo in error message 2021-06-23 01:42:02 +02:00
Robbert van der Helm eb9c2d9bf9 [yabridgectl] Don't panic on empty wine --version
And print a more descriptive error message instead. This is only
relevant when using a `WINELOADER` that causes `$WINELOADER --version`
to not output anything.
2021-06-16 13:09:20 +02:00
Robbert van der Helm 9ae0e8ca38 [yabridgectl] Use reflinks instead of copies
Whenever available. This should speed up the copying process while also
reducing the amount of disk space wasted on Btrfs and XFS filesystems.
2021-06-12 11:40:24 +02:00
Robbert van der Helm 53e4fa369f Bump to version 3.3.1 2021-06-09 16:36:02 +02:00
Robbert van der Helm 7228d49507 Bump to version 3.3.0 2021-06-03 17:35:45 +02:00
Robbert van der Helm 511aa14700 [yabridgectl] Fix reporting of new VST3 plugins
When yabridgectl sets up both a VST3 bundle containing both a 32-bit and
a 64-bit plugin. The libyabridge.so file already existed, so the
reported number was always off.
2021-05-31 17:05:34 +02:00
Robbert van der Helm 171d8facee [yabridgectl] Improve the Wine check warning
This can also fail if you're using a version of yabridge that was
compiled against more recent libraries.
2021-05-15 23:03:23 +02:00
Robbert van der Helm 52cbc35867 [yabridgectl] Downgrade textwrap again
Partially reverts f02b9e646b. Newer
versions don't take the indentation into account when wrapping.
2021-05-15 22:47:06 +02:00
Robbert van der Helm ffdab23d46 Bump the version to 3.2.0 2021-05-03 13:09:18 +02:00
Robbert van der Helm b04c0b2c65 Update links to the VST3 documentation
Those were broken after Steinberg restructured the docs with the VST
3.7.2 SDK release.
2021-04-18 14:24:03 +02:00
Robbert van der Helm ba6b87c790 Bump to version 3.1.0 2021-04-15 12:38:11 +02:00
Robbert van der Helm 2c391c97a5 [yabridgectl] Briefly mention blacklist in readme
A normal workflow doesn't require using the blacklist, so it's best to
not put too much emphasis on it.
2021-04-15 12:18:45 +02:00
Robbert van der Helm 6765abb6e5 [yabridgectl] Add a way to clear entire blacklist 2021-04-14 19:25:07 +02:00
Robbert van der Helm 7ff4bb1585 [yabridgectl] Add commands for managing blacklist
Relevant for #88.
2021-04-14 19:23:04 +02:00
Robbert van der Helm 4c1f7574c9 [yabridgectl] Mark yabridgectl set as advanced
You shouldn't need this in normal usage.
2021-04-14 18:40:22 +02:00
Robbert van der Helm ef23522cd6 [yabridgectl] Change the display order
I forgot they're sorted lexicographically by default, instead of being
in declaration order.
2021-04-14 18:39:24 +02:00
Robbert van der Helm f02b9e646b [yabridgeclt] Upgrade dependencies 2021-04-14 18:35:52 +02:00
Robbert van der Helm 1d66481aad [yabridgectl] Add a blacklist #88
This lets you skip single plugins and entire directories during the
indexing process.
2021-04-14 17:51:43 +02:00
Robbert van der Helm 36d93d05ca [yabridgectl] Fix spelling in help text 2021-03-25 20:38:02 +01:00
Robbert van der Helm 0d7b9bd178 Bump to version 3.0.2 2021-03-07 16:08:54 +01:00
Robbert van der Helm d91c8eeb07 Bump to version 3.0.1 2021-02-26 16:21:16 +01:00
Robbert van der Helm adebb63e18 [yabridgectl] Show VST2 architecture in status 2021-02-26 15:58:33 +01:00
Robbert van der Helm d11302d6b5 [yabridgectl] Unify plugin handling
VST2 and VST3 plugins are now handled in the same way, reducing a bit of
duplication. We now also store the architecture for VST2 plugins so we
can show that in `yabridgectl status` later.
2021-02-26 15:56:20 +01:00
Robbert van der Helm ebd6c95ceb [yabridgectl] Show VST3 module type and arch
In `yabridgectl status`.
2021-02-26 15:11:11 +01:00
Robbert van der Helm e6ec8819cb [yabridgectl] Use relative paths in verbose output
This should make the output look much less cluttered since most of the
output would consist of the same path prefix being repeated over and
over again.

The plugin location now also always ends with a trailing slash for
consistency's sake. I don't think Rust's Path has a way to normalize the
paths without also resolving symlinks.
2021-02-26 14:35:47 +01:00
Robbert van der Helm 9483c11ee0 [yabridgectl] Reword not yet installed status
The red `not installed` was causing some confusion.
2021-02-26 14:11:46 +01:00
Robbert van der Helm 8c2594f902 Bump to version 3.0.0 2021-02-14 14:36:01 +01:00
Robbert van der Helm c1b23b90a2 [yabridgectl] Expand libyabridge* auto detection
There are no yabridge packages for Debian and Fedora based distros, but
we'll now also search through the paths used there.
2021-02-06 21:09:30 +01:00
Robbert van der Helm 4b461e44a1 [yabridgectl] Add a todo about orphans in subdirs 2021-01-04 13:49:06 +01:00