forum

Solution: Running osu! In Ubuntu or Xubuntu

posted
Total Posts
943
show more
luka-devnull

Trung_Rinto wrote:

Ironically, now only JAPANESE displays as weird blank box.
Oh wow. At least we're getting somewhere!
It'll pop out some Takao fonts in the ~/.wine32/drive_c/windows/Fonts. Also tried to manually copy those files to the ~/.local/share/fonts but no use. Any idea?
It has to be C:\Windows\Fonts from a Windows computer, not the wineprefix. I'll have to dig around and see what fonts are really needed. You also need to refresh your font cache after you add fonts to ~/.local/share/fonts otherwise they won't show up at all. Logging out and logging back in should do the trick if you're using a DE.


based_bluetawn wrote:

I really doubt it. net framework is ONLY windows.
While that is true, based peppy has been moving stuff over to MonoGame AFAIK, which will make it cross-platform. :)
_Kuroni_

aus4000 wrote:

It has to be C:\Windows\Fonts from a Windows computer, not the wineprefix. I'll have to dig around and see what fonts are really needed. You also need to refresh your font cache after you add fonts to ~/.local/share/fonts otherwise they won't show up at all. Logging out and logging back in should do the trick if you're using a DE.
So I tried copying some Sazanami and Kochi (Gothic and Mincho) but no works. Also I've been logging on and off, restarting the machine, even nuking the wineprefix to do everything from scratch. No works at all.

Oh well, at least I can see some Korean characters in game chat :D
Ponii-chan
I finally managed to run osu!

I'm a complete noob and I could not install it because:

1) When I installed .net 2.0, and then tried to run osu installer, it said: "Hi! Could not install .NET. Click here to manually install and download."
2) I though that maybe I had to upgrade .NET to 4.5, but I had to install dotnet30 first, and it gave me a setup error every time.
3) I tried PlayOnLInux approach but of course it also gave me an error...

So I finally tried to run osu that I used on windows and which I copied to linux. I followed what this good person said in the first few minutes of this video https://www.youtube.com/watch?v=7RwEBXVx7UU and I finally managed to run osu!

So if you're as mentally challenged as I am and get errors every time you do something, then download osu! on windows (maybe ask a friend if you don't have windows yourself), copy the whole folder to linux, follow the steps from the aforementioned video and enjoy osu!.

I have to run osu from the terminal, but it's not a such a big deal and probably there is a better way to do this which I don't know (I made a script and it seems to work.

Hopefully everyone else can use the installer and don't have to use such primitive methods, and hopefully it's ok to run osu like that.

Thank you for reading my cool story.
TheCoffeeLord

Ponii-chan wrote:

https://www.youtube.com/watch?v=7RwEBXVx7UU
Shit, I don't get this at all. Not to bash on that dude's English, but I couldn't follow the directions at all. I'm a noob at Linux, so that's probably why. Anyway, I already have a windows installation of osu! from a while back and I put it in my wine folder for osu!. What do I do now?
Ponii-chan

TheCoffeeLord wrote:

Ponii-chan wrote:

https://www.youtube.com/watch?v=7RwEBXVx7UU
Shit, I don't get this at all. Not to bash on that dude's English, but I couldn't follow the directions at all. I'm a noob at Linux, so that's probably why. Anyway, I already have a windows installation of osu! from a while back and I put it in my wine folder for osu!. What do I do now?
Ok, I'll tell you everything I had to do in order to play osu!. I use Ubuntu 14.04 btw, but it should work on most linux versions. Anyway, that's what you have to do in order to play osu! using this method:

1) Install osu! on windows and copy the entire folder to your linux folder. It doesn't have to be a wine folder. In fact, I'd say that it is better if it is not there. I have my osu! folder on a different partition and it works great. Wherever you put it, remember the path to your osu! folder.

2) Download and install wine. It should work on most wine versions, I use 1.6.2 and it works.

3) Navigate to your home folder and press ctrl+H. It'll show hidden folders. Look for a folder named .wine (notice the dot). If this folder was made as a 32-bit folder, then I guess you can skip this step and step 4 (not sure though). If it's 64-bit or you don't know whether it's 32 or 64, then rename the old .wine folder to something else, like .wine2. If you don't have the .wine folder, then you can move on to step 4.

4) Open the terminal (ctrl+alt+T on ubuntu) and copy & paste the following command:

WINEARCH=win32 winecfg

It'll make a new .wine folder with a 32-bit prefix. You need a 32-bit version to install .NET in the next step.

5) When wine finishes making the new .wine folder, go to terminal again and put in this command:

winetricks dotnet20

This will download and install .NET required to run the game. Follow the instructions and install it.


Congratulations! Now you can play osu!. Go to your osu! folder and double click the exe file, or right-click -> open with -> wine.

I guess you could create a shortcut on your desktop, but I have no idea how to do it. Just keep in mind that I'm a linux noob myself, so there's probably a better way to do all this.
TheCoffeeLord
Thank you so much! This is the first time I've been able to even get it running.

Unfortunately it seems to be running very poorly. I tried switching to OpenGL and it refused to let me do so, and I couldn't switch to Cuttingedge either. I tried changing both of those settings in the config file but that didn't work. Also, the player controls are missing.

Oh well, if I can't figure it out I suppose I could just dual-boot.
_Kuroni_

TheCoffeeLord wrote:

Unfortunately it seems to be running very poorly. I tried switching to OpenGL and it refused to let me do so, and I couldn't switch to Cuttingedge either. I tried changing both of those settings in the config file but that didn't work. Also, the player controls are missing.
Try doing this:

WINEPREFIX=~/.wine WINEARCH=win32 winecfg

Open the Graphics tab, turn on both the "Capture mouse...blah blah blah sth" and "Use Native DirectX 9 ... blah blah blah" or something like that (remember to turn on both). It is much less laggy and actually pretty nice to play without any delay of input.
based_bluetawn
Is it possible to run osu with opengl on linux? It would make sense.
_Kuroni_

based_bluetawn wrote:

Is it possible to run osu with opengl on linux? It would make sense.
No idea. Maybe no
Poku
Used on mint with other commands and it works great :>
YaLTeR
Got the latest Cutting Edge set up and working with dotnet45. 2000+ FPS consistently (which is way better than what it was on Linux), universal offset is -30 (compared to 0 on Windows) and there's a slight keyboard input delay: I have to hit the keyboard keys earlier (however I don't notice any mouse / tablet input delay).
ccxex29

based_bluetawn wrote:

Is it possible to run osu with opengl on linux? It would make sense.
it makes no sense.. Linux doesnt have directx, so it runs osu in opengl mode eventho it shows its on dx mode.. if you want to use directx mode, then u need to install library for directx..
Seri
I tested osu! cutting edge (and beta) on linux mint with the latest wine and winetricks (winetricks corefonts dotnet45) and encountered this strange issue:


Note how the game objects (sliders, approachcircles, etc) are really laggy, but everything else (score/combo animation, the combo stars flying around, all the menus, the cursor when auto is off) is perfectly smooth. (the frametimes are okay too!)

Keep in mind that this was done in a VM (so ignore the major audio desync and poor overall performance), but a friend of mine confirmed this on his desktop PC as well.

@YaLTeR: Did you anything besides "winetricks dotnet45" in a 32 bit wineprefix?
YaLTeR

Seri wrote:

@YaLTeR: Did you anything besides "winetricks dotnet45" in a 32 bit wineprefix?
(path points to a non-existent folder right now, winecfg will create it)
WINEPREFIX=path WINEARCH=win32 winecfg
(set up username and organization, checked the autocapture mouse in fullscreen applications tick)
WINEPREFIX=path WINEARCH=win32 winetricks -q dotnet45 corefonts
(it somehow worked, previously it'd get stuck on dotnet30)
Copied osu!install.exe (the one that doesn't download the .NET Framework itself) to "path/drive_c/Program Files/osu!", cd'd there, WINEPREFIX=path WINEARCH=win32 osu\!install.exe
Seri
Hm, we used exactly the same commands.

On my friend's PC it solved itself, though, without doing anything. :D
Franc[e]sco
For anyone having connection issues on cuttingedge using wine.

  1. First of all, install -> wine-staging <- which fixes the missing SSL stuff required by osu.
  2. Create a fresh wine prefix, set up your name and whatnot and close winecfg (make sure ~/.wine doesn't exist or change it)
    WINEPREFIX=~/.wine WINEARCH=win32 winecfg
  3. Install winetricks through your package manager if you don't already have it (e.g. sudo apt-get install winetricks)
  4. Install dotnet45
    WINEPREFIX=~/.wine WINEARCH=win32 winetricks -q dotnet45 corefonts
  5. Download the osu!installer https://osu.ppy.sh/p/download
  6. WINEPREFIX=~/.wine WINEARCH=win32 wine osu!install.exe
  7. Switch to cutting-edge as soon as osu starts and restart when required
  8. Close osu!.
  9. You can now start osu through
    WINEPREFIX=~/.wine WINEARCH=win32 wine '~/.wine/drive_c/users/<your username>/Local Settings/Application Data/osu!/osu!.exe'
    and it should connect to bancho just fine
To minimize input and sound latency, I recommend this great guide t/256526 .

EDIT: I put together all the possible tweaks in this thread and other threads for maximum smoothness and best latency: t/367783
based_bluetawn

ccxex29 wrote:

based_bluetawn wrote:

Is it possible to run osu with opengl on linux? It would make sense.
it makes no sense.. Linux doesnt have directx, so it runs osu in opengl mode eventho it shows its on dx mode.. if you want to use directx mode, then u need to install library for directx..
It only runs in DX mode for me under WINE. openGL doesn't work.
Seri
Did you make sure that you use the cutting-edge build and not the stable?
Franc[e]sco
cutting edge is opengl only and runs smooth as butter. follow my guide here t/367783
nightbane112
Guys, I know this is probably old news but has anyone tested mesa Gallium Nine ( http://www.phoronix.com/scan.php?page=news_item&px=MTg2Mjc ) with Osu? If you did, how was the performance between :
  • - Open source + Gallium Nine
    - Open source + CMST
    - Proprietary + CMST
    - Propietary
FPS rate? Frame drops? Stuttering? Please share us your experience using such drivers with Osu! :)
sarnex
:P

nightbane112 wrote:

Guys, I know this is probably old news but has anyone tested mesa Gallium Nine ( http://www.phoronix.com/scan.php?page=news_item&px=MTg2Mjc ) with Osu? If you did, how was the performance between :
  • - Open source + Gallium Nine
    - Open source + CMST
    - Proprietary + CMST
    - Propietary
FPS rate? Frame drops? Stuttering? Please share us your experience using such drivers with Osu! :)
Hi, I am involved in this project. It works really well with osu, but cutting edge is GL which is even better.
lukypie

Ponii-chan wrote:

I finally managed to run osu!
So I finally tried to run osu that I used on windows and which I copied to linux. I followed what this good person said in the first few minutes of this video https://www.youtube.com/watch?v=7RwEBXVx7UU and I finally managed to run osu!
Lol that's my video

TheCoffeeLord wrote:

Ponii-chan wrote:

https://www.youtube.com/watch?v=7RwEBXVx7UU
Shit, I don't get this at all. Not to bash on that dude's English, but I couldn't follow the directions at all. I'm a noob at Linux, so that's probably why. Anyway, I already have a windows installation of osu! from a while back and I put it in my wine folder for osu!. What do I do now?
Sorry if I was too complicated.

By the way, if someone is experiencing low fps problems, I fixed that by updating to the experimental branch from an older executable because apparently the stable branch also brokes the updating system (for me).
I put a link of an old osu executable on the video.
ccxex29

Trung_Rinto wrote:

based_bluetawn wrote:

Is it possible to run osu with opengl on linux? It would make sense.
No idea. Maybe no
it shows directx on osu! but if you're looking into the debugger, it's using opengl.. really.. thats why it was not that laggy
petterroea
If you want a simple way of doing this, there is a way of making custom installs using PlayOnLinux that lets you set up wine drives without doing the dirty work.

This worked first try for me(Ubuntu 15.10)


  • 1. Open Configure from the main PlayOnLinux window
    2. Click the New button at the bottom left of the window
    3. Click next on the wizard that pops up, and select a 32 bits installation. I have not tried 64 bits, but it might as well work.
    4. Select wine version. I used 1.7.52, because Leauge of Legends(also wine'd) was using it, so it was convenient. You can mix and match here, but for this small guides sake, let's pretend you need to use 1.7.52. If you do not have this version installed, see below.
    5. Name the drive whatever you want. Wait for the new drive to be created
    6. Select the newly created drive in the left side of the configuration window, and navigate to the Install components tab. Find dotnet45 on the list, and install it. In some distributions, you need to apply this fix before doing so: https://www.playonlinux.com/en/topic-10534-Regarding_ptrace_scope_fatal_error.html
    7. Download the osu installer as you would on windows
    8. Back in the configuration window, navigate to the Miscellaneous tab, and click Run a .exe file in this virtual drive. Select the osu installer, and run it. There might be some errors, but for me it turned out to work anyways.
    9. (Optionally) Navigate back to the General tab, and click Make a new shortcut from this virtual drive. Select osu!.exe from the list, or browse to the binary yourself.
What if i don't have wine 1.7.52 installed?


  • 1. In the main PlayOnLinux window, select Manage wine versions from the Tools menu item at the top of the window
    2. Make sure the x86 tab is selected
    3. Select the required wine version from the list on the left, and use the > arrow to add it to the list of installed versions.
As a side note, when it comes to audio delay, my experience is that i managed to bring it down to 14ms buffer latency by tweaking pulseaudio's config files. I simply ajusted osu's global offset, and after that, it was pretty playable.

Also, here is a screenshot of it working as a tile in the i3 window manager. osu! insists on still rendering for the entire screen, but it cuts in a way that doesn't put an offset on the mouse input vs graphics, so it's fine for me. http://puu.sh/m5rff/a075dcbb55.png
Espionage724
Got a touchscreen 2-in-1 recently so it looks like I might get back into osu! :p

Anyway, I wrote up a quick document on getting osu! running on my setups: https://gitlab.com/Espionage724/Linux/b ... ne/osu.txt

Here's a little more-detailed guide for Fedora 23 (easily adaptable elsewhere):

EDIT: A better procedure is here: p/4900459

sudo dnf install wine -y

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks -O '/home/espionage724/winetricks'

chmod +x '/home/espionage724/winetricks'

mkdir -p '/home/espionage724/.cache/winetricks/dotnet40'

wget 'https://gitlab.com/Espionage724/Linux/raw/master/Wine/Files/gacutil-net40.tar.bz2' -O '/home/espionage724/.cache/winetricks/dotnet40/gacutil-net40.tar.bz2'

wget 'https://m1.ppy.sh/r/osu!install.exe' -O '/home/espionage724/osu!install.exe' --no-check-certificate

mkdir -p '/home/espionage724/Wine Prefixes'

WINEPREFIX='/home/espionage724/Wine Prefixes/osu!' WINEARCH=win32 '/home/espionage724/winetricks' dotnet40

WINEPREFIX='/home/espionage724/Wine Prefixes/osu!' WINEARCH=win32 wine '/home/espionage724/osu!install.exe'

rm '/home/espionage724/winetricks' '/home/espionage724/osu!install.exe' && sync

That installs wine, downloads winetricks (Fedora doesn't come with it in default repos; this won't hurt anything on distros that include/have it), makes it executable, creates the temp folder for dotnet40 files, grabs some file that dotnet40 installer will tell you to download manually from MediaFire (uploaded to my GitLab), grabs osu! installer (no cert check because wget was unable to verify the cert at the time), installs dotnet40, and then installs osu!, all within an isolated 32-bit prefix. The final line removes winetricks and the osu! installer, and writes all changes to the filesystem.

If that process looks good; I'd recommend copy/pasting it into a text editor, editing the username, and making it one giant command line (use && in-between commands; see AIO on my GitLab doc).

The following is how to create a launcher for osu! for use with most desktop environments (I use GNOME):

mkdir -p '/home/espionage724/.local/share/applications/wine/Programs/osu!'

nano '/home/espionage724/.local/share/applications/wine/Programs/osu!/osu!.desktop'

-------------------------
[Desktop Entry]
Name=osu!
Exec=env WINEDEBUG=-all WINEPREFIX='/home/espionage724/Wine Prefixes/osu!' wine '/home/espionage724/Wine Prefixes/osu!/drive_c/users/espionage724/Local Settings/Application Data/osu!/osu!.exe'
Type=Application
StartupNotify=true
Path=/home/espionage724/Wine Prefixes/osu!/drive_c/users/espionage724/Local Settings/Application Data/osu!
Icon=STM1_osu!.0
-------------------------

mkdir -p '/home/espionage724/.local/share/icons/hicolor/256x256/apps'

mkdir -p '/home/espionage724/.local/share/icons/hicolor/256x256/apps' && wget 'https://i.sli.mg/KyW4AM.png' -O '/home/espionage724/.local/share/icons/hicolor/256x256/apps/STM1_osu!.0.png'

That's my general go-to process for most things with Wine and it's designed to be pretty automated.

For some notes:

- Don't blindly copy/paste what's above; the file/folder structure should be pretty standard across most Linux distros, but you'll most definitely need to change the username

- dotnet40 seems to be good enough (it only installs dotnet40; whereas dotnet45 wants to install some other dotnet stuff); I'm unware if any issues from only having dotnet40 will arise, but starting the game and playing some of the stock beatmaps works fine

- Not sure why or if corefonts is needed; initial testing looks to be fine without it (might be needed for Asian characters judging by previous feedback; I'll wait until/f it becomes a problem)

- The above does nothing special in-regards to gallium-nine, CSMT, optimizations, or etc; osu! looks to work fine without any of that on my setup :p
V1rTuoZz

petterroea wrote:

If you want a simple way of doing this, there is a way of making custom installs using PlayOnLinux that lets you set up wine drives without doing the dirty work.

This worked first try for me(Ubuntu 15.10)


  • 1. Open Configure from the main PlayOnLinux window
    2. Click the New button at the bottom left of the window
    3. Click next on the wizard that pops up, and select a 32 bits installation. I have not tried 64 bits, but it might as well work.
    4. Select wine version. I used 1.7.52, because Leauge of Legends(also wine'd) was using it, so it was convenient. You can mix and match here, but for this small guides sake, let's pretend you need to use 1.7.52. If you do not have this version installed, see below.
    5. Name the drive whatever you want. Wait for the new drive to be created
    6. Select the newly created drive in the left side of the configuration window, and navigate to the Install components tab. Find dotnet45 on the list, and install it. In some distributions, you need to apply this fix before doing so: https://www.playonlinux.com/en/topic-10534-Regarding_ptrace_scope_fatal_error.html
    7. Download the osu installer as you would on windows
    8. Back in the configuration window, navigate to the Miscellaneous tab, and click Run a .exe file in this virtual drive. Select the osu installer, and run it. There might be some errors, but for me it turned out to work anyways.
    9. (Optionally) Navigate back to the General tab, and click Make a new shortcut from this virtual drive. Select osu!.exe from the list, or browse to the binary yourself.
What if i don't have wine 1.7.52 installed?


  • 1. In the main PlayOnLinux window, select Manage wine versions from the Tools menu item at the top of the window
    2. Make sure the x86 tab is selected
    3. Select the required wine version from the list on the left, and use the > arrow to add it to the list of installed versions.
As a side note, when it comes to audio delay, my experience is that i managed to bring it down to 14ms buffer latency by tweaking pulseaudio's config files. I simply ajusted osu's global offset, and after that, it was pretty playable.

Also, here is a screenshot of it working as a tile in the i3 window manager. osu! insists on still rendering for the entire screen, but it cuts in a way that doesn't put an offset on the mouse input vs graphics, so it's fine for me. http://puu.sh/m5rff/a075dcbb55.png
When i do it, it's work but : The sound is horrible and very speed ! Help please
petterroea

V1rTuoZz wrote:

petterroea wrote:

If you want a simple way of doing this, there is a way of making custom installs using PlayOnLinux that lets you set up wine drives without doing the dirty work.

This worked first try for me(Ubuntu 15.10)


  • 1. Open Configure from the main PlayOnLinux window
    2. Click the New button at the bottom left of the window
    3. Click next on the wizard that pops up, and select a 32 bits installation. I have not tried 64 bits, but it might as well work.
    4. Select wine version. I used 1.7.52, because Leauge of Legends(also wine'd) was using it, so it was convenient. You can mix and match here, but for this small guides sake, let's pretend you need to use 1.7.52. If you do not have this version installed, see below.
    5. Name the drive whatever you want. Wait for the new drive to be created
    6. Select the newly created drive in the left side of the configuration window, and navigate to the Install components tab. Find dotnet45 on the list, and install it. In some distributions, you need to apply this fix before doing so: https://www.playonlinux.com/en/topic-10534-Regarding_ptrace_scope_fatal_error.html
    7. Download the osu installer as you would on windows
    8. Back in the configuration window, navigate to the Miscellaneous tab, and click Run a .exe file in this virtual drive. Select the osu installer, and run it. There might be some errors, but for me it turned out to work anyways.
    9. (Optionally) Navigate back to the General tab, and click Make a new shortcut from this virtual drive. Select osu!.exe from the list, or browse to the binary yourself.
What if i don't have wine 1.7.52 installed?


  • 1. In the main PlayOnLinux window, select Manage wine versions from the Tools menu item at the top of the window
    2. Make sure the x86 tab is selected
    3. Select the required wine version from the list on the left, and use the > arrow to add it to the list of installed versions.
As a side note, when it comes to audio delay, my experience is that i managed to bring it down to 14ms buffer latency by tweaking pulseaudio's config files. I simply ajusted osu's global offset, and after that, it was pretty playable.

Also, here is a screenshot of it working as a tile in the i3 window manager. osu! insists on still rendering for the entire screen, but it cuts in a way that doesn't put an offset on the mouse input vs graphics, so it's fine for me. http://puu.sh/m5rff/a075dcbb55.png
When i do it, it's work but : The sound is horrible and very speed ! Help please
This is due to pulseaudio. Adjusting buffer sizes should work. There are plenty of different ways of doing it, and i don't know how good my way is, so i won't write a tutorial on it. You will find stuff on pulse in this thread, though
rurigk
I share .desktop file launcher and my icon

[Desktop Entry]
Name=Osu
Exec=env WINEPREFIX="/home/USER/.wine" wine '/home/USER/.wine/drive_c/users/USER/Local Settings/Application Data/osu!/osu!.exe'
Type=Application
StartupNotify=true
Path=/home/USER/.wine/dosdevices/c:/users/USER/Local Settings/Application Data/osu!
Icon=/home/USER/.wine/drive_c/users/USER/Local Settings/Application Data/osu!/osu.png

You need replace USER with you use name and place the icon on
/home/USER/.wine/drive_c/users/USER/Local Settings/Application Data/osu!/osu.png


Icon -> https://drive.google.com/uc?id=0B9F3bh2B9tmTUXBWcHFrQ2UycFk
RavenWithSwords
Hi!

I installed osu! on my Linux laptop, but whenever I click Solo, or a new map, or when I fail or pass, it shows a pure white screen that only changes when I move the mouse (only for Solo), or whenever I click again or press escape. Any solution?

EDIT: Disabled shader, and it works now. Sorry for taking up thread space, but if anyone else has this problem this is the solution.
SatoXYN
People who complaining of audio delay, please use my osulauncher script in ArchLinux AUR package:
https://aur.archlinux.org/packages/osu/
You can use this script on any Linux OS. It installs osu! into dedicated wineprefix and configures PulseAudio and DirectSound audio latency.

Also, read my old post on how to drastically decrease audio delay in Linux:
p/1400208
RavenWithSwords
Hi!

I made this quick little script to install osu! on Ubuntu 12.04, with i686 arch. Should still work for different Ubuntu versions, and maybe difference arches.

add-apt-repository ppa:ubuntu-wine/ppa -y
apt-get update
apt-get install wine1.7 -y
WINEARCH=win32 winecfg
winetricks dotnet20
wget http://m1.ppy.sh/r/osu\!install.exe
mkdir ~/.wine/drive_c/Program\ Files/osu\! && mv osu\!install.exe ~/.wine/drive_c/Program\ Files/osu\! && wine ~/.wine/drive_c/Program\ Files/osu\!/osu\!install.exe
echo "alias osu='wine ~/.drive_c/Program\ Files/osu\!/osu\!.exe'" >> ~/.bash_aliases
. ~/.bash_aliases
ln -s ~/.wine/drive_c/Program\ Files/osu\!/osu\!.exe ~/Desktop/
osu

Just copy and paste this into a .bash file, such as osuDownloader.bash, and then run ". osuDownloader.bash".

After that, I would recommend disabling Shader in the settings.
Also, once at a terminal, just type "osu" and it'll launch :D
SatoXYN
ThePhantom_PCMR, absolutely all sudo calls in your script are unnecessary and harmful. Better to remove them.
RavenWithSwords

SatoXYN wrote:

ThePhantom_PCMR, absolutely all sudo calls in your script are unnecessary and harmful. Better to remove them.
Alright, thanks. Editing it now.
Espionage724
Here is a script I put together that installs osu! on Ubuntu (easy to adapt elsewhere), creates the launcher shortcut, and does this in possibly the cleanest manner possible with very little user input (only need to enter sudoer password for PPA add and packages). The script has comments to let you know what something does, and is verbose while being ran.

The script source can be found here:
https://gitlab.com/Espionage724/Linux/b ... pts/osu.sh

The script can be ran with any of the commands below (first method recommended):
wget 'https://gitlab.com/Espionage724/Linux/raw/master/Scripts/osu.sh' -O ~/'osu.sh' && chmod +x ~/'osu.sh' && ~/'osu.sh'
bash <(curl -s https://gitlab.com/Espionage724/Linux/raw/master/Scripts/osu.sh)
curl -L https://gitlab.com/Espionage724/Linux/raw/master/Scripts/osu.sh | bash

- The script installs wine-staging from the official Ubuntu PPA
- It uses dotnet40 and gdiplus (needed for cjk fonts)
- Installs osu! in an isolated 32-bit Wine prefix
- Uses the officially-included osu! icon (it is automatically created after the second start of osu!)
- .osz (and I assume skin formats and any other archives for osu!) also just-work (can open downloaded beatmaps from Firefox and open with osu! as-expected)
- CJK fonts don't work; if someone has a solution to this, please share it (corefonts, takao, fakejapanese, and cjkfonts from winetricks didn't help) (fixed)

If there's any issues or any known improvements that can be made to it, please report them!
Espionage724
Could someone try installing osu! with only dotnet40 and cjkfonts (in a 32-bit prefix and no manual dll overrides)? It would appear that gdiplus (and its huge 500+MB download size) isn't a requirement for cjkfonts. A quick way to test if CJK fonts work is to go to the select language drop-down in Options (if you see CJK characters, it works; if boxes, then it doesn't work).

My script currently does this for anyone who also wants to try it out that way.
m42a

Espionage724 wrote:

Could someone try installing osu! with only dotnet40 and cjkfonts (in a 32-bit prefix and no manual dll overrides)?
I tried this, and it shows some but not all CJK characters (and inconsistently). For example, when looking at https://osu.ppy.sh/s/198034 the source field (which contains the characters 東方) show up as blocks if and only if I prefer English metadata. When I enable "Prefer metadata in original language" the source filed is perfectly readable.

Even better, if I edit the beatmap title or source to include a hiragana character, the 東方 starts showing up correctly. So I suspect it's something about wine's default font selection algorithm that is not recognizing that certain characters aren't available in certain fonts.
surepy
hmm. tried on my ubuntu LTS 14.04
it wont go over 20 fps on ANY GPU for some odd reasons.

oh and

rrismawan wrote:

Just want to report :D

Worked on :
Ubuntu 12.04 to 14.04.1 = with wine 1.7
Linux Mint
OS X
Debian


tested :v

Kali LInux error with wine 1.4.1


error logs :

Unhandled exception: 0xe0434f4d in 32-bit code (0x7b83b581).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:7b83b581 ESP:0033e3b0 EBP:0033e414 EFLAGS:00000293( - -- I S -A- -C)
EAX:7b827b45 EBX:7b8a5ff4 ECX:00000000 EDX:00000004
ESI:0033e44c EDI:0012f780
Stack dump:
0x0033e3b0: 0033e44c 00000004 0033e3c4 e0434f4d
0x0033e3c0: 00000001 00000000 7b83b581 00000001
0x0033e3d0: 8007007e 0033e44c 003a2010 02000038
0x0033e3e0: 0033e3f0 79e80024 0033e3f8 02000038
0x0033e3f0: 0033e3fc 79e80687 03370714 0033e40c
0x0033e400: 79eda76f 0381fa7c 0000012f 7b83b539
Backtrace:
=>0 0x7b83b581 in kernel32 (+0x2b581) (0x0033e414)
1 0x79eda91c in mscorwks (+0x6a91b) (0x0033e474)
2 0x79f39e44 in mscorwks (+0xc9e43) (0x0033e4ac)
3 0x7a0d14b5 in mscorwks (+0x2614b4) (0x0033e50c)
4 0x79064076 in mscorjit (+0x4075) (0x0033e528)
5 0x79066918 in mscorjit (+0x6917) (0x0033eb20)
6 0x790643a1 in mscorjit (+0x43a0) (0x0033eb98)
7 0x790644d6 in mscorjit (+0x44d5) (0x0033ebb0)
8 0x7906465c in mscorjit (+0x465b) (0x0033ebcc)
9 0x79065b8e in mscorjit (+0x5b8d) (0x0033ec18)
10 0x79065d33 in mscorjit (+0x5d32) (0x0033eca0)
11 0x79066448 in mscorjit (+0x6447) (0x0033ecc4)
12 0x79fc7198 in mscorwks (+0x157197) (0x0033ed30)
13 0x79fc722d in mscorwks (+0x15722c) (0x0033ed74)
14 0x79fc72a0 in mscorwks (+0x15729f) (0x0033edc8)
15 0x79fc7019 in mscorwks (+0x157018) (0x0033f170)
16 0x79fc6ddb in mscorwks (+0x156dda) (0x0033f214)
17 0x79e811a3 in mscorwks (+0x111a2) (0x0033f26c)
18 0x79e81363 in mscorwks (+0x11362) (0x0033f2bc)
19 0x00a4a1be (0x0033f2d4)
20 0x038729ed (0x0033f310)
21 0x79e71b4c in mscorwks (+0x1b4b) (0x0033f320)
22 0x79e821b1 in mscorwks (+0x121b0) (0x0033f3a0)
23 0x79e96501 in mscorwks (+0x26500) (0x0033f4e4)
24 0x79e96534 in mscorwks (+0x26533) (0x0033f500)
25 0x79e96552 in mscorwks (+0x26551) (0x0033f518)
26 0x79eefa45 in mscorwks (+0x7fa44) (0x0033f67c)
27 0x79eef965 in mscorwks (+0x7f964) (0x0033f8e4)
28 0x79eefeb5 in mscorwks (+0x7feb4) (0x0033fdb4)
29 0x79ef009f in mscorwks (+0x8009e) (0x0033fe04)
30 0x79eeffcf in mscorwks (+0x7ffce) (0x0033fe4c)
31 0x603b55ab in mscoreei (+0x55aa) (0x0033fe58)
32 0x79007f16 in mscoree (+0x7f15) (0x0033fe68)
33 0x79004de3 in mscoree (+0x4de2) (0x0033fe88)
34 0x7b85c70f in kernel32 (+0x4c70e) (0x0033fec8)
35 0x7bc75750 call_thread_func_wrapper+0xb() in ntdll (0x0033fed8)
36 0x7bc7852d call_thread_func+0x7c() in ntdll (0x0033ffa8)
37 0x7bc7572e RtlRaiseException+0x21() in ntdll (0x0033ffc8)
38 0x7bc4ce1e call_dll_entry_point+0x4fd() in ntdll (0x0033ffe8)
39 0xf75a153d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
40 0xf75a15fb wine_switch_to_stack+0x2a() in libwine.so.1 (0xffa24218)
41 0x7bc52868 LdrInitializeThunk+0x3b7() in ntdll (0xffa24288)
42 0x7b862910 __wine_kernel_init+0xbbf() in kernel32 (0xffa25398)
43 0x7bc52ee3 __wine_process_init+0x182() in ntdll (0xffa25418)
44 0xf759f1c2 wine_init+0x2a1() in libwine.so.1 (0xffa25478)
45 0x7bf00ecb main+0x8a(argc=0x2, argv=0xffa25974) [/build/buildd-wine_1.4.1-4-i386-NgOHCo/wine-1.4.1/build32/loader/../../loader/main.c:230] in <wine-loader> (0xffa258c8)
46 0xf7444e16 __libc_start_main+0xe5() in libc.so.6 (0xffa25948)
0x7b83b581: movl 0xfffffffc(%ebp),%ebx
Modules:
Module Address Debug info Name (93 modules)
PE 400000- 71a000 Deferred osu!
PE 45d0000- 45d6000 Deferred x3daudio1_1
PE 5e3a0000-5e42d000 Deferred diasymreader
PE 603b0000-60417000 Export mscoreei
PE 637a0000-63998000 Deferred system.xml
PE 64020000-64033000 Deferred mscorsec
PE 78130000-781cb000 Deferred msvcr80
PE 79000000-7904a000 Export mscoree
PE 79060000-790bb000 Export mscorjit
PE 790c0000-79518000 Deferred mscorlib
PE 79e70000-7a400000 Export mscorwks
PE 7a440000-7a744000 Deferred system
PE 7ade0000-7ae7c000 Deferred system.drawing
PE 7afd0000-7b49e000 Deferred system.windows.forms
ELF 7b800000-7ba3a000 Dwarf kernel32<elf>
\-PE 7b810000-7ba3a000 \ kernel32
ELF 7bc00000-7bcd4000 Dwarf ntdll<elf>
\-PE 7bc10000-7bcd4000 \ ntdll
ELF 7bf00000-7bf04000 Dwarf <wine-loader>
PE 7c4c0000-7c53d000 Deferred msvcm80
ELF 7debd000-7ded1000 Deferred msimg32<elf>
\-PE 7dec0000-7ded1000 \ msimg32
ELF 7ded1000-7defb000 Deferred msacm32<elf>
\-PE 7dee0000-7defb000 \ msacm32
ELF 7defb000-7dfac000 Deferred winmm<elf>
\-PE 7df00000-7dfac000 \ winmm
ELF 7dfac000-7dff5000 Deferred dsound<elf>
\-PE 7dfb0000-7dff5000 \ dsound
ELF 7dff5000-7e21c000 Deferred shell32<elf>
\-PE 7e000000-7e21c000 \ shell32
ELF 7e21c000-7e29c000 Deferred rpcrt4<elf>
\-PE 7e230000-7e29c000 \ rpcrt4
ELF 7e29c000-7e3c6000 Deferred ole32<elf>
\-PE 7e2b0000-7e3c6000 \ ole32
ELF 7e3c6000-7e408000 Deferred rsaenh<elf>
\-PE 7e3d0000-7e408000 \ rsaenh
ELF 7e408000-7e422000 Deferred imagehlp<elf>
\-PE 7e410000-7e422000 \ imagehlp
ELF 7e45b000-7e491000 Deferred uxtheme<elf>
\-PE 7e460000-7e491000 \ uxtheme
ELF 7e491000-7e593000 Deferred comctl32<elf>
\-PE 7e4a0000-7e593000 \ comctl32
ELF 7e593000-7e65a000 Deferred crypt32<elf>
\-PE 7e5a0000-7e65a000 \ crypt32
ELF 7e65a000-7e690000 Deferred wintrust<elf>
\-PE 7e660000-7e690000 \ wintrust
ELF 7e690000-7e72e000 Deferred msvcrt<elf>
\-PE 7e6b0000-7e72e000 \ msvcrt
ELF 7e72e000-7e734000 Deferred libxfixes.so.3
ELF 7e734000-7e73e000 Deferred libxcursor.so.1
ELF 7e773000-7e79b000 Deferred libexpat.so.1
ELF 7e79b000-7e7d1000 Deferred libfontconfig.so.1
ELF 7e7d1000-7e7e0000 Deferred libxi.so.6
ELF 7e7e0000-7e7e3000 Deferred libxcomposite.so.1
ELF 7e7e3000-7e7eb000 Deferred libxrandr.so.2
ELF 7e7eb000-7e7f5000 Deferred libxrender.so.1
ELF 7e7f5000-7e7fb000 Deferred libxxf86vm.so.1
ELF 7e7fb000-7e7fe000 Deferred libxinerama.so.1
ELF 7e7fe000-7e822000 Deferred imm32<elf>
\-PE 7e800000-7e822000 \ imm32
ELF 7e822000-7e828000 Deferred libxdmcp.so.6
ELF 7e828000-7e82b000 Deferred libxau.so.6
ELF 7e82b000-7e84e000 Deferred libxcb.so.1
ELF 7e84e000-7e854000 Deferred libuuid.so.1
ELF 7e854000-7e98c000 Deferred libx11.so.6
ELF 7e98c000-7e99e000 Deferred libxext.so.6
ELF 7e99e000-7e9b7000 Deferred libice.so.6
ELF 7e9b7000-7e9bf000 Deferred libsm.so.6
ELF 7e9bf000-7ea5b000 Deferred winex11<elf>
\-PE 7e9d0000-7ea5b000 \ winex11
ELF 7ea5b000-7ea74000 Deferred libz.so.1
ELF 7ea74000-7eb10000 Deferred libfreetype.so.6
ELF 7eb2b000-7ebf8000 Deferred gdi32<elf>
\-PE 7eb40000-7ebf8000 \ gdi32
ELF 7ebf8000-7ed4c000 Deferred user32<elf>
\-PE 7ec10000-7ed4c000 \ user32
ELF 7ed4c000-7edc0000 Deferred shlwapi<elf>
\-PE 7ed60000-7edc0000 \ shlwapi
ELF 7edc0000-7ee2c000 Deferred advapi32<elf>
\-PE 7edd0000-7ee2c000 \ advapi32
ELF 7ee2c000-7ee38000 Deferred libnss_files.so.2
ELF 7ee38000-7ee43000 Deferred libnss_nis.so.2
ELF 7ee43000-7ee5a000 Deferred libnsl.so.1
ELF 7ee5a000-7ee62000 Deferred libnss_compat.so.2
ELF 7efbf000-7efe5000 Deferred libm.so.6
ELF 7efe6000-7f000000 Deferred version<elf>
\-PE 7eff0000-7f000000 \ version
ELF f742a000-f742e000 Deferred libdl.so.2
ELF f742e000-f757e000 Dwarf libc.so.6
ELF f757f000-f7598000 Deferred libpthread.so.0
ELF f7598000-f76db000 Dwarf libwine.so.1
ELF f76f8000-f7716000 Deferred ld-linux.so.2
ELF f7718000-f7719000 Deferred [vdso].so
Threads:
process tid prio (all id:s are in hex)
00000008 osu!.exe
0000002b 2
0000002a 0
00000009 0
0000000e services.exe
00000028 0
00000027 0
00000020 0
00000010 0
0000000f 0
00000014 explorer.exe
00000015 0
0000001d winedevice.exe
00000025 0
00000022 0
0000001f 0
0000001e 0
00000023 plugplay.exe
00000029 0
00000026 0
00000024 0
00000038 (D) C:\Program Files\osu!\osu!.exe
0000003b 2
0000003a 0
00000039 0 <==
System information:
Wine build: wine-1.4.1
Platform: i386
Host system: Linux
Host version: 3.18.0-kali1-amd64
kali is for penetration testing and ethical hacking; so i suggest you don't bother with it..
TicClick
For Debian (stretch/sid, x64), I had to install allfonts with winetricks before successfully installing osu!; until that, the installer was unable to find Sans Serif font:
Call stack, in case anyone is interested
Unhandled Exception: System.ArgumentException: Font '?' cannot be found.
at System.Drawing.FontFamily.GetGdipGenericSansSerif()
at System.Drawing.FontFamily.get_GenericSansSerif()
at System.Drawing.SystemFonts.get_DefaultFont()
at System.Windows.Forms.Control.get_DefaultFont()
at System.Windows.Forms.Control.GetDefaultFontHandleWrapper()
at System.Windows.Forms.Control.get_FontHandle()
at System.Windows.Forms.ContainerControl.GetFontAutoScaleDimensions()
at System.Windows.Forms.ContainerControl.get_CurrentAutoScaleDimensions()
at System.Windows.Forms.ContainerControl.get_AutoScaleFactor()
at System.Windows.Forms.ContainerControl.PerformAutoScale(Boolean includedBounds, Boolean excludedBounds)
at System.Windows.Forms.ContainerControl.PerformNeededAutoScaleOnLayout()
at System.Windows.Forms.ContainerControl.OnLayout(LayoutEventArgs e)
at System.Windows.Forms.Control.PerformLayout(LayoutEventArgs args)
at System.Windows.Forms.Control.System.Windows.Forms.Layout.IArrangedElement.PerformLayout(IArrangedElement affectedElement, String affectedProperty)
at System.Windows.Forms.ContainerControl.LayoutScalingNeeded()
at System.Windows.Forms.ContainerControl.set_AutoScaleMode(AutoScaleMode value)
at #=qFqELZI4CNHUjKlISqNlqnX2uMei3zPMx8jZ8zLeeBj7Q4x$6KNxWT7M01WdMEh3I..ctor()
at #=qW0tN4ySVT$vmZGnYMncrziuJEtrqKKZPkNtuPZbZmPs=.#=qqFbgVCJT2zxMLRtGCN6VTlroKzNIL3fbyrFSNeSEUw0=()
at #=qW0tN4ySVT$vmZGnYMncrziuJEtrqKKZPkNtuPZbZmPs=..ctor(#=qFEAs5fL7G2eW0XiiKIbOqpMBS0Ah06vQIIelyZcp9_Wd1a4l$n0bUzJBo0EVjKGb #=qG1zuvPrqcHV0WNmt7xC1gvqnBeQl6c5qEFb7wQBQl7g=)
at #=qMJg8u$Xqvw7tXT54izDz5A==.#=qr$P1Dil8E5VEwL$EgqLKZw==()
at #=qeBiB6WYAto2Ihrie8aLoHI0y8Y6oGCnwGtCLe3embDM=.#=qPU2vGuvD17IDXy0rwjzALg==()

Other than that, everything went smoothly!
Ketchup901
What Wine libraries should you install to make the audio work?
AGRX
Can someone please help me ? Does anyone know what are dependencies needed to run cutting edge on wine? im trying to make wine build for mac. thanks
show more
Please sign in to reply.

New reply