Code Monkey home page Code Monkey logo

wine32-deploy's Introduction


Win32-AppImage | Downloads |

"A simple and lightweight way to distribute the 32-bit Microsoft Windows® application on Linux".
It works on most Linux distributions.


Usage:

The wine32-deploy Commands

Bottle usage commands:

Command What its does
create-bottle => Create a new bottle with default settings
install => Install a software from outside bottle
run => Run the bottle as AppImage
  • create-bottle:
create-bottle  "Bottle Name"
  • install:
install  "Bottle Name" "path/to/file.exe"

The "path/to/file.exe" is relative to the current directory, and does not need to be inside "bottle"

  • run:
run  "Bottle Name"

You must set a "main executable" first

Bottle modification commands:

Command What its does
set-main-executable => Set main executable of bottle
set-name => Set name for application menu name
set-icon => Set icon for AppImage
set-category => Defines where application will appear on menu
  • set-main-executable:
set-main-executable "Bottle Name" "C:\path\to\file.exe"

The "C:/path/to/file.exe" is the main executable of your program, and follow some rules:

  1. Must be absolute
  2. You don't need worry about slashes be "\" or "/"
  3. Make sure that parameter starts with "C:" and file exists on "Bottle Name/prefix/drive_c/"
  • set-name:
set-name "Bottle Name" "New App Name"
  • set-icon:
set-icon "Bottle Name" "path/to/icon.png"

"path/to/icon.png" is the icon of your program, the path is relative to current directory, and does not need to be inside "bottle", but must be in PNG format with a recommended 256x256px resolution

  • set-category:
set-category "Bottle Name" "Category"

"Category" is the category of your program, in Linux this will determine where your Application will appear on Menu

 
    AudioVideo     Audio        Video    Development    Education    Game
    Graphics       Network      Office   Science        Settings     System
    Utility
 

Flags control commands:

Command What its does
enable => Enable a flag
disable => Set icon for AppImage
list-flags => List available flags

Flags modify behavior of packaged apps

  • enable:
enable "Bottle Name" copy-app-files

Enable flag "copy-app-files"

  • disable:
disable "Bottle Name" copy-app-files

Disable flag "copy-app-files"

  • list-flags:
list-flags

List supported flags and what they do

AppDir creation and manipulation commands:

Command What its does
create-appdir => Create an AppDir from bottle
minimize => Remove uneeded files from bottle
test => Test a bottle as AppImage
package => Build a AppImage from the bottle AppDir

Flags modify behavior of packaged apps

  • create-appdir:
create-appdir "Bottle Name"

If application does verification of DLL sigatures you must pass --keep-registry parameter

  • minimize:
minimize "Bottle Name"

This command allows the quick removal of unnecessary Wine files for the application to run

  • test:
test "Bottle Name"

This command allows test application simulating a real user HOME, before packaging AppImage

  • package:
package "Bottle Name"

Simplified way to build an AppImage from the bottle

Useful tools

Command What its does
winecfg => Open Wine configurator
regedit => Open Wine register editor
taskmgr => Open a task manager for wine apps
uninstaller => Open the 'Wine Uninstaller'

Building AppImage from source

All you need is the docker and git, most linux distributions have it in the repository, once time installed, you need 5 steps:

  1. Clone repository and enter on repository (if you don't did it):
git clone https://github.com/sudo-give-me-coffee/wine32-deploy.git
cd wine32-deploy
  1. Turn the build script executable:
chmod +x build.sh
  1. Run docker:
docker build . -t wine.appimage
  1. Copy AppImage to current dir and remove original file:
sudo cp "$(sudo find /var/lib/docker -name 'Wine-*x86_64.AppImage')" .
sudo rm "$(sudo find /var/lib/docker -name 'Wine-*x86_64.AppImage')" .
  1. Make AppImage executable:
sudo chmod 777 Wine-*x86_64.AppImage

Credits:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.