Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update, has this been abadoned? #189

Open
Freejack01 opened this issue Apr 3, 2022 · 14 comments
Open

Update, has this been abadoned? #189

Freejack01 opened this issue Apr 3, 2022 · 14 comments

Comments

@Freejack01
Copy link

This really needs to be updated for most Linux versions. There is a huge group of gamers that would love this for Star Citizen, Falcon BMS, Elite Dangerous and I know there are other games out there players would love to have this for.

@sigzegv
Copy link

sigzegv commented Apr 5, 2022

looks like it is abandonned, but lastest version still works in either game handled by wine. (I'm currently using it on DCS with Archlinux)

@Freejack01
Copy link
Author

Freejack01 commented Apr 5, 2022 via email

@sigzegv
Copy link

sigzegv commented Apr 5, 2022

You don't need to recompile it, just use the precompiled universal package https://github.com/uglyDwarf/linuxtrack/wiki/Downloads. In some cases you won't be able to use the gui (because it's old QT4) but you can install the wine dependencies by directly installing linuxtrack-wine.exe (located in share/linuxtrack/ in the universal package) in your wine prefix, and then you trackIR will work. Then you will be able to use term app ltr_recenter to recenter your TIR. (just bind it to a keyboard shortcut)

@uglyDwarf
Copy link
Owner

Hello guys,
I didn't abandon the project - just as kids grow older, my free time is more and more limited.
I'll try and see if I can come up with some more uptodate universal package.
Kind regards,

Michal

@erinarbleizez
Copy link

thanks for the news ^^

for the current universal package, I confirm it no longer work on manjaro: installing only wine elf binary is not enough and ltr_pipe refuse to launch and ask to use ltr_gui which we can't because of the QT4 situation. I managed to make it work by using an old ubuntu 18.04 docker which have QT4 but it's far from perfect because it means mounting sensitive system directory inside the docker which is completely outdated...

@CmdrHope
Copy link

Great to see you're still around, Michal!
I think some polishing on Linuxtrack would be greatly appreciated.

Regarding the problem of @Freejack01 : after several day of try and error (I'm more or less a Linux Noob) I managed to get a (mostly) working build of Linuxtrack on the current Ubuntu 22.04. I did the following on a fresh install in a VM and used the fork by exuvo which already contains the pull requests #166 #167 and #182.

mkdir -p $HOME/Code
cd $HOME/Code/
wget -nc https://developer.x-plane.com/wp-content/plugins/code-sample-generation/sample_templates/XPSDK303.zip
unzip XPSDK303.zip
sudo dpkg --add-architecture i386
wget -nc https://dl.winehq.org/wine-builds/winehq.key
sudo mv winehq.key /usr/share/keyrings/winehq-archive.key
wget -nc https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources
sudo mv winehq-jammy.sources /etc/apt/sources.list.d/
sudo apt update
sudo apt install --install-recommends -y winehq-devel wine-devel-dev git checkinstall build-essential automake bison gawk flex gcc-multilib g++-multilib gobjc gobjc++ libmxml-dev libssl-dev libusb-1.0-0-dev libcwiid-dev libopencv-dev libv4l-dev libqt5opengl5-dev libqt5webkit5-dev libqt5x11extras5-dev qttools5-dev qttools5-dev-tools nsis
git clone https://github.com/exuvo/linuxtrack.git
cd linuxtrack/
aclocal
autoupdate
autoconf
automake
./configure --prefix=$HOME/linuxtrack --with-xplane-sdk=$HOME/Code/SDK/CHeaders --with-wine-libs=-L/opt/wine-devel/bin
make
make install
sudo cp $HOME/linuxtrack/share/linuxtrack/99-TIR.rules /lib/udev/rules.d

After a reboot I could connect my TrackIR 5, run Linuxtrack and it seems to work like a charm.
Next step for me would be to adapt the procedure for my preferred Linux Mint and then getting it to work with Elite Dangerous.

@vranki
Copy link

vranki commented Aug 10, 2022

@uglyDwarf maybe you could consider adding @exuvo as a contributor to this repository? I'd really like to see the project continuing instead of being forked to be useful. According to previous comments the new PR's work fine.

@jaspi72
Copy link

jaspi72 commented Oct 6, 2022

Great to see you're still around, Michal! I think some polishing on Linuxtrack would be greatly appreciated.

Regarding the problem of @Freejack01 : after several day of try and error (I'm more or less a Linux Noob) I managed to get a (mostly) working build of Linuxtrack on the current Ubuntu 22.04. I did the following on a fresh install in a VM and used the fork by exuvo which already contains the pull requests #166 #167 and #182.

mkdir -p $HOME/Code cd $HOME/Code/ wget -nc https://developer.x-plane.com/wp-content/plugins/code-sample-generation/sample_templates/XPSDK303.zip unzip XPSDK303.zip sudo dpkg --add-architecture i386 wget -nc https://dl.winehq.org/wine-builds/winehq.key sudo mv winehq.key /usr/share/keyrings/winehq-archive.key wget -nc https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources sudo mv winehq-jammy.sources /etc/apt/sources.list.d/ sudo apt update sudo apt install --install-recommends -y winehq-devel wine-devel-dev git checkinstall build-essential automake bison gawk flex gcc-multilib g++-multilib gobjc gobjc++ libmxml-dev libssl-dev libusb-1.0-0-dev libcwiid-dev libopencv-dev libv4l-dev libqt5opengl5-dev libqt5webkit5-dev libqt5x11extras5-dev qttools5-dev qttools5-dev-tools nsis git clone https://github.com/exuvo/linuxtrack.git cd linuxtrack/ aclocal autoupdate autoconf automake ./configure --prefix=$HOME/linuxtrack --with-xplane-sdk=$HOME/Code/SDK/CHeaders --with-wine-libs=-L/opt/wine-devel/bin make make install sudo cp $HOME/linuxtrack/share/linuxtrack/99-TIR.rules /lib/udev/rules.d

After a reboot I could connect my TrackIR 5, run Linuxtrack and it seems to work like a charm. Next step for me would be to adapt the procedure for my preferred Linux Mint and then getting it to work with Elite Dangerous.

Damn nice work thx!
1st time suxxess on compiling linuxtrack on my linux :)
Im total noob on linux and want to get this linuxtrack work. I have trackir5 and it works on windows but i start to hate windows.
I need headtracking on steam games but cant get this to work as dont know what to do.
Can someone do guide making linuxtrack working on steam games. Linuxtrack works thx to [CmdrHope] ;)
Now i need to get virtual joystic work or what with games?

@CmdrHope
Copy link

CmdrHope commented Oct 6, 2022

I can't provide a complete guide, but I can try to explain the tricky part of my procedure to get Linuxtrack working with Elite Dangerous and Steam/Proton.
Since the "Install Linuxtrack-Wine support" option of the ltr_gui app doesn't work for me, I needed to manually install the Linuxtrack-Wine part into the Proton prefix of the game. This required me to run linuxtrack-wine.exe inside the Proton prefix of the game. This can be be done with a quite lengthy terminal command.
The command is env which needs to set several path variables and call proton to run the specified .exe.
For my specific case the command looks like:
env STEAM_COMPAT_CLIENT_INSTALL_PATH=$HOME/.steam STEAM_COMPAT_DATA_PATH=$HOME/.steam/steam/steamapps/compatdata/359320 WINEPREFIX=$HOME/.steam/steam/steamapps/compatdata/359320/pfx LD_LIBRARY_PATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib WINEDLLPATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64/wine:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib/wine PATH=${PATH}:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/bin $HOME/.steam/steam/steamapps/common/Proton\ 7.0/proton run $HOME/linuxtrack/share/linuxtrack/linuxtrack-wine.exe
The actual paths are individual to everyones system, game and used Proton version, so simple copy and paste won't work. For example 359320 is the number Steam associates with Elite Dangerous, other games have other numbers and 7.0 is the Proton version Number I am using with Elite.
After the Linuxtrack-Wine support is installed, the game needs to be started and the Controller.exe needs to be run. In my case the command looks like:
env STEAM_COMPAT_CLIENT_INSTALL_PATH=$HOME/.steam STEAM_COMPAT_DATA_PATH=$HOME/.steam/steam/steamapps/compatdata/359320 WINEPREFIX=$HOME/.steam/steam/steamapps/compatdata/359320/pfx LD_LIBRARY_PATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib WINEDLLPATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64/wine:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib/wine PATH=${PATH}:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/bin $HOME/.steam/steam/steamapps/common/Proton\ 7.0/proton run "$HOME/.steam/steam/steamapps/compatdata/359320/pfx/drive_c/Program Files (x86)/Linuxtrack/Controller.exe"
Controller.exe allows to set hotkeys for pause and recenter. Then I can switch to the game and start using my TrackIR 5.
Because the command is quite long, I recommend to create a shellskript for it.

@jaspi72
Copy link

jaspi72 commented Oct 7, 2022

For my specific case the command looks like: `env STEAM_COMPAT_CLIENT_INSTALL_PATH=$HOME/.steam STEAM_COMPAT_DATA_PATH=$HOME/.steam/steam/steamapps/compatdata/359320 WINEPREFIX=$HOME/.steam/steam/steamapps/compatdata/359320/pfx LD_LIBRARY_PATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib WINEDLLPATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64/wine:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib/wine PATH=${PATH}:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/bin $HOME/.steam/steam/steamapps/common/Proton\ 7.0/proton

Thanx for help..
I tryed this way and proton is asking wheres compat data path?? :)
steam app is war thunder..

STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/jaspi/.steam
jaspi@jaspi-gamingFeren:$ STEAM_COMPAT_DATA_PATH=/home/jaspi/.steam/steam/steamapps/compatdata/236390
jaspi@jaspi-gamingFeren:
$ WINEPREFIX=/home/jaspi/.steam/steam/steamapps/compatdata/236390/pfx
jaspi@jaspi-gamingFeren:$ LD_LIBRARY_PATH=/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64:/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib
jaspi@jaspi-gamingFeren:
$ WINEDLLPATH=/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64/wine:/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib/wine
jaspi@jaspi-gamingFeren:~$ PATH=${PATH}:/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/bin $HOME/.steam/steam/steamapps/common/Proton\ 7.0/proton
Proton: No compat data path?

@exuvo
Copy link

exuvo commented Oct 7, 2022

You need to put everything on the same line or use 'export' ex 'export ENV_VAR_NAME=testValue', otherwise the earlier environment values are only set for that very same line and never reach proton in the last command.

@berniyh
Copy link

berniyh commented Dec 14, 2022

Maybe it would be a good idea to drop the Wiimote support?
Because with that and the pull requests merged, I think you get rid of most outdated dependencies.
Wiimote support needs cwiid, which needs python 2.

@berniyh
Copy link

berniyh commented Dec 14, 2022

For my specific case the command looks like: `env STEAM_COMPAT_CLIENT_INSTALL_PATH=$HOME/.steam STEAM_COMPAT_DATA_PATH=$HOME/.steam/steam/steamapps/compatdata/359320 WINEPREFIX=$HOME/.steam/steam/steamapps/compatdata/359320/pfx LD_LIBRARY_PATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib WINEDLLPATH=$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64/wine:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib/wine PATH=${PATH}:$HOME/.steam/steam/steamapps/common/Proton\ 7.0/dist/bin $HOME/.steam/steam/steamapps/common/Proton\ 7.0/proton

Thanx for help.. I tryed this way and proton is asking wheres compat data path?? :) steam app is war thunder..

STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/jaspi/.steam jaspi@jaspi-gamingFeren:$ STEAM_COMPAT_DATA_PATH=/home/jaspi/.steam/steam/steamapps/compatdata/236390 jaspi@jaspi-gamingFeren:$ WINEPREFIX=/home/jaspi/.steam/steam/steamapps/compatdata/236390/pfx jaspi@jaspi-gamingFeren:$ LD_LIBRARY_PATH=/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64:/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib jaspi@jaspi-gamingFeren:$ WINEDLLPATH=/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib64/wine:/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/lib/wine jaspi@jaspi-gamingFeren:~$ PATH=${PATH}:/home/jaspi/.steam/steam/steamapps/common/Proton\ 7.0/dist/bin $HOME/.steam/steam/steamapps/common/Proton\ 7.0/proton Proton: No compat data path?

I don't think the approach to run it this way works with newer Proton versions. What I did is use steamtinkerlaunch.
In that you can specify a program that should be run before the actual game started, which is how I got both linuxtrack and the game run in the same Proton prefix (and thus the game recognizing the tracking support).
Just set a custom command there and select "Fork custom command", which means to run the custom command in the background and continue with the normal game start.

Regarding the install, imo it's the easiest to just fire up protontricks --gui for the game to get the proper winetricks and in winetricks select "Select the default wineprefix" and then "Run explorer". Navigate to the linux track wine plugin and install it.
In any case, this way, you don't need to mess around with the variables. ;)

Personally, I'm not a big fan of steamtinkerlaunch, I think the UI is a huge effin mess. But in this case, it was the only solution I got working with newer proton versions.

@berniyh
Copy link

berniyh commented Feb 28, 2023

Then you will be able to use term app ltr_recenter to recenter your TIR. (just bind it to a keyboard shortcut)

btw, it shouldn't be too much work to do some similar app ltr_pause to call suspend and wakeup, right?
I might give that a try myself actually, but with my very limited knowledge of C it'll take a while.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants