Skip to content

Commit

Permalink
Merge branch 'dev' into 'master'
Browse files Browse the repository at this point in the history
  • Loading branch information
DropSnorz committed Nov 25, 2023
2 parents 7bd16dd + 43fce91 commit ea04667
Show file tree
Hide file tree
Showing 120 changed files with 6,437 additions and 1,075 deletions.
14 changes: 7 additions & 7 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
build-host-win:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
Expand Down Expand Up @@ -45,7 +45,7 @@ jobs:
build-host-osx:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
Expand Down Expand Up @@ -76,7 +76,7 @@ jobs:
build-host-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
Expand Down Expand Up @@ -112,7 +112,7 @@ jobs:
runs-on: ubuntu-latest
needs: [build-host-win, build-host-osx, build-host-linux]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
Expand Down Expand Up @@ -158,7 +158,7 @@ jobs:
runs-on: windows-latest
needs: [build-jar]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
Expand All @@ -184,7 +184,7 @@ jobs:
runs-on: macos-latest
needs: [build-jar]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
Expand All @@ -209,7 +209,7 @@ jobs:
runs-on: ubuntu-latest
needs: [build-jar]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/target/
*/target/**
/.idea/
.vscode/
*.iml
Expand Down
18 changes: 12 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/e6b8ee875daa4f74b5bf1cc8fee6df63)](https://www.codacy.com?utm_source=github.com&utm_medium=referral&utm_content=DropSnorz/OwlPlug&utm_campaign=Badge_Grade_Dashboard)
![Last Pre release](https://img.shields.io/github/release-date/dropsnorz/owlplug.svg)
[![Discord](https://img.shields.io/badge/chat-on%20discord-%237289DA.svg)](https://discord.gg/nEdHAMB)
[![Patreon](https://img.shields.io/badge/donate-%E2%99%A5-%23253b80)](https://www.paypal.com/donate?hosted_button_id=7MJGDTQXAPJ22)
[![Donate](https://img.shields.io/badge/donate-%E2%99%A5-%23253b80)](https://www.paypal.com/donate?hosted_button_id=7MJGDTQXAPJ22)


# Overview
Expand Down Expand Up @@ -42,7 +42,7 @@ All kinds of feedbacks are greatly welcomed.
1. Browse binaries from [the release section](http://github.com/dropsnorz/owlplug/releases)
2. Download and run the OwlPlug installer for your platform
* `.msi` installer on Windows
* `.dmg` file on MacOS
* `.dmg` file on macOS
* `.deb` file on Linux
3. Run OwlPlug application

Expand All @@ -63,16 +63,22 @@ winget install owlplug

# Features

## Plugins
## Plugins discovery

OwlPlug can discover VST2, VST3 and AU Plugins. OwlPlug is compatible with all previously installed plugins as long as they are all in a specific root directory, for example `C:/AudioPlugins`. Additional directories can be configured if your plugin setup is fragmented on the filesystem.

After downloading Owlplug, you can still organize (add, move, delete, ...) your plugins with a file explorer or with your favorite DAW without breaking anything.

## Links
## Links creation

A Link allows you to create and manage symlinks across your filesystem and plugin directories. With Links, you can access directories anywhere on your filesystem (Hard drive, USB keys, custom directories...) through a single root plugin directory. For example, you can configure a link named *usb-drive* in `C:/AudioPlugins` to target your usb hard drive `D:/myPlugins`. All plugins in `D:/myPlugins` will be accessible using `C:/AudioPlugins/usb-drive`. This feature may be useful for DAW that scans plugins from predefined or limited number directories. On some Windows version, symlinks creation may require admin privileges.

## DAW Projects analysis

OwlPlug can scan DAW projects to extract referenced plugins. Plugins references in project files are compared to plugins installed in configured directories. This way, users can quickly identify missing plugins required to open projects.

The list of compatible DAWs is available in the [documentation](https://github.com/DropSnorz/OwlPlug/wiki/Projects-and-DAW-Support)

## Explore and download Plugins

OwlPlug can be connected to several remote sources to download plugins. A Remote Source is a collection of downloadable plugins that can be installed locally. OwlPlug can be configured to use any compatible third-party store in *Explore* Tab > *Sources* > *Add a new source...*.
Expand All @@ -95,7 +101,7 @@ Studiorack registry plugins for OwlPlug.

### How to distribute my plugins on OwlPlug ?

* **(Recomended)** Distribute your plugins using on the official OwlPlug Registry. You can find more information on how to proceed in the [registry github repository](https://github.com/OwlPlug/owlplug-registry).
* **(Recommended)** Distribute your plugins using on the official OwlPlug Registry. You can find more information on how to proceed in the [registry github repository](https://github.com/OwlPlug/owlplug-registry).

* Setup and host a custom remote source to distribute multiple plugins, following the registry specification.

Expand All @@ -107,7 +113,7 @@ Studiorack registry plugins for OwlPlug.
## Stack

* Spring boot
* JavaFx & JFoenix
* JavaFx
* Hibernate & H2
* Maven
* Juce
Expand Down
1 change: 0 additions & 1 deletion build/package-deb.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ echo "Generating OwlPlug DEB Install package"

jpackage --input ./input/ --name OwlPlug --main-class org.springframework.boot.loader.JarLauncher \
--main-jar owlplug.jar --license-file ./input/LICENSE --dest ./output \
--java-options "--add-opens=java.base/java.lang.reflect=ALL-UNNAMED" \
--app-version $owlplugversion --icon ./resources/owlplug.png --vendor OwlPlug \
--linux-package-name owlplug --linux-deb-maintainer contact@owlplug.com \
--linux-menu-group "AudioVideo;Audio" --linux-shortcut
Expand Down
1 change: 0 additions & 1 deletion build/package-dmg.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ echo "Generating OwlPlug DMG Install package"

jpackage --input ./input/ --name OwlPlug --main-class org.springframework.boot.loader.JarLauncher \
--main-jar owlplug.jar --license-file ./input/LICENSE --dest ./output \
--java-options "--add-opens=java.base/java.lang.reflect=ALL-UNNAMED" \
--app-version $owlplugversion --icon ./resources/owlplug.icns --vendor OwlPlug \
--mac-package-identifier owlplug --mac-package-name OwlPlug

Expand Down
1 change: 0 additions & 1 deletion build/package-msi.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ echo ** Generating OwlPlug MSI Install package **

jpackage --type msi --input ./input/ --name OwlPlug --main-class org.springframework.boot.loader.JarLauncher ^
--main-jar owlplug.jar --license-file .\input\LICENSE --dest ./output ^
--java-options "--add-opens=java.base/java.lang.reflect=ALL-UNNAMED" ^
--app-version %owlplug-version% --icon .\resources\owlplug.ico --vendor OwlPlug ^
--win-dir-chooser --win-menu --win-shortcut

Expand Down
49 changes: 30 additions & 19 deletions owlplug-client/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,14 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<properties>
<springboot.version>3.1.2</springboot.version>
</properties>

<parent>
<groupId>com.owlplug</groupId>
<artifactId>owlplug</artifactId>
<version>1.24.0</version>
<version>1.25.0</version>
</parent>

<artifactId>owlplug-client</artifactId>
Expand All @@ -33,7 +37,7 @@
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>3.1.2</version>
<version>${springboot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
Expand All @@ -44,7 +48,12 @@
<dependency>
<groupId>com.owlplug</groupId>
<artifactId>owlplug-host</artifactId>
<version>1.24.0</version>
<version>1.25.0</version>
</dependency>
<dependency>
<groupId>com.owlplug</groupId>
<artifactId>owlplug-controls</artifactId>
<version>1.25.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
Expand Down Expand Up @@ -90,40 +99,45 @@
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>19.0.2.1</version>
<version>${javafx.version}</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>19.0.2.1</version>
<version>${javafx.version}</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-swing</artifactId>
<version>19.0.2.1</version>
<version>${javafx.version}</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-graphics</artifactId>
<version>19.0.2.1</version>
<version>${javafx.version}</version>
<classifier>win</classifier>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-graphics</artifactId>
<version>19.0.2.1</version>
<version>${javafx.version}</version>
<classifier>linux</classifier>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-graphics</artifactId>
<version>19.0.2.1</version>
<version>${javafx.version}</version>
<classifier>mac</classifier>
</dependency>
<dependency>
<groupId>com.jfoenix</groupId>
<artifactId>jfoenix</artifactId>
<version>9.0.10</version>
<groupId>org.controlsfx</groupId>
<artifactId>controlsfx</artifactId>
<version>11.1.2</version>
</dependency>
<dependency>
<groupId>org.jfxtras</groupId>
<artifactId>jmetro</artifactId>
<version>11.6.16</version>
</dependency>

<dependency>
Expand Down Expand Up @@ -213,12 +227,12 @@
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>1.22</version>
<version>1.24.0</version>
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>

Expand Down Expand Up @@ -252,13 +266,10 @@
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${springboot.version}</version>
<configuration>
<mainClass>com.owlplug.Bootstrap</mainClass>
<layout>JAR</layout>
<!--Arg required to fix illegal reflective access in JFXTextField -->
<jvmArguments>
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
</jvmArguments>
</configuration>
<executions>
<execution>
Expand Down
13 changes: 8 additions & 5 deletions owlplug-client/src/main/java/com/owlplug/OwlPlug.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

package com.owlplug;

import com.jfoenix.assets.JFoenixResources;
import com.owlplug.controls.OwlPlugControlsResources;
import com.owlplug.core.components.ApplicationDefaults;
import com.owlplug.core.controllers.MainController;
import java.beans.PropertyVetoException;
Expand All @@ -30,6 +30,8 @@
import javafx.scene.Scene;
import javafx.stage.Stage;
import javax.sql.DataSource;
import jfxtras.styles.jmetro.JMetro;
import jfxtras.styles.jmetro.Style;
import org.ehcache.CacheManager;
import org.ehcache.config.builders.CacheConfigurationBuilder;
import org.ehcache.config.builders.CacheManagerBuilder;
Expand Down Expand Up @@ -106,11 +108,12 @@ public void start(Stage primaryStage) throws Exception {
double height = 800;

Scene scene = new Scene(rootNode, width, height);
String fontsCss = JFoenixResources.load("css/jfoenix-fonts.css").toExternalForm();
scene.getStylesheets().add(fontsCss);
JMetro metroTheme = new JMetro(Style.DARK);
metroTheme.setScene(scene);
String owlplugControlsCss = OwlPlugControlsResources.load("/css/owlplug-controls.css").toExternalForm();
metroTheme.getOverridingStylesheets().add(owlplugControlsCss);
String owlplugCss = OwlPlug.class.getResource("/owlplug.css").toExternalForm();
scene.getStylesheets().add(owlplugCss);

metroTheme.getOverridingStylesheets().add(owlplugCss);
primaryStage.getIcons().add(ApplicationDefaults.owlplugLogo);
primaryStage.setTitle(ApplicationDefaults.APPLICATION_NAME);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@

package com.owlplug;

import com.jfoenix.assets.JFoenixResources;
import com.owlplug.core.components.ApplicationDefaults;
import javafx.application.Preloader;
import javafx.application.Preloader.StateChangeNotification.Type;
Expand All @@ -29,6 +28,8 @@
import javafx.scene.control.Alert.AlertType;
import javafx.stage.Stage;
import javafx.stage.StageStyle;
import jfxtras.styles.jmetro.JMetro;
import jfxtras.styles.jmetro.Style;

public class OwlPlugPreloader extends Preloader {

Expand All @@ -42,8 +43,8 @@ public void start(Stage primaryStage) throws Exception {
Parent root = loader.load();

Scene scene = new Scene(root);
String fontsCss = JFoenixResources.load("css/jfoenix-fonts.css").toExternalForm();
scene.getStylesheets().add(fontsCss);
JMetro jMetro = new JMetro(Style.DARK);
jMetro.setScene(scene);
String owlplugCss = OwlPlugPreloader.class.getResource("/owlplug.css").toExternalForm();
scene.getStylesheets().add(owlplugCss);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,16 @@

package com.owlplug.auth.controllers;

import com.jfoenix.controls.JFXButton;
import com.jfoenix.controls.JFXSpinner;
import com.owlplug.auth.services.AuthenticationService;
import com.owlplug.core.components.LazyViewRegistry;
import com.owlplug.core.controllers.MainController;
import com.owlplug.core.controllers.dialogs.AbstractDialogController;
import javafx.concurrent.Task;
import javafx.fxml.FXML;
import javafx.scene.Node;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.ProgressIndicator;
import javafx.scene.layout.HBox;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand All @@ -49,15 +49,15 @@ public class AccountController extends AbstractDialogController {
@FXML
private HBox buttonPane;
@FXML
private JFXButton googleButton;
private Button googleButton;
@FXML
private JFXSpinner authProgressIndicator;
private ProgressIndicator authProgressIndicator;
@FXML
private Label messageLabel;
@FXML
private JFXButton cancelButton;
private Button cancelButton;
@FXML
private JFXButton closeButton;
private Button closeButton;

/** Indicates if the user has pressed the cancel button. */
private boolean cancelFlag = false;
Expand Down

0 comments on commit ea04667

Please sign in to comment.