DEV Community

Jothin kumar
Jothin kumar

Posted on • Edited on

How to create installers for your Python application?🤔

Requirements

  1. Debian operating system.
  2. Windows operating system with Python 3, pip and inno setup installed.

Creating inno setup installer (on windows)

In order to create an installer, we must convert the application script to executable. We can do this using pyinstaller.

Step 1: create a directory my_app.

Step 2: Create a new file my_app/app.py and copy the following contents to it:

import tkinter as tk

root = tk.Tk()
tk.Label(master=root, text="Hello world", font=("Arial", 30)).pack()
root.mainloop()
Enter fullscreen mode Exit fullscreen mode

Step 3: Navigate to my_app directory and run the following command in CMD:

pip install pyinstaller  
pyinstaller --onefile app.py -w
Enter fullscreen mode Exit fullscreen mode

Step 4: Wait for the command to complete and open inno setup compiler.

Step 5: On the inno setup welcome screen, click "Create a new script file using the Script Wizard" and hit ok.

Step 6: Follow on screen instructions (main executable file is in my_app/dist/app.exe).

Step 7: Compile the script and done!

Creating deb package (On Debian OS)

Just like windows, we must create an executable from our script for deb package.

Step 1: Create a directory my_app

Step 2: Create a new file my_app/app.py and copy the following contents to it:

import tkinter as tk

root = tk.Tk()
tk.Label(master=root, text="Hello world", font=("Arial", 30)).pack()
root.mainloop()
Enter fullscreen mode Exit fullscreen mode

Step 3: Navigate to my_app directory and run the following command in terminal:

pip install pyinstaller
pyinstaller app.py -w
Enter fullscreen mode Exit fullscreen mode

Step 4: wait for it to complete and create the following directories.

my-app_1.0.0/DEBIAN
my-app_1.0.0/my_app
my-app_1.0.0/usr/share/applications
Enter fullscreen mode Exit fullscreen mode

Step 5: Create a file my-app_1.0.0/DEBIAN/control and copy the following contents into it.

Package: my-app
Version: 1.0.0
Architecture: all
Maintainer: [Your name]
Copyright: [year] [Your name]
License: MIT
Homepage: [homepage url]
Description: My deb package.
Enter fullscreen mode Exit fullscreen mode

Step 6: Create a file my-app_1.0.0/usr/share/applications/my-app.desktop and copy the following contents into it.

[Desktop Entry]
Type=Application
Exec=/my_app/app
Hidden=false
NoDisplay=false
Name=My app
Comment=My app.
Enter fullscreen mode Exit fullscreen mode

Step 7: Copy all files and folders from my_app/dist to my-app_1.0.0/my_app

Step 8: navigate to the parent directory of my-app_1.0.0 and execute the following command:

dpkg-deb --build my-app_1.0.0
Enter fullscreen mode Exit fullscreen mode

Step 9: Wait for it to complete and done! You will find a deb package named my-app_1.0.0.deb

About me

About me

Thank you!

Original article: https://blog.jothin.tech/how-to-create-installers-for-your-python-application

Top comments (0)