Skip to content

Commit

Permalink
Version 0.1
Browse files Browse the repository at this point in the history
  • Loading branch information
benediktwerner committed Dec 17, 2020
1 parent d865ae4 commit a18af54
Show file tree
Hide file tree
Showing 17 changed files with 551 additions and 107 deletions.
18 changes: 18 additions & 0 deletions Cargo.lock

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

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ semver = { version = "0.11", features = ["serde"] }
blake2s_simd = "0.5"
anyhow = "1.0"
zip = "0.5"
webbrowser = "0.5"

# [target.'cfg(windows)'.dependencies]
# winreg = "0.8"
57 changes: 57 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# ytinu Mod Manager

A Mod Manager for Unity Mods using the [BepInEx](https://github.com/BepInEx/BepInEx) Modding framework.

## How to use

1. Download the the correct ytinu version for your operating system:
- Windows: https://github.com/ytinu-mods/ytinu/releases/download/v0.1.0/ytinu.exe
- Linux: https://github.com/ytinu-mods/ytinu/releases/download/v0.1.0/ytinu
- MacOS: There currently aren't any pre-built executables for MacOS. Sorry! You can either compile ytinu yourself or install mods manually.
2. Run the downloaded executable.

**Note:** For the basic setup ytinu requires you to have a working Chromium based browser like Google Chrome or the new Microsoft Edge installed.
On newer versions of Windows 10 the correct Microsoft Edge should be installed by default. For other systems see the section below.

### Usage without a Chromium based browser

If you don't have or want to install a Chromium browser you can also use ytinu with any other regular browser with ytinu acting as the web server.

To do this you need to create or modify the configuration file
at `%appdata%\ytinu\config.json` (i.e. `C:\Users\<user>\AppData\Roaming\ytinu\config.json`) on Windows
or at `$HOME/Library/Application Support/ytinu/config.json` on MacOS
or at `$HOME/.config/ytinu/config.json` on other Unix systems and add the following:

```json
{
"open_ui": "browser"
}
```

This will attempt to automatically open ytinu in your default browser on startup.

Alternatively you can just launch the ytinu web server part, fixate the port on which it is opened and
use your own methods to view the UI. To do this change your configuration to this:

```json
{
"open_ui": "none",
"port": 1337 // Port on which ytinu should serve it's UI
}
```

If you launch ytinu with such a configuration you will also find an additional shutdown button in the menu bar to stop the ytinu server.
Remember that simply closing the browser window will do nothing to the program running in the background and ytinu currently only
refreshes mod metadata on startup.

## Compile ytinu

If you want to compile ytinu yourself, you need a decently up-to-date version of [Rust](https://rust-lang.org/) and [Node.js](https://nodejs.org/).

After that, it's fairly simple:

1. Build the frontend:
1. Go into the `sevelte` directory
2. Run `npm install` to install all dependencies
3. Run `npm run build`
2. Build the executable with `cargo build --release`
6 changes: 2 additions & 4 deletions TODO.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,8 @@
- Refresh info buttons (meta from inet and local mod loader state)
- Differentiate between game-specific and general mods
- Disable mods

- Update ytinu
- open in browser

- Support links
- https://github.com/electron/electron/issues/1344
- Auto-detect game location from registry
- https://stackoverflow.com/questions/34090258/find-steam-games-folder
- https://docs.rs/winreg/0.8.0/winreg/
Loading

0 comments on commit a18af54

Please sign in to comment.