I want to create a self-executable archive using Makeself. I referred to makeself.io but didn't understand anything from it. What are the steps for making a Makeself self-executable archive?
Here I am giving example of archiving UBUNTU ISO in self executable archive. (This is only for understanding)
1.First download makeself into your machine.
apt install makeself OR
You could download makeself from official website Or Press here
Then you will get file names as makeself-2.4.0.run.
Simply run this file by
It will automatically create one directory named as makeself-2.4.0.
- Inside that directory you get makeself.sh script. This is your directly executable script.
You can use this file instead of
apt install makeself.
2.Then create a directory which you want to archive .
3.Then copy your ISO file in this directory.
cp <Source Path> <Destination Path> // Here destination path is ISO
4.Then create a script named as copy.sh
Inside this script write what you want to do with this ISO. SO I want to copy this ISO into my /home/Downloads folder. So I write in script
#!/bin/bash cp -r <filename> /home/Downloads echo "File Copied Successfully" ##// Remember This script will automatically run after extracting this folder //
Give permssion to script
chmod 777 Copy.sh
So now you have 1 ISO directory and in that directory 1 ISO(UBUNTU iso) file and 1 script(Copy.sh).
5.Now run this command
makeself --pbzip2 ISO Copy_ISO.run "Copying ISO File" ./Copy.sh
- pbzip2 --- Use pbzip2 instead of gzip for better and faster compression on machines having multiple CPUs. (you can use any zipping algorithm mentioned in here)
- ISO --- It is the name of the directory that contains the files to be archived
- Copy_ISO.run --- It is the name of the archive to be created
- "Copying ISO File" --- It is an arbitrary text string describing the package. It will be displayed while extracting the files.
- ./Copy.sh --- It is startup_script. It is the command to be executed from within the directory of extracted files.
It will generate Copy_ISO.run file.
So you can run this Copy_ISO.run file on any system.
6.Command to run is -->
This will copy your UBUNTU ISO file in /home/ directory. You can run this script on any system. You don't need to carry another zip file of UBUNTU ISO.