mirror of
https://github.com/rfvgyhn/min-ed-launcher.git
synced 2026-02-04 14:55:33 +00:00
fix autorun requiring a filter
now it will select the first in the list of products fixes #173
This commit is contained in:
@ -1,5 +1,11 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## [unreleased]
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
- Fix `/autorun` requiring a filter (`/edo`, `/edh`, etc...). `/autorun` without a filter will launch the first
|
||||||
|
product in your _Available Products_ list. ([#173])
|
||||||
|
|
||||||
## [0.12.1] - 2025-06-16
|
## [0.12.1] - 2025-06-16
|
||||||
|
|
||||||
### Security
|
### Security
|
||||||
@ -432,4 +438,5 @@ Initial release
|
|||||||
[#156]: https://github.com/rfvgyhn/min-ed-launcher/issues/156
|
[#156]: https://github.com/rfvgyhn/min-ed-launcher/issues/156
|
||||||
[#157]: https://github.com/rfvgyhn/min-ed-launcher/issues/157
|
[#157]: https://github.com/rfvgyhn/min-ed-launcher/issues/157
|
||||||
[#161]: https://github.com/rfvgyhn/min-ed-launcher/issues/161
|
[#161]: https://github.com/rfvgyhn/min-ed-launcher/issues/161
|
||||||
[#163]: https://github.com/rfvgyhn/min-ed-launcher/issues/163
|
[#163]: https://github.com/rfvgyhn/min-ed-launcher/issues/163
|
||||||
|
[#173]: https://github.com/rfvgyhn/min-ed-launcher/issues/173
|
||||||
26
README.md
26
README.md
@ -84,14 +84,14 @@ Frontier's website. Linking is only required if you purchased the game via Steam
|
|||||||
1. Right click _Elite Dangerous_ in your Steam library
|
1. Right click _Elite Dangerous_ in your Steam library
|
||||||
2. Select _properties_
|
2. Select _properties_
|
||||||
3. In the _general_ tab, click _Set Launch Options_
|
3. In the _general_ tab, click _Set Launch Options_
|
||||||
4. **Windows users** - Set the value to `cmd /c "MinEdLauncher.exe %command% /autorun /autoquit /edo"`
|
4. **Windows users** - Set the value to `cmd /c "MinEdLauncher.exe %command% /autorun /autoquit"`
|
||||||
|
|
||||||
**Linux users** - The command will depend on which terminal emulator you use. Examples for
|
**Linux users** - The command will depend on which terminal emulator you use. Examples for
|
||||||
[alacritty], [gnome-terminal] and [konsole] are below.
|
[alacritty], [gnome-terminal] and [konsole] are below.
|
||||||
|
|
||||||
`alacritty -e ./MinEdLauncher %command% /autorun /autoquit /edo`
|
`alacritty -e ./MinEdLauncher %command% /autorun /autoquit`
|
||||||
`gnome-terminal -- ./MinEdLauncher %command% /autorun /autoquit /edo`
|
`gnome-terminal -- ./MinEdLauncher %command% /autorun /autoquit`
|
||||||
`konsole -e ./MinEdLauncher %command% /autorun /autoquit /edo`
|
`konsole -e ./MinEdLauncher %command% /autorun /autoquit`
|
||||||
|
|
||||||
**Steam Deck users** - See [wiki](https://github.com/rfvgyhn/min-ed-launcher/wiki/Steam-Deck-Usage) for special instructions
|
**Steam Deck users** - See [wiki](https://github.com/rfvgyhn/min-ed-launcher/wiki/Steam-Deck-Usage) for special instructions
|
||||||
5. Launch your game as you normally would in Steam
|
5. Launch your game as you normally would in Steam
|
||||||
@ -115,13 +115,13 @@ Either configure the Epic client and use the provided Bootstrap exe or use [lege
|
|||||||
1. Click _Settings_ in the Epic Games Launcher
|
1. Click _Settings_ in the Epic Games Launcher
|
||||||
2. Scroll down to the _Manage Games_ section and click _Elite Dangerous_
|
2. Scroll down to the _Manage Games_ section and click _Elite Dangerous_
|
||||||
3. Check _Additional Command Line Arguments_
|
3. Check _Additional Command Line Arguments_
|
||||||
4. Set the value to `/autorun /autoquit /edo`
|
4. Set the value to `/autorun /autoquit`
|
||||||
4. Launch your game as you normally would in Epic
|
4. Launch your game as you normally would in Epic
|
||||||
* Legendary
|
* Legendary
|
||||||
|
|
||||||
Use legendary's `override-exe` argument via windows terminal
|
Use legendary's `override-exe` argument via windows terminal
|
||||||
|
|
||||||
`legendary.exe launch 9c203b6ed35846e8a4a9ff1e314f6593 --override-exe MinEdLauncher.exe /autorun /edo /autoquit`
|
`legendary.exe launch 9c203b6ed35846e8a4a9ff1e314f6593 --override-exe MinEdLauncher.exe /autorun /autoquit`
|
||||||
|
|
||||||
##### Linux
|
##### Linux
|
||||||
This method utilizes [Legendary].
|
This method utilizes [Legendary].
|
||||||
@ -130,7 +130,7 @@ This method utilizes [Legendary].
|
|||||||
2. Pass an exchange code to the launcher by either
|
2. Pass an exchange code to the launcher by either
|
||||||
1. Using the `--dry-run` flag and passing the arguments directly to `MinEdLauncher` via command substitution
|
1. Using the `--dry-run` flag and passing the arguments directly to `MinEdLauncher` via command substitution
|
||||||
```sh
|
```sh
|
||||||
WINEPREFIX=/your/wine/prefix /path/to/MinEdLauncher $(legendary launch --dry-run 9c203b6ed35846e8a4a9ff1e314f6593 2>&1 | grep "Launch parameters" | cut -d':' -f 3-) /autorun /edo /autoquit
|
WINEPREFIX=/your/wine/prefix /path/to/MinEdLauncher $(legendary launch --dry-run 9c203b6ed35846e8a4a9ff1e314f6593 2>&1 | grep "Launch parameters" | cut -d':' -f 3-) /autorun /autoquit
|
||||||
```
|
```
|
||||||
2. Using the `get-token` command and passing it to `MinEdLauncher` via Steam and command substitution
|
2. Using the `get-token` command and passing it to `MinEdLauncher` via Steam and command substitution
|
||||||
```shell
|
```shell
|
||||||
@ -144,7 +144,7 @@ This method utilizes [Legendary].
|
|||||||
`MinEdLauncher.Bootstrap` is for Epic only and may be ignored.
|
`MinEdLauncher.Bootstrap` is for Epic only and may be ignored.
|
||||||
4. Create a shortcut to `MinEdLauncher.exe` by right-clicking it and selecting _create shortcut_
|
4. Create a shortcut to `MinEdLauncher.exe` by right-clicking it and selecting _create shortcut_
|
||||||
5. Right-click the newly made shortcut and select _properties_
|
5. Right-click the newly made shortcut and select _properties_
|
||||||
6. Add the `/frontier profile-name` argument + your other desired arguments to the end of the _Target_ textbox (e.g. `C:\path\to\MinEdLauncher.exe /frontier profile-name /autorun /autoquit /edo`)
|
6. Add the `/frontier profile-name` argument + your other desired arguments to the end of the _Target_ textbox (e.g. `C:\path\to\MinEdLauncher.exe /frontier profile-name /autorun /autoquit`)
|
||||||
7. Click _Ok_
|
7. Click _Ok_
|
||||||
|
|
||||||
You can place this shortcut anywhere. It doesn't have to live in the Elite Dangerous install folder.
|
You can place this shortcut anywhere. It doesn't have to live in the Elite Dangerous install folder.
|
||||||
@ -276,9 +276,9 @@ double backslash (`\\`) instead of a single backslash (`\`).
|
|||||||
By using the `/frontier profile-name` argument, you can login with any number of Frontier accounts with a
|
By using the `/frontier profile-name` argument, you can login with any number of Frontier accounts with a
|
||||||
single game installation. Your launch command might look like the following
|
single game installation. Your launch command might look like the following
|
||||||
|
|
||||||
Windows: `cmd /c "MinEdLauncher.exe %command% /frontier profile-name /autorun /autoquit /edo"`
|
Windows: `cmd /c "MinEdLauncher.exe %command% /frontier profile-name /autorun /autoquit"`
|
||||||
|
|
||||||
Linux: `alacritty -e ./MinEdLauncher %command% /frontier profile-name /autorun /autoquit /edo`
|
Linux: `alacritty -e ./MinEdLauncher %command% /frontier profile-name /autorun /autoquit`
|
||||||
|
|
||||||
See the [setup] section above for how you might run this on your platform.
|
See the [setup] section above for how you might run this on your platform.
|
||||||
|
|
||||||
@ -301,7 +301,7 @@ In order to authenticate with an Epic account:
|
|||||||
```
|
```
|
||||||
* **Manually** - Within the Epic launcher, click your username and select manage account. This will open a browser. The URL will contain an `exchangeCode=code`
|
* **Manually** - Within the Epic launcher, click your username and select manage account. This will open a browser. The URL will contain an `exchangeCode=code`
|
||||||
parameter. Copy the code before the page is redirected (can just hit the stop button in your browser).
|
parameter. Copy the code before the page is redirected (can just hit the stop button in your browser).
|
||||||
2. Add the `-auth_password=code` argument to your launch options. `cmd /c "MinEdLauncher.exe %command% /autoquit /edo -auth_password=code"`
|
2. Add the `-auth_password=code` argument to your launch options. `cmd /c "MinEdLauncher.exe %command% /autoquit -auth_password=code"`
|
||||||
|
|
||||||
You can also create a separate shortcut. Right click game in your Steam library and create desktop shortcut. Edit the properties of the shortcut
|
You can also create a separate shortcut. Right click game in your Steam library and create desktop shortcut. Edit the properties of the shortcut
|
||||||
to include the `-auth_password=code` argument. `"C:\Program Files (x86)\Steam\Steam.exe" -gameidlaunch 359320 -auth_password=code`. Then just
|
to include the `-auth_password=code` argument. `"C:\Program Files (x86)\Steam\Steam.exe" -gameidlaunch 359320 -auth_password=code`. Then just
|
||||||
@ -327,8 +327,8 @@ Example _Target_ field for a shortcut that launches Odyssey:
|
|||||||
desktop file. e.g. `update-desktop-database ~/.local/share/applications/`
|
desktop file. e.g. `update-desktop-database ~/.local/share/applications/`
|
||||||
3. Set the WM_CLASS/Application Id property in your launch options. How you do this will depend on your terminal
|
3. Set the WM_CLASS/Application Id property in your launch options. How you do this will depend on your terminal
|
||||||
emulator. Examples are below:
|
emulator. Examples are below:
|
||||||
* Alacritty - `alacritty --class min-ed-launcher -e ./MinEdLauncher %command% /autorun /autoquit /edo`
|
* Alacritty - `alacritty --class min-ed-launcher -e ./MinEdLauncher %command% /autorun /autoquit`
|
||||||
* kitty - `kitty --class min-ed-launcher ./MinEdLauncher %command% /autorun /autoquit /edo`
|
* kitty - `kitty --class min-ed-launcher ./MinEdLauncher %command% /autorun /autoquit`
|
||||||
|
|
||||||
### Troubleshooting
|
### Troubleshooting
|
||||||
Debug logging is placed in the standard log location for your operating system:
|
Debug logging is placed in the standard log location for your operating system:
|
||||||
|
|||||||
@ -183,7 +183,7 @@ let filterByUpdateRequired (products: Product list) =
|
|||||||
|
|
||||||
let selectProduct (whitelist: OrdinalIgnoreCaseSet) (products: ProductDetails[]) =
|
let selectProduct (whitelist: OrdinalIgnoreCaseSet) (products: ProductDetails[]) =
|
||||||
if whitelist.IsEmpty then
|
if whitelist.IsEmpty then
|
||||||
None
|
products |> Array.tryHead
|
||||||
else
|
else
|
||||||
products
|
products
|
||||||
|> Array.filter (fun p -> p.Filters |> OrdinalIgnoreCaseSet.intersect whitelist |> OrdinalIgnoreCaseSet.any)
|
|> Array.filter (fun p -> p.Filters |> OrdinalIgnoreCaseSet.intersect whitelist |> OrdinalIgnoreCaseSet.any)
|
||||||
|
|||||||
@ -421,11 +421,16 @@ open MinEdLauncher.Tests.Extensions
|
|||||||
Expect.equal result[1] p2 ""
|
Expect.equal result[1] p2 ""
|
||||||
} ]
|
} ]
|
||||||
testList "selectProduct" [
|
testList "selectProduct" [
|
||||||
testTask "Selects none when whitelist is empty" {
|
testTask "Selects head when whitelist is empty" {
|
||||||
let products = [| product |]
|
let products = [|
|
||||||
|
{ product with Filters = [| "filter" |] |> OrdinalIgnoreCaseSet.ofSeq; Sku = "p1" }
|
||||||
|
{ product with Filters = [| "filter" |] |> OrdinalIgnoreCaseSet.ofSeq; Sku = "p2" }
|
||||||
|
|]
|
||||||
|
let expected = products |> Array.head |> Some
|
||||||
|
|
||||||
let actual = Product.selectProduct OrdinalIgnoreCaseSet.empty products
|
let actual = Product.selectProduct OrdinalIgnoreCaseSet.empty products
|
||||||
|
|
||||||
Expect.isNone actual ""
|
Expect.equal actual expected ""
|
||||||
}
|
}
|
||||||
testTask "Selects none when filters is empty" {
|
testTask "Selects none when filters is empty" {
|
||||||
let products = [|
|
let products = [|
|
||||||
|
|||||||
Reference in New Issue
Block a user