diff --git a/debuild/Makefile b/debuild/Makefile index 7ddd8c729e2355bb2a80d1ce0b203b17c63a289f..d807a47f5a55b7cf3180003f9d8d27b2b141f4b9 100644 --- a/debuild/Makefile +++ b/debuild/Makefile @@ -38,8 +38,13 @@ debversion = $(shell git log -1 --format=%cd --date=short | sed -e 's/-//g')+git # Debian revision number of the package. debrevision = 1 # Source tarball and folder. -debsrc = pd-l2ork_$(debversion).orig.tar.gz -debdist = pd-l2ork-$(debversion) +debsrc = purr-data_$(debversion).orig.tar.gz +debdist = purr-data-$(debversion) + +# nw.js sdk +nwjsver = 0.15.3 +nwjspkg = nwjs-sdk-v$(nwjsver)-linux +nwjs = $(nwjspkg)-ia32.tar.gz $(nwjspkg)-x64.tar.gz # Submodules (Gem, etc.). You can list them with 'make submodules'. #submodules = Gem externals/miXed $(addprefix l2ork_addons/, cwiid fftease3.0-32bit lyonpotpourri rtcmix-in-pd) @@ -63,12 +68,14 @@ debchange: debclean: rm -rf $(debdist) - rm -f pd-l2ork_*+git* + rm -f purr-data_*+git* -deb: $(debsrc) +deb: $(debsrc) $(addprefix debian/nwjs/, $(nwjs)) # Unpack the source into our temporary build directory. rm -rf $(debdist) tar xfz $(debsrc) +# Add the NW.js binaries to the source package. + cd debian/source && rm -f include-binaries && for x in $(addprefix debian/nwjs/, $(nwjs)); do echo "$$x" >> include-binaries; done # This works around some problems compiling externals on Precise and earlier # (patch from pd-extended by Hans-Christoph Steiner, modified for pd-l2ork). # This can be removed once Ubuntu 12.04 finally goes the way of the dodo. @@ -99,3 +106,6 @@ $(debsrc): # Create the source tarball. tar cfz $(debsrc) $(debdist) rm -rf $(debdist) + +debian/nwjs/$(nwjspkg)-%.tar.gz: + mkdir -p debian/nwjs && cd debian/nwjs && wget http://dl.nwjs.io/v$(nwjsver)/$(notdir $@) diff --git a/debuild/debian/changelog b/debuild/debian/changelog index 063961f646d05fb92565df38722f7e286bdafca7..3a5594915ab5856c1a8dabb6510d5c2f9bc6ea85 100644 --- a/debuild/debian/changelog +++ b/debuild/debian/changelog @@ -1,23 +1,5 @@ -pd-l2ork (20160614+git1705+ea4eb01-1) xenial; urgency=low +purr-data (20160623+git2729+0e83b4c-1) xenial; urgency=low * Build from latest upstream source. - -- Albert Graef <aggraef@gmail.com> Thu, 16 Jun 2016 09:58:18 +0200 - -pd-l2ork (0.42.6+git20141114+1491-1) trusty; urgency=low - - * Build from latest upstream source. - - -- Albert Graef <aggraef@gmail.com> Sat, 15 Nov 2014 12:03:02 +0100 - -pd-l2ork (0.42.6+git20141114+1487-1) trusty; urgency=low - - * Build from latest upstream source. - - -- Albert Graef <aggraef@gmail.com> Fri, 14 Nov 2014 01:51:22 +0100 - -pd-l2ork (0.42.6+git20141112+1479-1) trusty; urgency=low - - * Build from latest upstream source. - - -- Albert Graef <aggraef@gmail.com> Wed, 12 Nov 2014 19:06:22 +0100 + -- Albert Graef <aggraef@gmail.com> Fri, 24 Jun 2016 05:57:05 +0200 diff --git a/debuild/debian/control b/debuild/debian/control index 17e94e456a3f6c90ae4c9433be66ffe54b1ef85e..84c37856735c6d9548c6dc91cc42b9b82db23520 100644 --- a/debuild/debian/control +++ b/debuild/debian/control @@ -1,18 +1,22 @@ -Source: pd-l2ork +Source: purr-data Section: sound Priority: extra Maintainer: Albert Graef <aggraef@gmail.com> -Build-Depends: debhelper (>= 7.0.50~), autoconf, automake, libtool, pkg-config, bison, flex, tcl-dev, tk-dev, libgtk2.0-dev, python-dev, dh-python | python-support, flite1-dev, ladspa-sdk, libasound2-dev, libjack-dev, libbluetooth-dev, libcairo2-dev, libgl1-mesa-dev | libgl-dev, libglew1.6-dev | libglew-dev, libgsl-dev | libgsl0-dev, libmagick++-dev, libavifile-0.7-dev, libdc1394-22-dev, libfftw3-dev, libfluidsynth-dev, libftgl-dev, libgmerlin-avdec-dev, libgsm1-dev, libjpeg-dev, libmp3lame-dev, libmpeg3-dev, libquicktime-dev, libraw1394-dev, libsmpeg-dev, libsndobj-dev, libspeex-dev, libstk0-dev, libtiff5-dev, libv4l-dev, libdv4-dev, libiec61883-dev, libxv-dev, libxxf86vm-dev, libunicap2-dev, libvorbis-dev, zlib1g-dev (>= 1:1.1.3), rsync +Build-Depends: debhelper (>= 7.0.50~), autoconf, automake, libtool, pkg-config, bison, flex, tcl-dev, tk-dev, libgtk2.0-dev, python-dev, dh-python | python-support, flite1-dev, ladspa-sdk, libasound2-dev, libjack-dev, libbluetooth-dev, libcairo2-dev, libgl1-mesa-dev | libgl-dev, libglew1.6-dev | libglew-dev, libgsl-dev | libgsl0-dev, libmagick++-dev, libavifile-0.7-dev, libdc1394-22-dev, libfftw3-dev, libfluidsynth-dev, libftgl-dev, libgmerlin-avdec-dev, libgsm1-dev, libjpeg-dev, libmp3lame-dev, libmpeg3-dev, libquicktime-dev, libraw1394-dev, libsmpeg-dev, libsndobj-dev, libspeex-dev, libstk0-dev, libtiff5-dev, libv4l-dev, libdv4-dev, libiec61883-dev, libxv-dev, libxxf86vm-dev, libunicap2-dev, libvorbis-dev, zlib1g-dev (>= 1:1.1.3), rsync, libgconf2-dev, libgtk2.0-dev, libnss3-dev, libxtst-dev, libxss-dev Standards-Version: 3.9.5 -Homepage: http://l2ork.music.vt.edu +Homepage: https://git.purrdata.net/jwilkes/purr-data -Package: pd-l2ork +Package: purr-data Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, python, python-tk, tkpng, tclxapian, ttf-dejavu-core, fluid-soundfont-gm Recommends: xdg-utils, pulseaudio-utils, tap-plugins, ladspa-foo-plugins, invada-studio-plugins-ladspa, blepvco, swh-plugins, mcp-plugins, cmt, blop, omins, ubuntustudio-audio-plugins, rev-plugins, dssi-utils, vco-plugins, wah-plugins, fil-plugins, mda-lv2 Provides: pd-l2ork Replaces: pd-l2ork -Description: Interactive multimedia programming environment +Description: Interactive multimedia programming environment (NW.js variant) + This is Jonathan Wilkes' nw.js variant of Pd-L2Ork, nick-named + "Purr-Data". Basically, it is Pd-L2Ork with the Tk GUI replaced + with a JavaScript GUI implemented using nw.js (http://nwjs.io/). + . Pd-L2Ork is Linux Laptop Orchestra's (L2Ork) real-time visual programming environment for interactive multimedia. It also offers a unique K-12 educational module for teaching children basics diff --git a/debuild/debian/rules b/debuild/debian/rules index 9f0432ef28abe2a5ea4104ca15bc1defe29f10ec..97e9758f5ecfb3731dcf731829fcbd55422eca27 100755 --- a/debuild/debian/rules +++ b/debuild/debian/rules @@ -4,36 +4,48 @@ # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 +nwjsver = 0.15.3 +nwjspkg = nwjs-sdk-v$(nwjsver)-linux + +ifeq ("$(shell dpkg-architecture -qDEB_HOST_ARCH)","amd64") +arch = x64 +else +arch = ia32 +endif + %: dh $@ override_dh_auto_configure: override_dh_auto_build: +# Copy the nw.js sources to where purr-data wants them. + tar -xf debian/nwjs/$(nwjspkg)-$(arch).tar.gz && rm -rf pd/nw/nw && mv $(nwjspkg)-$(arch) pd/nw/nw cd l2ork_addons && ./tar_em_up.sh -B -n override_dh_auto_install: - mkdir -p debian/pd-l2ork && mv packages/linux_make/build/* debian/pd-l2ork + mkdir -p debian/purr-data && mv packages/linux_make/build/* debian/purr-data # Remove some unneeded files. - cd debian/pd-l2ork/ && rm -f Makefile README.txt - cd debian/pd-l2ork/usr/lib/pd-l2ork/extra && rm -rf */*.pd_linux_o */*.la + cd debian/purr-data/ && rm -f Makefile README.txt + cd debian/purr-data/usr/lib/pd-l2ork/extra && rm -rf */*.pd_linux_o */*.la # Move cyclist and pdsend/pdreceive to the pd-l2ork lib directory to prevent # conflicts with other packages providing these files. - cd debian/pd-l2ork/usr/bin && mv pdsend pdreceive cyclist ../lib/pd-l2ork/bin + cd debian/purr-data/usr/bin && mv pdsend pdreceive cyclist ../lib/pd-l2ork/bin # Also remove the corresponding man pages. - cd debian/pd-l2ork/usr/share/man/man1 && rm -rf pdsend.* pdreceive.* + cd debian/purr-data/usr/share/man/man1 && rm -rf pdsend.* pdreceive.* # Move the Gem include files into the pd-l2ork include directory to prevent # conflicts with other packages providing these files. - cd debian/pd-l2ork/usr && mv include/Gem include/pd-l2ork + cd debian/purr-data/usr && mv include/Gem include/pd-l2ork # Edit the Gem pkgconfig file accordingly and rename it. - cd debian/pd-l2ork/usr/lib/pkgconfig && sed -e 's?/include?/include/pd-l2ork?g' -e 's?/lib/pd/extra?/lib/pd-l2ork/extra?g' < Gem.pc > pd-l2ork-Gem.pc && rm -f Gem.pc + cd debian/purr-data/usr/lib/pkgconfig && sed -e 's?/include?/include/pd-l2ork?g' -e 's?/lib/pd/extra?/lib/pd-l2ork/extra?g' < Gem.pc > pd-l2ork-Gem.pc && rm -f Gem.pc # Sanitize permissions. - cd debian/pd-l2ork && chmod -R go-w * && chmod -R a+r * && chmod a-x usr/lib/pd-l2ork/default.settings - find debian/pd-l2ork -executable -name '*.pd_linux' | xargs chmod a-x - find debian/pd-l2ork -executable -name '*.pd' | xargs chmod a-x - find debian/pd-l2ork -executable -name '*.txt' | xargs chmod a-x - find debian/pd-l2ork -executable -name '*.aif*' | xargs chmod a-x - find debian/pd-l2ork -type d | xargs chmod a+x + cd debian/purr-data && chmod -R go-w * && chmod -R a+r * && chmod a-x usr/lib/pd-l2ork/default.settings + find debian/purr-data/usr/lib/pd-l2ork/bin/nw -executable -not -type d | xargs chmod a+x + find debian/purr-data -executable -name '*.pd_linux' | xargs chmod a-x + find debian/purr-data -executable -name '*.pd' | xargs chmod a-x + find debian/purr-data -executable -name '*.txt' | xargs chmod a-x + find debian/purr-data -executable -name '*.aif*' | xargs chmod a-x + find debian/purr-data -type d | xargs chmod a+x # NOTE: Older systems use dh_pysupport instead of dh_python2. See # http://deb.li/dhs2p. @@ -43,10 +55,6 @@ override_dh_python2: override_dh_compress: dh_compress -X.pd -X.wav -X.aiff -X.txt -X.md -override_dh_fixperms: - dh_fixperms - chmod 0755 debian/pd-l2ork/usr/lib/pd-l2ork/bin/pd.tk - # Supply some options to get rid of a gazillion of warnings about shared # library files which are really externals. override_dh_shlibdeps: