Skip to content

Instantly share code, notes, and snippets.

@GeoffreyCoulaud
Last active December 21, 2023 01:59
Show Gist options
  • Star 9 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save GeoffreyCoulaud/2cd4f1dc1712dd0d3d66439ecfa55d8b to your computer and use it in GitHub Desktop.
Save GeoffreyCoulaud/2cd4f1dc1712dd0d3d66439ecfa55d8b to your computer and use it in GitHub Desktop.
PROOF OF CONCEPT - Installing TeknoParrot on Linux

Installing TeknoParrot on Linux

⚠️ You should not execute scripts that you don't understand and trust from the internet.

1. Using Lutris

Both methods need you to provide a teknoparrot release archive. You can find it here.

Install from Lutris' website

Note : TeknoParrot is at the moment pending on Lutris.net, and so is my installer. You can find my install script on Lutris

Install from a local file

lutris --install teknoparrot-lutris.yml

2. Using a shell script

Please only use this method if you absolutely can't use Lutris.

This will use winetricks to setup needed dependencies for you and install teknoparrot in its own prefix, located at ~/.local/share/wineprefixes/teknoparrot.

Install

  • Dowload teknoparrot from its official website
  • Install wine, winetricks, unrar and unzip if you don't have them
  • Run the install script teknoparrot.sh install <path_to_teknoparrot_rar_archive> (takes around 25 minutes)
  • Start Teknoparrot teknoparrot.sh start
  • Install only the UI updates then let it restart
  • On the left, install updates. If errors happen, start again with teknoparrot.sh start and retry
  • When no updates are found, it's ready to use

Start teknoparrot

teknoparrot.sh start

Uninstall

teknoparrot.sh uninstall

Notes

This gist is only a proof of concept and a sticky note. Reddit thread asking for help

files:
- archive: N/A:Select a teknoparrot release archive
game:
exe: $GAMEDIR/drive_c/Program\ Files/teknoparrot/TeknoParrotUi.exe
prefix: $GAMEDIR
working_dir: $GAMEDIR/drive_c/Program\ Files/teknoparrot
installer:
- task:
app: vcrun2010
name: winetricks
silent: true
- task:
app: dotnet462
name: winetricks
silent: true
- extract:
dst: $GAMEDIR/drive_c/Program\ Files/teknoparrot
file: archive
- write_file:
content: "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<ParrotData xmlns:xsi=\"\
http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"\
>\n\t<UseSto0ZDrivingHack>false</UseSto0ZDrivingHack>\n\t<StoozPercent>0</StoozPercent>\n\
\t<FullAxisGas>false</FullAxisGas>\n\t<FullAxisBrake>false</FullAxisBrake>\n\
\t<ReverseAxisGas>false</ReverseAxisGas>\n\t<ReverseAxisBrake>false</ReverseAxisBrake>\n\
\t<ExitGameKey>0x1B</ExitGameKey>\n\t<PauseGameKey>0x13</PauseGameKey>\n\t<SaveLastPlayed>false</SaveLastPlayed>\n\
\t<UseDiscordRPC>false</UseDiscordRPC>\n\t<SilentMode>false</SilentMode>\n\t\
<CheckForUpdates>true</CheckForUpdates>\n\t<ConfirmExit>false</ConfirmExit>\n\
\t<DownloadIcons>true</DownloadIcons>\n\t<UiDisableHardwareAcceleration>true</UiDisableHardwareAcceleration>\n\
\t<UiColour>lightblue</UiColour>\n\t<UiDarkMode>true</UiDarkMode>\n\t<UiHolidayThemes>true</UiHolidayThemes>\n\
</ParrotData>"
file: $GAMEDIR/drive_c/Program\ Files/teknoparrot/ParrotData.xml
PFXNAME="teknoparrot"
PFX="$HOME/.local/share/wineprefixes/$PFXNAME"
TKP_DIR="$PFX/drive_c/Program Files/teknoparrot"
if [[ $1 == "install" ]]; then
# Creating the prefix
winetricks prefix="$PFXNAME" arch=64
# Installing vcredist and dotnet
# Note that you may need other vcredist versions for specific games, I'm not sure.
winetricks prefix="$PFXNAME" -q \
vcrun2010 \
dotnet462
# Adding teknoparrot
mkdir -p "$TKP_DIR"
unrar x "$2" "$TKP_DIR"
elif [[ $1 == "start" ]]; then
# Start
WINEPREFIX="$PFX" PWD="$TKP_DIR" wine start ./TeknoParrotUi.exe
elif [[ $1 == "uninstall" ]]; then
# Remove prefix
rm -rf "$PFX"
else
echo "Usage : teknoparrot.sh [start|install|uninstall]"
exit 1
fi
@andyktaylor
Copy link

Instal works great, tested the below games so far

Star Wars Battle Pod - works fine
MachStorm - starts to load then CMD windows closes
Afterburner - same as Machstorm
Chase H Q. 2 - same as Machstorm

@OOKAMIFR
Copy link

OOKAMIFR commented Oct 30, 2023

Instal works great, tested the below games so far

Star Wars Battle Pod - works fine MachStorm - starts to load then CMD windows closes Afterburner - same as Machstorm Chase H Q. 2 - same as Machstorm

for my side, emulator working fine
what i can say to update POC

mario kart arcade gpdx need net framework 4.8
chase HQ and RAIDEN (non nesica) need direct x and some windows shaders dll

i think adding the floowing dependencies will be usefull

VC redistribual from 2003 to 2022
all net framework from 3.5 to the last
chocolatey powershell should usefull to vige more compatibility
Visual Basic Runtime 6 libraeies

@OOKAMIFR
Copy link

OOKAMIFR commented Nov 9, 2023

currently working to update installer and added additional components

NET FRAMEWORK 3.51
VISUAL C RUNTIME 6 SP6
DXVK LATEST
VULKAN LATEST

also some D3D dll files

@OOKAMIFR
Copy link

Instal works great, tested the below games so far

Star Wars Battle Pod - works fine MachStorm - starts to load then CMD windows closes Afterburner - same as Machstorm Chase H Q. 2 - same as Machstorm

for some games, you will have to create a bat file to run game

also, for teknoparrot, some games require full nvidia or amd gpu, intel is limited

@jimnarey
Copy link

@OOKAMIFR which D3D and shader dlls are needed?

Also, can you expand on the bit about needing a batch file?

I've hit the same problems as above with launching games and am going to try installing as many VC/.NET runtimes as possible then try again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment