Robbert van der Helm
dabefef098
[yabridgectl] Don't mention the method on sync
...
Unless it's not set to copies.
2022-01-07 00:29:52 +01:00
Robbert van der Helm
f5af027847
Print a deprecation warning on sync for symlinks
2022-01-02 20:23:37 +01:00
Robbert van der Helm
e0ab24e645
Update copyright headers
...
Happy new year!
2022-01-01 18:32:10 +01: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
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
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
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
3ad70678da
[yabridgectl] Fix typo in error message
2021-06-23 01:42:02 +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
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
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
7ff4bb1585
[yabridgectl] Add commands for managing blacklist
...
Relevant for #88 .
2021-04-14 19:23:04 +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
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
4b461e44a1
[yabridgectl] Add a todo about orphans in subdirs
2021-01-04 13:49:06 +01:00
Robbert van der Helm
439c22c767
[yabridgectl] Consider subdirectories for orphans
2021-01-03 22:43:57 +01:00
Robbert van der Helm
cd4752116a
[yabridgectl] Split up Vst3Module
...
So we can add easily add additional fields later.
2021-01-03 21:40:36 +01:00
Robbert van der Helm
c206d68b12
[yabridgectl] Allow permanently disabling checks
2021-01-02 14:32:54 +01:00
Robbert van der Helm
ef540f354c
[yabridgectl] Add an option to undo setting --path
2021-01-02 14:09:59 +01:00
Robbert van der Helm
34f8d3b1d2
Update the copyright notices for 2021
2021-01-01 18:54:02 +01:00
Robbert van der Helm
5773c471f9
[yabridgectl] Don't purge VST3 yabridge.toml
...
We only want to consider directories here.
2020-12-27 18:25:13 +01:00
Robbert van der Helm
4f8bfbcda6
[yabridgectl] Fix clippy lints
2020-12-24 13:12:19 +01:00
Robbert van der Helm
d79ccc75e6
[yabridgectl] Symlink VST 3.6.10 bundle resources
...
Although I haven't run into any of these 'new' bundles yet. Everything's
still in the legacy format.
2020-12-24 12:47:45 +01:00
Robbert van der Helm
a0098034ed
[yabridgectl] Rename the Vst3Module functions
...
Creating a clear naming scheme here is more difficult than it should be.
2020-12-24 12:38:47 +01:00
Robbert van der Helm
a3e76b3370
[yabridgectl] Warn for duplicate VST3 plugins
...
Since we can't have multiple plugins with the same name this way.
2020-12-24 12:31:04 +01:00
Robbert van der Helm
9d33cafd37
[yabridgectl] Allow removing orphan VST3 modules
2020-12-24 12:12:48 +01:00
Robbert van der Helm
68c95e9527
[yabridgectl] Allow skipping hash checks
2020-12-24 11:54:45 +01:00
Robbert van der Helm
55957ca798
[yabridgectl] Allow setting up VST3 plugins
...
This is still missing checks for removing leftover files, symlinks for
resources and presets, and a way to differentiate between plugins with
the same name from different prefixes.
2020-12-24 00:04:05 +01:00
Robbert van der Helm
3d27426b9d
[yabridgectl] Index .vst3 files
...
It doesn't actually identify VST3 modules yet though.
2020-12-23 18:39:22 +01:00
Robbert van der Helm
3dc1b1585b
[yabridgectl] Add field for indexing VST3 modules
2020-12-23 17:41:16 +01:00
Robbert van der Helm
a7d284469a
[yabridgectl] Locate libyabridge-vst3.so
...
And unify how finding files in yabridgectl works.
2020-12-23 17:12:28 +01:00
Robbert van der Helm
a428d08eff
Update yabridgectl for libyabridge-vst2.so
2020-12-07 18:28:16 +01:00
Robbert van der Helm
b9b61e420f
[yabridgectl] Reorganize path check
2020-11-20 14:24:42 +01:00
Robbert van der Helm
e6af947fe1
[yabridgectl] Only recreate files when necessary
...
As suggested in #42 . This also adds a `--force` flag to reenable the old
behaviour and always recreate files even when not necessary.
2020-10-17 18:21:53 +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
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
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
74be0992fd
Update yabridgectl documentation
2020-07-17 13:34:55 +02:00
Robbert van der Helm
0f9599df4d
Fix sentence structure in yabridgectl messages
2020-07-16 22:53:20 +02:00