labsquare / FastQt

FastQC port to Qt5: A quality control tool for high throughput sequence data.
GNU General Public License v3.0
110 stars 25 forks source link

Create a binary and/or easy to install packages (.deb, .rpm) #24

Open StuntsPT opened 7 years ago

StuntsPT commented 7 years ago

Not having to pull in Java is already a great advantage of FastQT over FastQC, but dealing with dependencies manually can be a hassle. A binary release or a package would be A+.

Thanks!

natir commented 7 years ago

Binary package, rpm, deb, conda maybe windows and mac is plan for 0.2.

dridk commented 7 years ago

I create a AppImage for Linux x86_64 https://github.com/labsquare/fastQt/releases/download/0.1/fastqt-0.1-linux-x86_64.AppImage

@StuntsPT Could you test it and tell me if it works ?

chmod +x fastqt-0.1-linux-x86_64.AppImage
./fastqt-0.1-linux-x86_64.AppImage
StuntsPT commented 7 years ago

Just tried it:

francisco@VoidCaster [23:19:40] [~/Desktop] 
-> $ ./fastqt-0.1-linux-x86_64.AppImage 
This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".

Available platform plugins are: xcb.

Reinstalling the application may fix this problem.
[1]    3962 abort (core dumped)  ./fastqt-0.1-linux-x86_64.AppImage

I can't find any packages related to Qt and "xcb" on the Archlinux repositories. I'll try to compile from source and try to figure it out tomorrow.

dridk commented 7 years ago

@StuntsPT Humm.. This should fix the problem:

  sudo apt-get install libx11-xcb1 

What's your distribution and version :

   lsb_release -a 
ysard commented 7 years ago

@natir Binary package, rpm, deb, conda maybe windows and mac is plan for 0.2. Hi, working on it soon...

StuntsPT commented 7 years ago

apt-get will not save me here, since I'm on Archlinux.

francisco@VoidCaster [23:46:56] [~] 
-> $ lsb_release -a
LSB Version:    1.4
Distributor ID: Arch
Description:    Arch Linux
Release:    rolling
Codename:   n/a

I have managed to work around the problem like this:

francisco@VoidCaster [23:54:50] [~/Desktop] 
-> $ export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/qt/plugins/platforms/          
francisco@VoidCaster [23:55:20] [~/Desktop] 
-> $ ./fastqt-0.1-linux-x86_64.AppImage
add font
Cannot mix incompatible Qt library (version 0x50701) with this library (version 0x50700)
[1]    7540 abort (core dumped)  ./fastqt-0.1-linux-x86_64.AppImage

But unfortunately, now I'm mixing different lib versions (my system libs are on a different version from yours) and Qt doesn't like that. I'll compile from source and let you know how it went until you have a complete, statically linked binary ready (or maybe even consider using a SNAP on 0.2).

StuntsPT commented 7 years ago

As promised, I have compiled from source and everything works on Archlinux. I have also created a PKGBUILD and fastqt is now available on the AUR.

natir commented 7 years ago

Thank for this work.

Please make PR in branch master.

dridk commented 7 years ago

I already merge his pull request

Le 18 janv. 2017 12:52, "Pierre Marijon" notifications@github.com a écrit :

Thank for this work.

Please make PR in branch master.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/labsquare/fastQt/issues/24#issuecomment-273456382, or mute the thread https://github.com/notifications/unsubscribe-auth/AB0pF9ME-ixJhCHaZDp-3if2gycht9Ubks5rTf0FgaJpZM4LmQXJ .

StuntsPT commented 7 years ago

You're welcome! Glad I could help.

dridk commented 7 years ago

@StuntsPT Hi , Could you please update the arch repository with the version 0.2 ?

probonopd commented 7 years ago

Hi @dridk where is the code you used to generate the AppImage? Wouldn't it make sense to do in .travis.yml?

dridk commented 7 years ago

I didn't publish the code. I just ran the following line.

    linuxdeployqt fastqt --appimage 

Yes, make it avaible on travis would be greate. Actually, appimage doesn't work on Archlinux. There is something wrong with libxcb. It returns :

This application failed to start because it could not find or load the
Qt platform plugin "xcb"
in "".
Available platform plugins are: xcb.
Reinstalling the application may fix this problem.
probonopd commented 7 years ago

Please test the AppImage linked in https://github.com/labsquare/fastQt/pull/50.

dridk commented 7 years ago

@StuntsPT Thanks for your PR. How can I be notify for the link on transfert.sh ?

probonopd commented 7 years ago

@dridk instead of storing AppImage builds temporarily for 14 days each on transfer.sh, you could use GitHub Releases to store the binaries permanently. This way, they would be visible on the Releases page of your project. This is what I recommend. See https://docs.travis-ci.com/user/deployment/releases/. If you want to do this for continuous builds, also see https://github.com/probonopd/uploadtool.

dridk commented 7 years ago

I want to manage release page manually, because I have to play with windows binary too. But Now I m looking how to make a travis notification with transfer.sh url ..

probonopd commented 7 years ago

Not sure how to do that, but would be interested in it too :+1:

dridk commented 7 years ago

After testing on arch linux, the new appImage works !! @StuntsPT could you confirm it ? https://github.com/labsquare/fastQt/releases/download/0.2/fastqt-0.2-linux-x86_64.appimage

StuntsPT commented 7 years ago

@dridk - confirming that the appimage now work on archlinux. I will also update the PKGBUILD for version 0.2 and report back once it's done.

StuntsPT commented 7 years ago

Archlinux PKGBUILD updated to v0.2.

dridk commented 7 years ago

@StuntsPT Could you package 0.2.3 for arch ? Just released few minutes ago

StuntsPT commented 7 years ago

Haha, funny you should ask. Just saw the release tweet and I was already making it! Cheers! And here it is: https://aur.archlinux.org/packages/fastqt/

bokic commented 7 years ago

I can help with creating ppa for ubuntu, and windows installer with inno setup.

Just to make sure that those are needed and missing features.

Dridk, what's your thoughts on this?

natir commented 7 years ago

For the windows installer we use inno setup on appveyor plateform.

ubuntu ppa is a missing feature, if you can make this it's a very good news.

Thanks for your interest on this project.

bokic commented 7 years ago

I will create ppa in the following days.

One question. What git branch I should use?

And be aware that ppa packages will automatically update on a daily basis, when new stuff will be pushed to git.

dridk commented 7 years ago

Master branch is the release branch. We are working on devel. So, for the ppa, use the master branch.

dridk commented 7 years ago

@bokic By the way, we have a linux server with labsquare.org domain. And I think @Arkanosis register labsquare into Launchpad. If you need something ask us

Here it is : https://launchpad.net/~labsquare

bokic commented 7 years ago

My plan was to build the ppa on my personal launchpad account, after which you can clone the ppa to your official launchpad ppa account.

No need for Linux server, since all the process of building and hosting the packages(.deb) will be on launchpad.net, but if you want you can use one.

dridk commented 7 years ago

You can join the team and do it as a labsquare member. @Arkanosis Could you add us in launchpad ?

I never used launchpad before. I don't know how it works exactly.

Arkanosis commented 7 years ago

Dear @bokic, you're now a member of the labsquare team on Launchpad, as wished by @dridk :)

bokic commented 7 years ago

Another question.

Do you want me to add debian directory inside fastQt github project, or not?

Quick explanation: Benefits of having debian dir inside project is that other distros that use deb packages(read Debian) might benefit in terms of already having the infrastructure for building deb packages(but, this can be solved with debian git branch).

I personally don't like putting debian dir to project, and believe that best way is how launchpad is doing(by merging the project with bazar repo which contains debian folder)

dridk commented 7 years ago

Do it as you wish. As you said, we can build a debian branch if necessary. So the second choice is good for me. I removed fastqt ppa.. There was already a "labsquare" ppa avaible. Could we publsih many software into one ppa ?

So, all labsquare application should go there : https://launchpad.net/~labsquare/+archive/ubuntu/ppa

bokic commented 7 years ago

great.

Yes, we can put more than one package on one ppa.

bokic commented 7 years ago

Apparently, Ubuntu didn't include libQt5Charts.so library in Ubuntu 17.04.

I did send needs-packaging launchpad request, so we shall see what will happen.

URL: https://bugs.launchpad.net/ubuntu/+bug/1682643

I suggest we wait a-bit to see if they will add the packed soon.

If not, we can try to build it in labsquare PPA.

dridk commented 7 years ago

Oh ? This is strange ... Maybe the reason comes from a license conflict. . Qt is under LGPL and QtCharts under GPL . As a second choice, we can provide Qt library from labsquare ppa by cloning this one : sudo add-apt-repository ppa:beineri/opt-qt58-trusty -y

We are using this one on travis https://github.com/labsquare/fastQt/blob/master/.travis.yml

daissi commented 7 years ago

Hi, Your software is relevant for the Debian Med project [1]. Unfortunately, I don't have enough time to package it :-( but I can help you with the packaging. If you are interested, you can join the team [2]. We also have an effort to help newcomers [3].

Dylan

[1] https://www.debian.org/devel/debian-med/ [2] https://debian-med.alioth.debian.org/docs/policy.html [3] https://wiki.debian.org/DebianMed/MoM

bokic commented 7 years ago

hi Dylan,

You can take a look at Ubuntu 17.10 PPA package code and use it to build Debian Med package

Files are here https://github.com/bokic/fastQt/tree/ubuntu_17.10/debian

On Wed, Jul 5, 2017 at 10:09 PM, Dylan Aïssi notifications@github.com wrote:

Hi, Your software is relevant for the Debian Med project [1]. Unfortunately, I don't have enough time to package it :-( but I can help you with the packaging. If you are interested, you can join the team [2]. We also have an effort to help newcomers [3].

Dylan

[1] https://www.debian.org/devel/debian-med/ [2] https://debian-med.alioth.debian.org/docs/policy.html [3] https://wiki.debian.org/DebianMed/MoM

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/labsquare/fastQt/issues/24#issuecomment-313212650, or mute the thread https://github.com/notifications/unsubscribe-auth/AFXE0EuVq4YshnRBi4OvBuULGja3xS-Mks5sK-2CgaJpZM4LmQXJ .

-- Boris Barbulovski http://mkfusion.bokicsoft.com/

daissi commented 7 years ago

Hi Boris, Thanks, it is a good starting point, but as I said before, currently I don't have enough time to package it. Are you interested in joining the Debian Med team to package it? For inclusion of a package into official Debian repository, you should follow our group policy [1].

Dylan

[1] https://debian-med.alioth.debian.org/docs/policy.html

2017-07-06 17:02 GMT+02:00 Boris Barbulovski notifications@github.com:

hi Dylan,

You can take a look at Ubuntu 17.10 PPA package code and use it to build Debian Med package

Files are here https://github.com/bokic/fastQt/tree/ubuntu_17.10/debian

On Wed, Jul 5, 2017 at 10:09 PM, Dylan Aïssi notifications@github.com wrote:

Hi, Your software is relevant for the Debian Med project [1]. Unfortunately, I don't have enough time to package it :-( but I can help you with the packaging. If you are interested, you can join the team [2]. We also have an effort to help newcomers [3].

Dylan

[1] https://www.debian.org/devel/debian-med/ [2] https://debian-med.alioth.debian.org/docs/policy.html [3] https://wiki.debian.org/DebianMed/MoM

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/labsquare/fastQt/issues/24#issuecomment-313212650, or mute the thread

https://github.com/notifications/unsubscribe-auth/AFXE0EuVq4YshnRBi4OvBuULGja3xS-Mks5sK-2CgaJpZM4LmQXJ .

-- Boris Barbulovski http://mkfusion.bokicsoft.com/

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.