Creates .deb packages for Jetbrains IDEs (e.g. PyCharm, Intelli IDEA) for Debian/Ubuntu
This project is a further development of pycharm-dpkg and intellij-idea-dpkg.
- IntelliJ IDEA
- PyCharm
- Debian
- Other distributions based on Debian (e.g., Ubuntu)
- Community
- Professional
- python3
- python3-urllib3
./package.py [-h] [-e EDITION] [-i IDE] [-l] [-c] [-v]
-h, --help
Show this help message and exit-e EDITION, --edition EDITION
Which edition should be packaged?-i IDE, --ide IDE
Which IDE should be packaged?-l, --list
List all supported IDEs-c, --check
Check if installed version is older than the newest version available (needs dpkg)-v, --version
Show program's version number and exit
python3 package.py -i idea -e community
python3 package.py -i idea -e community -c
for ide in "idea" "pycharm"; do
folder=$(mktemp -d)
cp -r /path/to/package-jetbrains-ide $folder/
if [ $? -ne 0 ]; then
echo "Error while executing 'cp -r /path/to/package-jetbrains-ide $folder/'."
exit -1
fi
cd $folder
echo "Checking for available $ide updates..."
python3 $folder/package-jetbrains-ide/package.py -i $ide -e community -c
ret=$?
if [ $ret -eq 1 ]; then
echo "Upgrade for $ide available, installing..."
dpkg_cmd=$(python3 $folder/package-jetbrains-ide/package.py -i $ide -e community)
dpkg_cmd=$(echo "$dpkg_cmd" | grep -o -E "dpkg -i .*\.deb")
ret=$?
if [ $ret -eq 0 ]; then
sudo $dpkg_cmd
if [ $? -ne 0 ]; then
echo "An error occurred while installing $ide with $dpkg_cmd"
fi
else
echo "An error occurred while packaging $ide"
fi
elif [ $ret -eq -1 ]; then
echo "An error occurred while executing $folder/package-jetbrains-ide/package.py"
fi
rm -r $folder
done
Other IDEs can easily be added, just look into data/* and add necessary files accordingly. Add the IDE to supportedIDEs
in package.py afterward.
If you find a bug, please file a bug on GitHub: http://github.com/baderas/package-jetbrains-ide/issues
If you want to contribute, please add a pull request on GitHub: http://github.com/baderas/package-jetbrains-ide/pulls
The project, idea, and many files are based on trygvis's intellij-idea-dpkg.