All Projects → Kron4ek → wine-portable-executable

Kron4ek / wine-portable-executable

Licence: MIT license
Wine builds packed into portable executables

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to wine-portable-executable

wine-launcher
Wine Launcher - Running Windows games under Linux
Stars: ✭ 249 (+192.94%)
Mutual labels:  proton, wine, squashfs
Conty
Easy to use unprivileged Linux container packed into a single portable executable
Stars: ✭ 198 (+132.94%)
Mutual labels:  wine, squashfs
AreWeAntiCheatYet
A comprehensive and crowd-sourced list of games using anti-cheats and their compatibility with GNU/Linux or Wine.
Stars: ✭ 289 (+240%)
Mutual labels:  proton, wine
gtasa-savegame-editor
GUI tool to edit GTA San Andreas savegames.
Stars: ✭ 56 (-34.12%)
Mutual labels:  proton, wine
PlayOnGit
Launch your games on Linux directly from the start menu, with excellent performance.
Stars: ✭ 31 (-63.53%)
Mutual labels:  proton, wine
BeamNG terrainMaterialCache
BeamNG.drive Black Terrain fix for Linux and Mac
Stars: ✭ 81 (-4.71%)
Mutual labels:  proton, wine
homebrew-portable-ruby
🚗 Versions of Ruby that can be installed and run from anywhere on the filesystem.
Stars: ✭ 96 (+12.94%)
Mutual labels:  portable
deepin-wine-containers-for-ubuntu
Container Archives of Deepin wine for ubuntu
Stars: ✭ 91 (+7.06%)
Mutual labels:  wine
oconfigure
configuration script for BSD.lv projects
Stars: ✭ 36 (-57.65%)
Mutual labels:  portable
std find simd
std::find simd version
Stars: ✭ 19 (-77.65%)
Mutual labels:  portable
dotfiles
Portable configuration files and utility scripts for Linux and OpenBSD
Stars: ✭ 29 (-65.88%)
Mutual labels:  portable
d3d9-to-11
Direct3D 9 to Direct3D 11 converter
Stars: ✭ 69 (-18.82%)
Mutual labels:  wine
Fusion360WineInstaller
No description or website provided.
Stars: ✭ 55 (-35.29%)
Mutual labels:  wine
FiniteStateMachine
This project is a finite state machine designed to be used in games.
Stars: ✭ 45 (-47.06%)
Mutual labels:  portable
metadata-tools
Contains tools for metadata, such as Roslyn's metadata visualizer.
Stars: ✭ 37 (-56.47%)
Mutual labels:  portable
BingMapsSDSToolkit
This toolkit makes it easy to use the Bing Maps Spatial Data Services (SDS) in .NET
Stars: ✭ 39 (-54.12%)
Mutual labels:  portable
dropt
dropt is yet another C library for parsing command-line options.
Stars: ✭ 39 (-54.12%)
Mutual labels:  portable
Portable-WebDAV-Library
Moved to codeberg.org - https://codeberg.org/DecaTec/Portable-WebDAV-Library - The Portable WebDAV Library is a strongly typed, async WebDAV client library which is fully compliant to RFC 4918, RFC 4331 and "Additional WebDAV Collection Properties". It is implemented as .NETStandard 1.1 library in oder to be used on any platform supporting .NETS…
Stars: ✭ 45 (-47.06%)
Mutual labels:  portable
d2launcher
Diablo II • Median XL • Mod Launcher for Linux
Stars: ✭ 20 (-76.47%)
Mutual labels:  wine
FAudio-Builds
FAudio builds for Wine
Stars: ✭ 63 (-25.88%)
Mutual labels:  wine

Deprecated

The project is deprecated in favor of another my project Conty, which is basically a much improved and extended version of this project.

Conty not only allows to run Wine without any dependecies installed, but also allows to run anything else. Take a look, if you are interested.

https://github.com/Kron4ek/Conty

Description

This project allows you to pack Wine and almost all of its required libraries into a single portable executable that should work on most Linux distributions. This project uses SquashFS as the container for Wine and its libraries (similar to what AppImage does).

What are the benefits compared to regular Wine builds? The main benefit is that fewer libraries need to be installed. Another benefit is that SquashFS supports fast compression algorithms (such as lz4 or zstd), so Wine can launch faster and use less disk space.

This is the structure of the portable executables generated (from the beginning to the end of the file):

  1. A script that mounts the bundled squashfs image and runs Wine
  2. The squashfuse binary and its libraries, in case squashfuse isn't installed
  3. The squashfs image that contains Wine, its required libraries (wine-runtime) and a custom launch script

Requirements

First of all, FUSE is required.

Despite that most required libraries are included into the squashfs image, some libraries still need to be installed. This is the list of libraries that need to be installed:

  • libc6 (glibc)
  • libstdc++6 (gcc-libs)
  • libgcc1 (gcc-libs)
  • libfreetype6 (freetype2)
  • libasound2 (alsa-lib; required for sound to work)
  • libgl1 (required for running OpenGL applications and for using WineD3D)
  • vulkan-driver (required for running Vulkan applications and for using DXVK)

Here are optional libraries that may be required for some applications:

  • libgnutls30 (gnutls)
  • libldap-2.4-2 (libldap)
  • libgmp10 (gmp)

It's important to install both the 32-bit and 64-bit versions of these libraries.

GLIBC 2.27 or newer is required as the runtime is from Ubuntu 18.04.


How to use portable Wine executables

You can download ready-to-use portable Wine/Proton executables from the releases page.

Root rights are not required!

Make the script executable and run it. For example:

chmod +x wine-portable-5.x-staging-amd64.sh
./wine-portable-5.x-staging-amd64.sh application.exe

To run winecfg (you can run regedit the same way):

./wine-portable-5.x-staging-amd64.sh winecfg

You can also use the built-in winetricks to install dlls and other components. For example, the command below will install dxvk and d3dcompiler_47:

./wine-portable-5.x-staging-amd64.sh winetricks dxvk d3dcompiler_47

For testing purposes or if installing libraries is not a problem for you (but you like SquashFS and the idea of a single Wine executable), you can disable the included libraries (runtime), in which case Wine will use only system libraries:

export DISABLE_RUNTIME=1
./wine-portable-5.x-staging-amd64.sh application.exe

How to create portable Wine executables

Use create_wine_portable.sh.

This script will use ready-to-use binaries to create portable Wine executable.

If you want to create a runtime, squashfuse and Wine build from the scratch, then read the next section below.


From the scratch / Sources

All components used in this project (the runtime, the squashfuse and the Wine builds) were created using the official sources.

For my and your convenience i regularly upload ready-to-use runtime, squashfuse and Wine builds.

If you want, you can create everything yourself using the available scripts.

Available scripts:

  • create_ubuntu_chroots.sh creates two Ubuntu chroots (32-bit and 64-bit).
  • build_wine.sh compiles Wine builds using two Ubuntu chroots (32-bit and 64-bit).
  • create_wine_runtime.sh creates runtime by copying libraries from two Ubuntu chroots (32-bit and 64-bit).
  • build_squashfuse.sh compiles squashfuse, lz4 and zstd in 64-bit Ubuntu chroot and creates squashfuse.tar with them included.

The first two scripts are available in another my project: https://github.com/Kron4ek/Wine-Builds


Notes

Keep in mind that this project is new and it has not been thoroughly tested. Please report any problems you find.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].