16 ms·
Bottles – Easily run Windows software on Linux
- pipeline_peak 3y agoWhat’s the point of this isolated “bottle” concept? It seems like the bloated nature of containers is now pouring into emulation. Why fix underlying problems when you can just put things in a bottle/container? Like that won’t use more resources.
- worble 3y agoA bottle is basically just a wine prefix, everything you run in that bottle runs in that prefix.
- wtfishackernews 3y agoStorage space is cheap
- deleted 3y ago[deleted]
- mmastrac 3y agoBottles have been around longer than Linux containers, I'm afraid. The world of Windows emulation on Linux pre-bottle was extremely difficult to say the least. You're juggling a dozen dependencies, some of which are closed-source binaries, some are blackbox replacements, and each game or application is a special snowflake requiring very specific versions of these (and perhaps some tweaks here and there).
- Dalewyn 3y ago>each game or application is a special snowflake requiring very specific versions of these (and perhaps some tweaks here and there). It's worth emphasizing every time this subject rolls around just how impressive Microsoft's commitment to backwards compatibility in Windows really is.
- beebmam 3y agoCan you explain how containers are bloated?
- _9za9 3y agoIn my case, BTCPayServer was wrapped in a docker container because the developer loves docker... but I took the docker out of the project after I forked it because I felt putting the project in a docker container was extra bloat that was convoluted and unnecessary. In other words, a "container" didn't have to wrap the project, it was just implemented because of a dev insisting on it. That is bloat to me, extra and unnecessary.
- LASR 3y ago> In my case, BTCPayServer was wrapped in a docker container because the developer loves docker... Right. But one example doesn’t mean the entire world of containers is “bloat and unnecessary”. I’ve encountered many use cases where packaging dependencies and deployments become significantly simpler due to containers. True that there are possibly several other solutions that also solve similar problems. But that doesn’t mean containers don’t also solve actual problems.
- Jenk 3y agoThat is remarkably a non-answer. Not least because you don't even need to run the container at all when developing.
- mmastrac 3y agoIt's pretty easy to Google this particular example you've cited and see that they have non-docker instructions available, and don't recommend them because you can easily screw things up. Seems fair to me. https://docs.btcpayserver.org/Deployment/ManualDeployment/ https://docs.btcpayserver.org/Deployment/ManualDeployment/
- naikrovek 3y agogiven that Docker mostly (entirely?) gives a single UI to various related Linux kernel features, I don't see how it is bloat at all. Docker just tells the kernel to create a separate cgroup and networking, CPU, and RAM namespaces and then launches one or more processes within the confines set up with those things. it's the same overhead/bloat as launching any normal process in the default cgroup and contexts. > ... wrapped in a docker container because the developer loves docker I think you maybe don't love Docker and that's coloring some things for you, unjustly.
- hnlmorg 3y agoThis uses Wine, which isn’t emulation. Also since when were containers more “bloated” than emulation? The whole point of containers is that they don’t need to virtualise the entire stack because they are reusing parts of the host stack.
- actionfromafar 3y agoA rose by another name… that Wine is not an emulator is a good tagline, but it emulates Windows behaviour really well.
- pareidolia 3y agoIt's a runtime environment, like the JRE or Mono CLR. By your logic, the JRE is an emulator because it has a "java virtual machine."
- xcv123 3y agoWINE is not a VM though. It is an implementation of the Windows API. The Wine documentation admits that it is emulating the Windows API. https://wiki.winehq.org/Wine_Developer%27s_Guide/Architecture_Overview#Foreword https://wiki.winehq.org/Wine_Developer%27s_Guide/Architectur... Of course there is no hardware emulation, so all Windows binary code is running natively with no performance drop. That's why it was called WINE. But still there are two meanings of the word. Hardware emulation or OS emulation at API level.
- hnlmorg 3y agoThese two meaning are a little like how “theory” can mean different things to scientists vs non-scientists. In the context of computers, “emulation” has a specific meaning and one which isn’t applicable to WINE.
- xcv123 3y ago> Why fix underlying problems when you can just put things in a bottle/container? Like that won’t use more resources. This is WINE (not an emulator). Constrained by the design of Windows. Cannot fix that underlying problem. The resource cost is only tens of megabytes of storage and it provides clean isolation. It's not an entire copy of the OS. It's mostly just configuration.
- rzzzt 3y agoSettings like which version of Windows to impersonate, what TrueType fonts and DLLs need to be downloaded, what runtime to use (classic Wine or Proton), etc. can change from one application/game to another. DOSBox also has similar front-ends that can start Doom with a Sound Blaster 16 but Duke Nukem with a Sound Canvas by applying different configuration files.
- coconut08 3y agowine isn't emulation and wine prefixes are not containers. whenever you use wine you are using a wine prefix. all bottles is is a tool for managing wine prefixes.
- pmarreck 3y agoWINE = Wine Is Not-an Emulator
- thriftwy 3y agoThis reminds me of playonlinux tool which does the same with reasonable success.
- mrpippy 3y agoBasically a free clone of CrossOver, which has used “bottles” to refer to separate Wine prefixes for 20 years. (disclaimer: I work for CodeWeavers)
- nailer 3y agoI don’t work for codeweavers and will still say that this is unfairly benefiting from the existing terminology created by codeweavers. They could have literally picked any other name.
- greenknight 3y agoWhat if they didnt know about codeweavers using the name? Wine goes into bottles (in the real world)... its a play on words.
- andrewmcwatters 3y agoAlmost anyone using Wine is familiar with the term and CodeWeavers’ usage of it.
- fortyseven 3y agoI'm not, but I'm not a terribly advanced Wine user. (Though I'm sure now I'll notice it everywhere. :D)
- hunter2_ 3y agoI'm sure Microsoft was familiar with not only windows on buildings, but also other OSes' use of the term "window" as a GUI element (dating back to Xerox Alto in 1973), and called their 1985 product "Windows" anyway, so there's precedent.
- philistine 3y agoMicrosoft literally researched every tech article about GUIs to extract all the terms journalists used to describe them. They then chose the most common word from all these articles.
- canadiantim 3y agoUsing Bottles to play ultima online again, my productivity wishes it hadn’t been possible tho
- jdright 3y agohttps://crossuo.com/ https://crossuo.com/
- Kalanos 3y agoCan I use this and docker at the same time?
- smoldesu 3y agoYep.
- Kalanos 3y agoI attempted to use Wine yesterday to run a Windows app and it failed. How is this different from Wine?
- dark-star 3y agoI am wondering about that as well. I can (and do) use different WINEPREFIXes for different programs with regular Wine too. I assume this just takes the setup of those WINEPREFIXes out of the equation? Like having pre-defined configs/winetricks/tweaks/DllOverrides/whatever for certain games? Maybe with a couple of patches to Wine that are not yet upstream?
- throw_m239339 3y agoIt comes with a bunch of "fixes" (AKA DLL straight from Windows) you can optionally download if the app doesn't start. I actually managed to run Cinema 4D R21 with Bottles quite painlessly. I had harder time installing flatpak (to install bottles) on a Porteus distrib than running Cinema 4D.
- mordae 3y agoJust use Lutris. It can fetch various flavours of wine and manage your bottles. https://lutris.net/ https://lutris.net/
- 29athrowaway 3y agoIn addition to Windows software, it also works with web applications, DOS, retro computers and consoles as well. For wine, it has installation scripts that automatically implement the necessary workarounds for specific software. Such as picking a wine version, setting overrides, installing libraries, etc. It also creates a wineprefix for you with a recommended Windows version for that software. For example, you can get The Sims 1 complete collection from Internet Archive (abandonware at this point), and then add that game to your collection. That will download and run the installation script for it, saving you most of the manual steps involved in installing that game.
- lockhouse 3y agoThat looks awesome! Is there anything like that for Mac?
- 29athrowaway 3y agoI guess this would be kind of similar https://wiki.playonlinux.com/index.php/Installing_PlayOnMac https://wiki.playonlinux.com/index.php/Installing_PlayOnMac
- lockhouse 3y agoThanks!
- bimguy 3y agoCrossOver
- deleted 3y ago[deleted]
- 3y ago
- XorNot 3y agoCan this run MS Teams is my question?
- kristopolous 3y agothat's really all that I care about. I feel like I'm some voice in the wilderness looking to run productivity and office apps. There's so much focus on video games.
- frfl 3y agoIs this sarcasm or a joke or a serious question? MS Teams is already cross platform Edit: Luckily I haven't had the displeasure of using MS Teams a couple of years, so I didn't know it was discontinued on Linux.
- posguy 3y agoNo, MS Teams for Linux launched in 2019 and unlaunched a few months ago. All we get is a flakey PWA now on Linux. https://techcommunity.microsoft.com/t5/microsoft-teams-blog/microsoft-teams-is-now-available-on-linux/ba-p/1056267 https://techcommunity.microsoft.com/t5/microsoft-teams-blog/... https://techcommunity.microsoft.com/t5/microsoft-teams/end-of-the-road-for-teams-linux-desktop-client/m-p/3630968 https://techcommunity.microsoft.com/t5/microsoft-teams/end-o... Bing Chat is also crashing in Firefox on Linux when I go to use it, just the tab itself crashes :c Microsoft is coming full circle with their most recent embrace, extend, extinguish cycle it seems. Just gotta dodge, duck and dive around any attempts they make to get us dependent on their ecosystem...
- codethief 3y agoI use https://github.com/IsmaelMartinez/teams-for-linux https://github.com/IsmaelMartinez/teams-for-linux . It's "just" a wrapper around the PWA but a very decent one at that.
- tannhaeuser 3y agoBummer! That sucks as a freelancer with customers frequently relying on MS out of laziness. OTOH, at this point it's just another nail in the coffin for the Linux desktop that ceased to be usable anyway, even for work supported by the few age-old apps it has. Sadly, I can't even say I'm surprised, with Linuxers busy for well over a decade now to dutifully and sheepishly bring their workloads to "the cloud" and Chrome exclusively, and occupied with meta (non-)problems (wayland, containers). Looking forward to projects on Windows notebooks using Docker Desktop on x86!
- RangerScience 3y agoHow’s gaming performance? (It’s pretty much the only reason I still use Windows at all)
- deleted 3y ago[deleted]
- 29athrowaway 3y agoThe short answer is that you can squeeze some significant extra performance if you are clever, and make it run very close to Windows. If you do absolutely nothing, the baseline is often fine. The ArchWiki has some tips that can help tuning your system: https://wiki.archlinux.org/title/gaming https://wiki.archlinux.org/title/gaming This launcher does help too: https://github.com/FeralInteractive/gamemode https://github.com/FeralInteractive/gamemode On top of that, you can use a patched kernel like: https://xanmod.org/ https://xanmod.org/ You can check support status for games here: https://www.protondb.com/ https://www.protondb.com/ If you run games via Proton with DXVK, you can use the environment variable DXVK_HUD=1 to show a HUD with a FPS meter. Some others prefer mangohud. Setting your CPU frequency scaling governor and GPU to performance mode also helps. In some obscure cases, removing unused network interfaces will make Windows games that use certain Windows APIs run significantly faster. Proton is known to interfere with controller support so disabling steam input + overriding DirectInput DLLs can be helpful in some cases.
- 29athrowaway 3y agoAnd also solve the wine dependency hell https://www.gloriouseggroll.tv/how-to-get-out-of-wine-dependency-hell/ https://www.gloriouseggroll.tv/how-to-get-out-of-wine-depend...
- pmarreck 3y agoIn my experience, all but a non-issue, unless you are a competitive gamer
- rkangel 3y agoIt's worth remembering that all of these solutions are Wine (or Proton which is a fork) underneath, it's just a question of packaging. The Steam Deck is a Linux Gaming machine that uses Proton to make the vast majority of the Steam Library available. It works extremely well on not the most powerful hardware. You can basically play any game as long as it doesn't rely on some hardcore anti-cheat (so counts out some online multiplayer games like R6 Siege).
- deleted 3y ago[deleted]
- marinhero 3y agoI only use Windows because of gaming purposes. Is there anything around the internet that can show benchmarks for something like Bottles vs Proton vs Windows? WSL works well but I’d personally want to stay stick to native and not dual boot.
- Tribesman3875 3y agoyou can always do it yourself? Pretty easy to split a windows partition into a Linux install and test it out
- codingcarpenter 3y agoHonestly proton is really all you need at this point. I've completely switched over to Linux and have had absolutely zero problems. How Linux mint even found all of my drivers for me it took literally no effort. That being said you can always check proton db to see if your games work with it
- pitaj 3y agoOne exception is online multiplayer, which you'll still need a true Windows for.
- pmarreck 3y agoDepends on the game, and the anti-cheat software it uses. EAC for Linux works
- cannonpalms 3y agoIf the publisher enables it, yes. This isn't universal yet.
- bodge5000 3y agoplenty of proton games support online multiplayer (natively or otherwise), its just games which use EAC thats the problem. Even then it can be fixed with (what I've heard) minimal work from the developer, but sadly thats still not quite universal. I think there are a few other anti-cheats which can be problematic, but again I think it can be worked around
- jzombie 3y agoCool, but after reading "All the gaming platforms you already know, right here" and searching for Xbox Game Pass or Forza Horizon and finding nothing, I gave up.
- winwang 3y agoI have found that most open source projects like this tend to oversell and underdeliver.
- mikrotikker 3y agoFrom the page "Consider they only create bottles for apps that need special tweaking. FH4 works out of the box on proton btw, at least when I did it via steam.
- pmarreck 3y agoLutris is SOL now that steam proton runs everything, including that
- nani8ot 3y agoThat was only the heading. The paragraph directly below clarifies: > The most popular gaming platforms (Epic Games Store, GOG Galaxy, Origin, Battle.net, EA Games..) are already available as an installer in Bottles. They even put an "Available Installers"-button right below. Xbox Game Pass won't work on Linux until MS decides they want to, and I don't see that happening.
- Thaxll 3y agoSo what should we use between native wine, lutris etc ...?
- minroot 3y agoI wish they had a repository of common softwares.
- troymc 3y agoThey have a bunch of "installers": https://usebottles.com/appstore/ https://usebottles.com/appstore/
- Animats 3y agoOh, it's a GUI for Winetricks. Correct?
- coconut08 3y agono it isn't.
- Animats 3y agoIt's basically a thing to load up Wine with the DLLs and tweaks for a specific program, right? That's what Winetricks does.
- coconut08 3y agothey do not use winetricks. they built their own system for installing dependencies and managing prefixes. you are right that it fills the same role, but that's not what you asked. it also does a lot more than just the things that winetricks does.
- mhitza 3y agoHaven't used winetricks in what feels like 10+ years, but as I recall it only dealt with a single wine prefix (~/.wine most likely). Bottles are namespaced prefixes (usually one for each application installed this way). I don't know in practice how much that is needed in wine in order to avoid one "trick" interfering with another "trick" for another app. However, makes it easier to remove the extra cruft of uninstalled applications (like the dozen variants of the .net runtime, or whatever else it was that you had to install ad-nauseum in the past for some windows apps/games).
- heavyset_go 3y agowinetricks can use multiple prefixes, it asks you at launch which prefix to use, or whether to create new ones.
- shmerl 3y agoI just do it manually with my own scripts.
- geocrasher 3y agoWhile the Windows OS is far from perfect, it's always going to be better than one of these emulator projects. I know that wine is mature etc etc but at the end of the day, if you want to run Windows software, just run Windows.
- deleted 3y ago[deleted]
- dang 3y agoRelated: Bottles: GUI front end to run Windows software on Linux - https://news.ycombinator.com/item?id=29612976 https://news.ycombinator.com/item?id=29612976 - Dec 2021 (237 comments)
- GlassOwAter 3y agoWill this allow me to run Photoshop on Linux? That’s the big thing keeping me from switching.
- happymellon 3y agoNo, and it may never run as Adobe is very hostile for unclear reasons.
- tohnjitor 3y agoCan it run any Autodesk software?
- xattt 3y agoGood one! Now do Premiere Pro!
- auditor_3d 3y agoI can't find anything that does. It's like they intentionally wrote their software so that it can't work with anything. I wish they would just give us a proper linux release. makes me sad. Lutris tries but it still can't handle it.
- troymc 3y agoThey have an installer for Autodesk Fusion 360: https://usebottles.com/app/#fusion360 https://usebottles.com/app/#fusion360
- khobragade 3y agoIt didn't work the last time I tried it.
- themoonisachees 3y agoHad the same issue. You need to create another bottle in which you disable DXVK/VK3D.
- tohnjitor 3y agoAutodesk generally has the option to create custom install files before downloading. I wonder if that would be useful.
- khobragade 3y agoOh cool! When I tried, I didn't detect any network activity; figured the setup isn't even downloading the files.
- jaimex2 3y agoBetween Steam and Heroic Launcher ( Epic and GOG client) I've been having a really good gaming experience on Linux. Things just work and the UIs are really polished. This looks great too. Get the FlatPak version of Heroic Launcher as it does a lot of tricks out of the box, like letting you be seen as online by friends to be added directly to games, cloud save and dealing with DRM
- antman 3y agoWe are in a family crisis here, can any of the solutions run roblox after their botched anti cheat update?
- pogform 3y agoIs this what happened? I booted up a Roblox-made game yesterday and it broke the EasyAntiCheat software on my machine.
- smoldesu 3y agoI think so, but the solution may be convoluted. Waydroid users can spin up an Android container to run Roblox post-Wine ban: https://youtu.be/E0BLQCEU8ZI https://youtu.be/E0BLQCEU8ZI
- antman 3y agoThrough android? Interesting approach will try this to see how it performs, thanks!
- notThrowingAway 3y agoI love how clumsy and all over the place that video is
- smoldesu 3y agoIt's like one of those "edit Windows Registry to get around the library time restrictions" videos from 2009. The fact that I'm seeing these for Linux is a sign that nature is healing, I think.
- hoten 3y agoUhh AoE 2 recently broke under crossplay due to I think an anti cheat upgrade. Wonder if it's the same tech
- frozenport 3y agojust run windows
- leipert 3y agoSemi-related: Having no windows machine or console, I recently tried out one of those gaming streaming services to play Diablo IV and wow: 10 bucks/month to be able to play it without the need to tinker with anything or building a PC. Getting 30ms latency is good enough for this casual gamer.
- Hamuko 3y agoI'm still astonished that I could have a better experience playing Cyberpunk 2077 on Stadia that's hosted in ??? than I could have playing Ghostwire: Tokyo that was hosted on another computer in my local network, connected to the same Gigabit switch. Stadia had both lower input latency and higher stream quality.
- Topfi 3y agoI have long had a theory for why Stadia handled CP77 so well compared to the other platforms. CDPRs management of CP77s development was, to put it mildly, less than ideal and any extensive period of crunch will always come at the detriment of the employer's health (both mental and physical) and the quality of the end product. Personally, I always view crunch on any project as a failure, most often by management. CDPR higher-ups though, in large part fueled by experiences with similar situations that lead to success in the past[0], were unconcerned by. If the situation had stayed similar to The Witcher 3s last few months of development, CP77 would have potentially still released in a less than perfect state (considering W3s bugs at launch, new technology, more SKUs, less dev time overall and any form of crunch, in my opinion, being a failure in itself), but likely not nearly as bad as what we ended up getting. COVID-19 happened though, as we all know, and that had its fair share of consequences for everyone and everything involved. What I'd like to focus on are dev kits. PC gaming has the up- and downsides that come with flexible hardware choices, leading to consoles generally having more targeted optimization and often receiving more testing. But when dev kits are inaccessible due to agreements with manufacturers, those become impossible. Stadia though, for all its flaws, had two key advantages in the work-from-home world. Whilst physical devkits exist for Stadia, they also offered the ability to access development environments via the internet[1]. Because Stadia was a targeted platform with one specific, testable hardware configuration (like a console), but allowed development and QA from anywhere with a decent internet connection, that likely explains why the Stadia version at launch was more playable and stable than any console SKU or PC experience. There was, as far as I know, never any public confirmation of this speculation and as Stadia has seized to be, we will likely never know, but this always seemed like a reasonable assumption to me. [0] https://www.eurogamer.net/cd-projekt-red-this-approach-to-making-games-is-not-for-everyone https://www.eurogamer.net/cd-projekt-red-this-approach-to-ma... [1] https://developers.google.com/stadia-dev/cloud-identity-gsuite-setup https://developers.google.com/stadia-dev/cloud-identity-gsui...
- jumperabg 3y agoCan it run League Of Legends?
- Blaiz0r 3y agoyes
- themoonisachees 3y agoBottles for me fills a very specific niche that nobody else does: launching multiple apps in the same prefix. For example, if I want to launch Titanfall 2+ Northstar, I need to launch a Northstar launcher in the same prefix as the EA launcher (nowadays these Northstar launchers have a button to launch the EA launcher so it's no longer an issue but still). Each bottle feels like a separate windows install, so if you need a dependency that's not bundled you can just press the big "launch program from file" button and go on with your day. Games that are DRM free and programs that you download on windows in general can be installed in proton or lutris but doing it always feels like a hack. On the flip side, using bottles is just "launch installer, an entry for the installed program is added". It really is a fantastic piece of software.
- coldtea 3y ago>launching multiple apps in the same prefix What's a "prefix" in this context?
- turboponyy 3y agoA Wine prefix - the configuration and filesystem for a single Wine Windows installation.
- ttctciyf 3y agoEssentially, a (fake) Windows instance.
- rpigab 3y agoI have tried to use Bottles on my Steam Deck, because I have old CDs of Windows XP and older games, like Wacky Races, Re-Volt, etc., I can copy the files off the CD, into a folder on my Steam Deck and then run the installer as a non-Steam Game with Proton compatibility, and the installer runs and even manages the video test that's sometimes present in game installers, but after this I need to run the game. I can edit the non-steam game and use the installed game path, but then it fails to launch because some of these games used to require that the game CD was present in the CD reader, obviously I don't carry it around and plug it in he Deck, this is why I've tried the same thing using Bottles but I'm not sure if I can easily mount a CD or ISO or folder this way, and only in the context of launching a game, not persistent. I have to look further into this and also check Lutris maybe, but if someone knows how to solve this, I'd be glad to hear about it! For some games, it might be easier to patch it and remove the CD check... For Re-Volt, a community engine and launcher exists, RVGL, which makes it way easier.
- ChuckNorris89 3y ago> if someone knows how to solve this, I'd be glad to hear about it! With the risk of opening a can of worms, yes, get the pirated cracked versions of the game. You already own the legitimate copy so it's fair. Not your fault the DRM is not letting you play the games you paid for and own legitimetly. At least that's how I see things. Otherwise consider re-purchasing the DRM-free versions of the games on platforms like GOG.
- doublerabbit 3y agoSame prophecy I follow for movies. I buy movies second hand for dirt cheap, throw it in a cd wallet and toss that behind the shelf.
- neurostimulant 3y agoIf you buy it secondhand, the original creator won't profit from the sale, right? If the intend is to justify your piracy, don't you need to buy a new copy instead of a secondhand one?
- carlosrg 3y agoGNOME applications look so... mobile. Large controls, large title bars that lack maximize/minimize, simplistic layouts. It might be good for this kind of frontend apps but I can't see software like Krita or KDEnlive being done for GTK4/GNOME as of today (for reference: https://kdenlive.org/wp-content/uploads/2022/01/271174170_1089343691850009_6872343577648842521_n.png https://kdenlive.org/wp-content/uploads/2022/01/271174170_10...)
- kevin_thibedeau 3y ago16x16 icons used to be large on 640x480 screens. Microscopic controls is not how GUIs were originally intended to look.
- catboybotnet 3y agoThat may be the case, but microscopic controls are how some of us want our GUIs to look. Using Windows 7 with the classic theme on a 1920x1080 display was near perfection. Even for Aero, I'd have my toolbar set to small icons and CTRL+MW_DOWN on the desktop to shrink my icons. The closest I can get now is to up my display resolution to offset the giant bars that take up more of my screenspace than they need to. Not having the option really sucks.
- FireInsight 3y agoYou can change display scaling to make GNOME small.
- JohnFen 3y agoI don't care about how they were intended to look, I care about what the best look & feel is for me.
- dijit 3y agoMicroscopic.. sure, they weren't intended to look microscopic. But you're painting an inaccurate picture here, GNOME controls are a larger ratio than they've ever been to screen real estate; For context, this is how it looked on a 640x480 display https://commons.wikimedia.org/wiki/File:GNOME-escritorio-1.x.png https://commons.wikimedia.org/wiki/File:GNOME-escritorio-1.x...