[packages/pycharm-community: 1/6] new, version 5.0.3
glen
glen at pld-linux.org
Mon Feb 1 17:00:49 CET 2016
commit 7bca4f5cea59b513c7339831b7904d00bbb39c89
Author: Elan Ruusamäe <glen at delfi.ee>
Date: Fri Jan 22 22:15:40 2016 +0200
new, version 5.0.3
based on phpstorm.spec and intellij-idea-ultimate.spec
pld.patch | 42 +++++++++++++++++
pycharm-community.spec | 122 +++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 164 insertions(+)
---
diff --git a/pycharm-community.spec b/pycharm-community.spec
new file mode 100644
index 0000000..3894218
--- /dev/null
+++ b/pycharm-community.spec
@@ -0,0 +1,122 @@
+%define product pycharm
+%include /usr/lib/rpm/macros.java
+Summary: Python IDE for Professional Developers
+Name: %{product}-community
+Version: 5.0.3
+Release: 0.2
+# TODO: figure out what's the licensing and redistribution
+License: ?
+Group: Development/Tools
+Source0: https://download.jetbrains.com/python/%{name}-%{version}.tar.gz
+# NoSource0-md5: 9a62285ee71fdc00a928e131e4d55839
+NoSource: 0
+#Source1: %{product}.desktop
+#Source2: %{name}.py
+Patch0: pld.patch
+URL: https://www.jetbrains.com/pycharm/
+BuildRequires: jpackage-utils
+BuildRequires: rpm-javaprov
+BuildRequires: rpmbuild(macros) >= 1.300
+BuildRequires: unzip
+Requires: desktop-file-utils
+Requires: jre-X11 >= 1.7
+Requires: which
+Suggests: cvs
+Suggests: git-core
+Suggests: java-jdbc-mysql
+Suggests: subversion
+Conflicts: java-jdbc-mysql < 5.1.22
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+# don't strip fsnotifier, it's size is checked for "outdated binary"
+# https://bugs.archlinux.org/task/34703
+# http://git.jetbrains.org/?p=idea/community.git;a=blob;f=platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/FileWatcher.java;h=004311b96a35df1ffc2c87baba78a8b2a8809f7d;hb=376b939fd6d6ec4c12191a5f90503d9d62c501da#l173
+%define _noautostrip .*/fsnotifier.*
+
+# use /usr/lib, 64bit files do not conflict with 32bit files (64 suffix)
+# this allows to install both arch files and to use 32bit jdk on 64bit os
+%define _appdir %{_prefix}/lib/%{name}
+
+%description
+PyCharm is an Integrated Development Environment (IDE) used for
+programming in Python.
+
+It provides code analysis, a graphical debugger, an integrated unit
+tester, integration with version control systems (VCSes), and supports
+web development with Django.
+
+%prep
+%setup -q
+
+# keep only single arch files (don't want to pull 32bit deps by default),
+# if you want to mix, install rpm from both arch
+%ifarch %{ix86}
+rm bin/fsnotifier64
+#rm bin/libyjpagent-linux64.so
+rm bin/%{product}64.vmoptions
+rm -r lib/libpty/linux/x86_64
+%endif
+%ifarch %{x8664}
+rm bin/fsnotifier
+#rm bin/libyjpagent-linux.so
+rm bin/%{product}.vmoptions
+rm -r lib/libpty/linux/x86
+%endif
+rm -r lib/libpty/{macosx,win}
+rm bin/fsnotifier-arm
+%patch0 -p1
+chmod a+rx bin/fsnotifier* lib/libpty/linux/*/libpty.so
+mv bin/%{product}.png .
+
+# hopefully not needed
+rm -rv lib/src
+
+# cleanup backups after patching
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_appdir},%{_bindir},%{_pixmapsdir},%{_desktopdir}}
+cp -l build.txt $RPM_BUILD_ROOT/cp-test && l=l && rm -f $RPM_BUILD_ROOT/cp-test
+cp -a$l bin help helpers lib license plugins $RPM_BUILD_ROOT%{_appdir}
+ln -s %{_pixmapsdir}/%{product}.png $RPM_BUILD_ROOT%{_appdir}/bin/%{product}.png
+cp -p %{product}.png $RPM_BUILD_ROOT%{_pixmapsdir}/%{product}.png
+#cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
+#install -p %{SOURCE2} $RPM_BUILD_ROOT%{_bindir}/%{name}
+ln -s %{_appdir}/bin/%{product}.sh $RPM_BUILD_ROOT%{_bindir}/%{name}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post
+%update_desktop_database
+
+%postun
+%update_desktop_database
+
+%files
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/%{name}
+%dir %{_appdir}
+%{_appdir}/help
+%{_appdir}/plugins
+%{_appdir}/helpers
+%doc %{_appdir}/license
+%dir %{_appdir}/bin
+%{_appdir}/bin/%{product}*.vmoptions
+%{_appdir}/bin/%{product}.png
+%{_appdir}/bin/idea.properties
+%{_appdir}/bin/log.xml
+%attr(755,root,root) %{_appdir}/bin/%{product}.sh
+%attr(755,root,root) %{_appdir}/bin/inspect.sh
+%attr(755,root,root) %{_appdir}/bin/fsnotifier*
+%dir %{_appdir}/lib
+%{_appdir}/lib/*.jar
+%dir %{_appdir}/lib/ext
+%{_appdir}/lib/ext/*.jar
+%dir %{_appdir}/lib/libpty
+%dir %{_appdir}/lib/libpty/linux
+%dir %{_appdir}/lib/libpty/linux/x86*
+%attr(755,root,root) %{_appdir}/lib/libpty/linux/x86*/libpty.so
+#%{_desktopdir}/%{name}.desktop
+%{_pixmapsdir}/%{product}.png
diff --git a/pld.patch b/pld.patch
new file mode 100644
index 0000000..46a71c3
--- /dev/null
+++ b/pld.patch
@@ -0,0 +1,42 @@
+--- pycharm-community-5.0.3/bin/pycharm.sh~ 2015-12-22 20:57:00.000000000 +0200
++++ pycharm-community-5.0.3/bin/pycharm.sh 2016-01-22 22:04:01.703865232 +0200
+@@ -168,7 +168,10 @@
+ fi
+ fi
+
+-IDE_JVM_ARGS="-Didea.platform.prefix=PyCharmCore -Didea.no.jre.check=true"
++CONFIG_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/PyCharm"
++CACHE_DIR="${XDG_CACHE_HOME:-$HOME/.cache}/PyCharm"
++
++IDE_JVM_ARGS="-Didea.platform.prefix=PyCharmCore -Didea.no.jre.check=true -Dconfig.dir=$CONFIG_DIR -Dcache.dir=$CACHE_DIR"
+
+ CLASSPATH="$IDE_HOME/lib/bootstrap.jar"
+ CLASSPATH="$CLASSPATH:$IDE_HOME/lib/extensions.jar"
+--- pycharm-community-5.0.3/bin/idea.properties~ 2015-12-22 20:58:14.000000000 +0200
++++ pycharm-community-5.0.3/bin/idea.properties 2016-01-22 22:05:34.218598736 +0200
+@@ -6,21 +6,25 @@
+ # Uncomment this option if you want to customize path to IDE config folder. Make sure you're using forward slashes.
+ #---------------------------------------------------------------------
+ # idea.config.path=${user.home}/.PyCharm/config
++idea.config.path=${config.dir}
+
+ #---------------------------------------------------------------------
+ # Uncomment this option if you want to customize path to IDE system folder. Make sure you're using forward slashes.
+ #---------------------------------------------------------------------
+ # idea.system.path=${user.home}/.PyCharm/system
++idea.system.path=${cache.dir}
+
+ #---------------------------------------------------------------------
+ # Uncomment this option if you want to customize path to user installed plugins folder. Make sure you're using forward slashes.
+ #---------------------------------------------------------------------
+ # idea.plugins.path=${idea.config.path}/plugins
++idea.plugins.path=${config.dir}/plugins
+
+ #---------------------------------------------------------------------
+ # Uncomment this option if you want to customize path to IDE logs folder. Make sure you're using forward slashes.
+ #---------------------------------------------------------------------
+ # idea.log.path=${idea.system.path}/log
++idea.log.path=${cache.dir}/log
+
+ #---------------------------------------------------------------------
+ # Maximum file size (kilobytes) IDE should provide code assistance for.
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/pycharm-community.git/commitdiff/9fc6a42b010b53691be52a089f4704e328f75a95
More information about the pld-cvs-commit
mailing list