First working env (Bug with keyboard input)
This commit is contained in:
parent
1c9f2c2fd1
commit
2fc5ff7314
2 changed files with 56 additions and 8 deletions
35
README.md
35
README.md
|
@ -1,8 +1,37 @@
|
||||||
# unreal_engine_bug_flake
|
# UEFN Reproduce Env
|
||||||
|
|
||||||
Project used to declare wine configuration to help developer to find the problem
|
Project used to declare wine configuration to help developer to find the problem
|
||||||
|
|
||||||
bugs.winehq.org/show_bug.cgi?id=56654
|
|
||||||
|
|
||||||
Usefull links
|
Usefull links
|
||||||
|
- https://bugs.winehq.org/show_bug.cgi?id=56654
|
||||||
- https://github.com/fufexan/nix-gaming/blob/master/pkgs/star-citizen/default.nix
|
- https://github.com/fufexan/nix-gaming/blob/master/pkgs/star-citizen/default.nix
|
||||||
|
|
||||||
|
**Requirements:** Nix installed see https://nixos.org/download/
|
||||||
|
> Otherwise, you can see flake.nix file to known how configure you're env.
|
||||||
|
>
|
||||||
|
> All needed configuration is fully declarated in the flake.nix file.
|
||||||
|
|
||||||
|
**Step to reproduce:**
|
||||||
|
|
||||||
|
1. Enter in shell
|
||||||
|
|
||||||
|
```bash
|
||||||
|
nix develop --extra-experimental-features "nix-command flakes"
|
||||||
|
```
|
||||||
|
|
||||||
|
Can be longer because it install required wine version and dependencies at first.
|
||||||
|
And then, it download Epic Games Official Launcher, configure Wineprefix with required dependencices and Run Official Launcher.
|
||||||
|
|
||||||
|
2. Run Epic Games Launcher and Install Unreal Engine for Fornite
|
||||||
|
|
||||||
|
```bash
|
||||||
|
run
|
||||||
|
```
|
||||||
|
|
||||||
|
It run Epic Games Launcher Executable with current prefix.
|
||||||
|
|
||||||
|
> Note: You can stop wineserver directly with `stop`
|
||||||
|
>
|
||||||
|
> And clean wineprefix with `clean`
|
||||||
|
|
||||||
|
3. Run Unreal Engine for Fornite
|
27
flake.nix
27
flake.nix
|
@ -22,7 +22,15 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
# concat winetricks args
|
# concat winetricks args
|
||||||
winetricksArgs = concatStringsSep " " [ "corefonts" ];
|
winetricksPackages = [ "corefonts" ];
|
||||||
|
winetricksArgs =
|
||||||
|
if (builtins.length winetricksPackages) > 0
|
||||||
|
then concatStringsSep " " winetricksPackages
|
||||||
|
else "-V";
|
||||||
|
|
||||||
|
# concat dll overrides
|
||||||
|
wineDllOverrides = ["winemenubuilder.exe=d"];
|
||||||
|
wineDllOverridesEnv = pkgs.lib.strings.concatStringsSep "," wineDllOverrides;
|
||||||
|
|
||||||
install_script = writeShellScriptBin "install" ''
|
install_script = writeShellScriptBin "install" ''
|
||||||
echo "Installing Dependencies"
|
echo "Installing Dependencies"
|
||||||
|
@ -31,35 +39,46 @@
|
||||||
echo "Dependencies Installed"
|
echo "Dependencies Installed"
|
||||||
|
|
||||||
echo "Installing Epic Games Launcher"
|
echo "Installing Epic Games Launcher"
|
||||||
wine64 ${epic_games_launcher} /S
|
$WINE ${epic_games_launcher} /q
|
||||||
wineserver -k
|
wineserver -k
|
||||||
echo "Epic Games Launcher Installed"
|
echo "Epic Games Launcher Installed"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
stop_script = writeShellScriptBin "stop" ''
|
||||||
|
wineserver -k
|
||||||
|
'';
|
||||||
|
|
||||||
clean_script = writeShellScriptBin "clean" ''
|
clean_script = writeShellScriptBin "clean" ''
|
||||||
|
wineserver -k
|
||||||
rm -rf $WINEPREFIX
|
rm -rf $WINEPREFIX
|
||||||
'';
|
'';
|
||||||
|
|
||||||
run_script = writeShellScriptBin "run" ''
|
run_script = writeShellScriptBin "run" ''
|
||||||
|
$WINE "$WINEPREFIX/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe"
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
devShells = {
|
devShells = {
|
||||||
default = pkgs.mkShell {
|
default = pkgs.mkShell {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
wine64Packages.unstableFull
|
# Wine packages
|
||||||
|
wineWow64Packages.unstableFull
|
||||||
winetricks
|
winetricks
|
||||||
|
|
||||||
|
# Custom scripts
|
||||||
install_script
|
install_script
|
||||||
run_script
|
run_script
|
||||||
|
stop_script
|
||||||
clean_script
|
clean_script
|
||||||
];
|
];
|
||||||
|
|
||||||
shellHook = ''
|
shellHook = ''
|
||||||
export WINETRICKS_LATEST_VERSION_CHECK=disabled
|
export WINETRICKS_LATEST_VERSION_CHECK=disabled
|
||||||
export WINEPREFIX=$(pwd)/wine_prefix
|
export WINEPREFIX=$(pwd)/wine_prefix
|
||||||
|
export WINE=wine
|
||||||
export WINEARCH="win64"
|
export WINEARCH="win64"
|
||||||
export WINEDEBUG=-all
|
export WINEDEBUG=-all
|
||||||
|
export WINEDLLOVERRIDES="${wineDllOverridesEnv}"
|
||||||
|
|
||||||
if [ ! -d "$WINEPREFIX" ]; then
|
if [ ! -d "$WINEPREFIX" ]; then
|
||||||
install
|
install
|
||||||
|
|
Loading…
Add table
Reference in a new issue