mbox series

[bug#45000,0/9] Build git-annex with assistant webapp enabled

Message ID 20201202045335.31096-1-jonathan@terracrypt.net
Headers show
Series Build git-annex with assistant webapp enabled | expand

Message

Jonathan Frederickson Dec. 2, 2020, 4:53 a.m. UTC
A previous patchset added the git-annex assistant to the git-annex
package, but the webapp functionality was not included. This patchset
enables the webapp, and adds several dependencies that were required
to do so.

Jonathan Frederickson (9):
  gnu: Add ghc-yesod-test.
  gnu: Add ghc-wai-app-static.
  gnu: Add ghc-yesod-static.
  gnu: Add ghc-cryptonite-conduit.
  gnu: ghc-yesod-core: Update to 1.6.18.6.
  gnu: Add ghc-hjsmin.
  gnu: Add ghc-template-haskell.
  gnu: Add ghc-boot-th.
  gnu: git-annex: Build with git-annex assistant webapp enabled.

 gnu/packages/haskell-apps.scm   |  15 ++-
 gnu/packages/haskell-crypto.scm |  39 ++++++++
 gnu/packages/haskell-web.scm    | 158 +++++++++++++++++++++++++++++++-
 gnu/packages/haskell-xyz.scm    |  85 +++++++++++++++++
 4 files changed, 293 insertions(+), 4 deletions(-)

Comments

Simon Tournier Dec. 2, 2020, 11:17 a.m. UTC | #1
Hi,

Thanks for the patchset.


On Tue, 01 Dec 2020 at 23:53, Jonathan Frederickson <jonathan@terracrypt.net> wrote:

> Jonathan Frederickson (9):
>   gnu: Add ghc-yesod-test.
>   gnu: Add ghc-wai-app-static.
>   gnu: Add ghc-yesod-static.
>   gnu: Add ghc-cryptonite-conduit.
>   gnu: ghc-yesod-core: Update to 1.6.18.6.
>   gnu: Add ghc-hjsmin.
>   gnu: Add ghc-template-haskell.
>   gnu: Add ghc-boot-th.
>   gnu: git-annex: Build with git-annex assistant webapp enabled.

The git-annex package is growing and now start to fetch bunch of
dependencies.  Well, I do not necessary want to have all that when I
only use the CLI part of git-annex.

Does it make sense to have 2 variants: git-annex (minimal) and
git-annex-assistant (full features)?


All the best,
simon
Kyle Meyer Dec. 3, 2020, 5:32 a.m. UTC | #2
zimoun writes:

> The git-annex package is growing and now start to fetch bunch of
> dependencies.  Well, I do not necessary want to have all that when I
> only use the CLI part of git-annex.
>
> Does it make sense to have 2 variants: git-annex (minimal) and
> git-annex-assistant (full features)?

While I'm happy to see this series (thanks, Jonathan!), I share the same
feeling as a git-annex user that doesn't use the assistant (and my
impression is that a substantial proportion of git-annex users rely on
only the command-line interface).
Timothy Sample Dec. 3, 2020, 8:52 p.m. UTC | #3
Hi Jonathan,

Kyle Meyer <kyle@kyleam.com> writes:

> zimoun writes:
>
>> The git-annex package is growing and now start to fetch bunch of
>> dependencies.  Well, I do not necessary want to have all that when I
>> only use the CLI part of git-annex.
>>
>> Does it make sense to have 2 variants: git-annex (minimal) and
>> git-annex-assistant (full features)?
>
> While I'm happy to see this series (thanks, Jonathan!), I share the same
> feeling as a git-annex user that doesn't use the assistant (and my
> impression is that a substantial proportion of git-annex users rely on
> only the command-line interface).

As an occasional git-annex user, I agree.  My preference is for
“git-annex” to be the full experience and to make a “-minimal” package
that omits the assistant.  I guess we could also use multiple outputs,
but that would likely be difficult to pull off (not to mention the fact
that it doesn’t do anything to simplify the build-time dependency
graph).

That being said, I could easily make that change on top of this series.

With respect to the patches, I managed to apply them all, build all of
the packages, and run the assistant, so that’s good!  However, most of
the packages are more recent then the versions given in the Stackage LTS
Haskell 14.27 list <https://www.stackage.org/lts-14.27>, which we follow
to maintain a consistent package set.  Please see
<https://lists.gnu.org/archive/html/guix-patches/2020-12/msg00086.html>
for an explanation.  (The short version is that the problem is not
really your fault but rather the fault of our tools suggesting at every
turn to do the wrong thing.)  All of the packages except ghc-hjsmin and
ghc-cryptonite-conduit are too recent.

Would you mind sending an updated patch set with the LTS Haskell 14.27
versions?  As of recently, if you run “guix lint” on Haskell packages it
will warn you if the version is wrong and suggest the correct version.

Besides that, there are a few minor issues in the descriptions.  Mostly
incomplete sentences.  It’s not a big deal as they are easy enough to
fix at commit time.  However, if you are going to update the patches
anyway...  :)

Thanks!


-- Tim
Jonathan Frederickson Dec. 4, 2020, 1:56 a.m. UTC | #4
On 12/3/20 3:52 PM, Timothy Sample wrote
> With respect to the patches, I managed to apply them all, build all of
> the packages, and run the assistant, so that’s good!  However, most of
> the packages are more recent then the versions given in the Stackage LTS
> Haskell 14.27 list <https://www.stackage.org/lts-14.27>, which we follow
> to maintain a consistent package set.  Please see
> <https://lists.gnu.org/archive/html/guix-patches/2020-12/msg00086.html>
> for an explanation.  (The short version is that the problem is not
> really your fault but rather the fault of our tools suggesting at every
> turn to do the wrong thing.)  All of the packages except ghc-hjsmin and
> ghc-cryptonite-conduit are too recent
> 
> Would you mind sending an updated patch set with the LTS Haskell 14.27
> versions?  As of recently, if you run “guix lint” on Haskell packages it
> will warn you if the version is wrong and suggest the correct version.

Oh, oops! Thanks for letting me know. I used the Hackage importer, but I 
suppose using the Stackage importer would've been a better starting point?

Anyway, I can make these changes, but... I noticed the thread you linked 
to about adding hledger-web includes some of the same dependencies! 
Would you suggest that I just go ahead and fix my patch series, and 
we'll deal with any conflicts as they come up?

> Besides that, there are a few minor issues in the descriptions.  Mostly
> incomplete sentences.  It’s not a big deal as they are easy enough to
> fix at commit time.  However, if you are going to update the patches
> anyway...  :)

Got it, I'll update those as well.
Timothy Sample Dec. 4, 2020, 2:34 p.m. UTC | #5
Hi Jonathan,

Jonathan Frederickson <jonathan@terracrypt.net> writes:

> On 12/3/20 3:52 PM, Timothy Sample wrote
>> With respect to the patches, I managed to apply them all, build all of
>> the packages, and run the assistant, so that’s good!  However, most of
>> the packages are more recent then the versions given in the Stackage LTS
>> Haskell 14.27 list <https://www.stackage.org/lts-14.27>, which we follow
>> to maintain a consistent package set.  Please see
>> <https://lists.gnu.org/archive/html/guix-patches/2020-12/msg00086.html>
>> for an explanation.  (The short version is that the problem is not
>> really your fault but rather the fault of our tools suggesting at every
>> turn to do the wrong thing.)  All of the packages except ghc-hjsmin and
>> ghc-cryptonite-conduit are too recent
>> Would you mind sending an updated patch set with the LTS Haskell
>> 14.27
>> versions?  As of recently, if you run “guix lint” on Haskell packages it
>> will warn you if the version is wrong and suggest the correct version.
>
> Oh, oops! Thanks for letting me know. I used the Hackage importer, but
> I suppose using the Stackage importer would've been a better starting
> point?

Yup!  The Stackage importer will do the right thing.

> Anyway, I can make these changes, but... I noticed the thread you
> linked to about adding hledger-web includes some of the same
> dependencies! Would you suggest that I just go ahead and fix my patch
> series, and we'll deal with any conflicts as they come up?

I think that makes sense.  There should be no big conflicts, since we’ll
end up with the LTS Haskell versions of each package either way.  The
only unfortunate thing is the duplication of work.  I guess that’s hard
to avoid with a large, distributed, and disorganized group of
volunteers.  :)

>> Besides that, there are a few minor issues in the descriptions.  Mostly
>> incomplete sentences.  It’s not a big deal as they are easy enough to
>> fix at commit time.  However, if you are going to update the patches
>> anyway...  :)
>
> Got it, I'll update those as well.

Thanks!


-- Tim