Closed Rombur closed 7 years ago
This would also allow us to get rid of the bundled packages.
++
I would love that!
Yes. I think we need an install script for linux (and optionally Mac OS, but that is not really important).
My wishlist:
I already looked into candi, hashdist, conda, and linuxbrew. I think all of them might work as does rolling something separate, but all of them require some extra work. I am not really sure how to proceed. We have some buy-in with candi and some with homebrew/linuxbrew and many already have their own scripts that do part of the job.
I think the hardest part will be to make a decision. I really want this done, so I am ready to work on any solution including our own installer in bash or python. Unless someone has a compelling reason to choose an installer over another, I think the best method would be to ask on the user mailing what people want.
I really want this done
Me too and I am happy to work on this. Can you think of other requirements or things we should think about?
I am just returning from a conference, where half of the complaints about ASPECT was about the tedious dependency list and installation, so I would fully support creating an installer for deal.II. My knowledge about installers / portable shell scripts is not great, so I would be happy if someone would go ahead, but I would certainly offer to help in testing on different systems. Concerning dependencies, many people in the geosciences community like hdf5 output, so a parallel hdf5 included would be nice. All other dependencies of ASPECT are already mentioned above.
Let me know, when there is something to help with.
Just a quick update: We have been steadily testing and improving https://github.com/koecher/candi and we are now at a point were it is very useful. Thanks to @koecher much of the work. I started using it for all my systems for example.
There are many things left to do:
Thx Timo. I would be proud if we can do so.
And I see the same points, we have a very good basis installer, which needs a lot more documentation and HPC platforms.
I know that @davydden is looking at spack and I have nothing against it but could we better advertise candi and homebrew on the download page. There is still work to do in candi but I think that it would already help a lot of users. Just this week, someone on the mailing list struggled to install all the dependencies and polluted his environment to the point that he couldn't install deal.II anymore. He had to redo a fresh install of Ubuntu and then, he used candi. This is wasting everybody's time.
Agreed. I will work on this in the next few weeks.
If there is something to do with candi, I will have a plenty of time the next weeks. Please let me know about your thoughts by a PR or issue request.
We could definitely put this onto the download page, if y'all think that it's ready to be given to the masses.
For me, it's good enough. We can always improve it when you have some time. What do you think @tjhei ?
opinions on 1) create a repo at github.com/dealii/ ? 2) If yes, what to call it "installer" or "candi"?
1) + 2) "bash-installer" ?
see github.com/dealii/candi (I went with the existing name because it is already known on the mailing list etc.). Testing/Code review/contributions welcome.
Any updates on this issue? Can we close?
@tamiko i would say this is still an open issue with quite a big number of post on google group related to installation. I would suggest that the main TODO is advertise different installation options on Download
page in addition to macOS binaries, namely (in alphabetical order):
Candi, Homebrew (mac), Linuxbrew (linux), Spack;
with a quick summary to let users decide:
Candi -- [@tjhei or @koecher would be the best to write a quick summary] Homebrew -- package manager for mac to install the complete deal.II suite of upstream versions and possibly many other packages optionally using precompiled binary packages. Linuxbrew -- a port of Homebrew for Linux Spack -- Supercomputer PACKage manager to install the complete deal.II suite and possibly many other packages. It is intended to let you build for many combinations of compiler, architectures, dependency libraries, and build configurations, all with a friendly, intuitive user interface.
p.s. also mention Debian when its ready https://github.com/dealii/dealii/issues/2843
Given the fact that this issue is some kind of meta issue, I will simply close.
Let's open an issue for concrete improvements we can make.
By tagging the older posts in the mailing list, I have realized the huge number of posts that are about installing deal.II (this is by far the largest category). Moreover, just last week I talked to someone who couldn't install deal.II but never bothered to ask for help on the mailing list. So I would like to have an "official" installer for the next release. This would also allow us to get rid of the bundled packages. Next is the summary of the discussion we had about this topic during the workshop:
Mac: we are good in a good shape: there is the binary and deal.II can be installed from source using homebrew (I think that we should mention it on the download page).
Linux source: I think that most of us agreed during the workshop that we should see if we can make linuxbrew work on a cluster. If we can't make it work, we should look for another installer maybe CANDI. There is a patch on linuxbrew to accept different versions of blas but the maintainers can't decide if it should be merged or not.
Linux binaries: I think that we concluded that the main advantage of the binaries is advertisement. People can quickly test deal.II and decide if deal.II is what they need. The problem is that it's a lot of work and that there are no volunteer. I think that there is nothing we can do about it in the short term. Longer term however, Ubuntu is going to have a new package manager (it's planned for Ubuntu 16.10) that should simplify packaging. Since a few of us are using Ubuntu, it would be easier to get the packaging done.