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