[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Packaging LyX
From: |
ng0 |
Subject: |
Re: Packaging LyX |
Date: |
Fri, 22 Dec 2017 18:42:31 +0000 |
Hi,
Gammel Holte transcribed 5.8K bytes:
> Hi all,
>
> I'm planning to switch a dozen or so machines to GuixSD.
>
> The only major package my users are missing is LyX (a LaTeX editor, see
> https://www.lyx.org/) so I packaged it, and it works fine. See code below.
>
> I would appreciate some help wrapping python. I'm familiar how to do this
> in Nix, but not in Guix. Despite requiring a python interpreter for during
> build, LyX dynamically looks for a python interpreter at runtime.
> Obviously, it'd be desirable to link LyX to the python instance used as
> input. For the record this is the LyX package in Nixpkgs:
>
> https://github.com/NixOS/nixpkgs/blob/86da6d441f7a248b02d545ac1b2c90ef27f42d0b/pkgs/applications/misc/lyx/default.nix
>
> I also had some doubts when packaging:
>
> - Is a xz source preferred to a gz one?
I would say it doesn't matter. For the files produced,
xz is smaller in most cases. Pick what you see fit.
> - Nix uses qtcore and qtsvg as inputs, but if I use these in Guix (in place
> of the whole qt) then LyX can't render its icons (svgz)
This shouldn't be a blocker. If it works with qt, that's okay. We
can strip it down to individual Qt modules later on.
Nix can be used as an inspiration but they do some things differently.
> There are another minor TODOs:
>
> - Transition to proper package and define-public syntax, as I was
> installing with guix package -f
> - Decide whether the package should live in tex.scm or elsewhere
I think (gnu packages editors) or what the editor module is called again
would be better.
> Once this is done, I'm happy to submit a proper patch.
>
> Thanks.
>
> (use-modules
> (guix packages)
> (guix download)
> (guix build-system gnu)
> (guix licenses)
> (gnu packages algebra)
> (gnu packages compression)
> (gnu packages pkg-config)
> (gnu packages python)
> (gnu packages qt))
>
> (package
> (name "lyx")
> (version "2.2.3")
> (source (origin
> (method url-fetch)
> (uri (string-append "ftp://ftp.lyx.org/pub/lyx/stable/2.2.x/lyx-"
> version ".tar.gz"))
> (sha256
> (base32 "0xvaz0i371nn2ndinc0d3ywj76ivb62649a4sdgwbivisiahd2fj"))))
> (build-system gnu-build-system)
> (inputs `(("pkg-config" ,pkg-config)
> ("python" ,python-2)
Is this python-2 only? If not, could you explain why you picked 2 and not 3
(2 is on its way out in 20 months).
> ("qt" ,qt)
> ("bc" ,bc)
> ("zlib" ,zlib)))
> (arguments `(#:configure-flags (list "--enable-qt5")))
> (home-page "http://www.lyx.org")
> (synopsis "An advanced WYSIWYM document processor and LaTeX front-end")
I'd drop the "An" and simply write
(synopsis "Advanced WYSIWYM document processor and LaTeX front-end")
> (description "LyX is a document processor that encourages an approach
> to writing based on the structure of your documents (WYSIWYM) and not
> simply their appearance (WYSIWYG). LyX combines the power and
> flexibility of TeX/LaTeX with the ease of use of a graphical
> interface.")
You need to use two spaces between sentences here.
> (license gpl2+))
Otherwise looks good to me with some indendation adjustments.
If you send a patch for master to a new bug ticket I can test it
and give additional feedback.
Thanks
--
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
GnuPG: https://c.n0.is/ng0_pubkeys/tree/keys
WWW: https://n0.is
signature.asc
Description: PGP signature