From 3674a01393c4a21d3252674dbfbb79bb1cb2e482 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Tue, 19 Jan 2016 11:53:39 +0000 Subject: [PATCH 01/12] fix PWD --- Builds/create-symlinks.sh | 0 debian/changelog | 6 ++++++ main.pro | 8 ++++---- 3 files changed, 10 insertions(+), 4 deletions(-) mode change 100644 => 100755 Builds/create-symlinks.sh diff --git a/Builds/create-symlinks.sh b/Builds/create-symlinks.sh old mode 100644 new mode 100755 diff --git a/debian/changelog b/debian/changelog index afdac9e..c32bbd6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +fractorium (0.9.9.3-0ubuntu1) wily; urgency=low + + * release 0.9.9.3 + + -- Gambhiro Bhikkhu Tue, 19 Jan 2016 09:32:21 +0000 + fractorium (0.9.9.2e-0ubuntu1) wily; urgency=low * lib symlink fix diff --git a/main.pro b/main.pro index 1a6a1f4..b0de7c0 100644 --- a/main.pro +++ b/main.pro @@ -2,12 +2,12 @@ TEMPLATE = subdirs CONFIG += ordered CONFIG += autobuild -# message(PWD: $$(PWD)) +# message(PWD: $$PWD) -LOCAL_LIB_DIR = $$(PWD)/Builds/lib -LOCAL_INCLUDE_DIR = $$(PWD)/Builds/include +LOCAL_LIB_DIR = $$PWD/Builds/lib +LOCAL_INCLUDE_DIR = $$PWD/Builds/include -unix:symlinks.commands = $$(PWD)/Builds/create-symlinks.sh \"$$LOCAL_LIB_DIR\" \"$$LOCAL_INCLUDE_DIR\" +unix:symlinks.commands = $$PWD/Builds/create-symlinks.sh \"$$LOCAL_LIB_DIR\" \"$$LOCAL_INCLUDE_DIR\" SUBDIRS += Builds/QtCreator/Ember Builds/QtCreator/EmberCL Builds/QtCreator/EmberAnimate Builds/QtCreator/EmberGenome Builds/QtCreator/EmberRender Builds/QtCreator/Fractorium From 299e86b0c1401998929b9688b27c60f8aa732754 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 15:52:04 +0000 Subject: [PATCH 02/12] make sure to include the palettes file --- package-linux.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/package-linux.sh b/package-linux.sh index a72ed72..a3757f2 100755 --- a/package-linux.sh +++ b/package-linux.sh @@ -90,7 +90,8 @@ fi # tar 1.28 required for --exclude-vcs-ignores -# FIXME: somehow it didn't ignore the 'Bin' folder. +# NOTE: ./Data/flam3-palettes.xml has to be explicitly included. The *.xml rule +# would exclude it, and tar doesn't handle "!" rules. tar --exclude='package-linux.sh' \ --exclude='debian' \ @@ -98,7 +99,9 @@ tar --exclude='package-linux.sh' \ --exclude-vcs \ --exclude-vcs-ignores \ --exclude-backups \ - -czf "$PPA_DIR/$TAR_NAME" . + -czf "$PPA_DIR/$TAR_NAME" \ + ./Data/flam3-palettes.xml \ + . [ $? -ne 0 ] && echo "Tar command failed." && exit 2 From c853f478aa2583f8527190c055bf2fcf43df6e84 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 15:53:31 +0000 Subject: [PATCH 03/12] icon and launcher --- Builds/QtCreator/Fractorium/Fractorium.pro | 8 ++++++-- Builds/QtCreator/defaults.pri | 1 + Data/Fractorium.desktop | 12 ++++++++++++ Data/Fractorium.png | Bin 0 -> 65364 bytes debian/changelog | 6 ++++++ 5 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 Data/Fractorium.desktop create mode 100644 Data/Fractorium.png diff --git a/Builds/QtCreator/Fractorium/Fractorium.pro b/Builds/QtCreator/Fractorium/Fractorium.pro index f6a98c1..2d8ddb6 100644 --- a/Builds/QtCreator/Fractorium/Fractorium.pro +++ b/Builds/QtCreator/Fractorium/Fractorium.pro @@ -16,8 +16,6 @@ PRJ_DIR = $$SRC_DIR/Fractorium target.path = $$BIN_INSTALL_DIR INSTALLS += target -# FIXME: flam3-palettes.xml does not install when installing from .deb, but `make install` works. - palettes.path = $$SHARE_INSTALL_DIR palettes.files = $$ASSETS_DIR/flam3-palettes.xml INSTALLS += palettes @@ -26,6 +24,12 @@ themes.path = $$SHARE_INSTALL_DIR themes.files = $$ASSETS_DIR/dark.qss INSTALLS += themes +icon.path = $$SHARE_INSTALL_DIR +icon.files = $$ASSETS_DIR/Fractorium.png + +launcher.path = $$LAUNCHER_INSTALL_DIR +launcher.files = $$ASSETS_DIR/Fractorium.desktop + macx:ICON = $$ASSETS_DIR/Fractorium.icns LIBS += -L$$absolute_path($$DESTDIR) -lEmber diff --git a/Builds/QtCreator/defaults.pri b/Builds/QtCreator/defaults.pri index 917a1e7..daf5039 100644 --- a/Builds/QtCreator/defaults.pri +++ b/Builds/QtCreator/defaults.pri @@ -8,6 +8,7 @@ unix|macx { LIB_INSTALL_DIR = /usr/lib BIN_INSTALL_DIR = /usr/bin SHARE_INSTALL_DIR = /usr/share/fractorium + LAUNCHER_INSTALL_DIR = /usr/share/applications } # When loaded by QtCreator diff --git a/Data/Fractorium.desktop b/Data/Fractorium.desktop new file mode 100644 index 0000000..e8b2678 --- /dev/null +++ b/Data/Fractorium.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=Fractorium +GenericName=Fractal flame editor +Comment=Fractal flame editor +Exec=fractorium +TryExec=fractorium +Icon=/usr/share/fractorium/Fractorium.png +Terminal=false +Categories=Graphics; +MimeType= \ No newline at end of file diff --git a/Data/Fractorium.png b/Data/Fractorium.png new file mode 100644 index 0000000000000000000000000000000000000000..ba64681fe3c86ebf54a7ecf0409b7458d960ad04 GIT binary patch literal 65364 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%0D6bdlgrADBrgDK%U)Rvf1-7V8*jA! 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%0A8ZWR5)Z>D>^5R*O1 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 z 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 Wed, 20 Jan 2016 15:13:27 +0000 + fractorium (0.9.9.3-0ubuntu1) wily; urgency=low * release 0.9.9.3 From 629e7c1c79cfe81de7f183571a91a3765971773b Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 17:07:19 +0000 Subject: [PATCH 04/12] fix missing icon and launcher --- Builds/QtCreator/Fractorium/Fractorium.pro | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Builds/QtCreator/Fractorium/Fractorium.pro b/Builds/QtCreator/Fractorium/Fractorium.pro index 2d8ddb6..a0b9bf3 100644 --- a/Builds/QtCreator/Fractorium/Fractorium.pro +++ b/Builds/QtCreator/Fractorium/Fractorium.pro @@ -26,9 +26,11 @@ INSTALLS += themes icon.path = $$SHARE_INSTALL_DIR icon.files = $$ASSETS_DIR/Fractorium.png +INSTALLS += icon launcher.path = $$LAUNCHER_INSTALL_DIR launcher.files = $$ASSETS_DIR/Fractorium.desktop +INSTALLS += launcher macx:ICON = $$ASSETS_DIR/Fractorium.icns From 43b4c9fbc16b0bbc5f685772bfdc53d99fb46e69 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 18:28:23 +0000 Subject: [PATCH 05/12] changelog --- debian/changelog | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/debian/changelog b/debian/changelog index a10c8a8..5ac3b5a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,14 +1,8 @@ -fractorium (0.9.9.3a-0ubuntu1) wily; urgency=low +fractorium (0.9.9.3b-0ubuntu1) wily; urgency=low - * include flam3-palettes.xml, add menu icon + * release 0.9.9.3b - -- Gambhiro Bhikkhu Wed, 20 Jan 2016 15:13:27 +0000 - -fractorium (0.9.9.3-0ubuntu1) wily; urgency=low - - * release 0.9.9.3 - - -- Gambhiro Bhikkhu Tue, 19 Jan 2016 09:32:21 +0000 + -- Gambhiro Bhikkhu Wed, 20 Jan 2016 17:08:30 +0000 fractorium (0.9.9.2e-0ubuntu1) wily; urgency=low From 581b0d975caad99f3a0cb14042efd1d6f3b905cb Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 18:48:21 +0000 Subject: [PATCH 06/12] readme upd --- Data/BuildGuideLinux.md | 58 ++++++++++++++++ Data/BuildGuideMacOSX.md | 42 ++++++++++++ README.md | 140 +++++++-------------------------------- 3 files changed, 125 insertions(+), 115 deletions(-) create mode 100644 Data/BuildGuideLinux.md create mode 100644 Data/BuildGuideMacOSX.md diff --git a/Data/BuildGuideLinux.md b/Data/BuildGuideLinux.md new file mode 100644 index 0000000..eced55e --- /dev/null +++ b/Data/BuildGuideLinux.md @@ -0,0 +1,58 @@ +# Building Guide for Linux + +Install `git` and clone the repository: + +``` +sudo apt-get install git +git clone https://github.com/mfeemster/fractorium +``` + +Install the dependencies. + +For Ubuntu 15.04 (vivid) and 15.10 (wily): + +``` +sudo apt-get install g++ libdbus-1-dev libgl1-mesa-dev libgl-dev libglm-dev libjpeg-dev libpng12-dev libtbb-dev libxml2-dev qt5-default qt5-qmake qtbase5-dev libqt5opengl5-dev ocl-icd-libopencl1 +``` + +Install the OpenCL drivers and opencl support for your hardware. For Nvidia: + +``` +sudo apt-get install nvidia-352 nvidia-352-dev nvidia-opencl-icd-352 nvidia-libopencl1-352 nvidia-prime nvidia-modprobe +``` + +Compile the binary: + +``` +cd fractorium +qmake +make +``` + +Run the binary from the release folder: + +``` +cd Bin/release +./fractorium +``` + +`sudo make install` will install the files directly. `sudo make uninstall` is +also available. + +You can also compile a `.deb` package to install locally. A few more tools will +be necessary: + +``` +sudo apt-get install bzr bzr-builddeb dh-make debhelper +``` + +A helper script is available, use `package-linux.sh` in the project root. It +will create `~/PPA/fractorium-VERSION` as a work folder, by default it builds a +signed source package. + +For local use you probably want an unsigned binary package: + +``` +cd fractorium +./package-linux.sh --binary-only --unsigned +``` diff --git a/Data/BuildGuideMacOSX.md b/Data/BuildGuideMacOSX.md new file mode 100644 index 0000000..5def351 --- /dev/null +++ b/Data/BuildGuideMacOSX.md @@ -0,0 +1,42 @@ +# Building Guide for Mac OS/X + +Install Xcode from the App Store. Install [homebrew](http://brew.sh/). + +Install `git` and clone the repository: + +``` +brew install git +git clone https://github.com/mfeemster/fractorium +``` + +Install the dependencies: + +``` +brew install qt5 tbb glm dbus jpeg libpng glib libxml2 +``` + +TODO: Confirm if `glib` and `libxml2` are actually needed. + +Add the Qt `bin` folder to `PATH` to make `qmake` available. In +`~/.bash_profile` or `~/.bashrc`: + +``` +PATH=/usr/local/opt/qt5/bin:$PATH +export PATH +``` + +Compile the binary: + +``` +cd fractorium +qmake CONFIG-=app_bundle +make +``` + +Run the binary from the release folder: + +``` +cd Bin/release +./fractorium +``` + diff --git a/README.md b/README.md index 1b0567a..01c0706 100644 --- a/README.md +++ b/README.md @@ -5,17 +5,36 @@ A Qt-based fractal flame editor which uses a C++ re-write of the flam3 algorithm named Ember and a GPU capable version named EmberCL which implements a portion of the cuburn algorithm in OpenCL. -# Download +# Install -Windows: TODO +## Windows -Linux: TODO +Download: [Fractorium_Beta_0.9.9.3.msi](https://drive.google.com/file/d/0Bws5xPbHJph6Z3JiTHlYZ21YVFU/view?usp=sharing) -Mac OS/X (10.9+): TODO +## Linux + +Enable `universe` in the Ubuntu Software Center: + +- open the Edit menu +- select Software Sources... +- enable "Community maintained ... `universe`" + +Add the Ubuntu PPA and install: + +``` +sudo apt-add-repository ppa:fractorium/ppa +sudo apt-get update +sudo apt-get install fractorium +``` + +## Mac OS/X (10.9+) + +TODO # Building from git ## Windows + Install Git-GUI and clone `https://github.com/mfeemster/fractorium.git` Then follow: @@ -24,117 +43,8 @@ Then follow: ## Linux -Install `git` and clone the repository: - -``` -sudo apt-get install git -git clone https://github.com/mfeemster/fractorium -``` - -Install the dependencies. - -For Ubuntu 15.04 (vivid) and 15.10 (wily): - -``` -sudo apt-get install g++ libdbus-1-dev libgl1-mesa-dev libgl-dev libglm-dev libjpeg-dev libpng12-dev libtbb-dev libxml2-dev qt5-default qt5-qmake qtbase5-dev libqt5opengl5-dev ocl-icd-libopencl1 -``` - -Install the OpenCL drivers and opencl support for your hardware. For Nvidia: - -``` -sudo apt-get install nvidia-352 nvidia-352-dev nvidia-opencl-icd-352 nvidia-libopencl1-352 nvidia-prime nvidia-modprobe -``` - -Compile the binary: - -``` -cd fractorium -qmake -make -``` - -Run the binary from the release folder: - -``` -cd Bin/release -./fractorium -``` - -`sudo make install` will install the files directly. `sudo make uninstall` is -also available. - -You can also compile a `.deb` package to install locally. A few more tools will -be necessary: - -``` -sudo apt-get install bzr bzr-builddeb dh-make debhelper -``` - -A helper script is available, use `package-linux.sh` in the project root. It -will create `~/PPA/fractorium-VERSION` as a work folder, by default it builds a -signed source package. - -For local use you probably want an unsigned binary package: - -``` -cd fractorium -./package-linux.sh --binary-only --unsigned -``` +See [Building Guide for Linux](./Data/BuildGuideLinux.md) ## Mac OS/X 10.9+ -Install Xcode from the App Store. Install [homebrew](http://brew.sh/). - -Install `git` and clone the repository: - -``` -brew install git -git clone https://github.com/mfeemster/fractorium -``` - -Install the dependencies: - -``` -brew install qt5 tbb glm dbus jpeg libpng glib libxml2 -``` - -TODO: Confirm if `glib` and `libxml2` are actually needed. - -Add the Qt `bin` folder to `PATH` to make `qmake` available. In -`~/.bash_profile` or `~/.bashrc`: - -``` -PATH=/usr/local/opt/qt5/bin:$PATH -export PATH -``` - -Compile the binary: - -``` -cd fractorium -qmake CONFIG-=app_bundle -make -``` - -Run the binary from the release folder: - -``` -cd Bin/release -./fractorium -``` - -# OpenCL tips - -Nvidia, Ati, Intel. - -## Windows - -TODO - -## Linux - -TODO - -## Mac OS/X - -TODO +See [Building Guide for Mac OS/X](./Data/BuildGuideMacOSX.md) From cad18ebd9afb471e6884966ffb3c5e7d9eceeab1 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 18:50:07 +0000 Subject: [PATCH 07/12] ppa link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 01c0706..a4c3f7b 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ Enable `universe` in the Ubuntu Software Center: - select Software Sources... - enable "Community maintained ... `universe`" -Add the Ubuntu PPA and install: +Add the [Fractorium Ubuntu PPA](https://launchpad.net/~fractorium/+archive/ubuntu/ppa) and install: ``` sudo apt-add-repository ppa:fractorium/ppa From dd5d901e6d5c59618a8168280fe92a724bfd2709 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 18:55:44 +0000 Subject: [PATCH 08/12] deb download link --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/README.md b/README.md index a4c3f7b..570235b 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,8 @@ Download: [Fractorium_Beta_0.9.9.3.msi](https://drive.google.com/file/d/0Bws5xPb ## Linux +### Install from PPA + Enable `universe` in the Ubuntu Software Center: - open the Edit menu @@ -27,6 +29,15 @@ sudo apt-get update sudo apt-get install fractorium ``` +### Install from .deb + +Download: [fractorium_0.9.9.3b-0ubuntu1_amd64.deb](https://launchpad.net/~fractorium/+archive/ubuntu/ppa/+files/fractorium_0.9.9.3b-0ubuntu1_amd64.deb) + +``` +cd ~/Downloads +sudo dpkg -i fractorium_0.9.9.3b-0ubuntu1_amd64.deb +``` + ## Mac OS/X (10.9+) TODO From e735191cb85f1313be6c93a0b83e34682cfd77f4 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 20:54:56 +0000 Subject: [PATCH 09/12] move icon --- Builds/QtCreator/Fractorium/Fractorium.pro | 2 +- {Data => Source/Fractorium/Icons}/Fractorium.png | Bin 2 files changed, 1 insertion(+), 1 deletion(-) rename {Data => Source/Fractorium/Icons}/Fractorium.png (100%) diff --git a/Builds/QtCreator/Fractorium/Fractorium.pro b/Builds/QtCreator/Fractorium/Fractorium.pro index a0b9bf3..870b9e5 100644 --- a/Builds/QtCreator/Fractorium/Fractorium.pro +++ b/Builds/QtCreator/Fractorium/Fractorium.pro @@ -25,7 +25,7 @@ themes.files = $$ASSETS_DIR/dark.qss INSTALLS += themes icon.path = $$SHARE_INSTALL_DIR -icon.files = $$ASSETS_DIR/Fractorium.png +icon.files = $$EMBER_ROOT/Source/Fractorium/Icons/Fractorium.png INSTALLS += icon launcher.path = $$LAUNCHER_INSTALL_DIR diff --git a/Data/Fractorium.png b/Source/Fractorium/Icons/Fractorium.png similarity index 100% rename from Data/Fractorium.png rename to Source/Fractorium/Icons/Fractorium.png From 149a90bea8e7ce1436b25e6ac83f7ac878062cfa Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Wed, 20 Jan 2016 20:56:00 +0000 Subject: [PATCH 10/12] use PRJ_DIR --- Builds/QtCreator/Fractorium/Fractorium.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Builds/QtCreator/Fractorium/Fractorium.pro b/Builds/QtCreator/Fractorium/Fractorium.pro index 870b9e5..f8d2142 100644 --- a/Builds/QtCreator/Fractorium/Fractorium.pro +++ b/Builds/QtCreator/Fractorium/Fractorium.pro @@ -25,7 +25,7 @@ themes.files = $$ASSETS_DIR/dark.qss INSTALLS += themes icon.path = $$SHARE_INSTALL_DIR -icon.files = $$EMBER_ROOT/Source/Fractorium/Icons/Fractorium.png +icon.files = $$PRJ_DIR/Icons/Fractorium.png INSTALLS += icon launcher.path = $$LAUNCHER_INSTALL_DIR From b1dbed83b272b15170f3680caa6310517c729888 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Sun, 24 Jan 2016 13:48:43 +0000 Subject: [PATCH 11/12] test for different CL and GL paths --- Builds/create-symlinks.sh | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/Builds/create-symlinks.sh b/Builds/create-symlinks.sh index aa15f27..f8944c6 100755 --- a/Builds/create-symlinks.sh +++ b/Builds/create-symlinks.sh @@ -23,14 +23,28 @@ if [[ ! -e $linkpath && -e $targetpath ]]; then ln -s "$targetpath" "$linkpath" fi -targetpath=$(ls -d1 /usr/include/*/GL | head -n 1) +targetpath="" + +if [ -d /usr/include/*/GL ]; then + targetpath=$(ls -d1 /usr/include/*/GL | head -n 1) +elif [ -d /usr/include/GL ]; then + targetpath="/usr/include/GL" +fi + linkpath="$LOCAL_INCLUDE_DIR/GL" if [[ ! -e $linkpath && -e $targetpath ]]; then ln -s "$targetpath" "$linkpath" fi -targetpath=$(ls -d1 /usr/include/*/CL | head -n 1) +targetpath="" + +if [ -d /usr/include/*/CL ]; then + targetpath=$(ls -d1 /usr/include/*/CL | head -n 1) +elif [ -d /usr/include/CL ]; then + targetpath="/usr/include/CL" +fi + linkpath="$LOCAL_INCLUDE_DIR/CL" if [[ ! -e $linkpath && -e $targetpath ]]; then From e184557aed2122a99da6d4e4902d88e90c01d5c8 Mon Sep 17 00:00:00 2001 From: Gambhiro Date: Sun, 24 Jan 2016 15:30:16 +0000 Subject: [PATCH 12/12] note to select Qt 5 --- Data/BuildGuideLinux.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Data/BuildGuideLinux.md b/Data/BuildGuideLinux.md index eced55e..f1ee1f0 100644 --- a/Data/BuildGuideLinux.md +++ b/Data/BuildGuideLinux.md @@ -21,6 +21,12 @@ Install the OpenCL drivers and opencl support for your hardware. For Nvidia: sudo apt-get install nvidia-352 nvidia-352-dev nvidia-opencl-icd-352 nvidia-libopencl1-352 nvidia-prime nvidia-modprobe ``` +If you have both Qt 4 and 5 installed, select Qt 5 before compilation: + +``` +export QT_SELECT=qt5 +``` + Compile the binary: ```