Skip to content

Commit

Permalink
Version 0.14.0 (#552)
Browse files Browse the repository at this point in the history
  • Loading branch information
Bwc9876 authored May 17, 2024
2 parents f1e55d8 + 27d529c commit 668a0b4
Show file tree
Hide file tree
Showing 24 changed files with 1,682 additions and 1,209 deletions.
1,125 changes: 698 additions & 427 deletions Cargo.lock

Large diffs are not rendered by default.

16 changes: 11 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,16 @@ This is the monorepo for the new <a href="https://www.mobiusdigitalgames.com/out

## Platform Support

| **Platform** | **Supported** |
| :----------: | :-----------: |
| **Windows** ||
| **Linux** ||
| **Deck** ||
| **Platform** | **Supported** |
| :----------: | :-----------: |
| **Windows** ||
| **Linux** ||
| **Deck** ||
| **Mac** |* |

You'll want to check out the [Help document](owmods_gui/HELP.md) for platform-specific instruction and caveats.

\* Currently not native, but you can [check out this Reddit post](https://www.reddit.com/r/outerwilds/comments/1b9ysbm/outer_wilds_is_playable_on_macos_with_an_m1/) by u/FoxGray for a way to run it.

## Related Repos

Expand All @@ -47,5 +52,6 @@ This is the monorepo for the new <a href="https://www.mobiusdigitalgames.com/out
- [JSpoonBaker](https://github.com/Spoonbaker)
- Translations:
- Chinese: [SmallGarfield](https://github.com/xiaojiafei520)
- Vietnamese: [KNNFx](https://github.com/KNNFx)

And the support of the [Outer Wilds Modding Discord](https://discord.com/invite/wusTQYbYTc)
6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion nix/owmods-cli.nix
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
}:
rustPlatform.buildRustPackage rec {
pname = "owmods-cli";
version = "0.13.1";
version = "0.14.0";

# Prevent unneeded rebuilds
src = with lib.fileset;
Expand Down
2 changes: 1 addition & 1 deletion nix/owmods-gui.nix
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
}:
rustPlatform.buildRustPackage rec {
pname = "owmods-gui";
version = "0.13.2";
version = "0.14.0";

VITE_VERSION_SUFFIX = "-nix";

Expand Down
2 changes: 2 additions & 0 deletions nix/shell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ pkgs.mkShell {
cargo-tauri
typeshare
];
OPENSSL_LIB_DIR = "${pkgs.openssl.out}/lib";
OPENSSL_INCLUDE_DIR = "${pkgs.openssl.dev}/include";
shellHook = ''
export GIO_MODULE_DIR=${pkgs.glib-networking}/lib/gio/modules/
'';
Expand Down
18 changes: 9 additions & 9 deletions owmods_cli/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "owmods_cli"
authors = ["Bwc9876 <[email protected]>"]
description = "A CLI Tool To Manage OWML Mods"
version = "0.13.1"
version = "0.14.0"
edition = "2021"
readme = "./README.md"
repository = "https://github.com/ow-mods/ow-mod-man/"
Expand All @@ -12,19 +12,19 @@ license = "GPL-3.0-or-later"
depends = "libssl1.1"

[dependencies]
owmods_core = { version = "0.13.1", path = "../owmods_core" }
clap = { version = "4.5.3", features = ["derive"] }
owmods_core = { version = "0.14.0", path = "../owmods_core" }
clap = { version = "4.5.4", features = ["derive"] }
colored = "2.1.0"
anyhow = "1.0.81"
anyhow = "1.0.82"
indicatif = { version = "0.17.8", features = ["improved_unicode"] }
tokio = { version = "1.36.0", features = ["macros", "rt-multi-thread"] }
tokio = { version = "1.37.0", features = ["macros", "rt-multi-thread"] }
log = { version = "0.4.21", features = ["std"] }
clap_complete = "4.5.1"
serde_json = "1.0.114"
clap_complete = "4.5.2"
serde_json = "1.0.116"

[build-dependencies]
clap = { version = "4.5.3", features = ["derive"] }
clap_complete = "4.5.1"
clap = { version = "4.5.4", features = ["derive"] }
clap_complete = "4.5.2"
clap_mangen = "0.2.20"

[[bin]]
Expand Down
21 changes: 10 additions & 11 deletions owmods_core/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "owmods_core"
authors = ["Bwc9876 <[email protected]>"]
description = "The core library for the Outer Wilds Mod Manager"
version = "0.13.1"
version = "0.14.0"
edition = "2021"
readme = "./README.md"
license = "GPL-3.0-or-later"
Expand All @@ -11,32 +11,31 @@ repository = "https://github.com/ow-mods/ow-mod-man/"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
opener = "0.6.1"
serde = { version = "1.0.200", features = ["derive"] }
serde_json = "1.0.116"
opener = "0.7.0"
directories = "5.0.1"
reqwest = { version = "0.11.27", default-features = false, features = [
reqwest = { version = "0.12.4", default-features = false, features = [
"blocking",
"json",
"rustls-tls",
] }
glob = "0.3.1"
version-compare = "0.2.0"
anyhow = "1.0.81"
anyhow = "1.0.82"
zip = { version = "0.6.6", default-features = false, features = [
"deflate",
"zstd",
] }
futures = "0.3.30"
log = "0.4.21"
tokio = { version = "1.36.0", features = ["net", "time", "process", "macros"] }
serde_repr = "0.1.18"
tokio = { version = "1.37.0", features = ["net", "time", "process", "macros"] }
serde_repr = "0.1.19"
uuid = { version = "1.8.0", features = ["v4", "fast-rng"] }
typeshare = "1.0.2"
typeshare = "1.0.3"
lazy_static = "1.4.0"
tempfile = "3.10.1"
unicode-normalization = "0.1.23"
regex = "1.10.3"
regex = "1.10.4"

[dev-dependencies]
tokio-test = "0.4.4"
11 changes: 7 additions & 4 deletions owmods_core/src/toggle.rs
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,8 @@ pub fn toggle_mod(
continue;
}
let show_warning = if enabled {
toggled_mods.push(dep_mod.manifest.unique_name.clone());
to_check.extend(dep_mod.manifest.dependencies.clone().unwrap_or_default());
_toggle_mod(dep_mod, enabled)
} else {
let mut flag = true;
Expand All @@ -138,16 +140,17 @@ pub fn toggle_mod(
flag = false;
}
if flag {
toggled_mods.push(dep_mod.manifest.unique_name.clone());
to_check
.extend(dep_mod.manifest.dependencies.clone().unwrap_or_default());
_toggle_mod(dep_mod, enabled)
} else {
Ok(false)
}
};
if show_warning? {
}?;
if show_warning {
show_warnings_for.push(dep_mod.manifest.unique_name.clone());
}
toggled_mods.push(dep_mod.manifest.unique_name.clone());
to_check.extend(dep_mod.manifest.dependencies.clone().unwrap_or_default());
} else {
warn!("Dependency {} Was Not Found, Ignoring.", dep);
}
Expand Down
7 changes: 2 additions & 5 deletions owmods_core/src/updates.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ use std::path::PathBuf;

use anyhow::Result;
use log::{info, warn};
use version_compare::Cmp;

use crate::{
analytics::{send_analytics_event, AnalyticsEventName},
Expand All @@ -29,7 +28,7 @@ pub fn fix_version_post_update(local_mod: &LocalMod, remote_mod: &RemoteMod) ->
remote_mod.version, local_mod.manifest.version
);
let mut manifest = local_mod.manifest.clone();
manifest.version = remote_mod.version.clone();
manifest.version.clone_from(&remote_mod.version);
let manifest_path = PathBuf::from(local_mod.mod_path.clone()).join("manifest.json");
serialize_to_json(&manifest, &manifest_path, false)?;
Ok(())
Expand Down Expand Up @@ -58,9 +57,7 @@ pub fn check_mod_needs_update<'a>(
};
if let Some(remote_mod) = remote_mod {
(
version_compare::compare(&remote_mod.version, &local_mod.manifest.version)
.map(|o| o == Cmp::Gt)
.unwrap_or_else(|_| local_mod.manifest.version != remote_mod.version),
local_mod.manifest.version != remote_mod.version,
Some(remote_mod),
)
} else {
Expand Down
5 changes: 5 additions & 0 deletions owmods_gui/HELP.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,11 @@ Using the manager on Linux should be easy **proton and wine are not required**.

The manager can be installed on Steam Deck in Desktop Mode in the Discover app.

The mod manager requires that the game is installed in `~/.steam/steam/steamapps/common/Outer Wilds` or `~/Games/Heroic/OuterWilds`.

When selecting game path **DO NOT** use the browse button, on Flatpak this tries to open a portal which
won't work, you'll need to enter the path manually or copy it.

Note that you won't be able to launch the game from the manager when in steam deck's game mode. But so long as you've *pressed* "Launch Game" at least once, you can launch the game directly and it will still be modded.

**You'll also need to change your controller layout to the "Mouse Only" template.**
Expand Down
26 changes: 15 additions & 11 deletions owmods_gui/backend/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
[package]
name = "owmods_gui"
version = "0.13.2"
authors = ["Bwc9876 <[email protected]>"]
description = "A GUI Tool To Manage OWML Mods"
version = "0.14.0"
readme = "./README.md"
repository = "https://github.com/ow-mods/ow-mod-man/"
license = "GPL-3.0-or-later"
edition = "2021"

[build-dependencies]
tauri-build = { version = "1.5.1", features = [] }

[dependencies]
owmods_core = { version = "0.13.1", path = "../../owmods_core" }
serde_json = "1.0"
serde = { version = "1.0", features = ["derive"] }
tauri = { version = "1.6.1", features = [ "clipboard-write-text",
owmods_core = { version = "0.14.0", path = "../../owmods_core" }
serde_json = "1.0.116"
serde = { version = "1.0.200", features = ["derive"] }
tauri = { version = "1.6.2", features = [ "process-exit", "clipboard-write-text",
"app-all",
"dialog-ask",
"dialog-confirm",
Expand All @@ -25,17 +29,17 @@ tauri = { version = "1.6.1", features = [ "clipboard-write-text",
"window-set-title",
# "reqwest-native-tls-vendored"
] }
anyhow = "1.0.81"
tokio = { version = "1.36.0", features = ["sync", "macros"] }
anyhow = "1.0.82"
tokio = { version = "1.37.0", features = ["sync", "macros"] }
log = { version = "0.4.21", features = ["std", "serde"] }
typeshare = "1.0.2"
typeshare = "1.0.3"
notify = { version = "6.1.1", default-features = false, features = [
"macos_kqueue",
] }
regex = "1.10.3"
time = { version = "0.3.34", features = ["macros", "local-offset"] }
regex = "1.10.4"
time = { version = "0.3.36", features = ["macros", "local-offset"] }
tauri-plugin-deep-link = "0.1.2"
opener = "0.6.1"
opener = "0.7.0"
tauri-plugin-window-state = "0.1.1"

[features]
Expand Down
1 change: 1 addition & 0 deletions owmods_gui/backend/src/gui_config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ pub enum Theme {
#[derive(Default, Serialize, Deserialize, Clone)]
pub enum Language {
Chinese,
Vietnamese,
Wario,
#[default]
#[serde(other)]
Expand Down
1 change: 1 addition & 0 deletions owmods_gui/backend/src/logging.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ pub struct Logger {

#[typeshare]
#[derive(Serialize, Clone)]
#[allow(dead_code)] // Clippy marks this as dead??
#[serde(rename_all = "camelCase")]
struct LogPayload {
log_type: Level,
Expand Down
3 changes: 3 additions & 0 deletions owmods_gui/backend/tauri.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@
"os": {
"all": true
},
"process": {
"exit": true
},
"shell": {
"open": "(^https://(www\\.)?(github.com|outerwildsmods.com|paypal.me|patreon.com|buymeacoffee.com|cash.app|ko-fi.com)/)|(^https://(www\\.)?discord.gg/wusTQYbYTc$)"
},
Expand Down
40 changes: 20 additions & 20 deletions owmods_gui/frontend/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "owmods-gui-frontend",
"private": true,
"version": "0.13.2",
"version": "0.14.0",
"type": "module",
"scripts": {
"dev": "vite",
Expand All @@ -19,30 +19,30 @@
},
"dependencies": {
"@emotion/react": "11.11.4",
"@emotion/styled": "11.11.0",
"@fontsource/roboto": "5.0.12",
"@mui/icons-material": "5.15.14",
"@mui/lab": "5.0.0-alpha.169",
"@mui/material": "5.15.14",
"@tauri-apps/api": "1.5.3",
"react": "18.2.0",
"react-dom": "18.2.0",
"@emotion/styled": "11.11.5",
"@fontsource/roboto": "5.0.13",
"@mui/icons-material": "5.15.18",
"@mui/lab": "5.0.0-alpha.170",
"@mui/material": "5.15.18",
"@tauri-apps/api": "1.5.6",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-error-boundary": "4.0.13",
"react-virtuoso": "4.7.4"
"react-virtuoso": "4.7.10"
},
"devDependencies": {
"@testing-library/react": "14.2.2",
"@types/react": "18.2.67",
"@types/react-dom": "18.2.22",
"@typescript-eslint/eslint-plugin": "7.3.1",
"@typescript-eslint/parser": "7.3.1",
"@testing-library/react": "15.0.7",
"@types/react": "18.3.2",
"@types/react-dom": "18.3.0",
"@typescript-eslint/eslint-plugin": "7.9.0",
"@typescript-eslint/parser": "7.9.0",
"@vitejs/plugin-react": "4.2.1",
"eslint": "8.57.0",
"eslint": "^8.57.0",
"eslint-plugin-react": "7.34.1",
"eslint-plugin-react-hooks": "4.6.0",
"eslint-plugin-react-hooks": "4.6.2",
"prettier": "3.2.5",
"typescript": "5.4.3",
"vite": "5.2.2",
"vite-imagetools": "6.2.9"
"typescript": "5.4.5",
"vite": "5.2.11",
"vite-imagetools": "7.0.2"
}
}
Loading

0 comments on commit 668a0b4

Please sign in to comment.