therealglazou / bluegriffon

BlueGriffon, the Web editor
Mozilla Public License 2.0
300 stars 71 forks source link

Provide Bluegriffon linux binaries using AppImage #15

Closed kskarthik closed 8 years ago

kskarthik commented 8 years ago

Please provide bluegriffon binaries for linux using appimage which follows 1 app = 1 file format which has many advantages. For more details please have a look at their github repo & their website. This project is even praised by Linus Torvalds source. Please consider my request. Thank you.

probonopd commented 8 years ago

As a proof-of-concept, I have generated an AppImage based on the project's latest Ubuntu .tar.bz2, you can download it from https://bintray.com/probono/AppImages/BlueGriffon/view#files and the script that generated it can be found at https://github.com/probonopd/AppImages/blob/master/recipes/bluegriffon/Recipe.precompiled

If there is interest, we could also get an automated continuous build going using Travis CI.

Ideally the BlueGriffon project would take over AppImage generation ("upstream packaging") like Scribus, Krita, Subsurface, and others already do.

brianread108 commented 8 years ago

that works very nicely on my fedora 23 system - I am def in favour of this for now. An automated nightly build would be fabulous.

Cheers Brian brianr@bjsystems.co.uk

On 23/05/16 22:58, probonopd wrote:

As a proof-of-concept, I have generated an AppImage based on the project's latest Ubuntu .tar.bz2, you can download it from https://bintray.com/probono/AppImages/BlueGriffon/view#files and the script that generated it can be found at https://github.com/probonopd/AppImages/blob/master/recipes/bluegriffon/Recipe

If there is interest, we could also get an automated continuous build going using Travis CI http://travis-ci.org/.

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/therealglazou/bluegriffon/issues/15#issuecomment-221108825

brbsix commented 8 years ago

Just wanted to note that running the AppImage on Xubuntu 15.04, I receive the following error:

/tmp/.mount_DpHBK9/usr/bin/bluegriffon: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /tmp/.mount_DpHBK9/usr/bin/bluegriffon)
probonopd commented 8 years ago

libstdc++.so.6 3.4.21 is required by the binaries provided by http://bluegriffon.org/freshmeat/2.0b2/bluegriffon-2.0b2.Ubuntu16.04-x86_64.tar.bz2 which I used to put together the example AppImage. Ideally bluegriffon.org would compile the binaries on less recent distributions. or, in case we do the continuous builds, we should use a less recent build system so that there wouldn't be dependencies on such new libstdc++.so.6 versions (e.g., Firefox does the same).

In the meantime we could bundle a newer libstdc++.so.6 inside the AppImage, but that would mean that the AppImage would become bigger than necessary, and it would still depend on glibc 2.17.

probonopd commented 8 years ago

Started working on the continuous builds using Travis CI at https://github.com/probonopd/AppImages/blob/master/recipes/bluegriffon/Recipe

probonopd commented 8 years ago

Running into compilation issues which I cannot seem to solve without help. Unrelated to AppImage itself. Maybe @therealglazou can help?

therealglazou commented 8 years ago

@probonopd what kind of compilation issues?

probonopd commented 8 years ago

First, I get lots of mozbuild.configure.options.InvalidOptionError: Unknown option: messages. Later, compilation stops with

# c++ -o host_stdc++compat.o -c -std=gnu++0x -D_GLIBCXX_USE_CXX11_ABI=0 -MD -MP -MF .deps/host_stdc++compat.o.pp -DNDEBUG=1 -DTRIMMED=1 -DMOZ_LIBSTDCXX_VERSION=197654 -I/media/20c95b94-60bb-42af-807b-0baccadb5f18/home/user/bluegriffon-source/build/unix/stdc++compat -I/media/20c95b94-60bb-42af-807b-0baccadb5f18/home/user/bluegriffon-source/obj-x86_64-unknown-linux-gnu/build/unix/stdc++compat -I/media/20c95b94-60bb-42af-807b-0baccadb5f18/home/user/bluegriffon-source/obj-x86_64-unknown-linux-gnu/dist/include -I/media/20c95b94-60bb-42af-807b-0baccadb5f18/home/user/bluegriffon-source/obj-x86_64-unknown-linux-gnu/dist/include/nspr /media/20c95b94-60bb-42af-807b-0baccadb5f18/home/user/bluegriffon-source/build/unix/stdc++compat/stdc++compat.cpp
# bluegriffon-source/build/unix/stdc++compat/stdc++compat.cpp:181:5: error: ‘runtime_error’ does not name a type
#      runtime_error::runtime_error(char const* s)
#     ^

I have written down my experiments on https://github.com/probonopd/AppImages/blob/master/recipes/bluegriffon/Recipe and have tried different distributions for building.

therealglazou commented 8 years ago

Ok, I am at home now and my Linux box is at the office, I'll make sure to give you my mozconfig tomorrow when I arrive at the office.

probonopd commented 8 years ago

Great, thank you.

therealglazou commented 8 years ago

As promised (Ubuntu 16.04 x86_64):

mk_add_options MOZ_OBJDIR=/home/glazou/bin/opt/trunk
ac_add_options --disable-debug
ac_add_options --enable-optimize
ac_add_options --enable-strip
ac_add_options --enable-elf-hack
export LDFLAGS="-static-libstdc++"
export HOST_LDFLAGS="-static-libstdc++"
mk_add_options MOZ_MAKE_FLAGS="-s -j8"
ac_add_options --enable-application=bluegriffon
mk_add_options MOZ_TOOLKIT_SEARCH=
ac_add_options --disable-tests
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-crashreporter
ac_add_options --disable-updater
ac_add_options --disable-update-packaging
ac_add_options --disable-webrtc
ac_add_options --enable-media-navigator
mk_add_options MOZ_MEDIA_NAVIGATOR=1
probonopd commented 8 years ago

Thanks. Do I have to put something into MOZ_OBJDIR for this to work?

therealglazou commented 8 years ago

Your choice of dir to host your build.

probonopd commented 8 years ago

Why was this closed? I don't think we have an AppImage yet?

probonopd commented 4 years ago

Hi @therealglazou would it be possible to have builds like http://bluegriffon.org/freshmeat/3.1/bluegriffon-3.1.Ubuntu18.04-x86_64.tar.bz2 but for the oldest still-supported release of Ubuntu, which is xenial at this time? Then it should be very easy to make an AppImage.