mirror of
https://github.com/xpipe-io/xpipe.git
synced 2024-10-01 17:47:30 +13:00
Homebrew fixes
This commit is contained in:
parent
e1fa5a9c52
commit
9f4359a4eb
2 changed files with 25 additions and 28 deletions
|
@ -9,7 +9,7 @@ import javafx.scene.layout.Region;
|
||||||
|
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
|
|
||||||
public class HomebrewUpdater extends UpdateHandler {
|
public class HomebrewUpdater extends GitHubUpdater {
|
||||||
|
|
||||||
public HomebrewUpdater() {
|
public HomebrewUpdater() {
|
||||||
super(true);
|
super(true);
|
||||||
|
@ -20,31 +20,29 @@ public class HomebrewUpdater extends UpdateHandler {
|
||||||
var snippet = CodeSnippet.builder()
|
var snippet = CodeSnippet.builder()
|
||||||
.keyword("brew")
|
.keyword("brew")
|
||||||
.space()
|
.space()
|
||||||
.keyword("install")
|
.keyword("upgrade")
|
||||||
|
.space()
|
||||||
|
.identifier("--cask")
|
||||||
.space()
|
.space()
|
||||||
.string("xpipe")
|
.string("xpipe")
|
||||||
.identifier("@")
|
|
||||||
.type(getPreparedUpdate().getValue().getVersion())
|
|
||||||
.build();
|
.build();
|
||||||
return new CodeSnippetComp(false, new SimpleObjectProperty<>(snippet)).createRegion();
|
return new CodeSnippetComp(false, new SimpleObjectProperty<>(snippet)).createRegion();
|
||||||
}
|
}
|
||||||
|
|
||||||
public AvailableRelease refreshUpdateCheckImpl() throws Exception {
|
@Override
|
||||||
try (var sc = ShellStore.createLocal().create().start()) {
|
public void prepareUpdateImpl() {
|
||||||
var latest = sc.executeStringSimpleCommand(
|
var changelogString =
|
||||||
"choco outdated -r --nocolor").lines().filter(s -> s.startsWith("xpipe")).findAny().orElseThrow().split("\\|")[2];
|
AppDownloads.downloadChangelog(lastUpdateCheckResult.getValue().getVersion(), false);
|
||||||
var isUpdate = isUpdate(latest);
|
var changelog = changelogString.orElse(null);
|
||||||
var rel = new AvailableRelease(
|
|
||||||
AppProperties.get().getVersion(),
|
var rel = new PreparedUpdate(
|
||||||
XPipeDistributionType.get().getId(),
|
AppProperties.get().getVersion(),
|
||||||
latest,
|
XPipeDistributionType.get().getId(),
|
||||||
"https://community.chocolatey.org/packages/xpipe/" + latest,
|
lastUpdateCheckResult.getValue().getVersion(),
|
||||||
null,
|
lastUpdateCheckResult.getValue().getReleaseUrl(),
|
||||||
null,
|
null,
|
||||||
Instant.now(),
|
changelog,
|
||||||
isUpdate);
|
lastUpdateCheckResult.getValue().getAssetType());
|
||||||
lastUpdateCheckResult.setValue(rel);
|
preparedUpdate.setValue(rel);
|
||||||
return lastUpdateCheckResult.getValue();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,15 +73,14 @@ public enum XPipeDistributionType {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (OsType.getLocal().equals(OsType.MACOS)) {
|
if (OsType.getLocal().equals(OsType.MACOS)) {
|
||||||
try (var brewOut = sc.command("brew info xpipe").start()) {
|
try (var brewOut = sc.command("brew list --casks --versions").start()) {
|
||||||
var out = brewOut.readStdoutDiscardErr();
|
var out = brewOut.readStdoutDiscardErr();
|
||||||
if (brewOut.getExitCode() == 0) {
|
if (brewOut.getExitCode() == 0) {
|
||||||
var split = out.split("\\|");
|
if (out.lines().anyMatch(s -> {
|
||||||
if (split.length == 2) {
|
var split = s.split(" ");
|
||||||
var version = split[1];
|
return split.length == 2 && split[0].equals("xpipe") && split[1].equals(AppProperties.get().getVersion());
|
||||||
if (AppProperties.get().getVersion().equals(version)) {
|
})) {
|
||||||
return HOMEBREW;
|
return HOMEBREW;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue