Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions dev-util/pycharm-professional/Manifest
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,5 @@ DIST pycharm-professional-2026.1.1-aarch64.tar.gz 1211885841 BLAKE2B 93ff2345454
DIST pycharm-professional-2026.1.1-amd64.tar.gz 1216500497 BLAKE2B 2c178cb353737b86a86ee808cfc16e5a1563a88e0556546bcd142b3c4995f054a4d5ba7a78d130bbdc3f679f47e547d5845694897f80a88f2e51be15b9b49bc6 SHA512 78fd1d44869caedd1588daf9d07d34db402baa2a5b4331b12fdfd26fde32809218d0b60c375f48f30dc9624bf3b6f9c2a61f1f48e2da0c65f719d50cafd935d8
DIST pycharm-professional-2026.1.2-aarch64.tar.gz 1212030869 BLAKE2B 58f475e152626804afa4fec9cf5b14af7c4c9b014c5c9d76730cccd34f99b46f3abd2274619dd5e7f01b71711e01222f5878371c99745939445c0b778f8b1ccc SHA512 c53e32b5838ef4953799c12220e868113cfbf5369f374a79b573118481fd113f215815cc1c95ef1ef5f6619a9a219263939d50eff445b7b3e7f6757c1016e101
DIST pycharm-professional-2026.1.2-amd64.tar.gz 1216651782 BLAKE2B 0a117c753d761f542987ca067979ef7e46d8648754a7df7ae0dcdf5c4fb21a7ee24116a4db13f3e8506e29e998568faa5066539761bc31a14234d8c50e390323 SHA512 e93ff0dedae297bacb140ae8ab0ed7630b511a18efd9b22b0391437224298f8f15c31c7273a849450572df1b6bad498bfb6f32527ab32150c9d31853c5838d08
DIST pycharm-professional-2026.1.4-aarch64.tar.gz 1223027753 BLAKE2B 06e4ce90365705252f6c76721e7e7f1de3b559ea31c402a60412b2f844e2c9ba7bb945bb7e9ad4e5ce23c1ff9720c59abe0d03a4f9bf6db7361d55b53356ebaa SHA512 b4df1679a4535732bd0fcf3cedd0b3ff7553d331b1aba39d1d6899d96e672bad66d42623fc3db1da9728fc14cf3e8b79e8965b6a991af29b12748ec5fe97dc0f
DIST pycharm-professional-2026.1.4-amd64.tar.gz 1228087132 BLAKE2B 41a1875edbdeb5b26118ac2137b7c4bd3d342cb1ec4eba1ee62ea16bf88ad75d39ce6beb87a15caff355ebc85a7497efcfbd9d87400aa346fc41f6f2d79673ea SHA512 d9ee4bd62b6ec40f21bafaafd680a4ecc70f893f3c6113e9f18c643233a199adfd31291b1e869662689c82626a77e3486306b1878f6c81c8860ee49679dd85c0
75 changes: 75 additions & 0 deletions dev-util/pycharm-professional/pycharm-professional-2026.1.4.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# Distributed under the terms of the GNU General Public License v2
# Autogen by MARK Devkit

EAPI=7
QA_PREBUILT="opt/${PN}/bin/fsnotifier
opt/${PN}/bin/fsnotifier64
opt/${PN}/bin/fsnotifier-arm
opt/${PN}/bin/libyjpagent-linux.so
opt/${PN}/bin/libyjpagent-linux64.so"

inherit desktop eutils xdg

DESCRIPTION=""
HOMEPAGE="https://www.jetbrains.com/python"
SRC_URI="
amd64? ( https://download.jetbrains.com/python/pycharm-2026.1.4.tar.gz -> pycharm-professional-2026.1.4-amd64.tar.gz )
arm64? ( https://download.jetbrains.com/python/pycharm-2026.1.4-aarch64.tar.gz -> pycharm-professional-2026.1.4-aarch64.tar.gz )"
LICENSE="JetBrains"
SLOT="0"
KEYWORDS="*"
IUSE="+system-java +sysctl"
RDEPEND="system-java? ( virtual/jre )
dev-libs/libdbusmenu
dev-python/pip

"
S="${WORKDIR}/pycharm-2026.1.4"
post_src_unpack() {
if [ ! -d "$S" ]; then
einfo "Renaming source directory to predictable name..."
mv $(ls "${WORKDIR}") "pycharm-2026.1.4" || die
fi
}
src_install() {
patchelf --set-rpath '$ORIGIN' jbr/lib/jcef_helper jbr/lib/libjcef.so
local dir="/opt/pycharm-professional"
local dst="${D}${dir}"
insinto "${dir}"
mv "${S}"/* "${dst}"
local bundled_script_name="${PN%-*}.sh" # bundled script is always lowercase, and doesn't have -ultimate, -professional suffix.
make_wrapper "pycharm-professional" "${dir}/bin/$bundled_script_name" || die
local svgfile="$(find ${dst}/bin -maxdepth 1 -iname '*.svg')"
newicon $svgfile "pycharm-professional.svg" || die
local pngfile="$(find ${dst}/bin -maxdepth 1 -iname '*.png')"
newicon $pngfile "pycharm-professional.png" || die
make_desktop_entry pycharm-professional "PyCharm Professional" pycharm-professional "Development;IDE;" || die
if use system-java; then
rm -rf "$dst{jbr,jre{64}}" || die "Failed to remove bundled Java"
fi
if use sysctl; then
dodir /etc/sysctl.d
echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-pycharm-professional-idea-inotify-watches.conf" || die
fi
}
pkg_postinst() {
xdg_pkg_postinst
if use sysctl; then
( /etc/init.d/sysctl restart >/dev/null 2>&1 )
einfo "An /etc/sysctl.d file was installed to optimally configure the IDE, with this"
einfo "setting:"
else
einfo "JetBrains recommends adding the following to /etc/sysctl.conf:"
fi
einfo
einfo "fs.inotify.max_user_watches = 524288"
einfo
einfo "See https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit for"
einfo "more information."
if use sysctl; then
einfo "If this change is undesired, set -sysctl in /etc/portage/package.use."
fi
}


# vim: filetype=ebuild