guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add qscintilla.


From: Efraim Flashner
Subject: Re: [PATCH] gnu: Add qscintilla.
Date: Tue, 13 Sep 2016 20:48:43 +0000
User-agent: K-9 Mail for Android


On September 13, 2016 11:37:35 PM GMT+03:00, Kei Kebreau <address@hidden> wrote:
>Efraim Flashner <address@hidden> writes:
>
>> On Tue, Sep 13, 2016 at 02:01:33PM -0400, Kei Kebreau wrote:
>>> Leo Famulari <address@hidden> writes:
>>> 
>>> > On Tue, Sep 13, 2016 at 10:37:56AM -0400, Kei Kebreau wrote:
>>> >> Kei Kebreau <address@hidden> writes:
>>> >> > A component necessary for GNU Octave's GUI.
>>> >> > How does it look?
>>> >> Not sure how packaging Qt packages goes, but I've discovered that
>>> >> GNU Octave's GUI only builds with Qt4 support. I've changed the
>patch to
>>> >> adjust this. Should I leave the old patch as is and add a qt4
>package
>>> >> that inherits from it?
>>> >
>>> > Since Qt 4 is no longer supported upstream, we are trying to
>remove
>>> > users of the qt-4 package so that we can eventually remove the
>qt-4
>>> > package itself.
>>> >
>>> > With that in mind, how about a qscintilla-for-octave package? This
>>> > package can inherit from a qscintilla that uses qtbase, and I
>think it
>>> > should be declared privately [using (define) instead of
>(define-public].
>>> >
>>> >> +         (replace 'configure
>>> >> +           (lambda _
>>> >> +             (chdir "Qt4Qt5")
>>> >> +             (zero? (system* "qmake" "qscintilla.pro"))))
>>> >
>>> > I would change directory in a separate 'chdir' phase.
>>> >
>>> >> +               (substitute* (find-files "." "Makefile")
>>> >> +                 (((string-append "INSTALL_ROOT)" qt))
>>> >> +                  (string-append "INSTALL_ROOT)" out)))))))))
>>> >                      ^
>>> > Inconsistent indentation. Also, this phase should return #t, since
>the
>>> > return value of substitute* is unspecified.
>>> >
>>> >> +    (synopsis "Qt5 port of the Scintilla editing component")
>>> >
>>> > Make sure to adjust the Qt name as appropriate :)
>>> 
>>> Like below? And how could I then access qscintilla-for-octave from
>>> maths.scm if it isn't defined publicly?
>>> 
>>> (define-public qscintilla
>>>   (package
>>>     (name "qscintilla")
>>>     (version "2.9.3")
>>>     (source (origin
>>>               (method url-fetch)
>>>               (uri (string-append
>"mirror://sourceforge/QScintilla2/QScintilla-"
>>>                                   version "/QScintilla_gpl-" version
>".tar.gz"))
>>>               (sha256
>>>                (base32
>>>                
>"0znvdncpj64zcpbkyvj11dm8bdc3nfn5girggj33ammhfcyvkalq"))))
>>>     (build-system gnu-build-system)
>>>     (arguments
>>>      `(#:phases
>>>        (modify-phases %standard-phases
>>>          (add-before 'configure 'change-directory
>>>            (lambda _ (chdir "Qt4Qt5") #t))
>>>          (replace 'configure
>>>            (lambda _ (zero? (system* "qmake" "qscintilla.pro"))))
>>>          (add-before 'install 'fix-Makefiles
>>>            (lambda* (#:key inputs outputs #:allow-other-keys)
>>>              (let ((out    (assoc-ref outputs "out"))
>>>                    (qtbase (assoc-ref inputs "qtbase")))
>>>                (substitute* (find-files "." "Makefile")
>>>                  (((string-append "INSTALL_ROOT)" qtbase))
>>>                    (string-append "INSTALL_ROOT)" out))))
>>>              #t)))))
>>>     (native-inputs
>>>      `(("python-pyqt" ,python-pyqt)
>>>        ("qtbase" ,qtbase))) ; for qmake
>>>     (home-page
>"https://www.riverbankcomputing.com/software/qscintilla/intro";)
>>>     (synopsis "Qt5 port of the Scintilla editing component")
>>>     (description
>>>      "QScintilla is a port to Qt of Neil Hodgson's Scintilla C++
>editor control.
>>> As well as features found in standard text editing components,
>QScintilla
>>> includes features especially useful when editing and debugging
>source code.
>>> These include support for syntax styling, error indicators, code
>completion and
>>> call tips.")
>>>     (license (list license:bsd-2 ; Python/configure.py
>>>                    license:expat ; src/ and include/
>>>                    license:gpl3))))
>>> 
>>> (define qtscintilla-for-octave
>>
>> This should be qtscintilla-qt4, we might have a use for it outside of
>> octave
>>
>
>In this case, should I leave qtscintilla-qt4 as a public package in
>qt.scm
>instead of maths.scm as Leo suggested?

That's where I would leave it. You could also leave a note, saying that it was 
for octave, and if they switch to qt5 then we can get rid of it. We still have 
an old vte package I added for a terminal since all the bug reports around it 
haven't been cleared yet, and that's with the other versions of vte.
-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]