- Config file on linux is not hardcoded to `~/.config/AM2RLauncher` anymore, and will now respect `$XDG_CONFIG_HOME`
- Data folder on linux is not hardcoded to `~/.local/share/AM2RLauncher` anymore. Instead it will now listen for `$AM2RLAUNCHERDATA` (on win too!) and respect `$XDG_DATA_HOME`
Profile Logging has been kept as is, until I figure out if AM2R on linux respects `$XDG_CONFIG_HOME`.
/// Current Path where the Launcher is located. For Linux this is redirected to ~/.local/share/AM2RLauncher, in order to be more compliant to the XDG Base Directory Specification.
/// Current Path where the Launcher is located. For more info, check <see cref="GenerateCurrentPath"/>.
elseif(Platform.IsGtk)currentOS="Linux";///teeeeechnically, windows users and macos users could run GTK applications as well, so this would prolly need clarification.
elseif(Platform.IsGtk)currentOS="Linux";///teeeeechnically, any OS could run GTK applications as well but it'd break a lot and is thus unsupported.
log.Error("Mod is for "+profile.OperatingSystem+" while current OS is "+Platform+". Cancelling mod import.");
log.Error("Mod is for "+profile.OperatingSystem+" while current OS is "+Platform+". Cancelling mod import.");
log.Info("User opened the profile directory for profile "+profileList[settingsProfileDropDown.SelectedIndex].Name+", which is "+profileList[settingsProfileDropDown.SelectedIndex].SaveLocation);
log.Info("User opened the profile directory for profile "+profileList[settingsProfileDropDown.SelectedIndex].Name+
", which is "+profileList[settingsProfileDropDown.SelectedIndex].SaveLocation);
if(Platform.IsGtk)returnFile.Exists(CrossPlatformOperations.CURRENTPATH+"/Profiles/"+profile.Name+"/AM2R.AppImage");//should we check for .AppRun as well?
@ -16,12 +16,15 @@ Linux needs the following dependencies installed:
- `openssl`
- `openssl`
- `fuse2`
- `fuse2`
As well as these dependencies to run AM2R:
- libopenal1:i386
- libpulse0:i386
Optionally, for APK creation any Java runtime is needed.
Optionally, for APK creation any Java runtime is needed.
### Arch Linux
### Arch Linux
On Arch Linux, you can install these by running this:
On Arch Linux, you can install these by running this:
(Multilib repositories are required, instructions on how to enable them can be found [here](https://wiki.archlinux.org/title/Official_repositories#Enabling_multilib))
(Multilib repositories are required, instructions on how to enable them can be found [here](https://wiki.archlinux.org/title/Official_repositories#Enabling_multilib))
For other distros, refer to your local package manager for instructions.
For other distros, refer to your local package manager for instructions.
@ -31,6 +34,12 @@ Downloads can be found at the [Release Page](https://github.com/AM2R-Community-D
Alternatively, for Arch Linux users an [AUR Package](https://aur.archlinux.org/packages/am2rlauncher/) also exist. Install it with `makepkg -si` or use your favourite AUR helper.
Alternatively, for Arch Linux users an [AUR Package](https://aur.archlinux.org/packages/am2rlauncher/) also exist. Install it with `makepkg -si` or use your favourite AUR helper.
## Configuration and Data Files
The AM2RLauncher stores its files in the following places:
- On Windows, it stores the config file to the `AM2RLauncher.exe.config` next to the binary, and its data files in the same folder as the binary.
- On Linux, it stores the config file to `$XDG_CONFIG_HOME/AM2RLauncher` and its data files to `$XDG_DATA_HOME/AM2RLauncher` (which are defaulting back to `~/.config` and `~/.local/share` respectively).
The AM2RLauncher data can get quite big, so if you wish to change where it stores it, you can do so with the `AM2RLAUNCHERDATA` environment variable (i.e `AM2RLAUNCHERDATA="D:\MyLauncherData"` or `AM2RLAUNCHERDATA="/mnt/bigDrive/launcherData"`).
# Compiling Instructions:
# Compiling Instructions:
## Dependencies
## Dependencies
For compiling for Windows .Net Framework 4.8 SDK is needed. For Linux .Net Core 5.0 SDK is needed.
For compiling for Windows .Net Framework 4.8 SDK is needed. For Linux .Net Core 5.0 SDK is needed.