Message ID | UidibyLcn3xTwjDrxMaQPt6gOp2iz1d42z4V71_RpF1uRvC6-Vhn-1br5zn7snkgfzjsa4SB9UD2u-ZU7wboCHLchlXrtsbXAEFvkKjUayg=@protonmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [bug#37284] added gnu/packages/fmit.scm (Free Musical Instrument Tuner) | expand |
Hello, raingloom via Guix-patches via <guix-patches@gnu.org> writes: > * gnu/packages/fmit.scm: created Thank you! > --- > gnu/packages/fmit.scm | 64 +++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 64 insertions(+) > create mode 100644 gnu/packages/fmit.scm > > diff --git a/gnu/packages/fmit.scm b/gnu/packages/fmit.scm Is there any reason to create a new module instead of putting the package into "music.scm"? > + (arguments > + '(#:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "PREFIX=" out) (string-append "PREFIXSHORTCUT=" out))) This line is too long. Moreover, I think "PREFIX=" is not necessary, as Guix adds it automatically. I'm not sure about "PREFIXSHORTCUT=", tho. It seems PREFIX and PREFIXSHORTCUT are used in qmake, not in make, so it may be possible to remove the whole #:make-flags altogether. WDYT? > + #:phases > + (modify-phases %standard-phases > + (delete 'configure) Indentation looks wrong. Could you take care about it? > + (add-before 'build 'qmake > + (lambda _ > + (let ((out (assoc-ref %outputs "out"))) (invoke "qmake" "fmit.pro" > (string-append "PREFIX=" out) (string-append "PREFIXSHORTCUT=" out) > "CONFIG+=acs_qt acs_alsa acs_jack acs_portaudio")))) The line is too long. I suggest: (let ((out (assoc-ref %outputs "out"))) (invoke "qmake" "fmit.pro" (string-append "PREFIX=" out) (string-append "PREFIXSHORTCUT=" out) "CONFIG+=acs_qt acs_alsa acs_jack acs_portaudio")) > + (inputs > + `(("fftw" ,fftw) > + ("portaudio" ,portaudio) > + ("qtmultimedia" ,qtmultimedia) > + ("qtsvg" ,qtsvg) > + ("alsa-lib" ,alsa-lib) > + ("jack" ,jack-1) > + ("qtbase" ,qtbase))) > + (native-inputs > + `(("itstool" ,itstool) > + ("qttools" ,qttools) > + ("hicolor-icon-theme" ,hicolor-icon-theme) > + ("gettext" ,gnu-gettext))) Could you re-order (native-)inputs alphabetically? > + (synopsis "Free Musical Instrument Tuner") I understand Free is the F from FMIT, but, as a synopsis, I don't think it brings much value. Maybe "Musical instrument tuner" is enough? > + (description "FMIT is a graphical utility for tuning musical instruments, with error and volume history, and advanced features") > + (home-page "http://gillesdegottex.github.io/fmit/") Prefer https:// here. > + (license gpl3+))) If you move it to music.scm, I believe it should be prefixed with license: Also, the license seems wrong, it should be (list license:gpl2+ license:lgpl2.1) with a comment explaining that most of the code is under GPL2+, but some abstract or helper classes are under LGPL2.1. Regards,
> 37284: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=37284 > GNU Bug Tracking System > Contact help-debbugs@gnu.org with problems > Hello, > > raingloom raingloom@protonmail.com writes: > > > Updated again. Is sending it as an attachment fine? > > Well, oddly, it seems that your update addressed only one of my > suggestions. That's be weird indeed, I'm pretty sure I went through all of them.... ah. Ahh heck. Forgot to commit. >_> Git is confusing.
diff --git a/gnu/packages/fmit.scm b/gnu/packages/fmit.scm new file mode 100644 index 0000000000..2db5b1ca25 --- /dev/null +++ b/gnu/packages/fmit.scm @@ -0,0 +1,64 @@ +(define-module (gnu packages fmit) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix build-system gnu) + #:use-module (guix licenses) + #:use-module (gnu packages qt) + #:use-module (gnu packages gnome) + #:use-module (gnu packages algebra) + #:use-module (gnu packages audio) + #:use-module (gnu packages glib) + #:use-module (gnu packages linux) + #:use-module (gnu packages gettext)) + +(define-public fmit + (package + (name "fmit") + (version "1.2.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gillesdegottex/fmit/") + (commit (string-append "v" version)))) + (sha256 (base32 "03nzkig5mw2rqwhwmg0qvc5cnk9bwh2wp13jh0mdrr935w0587mz")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "PREFIX=" out) (string-append "PREFIXSHORTCUT=" out))) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'qmake + (lambda _ + (let ((out (assoc-ref %outputs "out"))) (invoke "qmake" "fmit.pro" (string-append "PREFIX=" out) (string-append "PREFIXSHORTCUT=" out) "CONFIG+=acs_qt acs_alsa acs_jack acs_portaudio")))) + (add-after 'install 'wrap-executable + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/fmit") + `("QT_PLUGIN_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/plugins")) + '("qtbase" "qtmultimedia" "qtsvg"))) + `("QML2_IMPORT_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/qml")) + '("qtmultimedia")))) + #t)))))) + (inputs + `(("fftw" ,fftw) + ("portaudio" ,portaudio) + ("qtmultimedia" ,qtmultimedia) + ("qtsvg" ,qtsvg) + ("alsa-lib" ,alsa-lib) + ("jack" ,jack-1) + ("qtbase" ,qtbase))) + (native-inputs + `(("itstool" ,itstool) + ("qttools" ,qttools) + ("hicolor-icon-theme" ,hicolor-icon-theme) + ("gettext" ,gnu-gettext))) + (synopsis "Free Musical Instrument Tuner") + (description "FMIT is a graphical utility for tuning musical instruments, with error and volume history, and advanced features") + (home-page "http://gillesdegottex.github.io/fmit/") + (license gpl3+)))