Easily run Windows software on Linux with Bottles

(usebottles.com)

61 points | by doener 4 days ago ago

47 comments

  • BugsJustFindMe 4 hours ago

    I don't understand any of these "bottle" solutions. All they're doing is running Wine. You can already run Wine without any of this.

    • Tajnymag 4 hours ago

      Bottles has certain sandboxing capabilities on top of wine. Plus, Bottles can download and manage various wine versions, separate from your distro's offerrings. It's pretty neat. Of course, technically, you could do almost everything it offers manually via scripting and your own wrappers, but that can be said about almost any software. Heck, C and C compilers are nothing else than syntax sugar for writing assembly.

      • guenthert an hour ago

        To expand on this, at least historically, Wine unfortunately didn't progress in a straight line, often new versions came with additional features or bug fixes which made some applications run or run better, while others ran worse.

    • PeterStuer 2 hours ago

      By analogy, not to make fun but to clarify, "I don't understand any of these "Chat" solutions. All they're doing is running the LLM. You can already run the LLM through the API without any of this."

      It is about convenience. For people willing to leave Windows but not their games, any hurdle taken down, no matter how small, is a win.

    • 63stack 3 hours ago

      Do you also not understand docker? It lets you create separate wine sandboxes with different wine versions, they are isolated from each other, and they are independent of the system-wide wine installation.

    • nubinetwork 3 hours ago

      When you install multiple apps or games into the same wine prefix, it can get pretty messed up. I haven't tried bottles, but I imagine they make a separate prefix for each app so things dont get cluttered up as much.

    • aussieguy1234 4 hours ago

      Wine can get quite complicated to configure.

      It tends to work best when each app has its own isolated wine prefix. This lets you tweak wine settings/params as needed for each app.

      This is how I do it for games using Lutris. I have a few games that work best on particular wine versions that won't be able to share the same prefix.

      • therein 3 hours ago

        Title made me think of Lutris. I thought Lutris allowed exactly this with a "fancy" launcher UI on top. You have the game you want to run and then it is installed into a per-game WINE prefix.

    • preisschild 3 hours ago

      Bottles is a fancy GUI for Wine that makes it a lot more friendly to many users. It also includes Installers/presets for many software/games that makes it even easier.

    • Quitschquat 4 hours ago

      It’s all about isolation I think

    • deelowe 3 hours ago

      Its just another iteration of snap, docker, etc. Basically allows you to create a platform independent distribution of a windows app by sacrificing storage space and a little bit of performance.

      • ChocolateGod 3 hours ago

        It has nothing to do or in common with Snap or Docker, it's just a way of making sure windows game/app has the best wine configuration (including libraries) to allow it to run.

        Wine bottles are not a software distribution method.

  • hrvstr 3 days ago

    Interesting. The UI looks way better than Lutris and Heroic Launcher. Anyone tried all three of them and went with Bottles? I first tried Lutris and then switched to Heroic, but I am not too keen about Electron apps, although Heroic works quite well.

    • wetbaby an hour ago

      I've tried lutris and bottles and stuck with bottles.

      My experience with getting battle.net on lutris was miserable. After staring at the UI trying to add battle.net I was informed to go to a site, pull back a script on there and I had no indication of what it was doing to my machine.

      However, bottles ships with scripts to set it up for you. I created a bottle in the location I wanted, installed battle.net and logged in and it worked.

      Its not without problems, if I accidentally start battle.net twice, my CPU utilisation shoots up to 100% and is stuck there until I kill the bogus bottles process.

      There's also a problem of the battle.net bottle bricking itself completely (I have to move the game files out, delete all bottles configs and recreate the bottle) if I change the runner.

      Whether these issues are bottles fault or not I can't say.

      But concept of what a 'bottle' is is easy to understand. The configuration is very rich and works well. I pick a pick a directory, pick a runner, install what I want, enable mangohud and I'm golden.

    • krs_ 4 hours ago

      I tend to use Bottles only for applications rather than games for some reason, but it works well for both. What I like about it for that use case is that it almost encourages adding multiple apps per bottle. This makes it quite easy to have one bottle for say all your dotnet apps etc.

    • smackeyacky 4 hours ago

      I won’t hear a bad word said about Heroic launcher. It’s almost literally magic. Up until I tried it I was still dual booting windows on my gaming laptop.

      When they got GOG cloud saves to work with cyberpunk 2077 I sent them money.

      • CodesInChaos an hour ago

        I generally like heroic, but it often has annoying bugs which persist for several months.

    • unfixed 3 hours ago

      I tried those 3, and decided to go for bottles. The configuration needed in order to run Windows programms were really really easy, and I like the fact that I can keep all the Windows programs neatly organized in a single place, not only games (as Lutris and Heroic are intended to).

      I also tried just wine, but Bottles is a handy wrapper.

    • close04 3 hours ago

      I went with Heroic for everything gaming and I have not stumbled on anything better since.

      I use Bottles for emulating general software.

  • guappa 4 hours ago

    "easily" until you update wine and then nothing works anymore :)

    • Tajnymag 4 hours ago

      That's one of the key points of Bottles. Wine instances are isolated from your system installation. Both the data and runtime. You update wine manually through Bottles if and when you want.

      • jchw 3 hours ago

        I want to try Bottles again to see if it really does solve more problems, but I honestly find it a bit disappointing how there isn't really that great of a solution for managing Wine prefixes holistically. I always wanted to like Crossover, because I like Code Weavers, but in the end all of the solutions felt like ducktape over the problems.

        Which might make one think that it's hopeless, but clearly it isn't. Steam shows us that this sort of concept actually can work reliably. I don't know how Steam actually manages the prefixes, but you never have to think about it and it always chooses a known-good Proton version. Lutris seems like it wants to do the same basic thing Steam does, and it is very useful, but often times Lutris's "known good" settings somehow don't work.

        This is a shame, this problem feels like it can be solved and make Wine vastly more useful. (Though in the end, improving upstream Wine will always be better than trying to build layers on top of it like this... but building layers on top of it like this helps us with running Windows software now, which is still pretty useful.)

        Aside from having better automatic bottle management and setup of software with "known good" settings, I'd like to see more things tried. Some software doesn't actually need a persistent prefix... maybe there could be a concept of an ephemeral prefix of some sort instead, to make those softwares work more reliably. And when software does have a prefix, it sure would be useful to be able to "undo" things, using snapshots. Features like this would go a long way to make Wine prefixes easier to manage for people who are less technical.

        • omnimus 3 hours ago

          Isnt proton wine version for games that Valve pays Codeweavers to make?

          • jchw 3 hours ago

            I believe Valve and Codeweavers collaborate on Proton. However, Proton is very similar to upstream Wine in practice, and you can use Proton as a drop-in replacement for Wine if you want to. Lutris will happily download and run builds of Proton for you.

        • Tajnymag 3 hours ago

          As far as I know, Bottles already have bottle snapshots

          • jchw 3 hours ago

            Nice, it looks like you are correct. I think that's a genuinely very useful feature and I'm glad to see it implemented.

    • SadTrombone 4 hours ago

      That's the whole point of it being in a "bottle", each bottle has its own self-contained instance of wine.

    • 63stack 3 hours ago

      You can configure each bottle to use a specific version of wine, they are independent of the system. Rtfa before you make statements like that :)

  • Crackula 5 hours ago

    Is this some form of wine-wrapping? Or do these people code the windows emulation themselves?

    All of these on-top-of-wine solutions are always a cat and mouse chase when a game or app is updated. You end up with several days to weeks and sometimes eternity to get some configuration fix

    • 3eb7988a1663 5 hours ago

      Count me as a person who could never figure out how to directly use WINE. All of the special configuration knowledge is seemingly spread across dozens of forum posts. Best case, you will find some obscure post which ends with, "Never mind, figured it out!"

      I have been using Bottles for a while now, and it has been painless to launch a few necessary Windows programs.

      • ChocolateGod 3 hours ago

        I found back in the day the best documentation for how to run X with Wine was to read the lutris source for that app.

        Did it for Overwatch

    • ez8 4 hours ago

      I think so, I mean it's called Bottles. It looks like a GUI for Wine that doesn't give Wine enough credit for doing the real work. I have a feeling it just runs Wine.

      https://github.com/bottlesdevs/Bottles/tree/main/bottles/bac...

    • hsbauauvhabzb 5 hours ago

      Or be like me, and get Counterstrike almost working, but with some show stopping bug, continually for a decade, before giving up gaming for good only for steam Linux to be released.

      • modzu 4 hours ago

        if it makes you feel any better i doubt cs runs on steam Linux

        • Svip 4 hours ago

          Considering that Valve has a native Linux release for Counter Strike (as well as all their other titles), I doubt you looked much into this.

        • dminik 3 hours ago

          Every Valve game released has a native Linux version. That includes every counter strike game.

          • hsbauauvhabzb 18 minutes ago

            But that’s only occurred in the last ~5 years, no?

    • preisschild 3 hours ago

      The Bottles Flatpak uses the Wine flatpak as its base, which means it should be relatively soon up to date with the latest wine version

      https://flathub.org/apps/org.winehq.Wine

  • tormeh 4 hours ago

    I dunno ablut easily. If you just have some random exe installer Bottles is not super helpful. Probably easier if your software is in the Bottles catalogue.

    • 63stack 3 hours ago

      It has a literal "run executable" button. How much easier so you think it could get?

  • wolfi1 4 hours ago

    is there somewhere a more technical description? I want to know about the technology stack before I install software which uses up several 100 MB

  • self_awareness 4 hours ago

    > Run Windows in a Bottle. Easily run Windows software on Linux with Bottles!

    What does it even mean?

    Is it somehow related to Gnome Boxes?

    • pxc 3 hours ago

      It's a pun on Wine, the syscall translation layer that lets you run Windows programs on Linux without hardware virtualization.

      A working Wine configuration includes a directory that functions as a virtual C;\ drive, has a registry, and various other settings. You can actually have multiple of these if you specify which one to use at launch time through the environment variable WINEPREFIX, which points to a directory containing the relevant config files and other data directories.

      A "bottle" is a user-friendly way of interacting with this functionality, managing these prefixes and their settings, and recommending known compatibility fixes for them. It may also involve managing multiple Wine versions, perhaps including some with patches.

      It seems comparable to a lot of older tools in the same vein like CrossOver Linux (by Codeweavers, who maintain Wine), PlayOnLinux, Lutris (gaming-focused), and Cedega (gaming-focused and defunct).

      • self_awareness 3 hours ago

        Thanks, your reply should be copy-pasted and put on that website.

        They're using terminology like "Windows prefix", which in reality appears to be a Wine prefix.

    • cyphax 3 hours ago

      It's not related to Gnome Boxes. It is an application that makes using Wine easier and more robust. The statement means to say that it allows you to run Windows applications inside an isolated environment (a "bottle").

  • ForOldHack 5 hours ago

    Zoltan has you beat. Fresh install if Zoltan runs directx installer ( dxdiag runs perfectly ) and so does Dungeon Siege - Legends of Aranna. Perfectly. Better than windows 10. It's not listed on Bottles, so I will check back in 6 months.

    • somat 5 hours ago

      For what it's worth in a fit of nostalgia I found that dungeon siege runs well under bare wine.